zsh - zsh 的标准文件夹结构是什么?
问题描述
为了组织我的 zsh 自定义文件文件夹结构,是否有 zsh 的标准文件夹结构?
我不是在谈论 Oh-My-Zsh 或任何其他框架,而是在谈论“香草”zsh 自定义文件。
从现在开始,我已经看到了这种类型的文件夹结构:
~/.zsh/
custom/
plugins/
themes/
或者
~/.zsh/
functions/
themes/
library/
谢谢
解决方案
没有标准的文件夹结构。Zsh 可让您以几乎任何您喜欢的方式组织文件。不过有几个规则:
- Zsh 点文件默认在
$HOME
. 通常,您要使用的唯一 Zsh 点文件是.zshrc
. - 如果你想把你的 Zsh 点文件放在别处,那么你需要创建一个文件
~/.zshenv
,并在其中分配$ZDOTDIR
你想要保留其余点文件的目录。一般来说,你不应该在~/.zshenv
. - 没有标准位置
$HISTFILE
,但在 macOS 和 Debian 上,/etc/zshrc
将其设置为${ZDOTDIR:-$HOME}/.zsh_history
. - 函数没有标准位置(包括主题和完成)。相反,您添加到您的任何目录都
$fpath
将被搜索功能。Zsh 文档中的示例将自定义函数(包括主题和完成)放在~/myfns
or中~/myfuncs
。旁注:默认情况下,由
$fpath
和组成。因此,如果您是系统管理员,并且您希望向系统的所有用户提供功能,您可以将它们放入./usr/local/share/zsh/site-functions
/usr/share/zsh/site-functions
/usr/share/zsh/<version>/functions
/usr/local/share/zsh/site-functions
- 完成转储文件默认保存为
${ZDOTDIR:-$HOME}/.zcompdump
. 您可以使用 更改此设置compinit -d <dumpfile>
。 - 完成缓存文件默认保存为
${ZDOTDIR:-$HOME}/.zcompcache/
,但您可以使用zstyle ':completion:*' cache-path <dir>
. - 插件不是 Zsh 的标准部分,因此根本没有标准位置。
推荐阅读
- java - Java 加密签名。有些参数看不懂
- unit-testing - 如果修改了外部文件,则运行 Gradle 强制测试
- php - 如何在 PHP 中为每个值阅读下面的 JSON 代码数据
- sapb1 - 在 SB1 V10.0 上从 gmail 发送邮件
- javascript - Laravel 中的星级和半星评级
- javascript - ChartJS 很慢
- json - 使用 jq 根据以数字开头的键查询 JSON
- java - Mockito 参数捕获器和参考变量
- javascript - javascript:如何调用一个事件只调用一次的代码
- c++ - C存储类和C++析构函数有什么关系