如何正确设置 Fish 和版本配置?
How to properly setup Fish and version the configuration?
我正在从 zsh 切换到 fish,我正在努力寻找适合我口味的正确设置方法。还补充说我想将它添加到我的 dotfiles
存储库中。我应该对整个 ~/.config/fish
文件夹进行版本控制吗?
我应该把我的环境变量放在哪里?我应该将它们添加到 fish_variables
配置文件吗?我正在考虑为那些我不想版本化的文件采购一个文件 ~/variables.fish
。这是个好主意吗?
我使用 exa
和 ripgrep
,我喜欢用它们覆盖 grep
和 ls
。我可以像 zsh/bash 一样为它们设置别名吗?
我也想在 neovim 中使用它,我正在使用 vi 键绑定。这会与neovim冲突吗?如果是这样,有没有办法让 vi 键绑定只在 neovim 之外激活?
看来我用的大部分东西都是香草鱼提供的,没有插件(我很高兴)。有什么提示或必须安装的插件吗?
我在 git 中有我的 ~/.config/fish,效果很好。
我在多台机器上共享我的配置,并拥有特定于主机的设置和功能,我这样做:
# machine-specific
set host_config ~/.config/fish/config.(hostname).fish
test -r $host_config; and source $host_config
set -e host_config
set host_funcdir ~/.config/fish/functions_(hostname)
test -d $host_funcdir; and set fish_function_path $host_funcdir $fish_function_path
set -e host_funcdir
我不喜欢通用变量。
与fish philosophy相反,我喜欢配置。
我将 global 变量存储在 config.fish 文件中。
fish 别名在幕后创建函数,所以我提前做了。
这是我的 ~/.config/fish/functions/ls.fish
function ls --wraps=exa
exa --classify $argv
end
在您键入 ls
命令时,使用 --wraps 有助于制表符补全 exa 选项。
我不知道 neovim/fish 集成。
我安装了 oh-my-fish,但仅适用于 fish-logo
我正在从 zsh 切换到 fish,我正在努力寻找适合我口味的正确设置方法。还补充说我想将它添加到我的 dotfiles
存储库中。我应该对整个 ~/.config/fish
文件夹进行版本控制吗?
我应该把我的环境变量放在哪里?我应该将它们添加到 fish_variables
配置文件吗?我正在考虑为那些我不想版本化的文件采购一个文件 ~/variables.fish
。这是个好主意吗?
我使用 exa
和 ripgrep
,我喜欢用它们覆盖 grep
和 ls
。我可以像 zsh/bash 一样为它们设置别名吗?
我也想在 neovim 中使用它,我正在使用 vi 键绑定。这会与neovim冲突吗?如果是这样,有没有办法让 vi 键绑定只在 neovim 之外激活?
看来我用的大部分东西都是香草鱼提供的,没有插件(我很高兴)。有什么提示或必须安装的插件吗?
我在 git 中有我的 ~/.config/fish,效果很好。 我在多台机器上共享我的配置,并拥有特定于主机的设置和功能,我这样做:
# machine-specific
set host_config ~/.config/fish/config.(hostname).fish
test -r $host_config; and source $host_config
set -e host_config
set host_funcdir ~/.config/fish/functions_(hostname)
test -d $host_funcdir; and set fish_function_path $host_funcdir $fish_function_path
set -e host_funcdir
我不喜欢通用变量。 与fish philosophy相反,我喜欢配置。 我将 global 变量存储在 config.fish 文件中。
fish 别名在幕后创建函数,所以我提前做了。
这是我的 ~/.config/fish/functions/ls.fish
function ls --wraps=exa
exa --classify $argv
end
在您键入 ls
命令时,使用 --wraps 有助于制表符补全 exa 选项。
我不知道 neovim/fish 集成。
我安装了 oh-my-fish,但仅适用于 fish-logo