有几个需要注意的地方
如果想要启用 Powerlevel10k 的 instant prompt 功能,那么必须将下列配置项放置在
~/.zshrc
文件顶部。1# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.2# Initialization code that may require console input (password prompts, [y/n]3# confirmations, etc.) must go above this block; everything else may go below.4if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then5 source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"6fi需要
export
相关的设置尽量放在其他配置项之前,避免出现后续配置项需要用到导出的变量却发现找不到的情况。source
有关的配置项在我看来基本是引入一些其他文件中(比如 autojump 这个插件的加载)的配置,所以习惯将它放在plugins
配置项的后面。alias
相关的配置最好放到最后,比如alias ll='ls -alFh'
如果放在source $ZSH/oh-my-zsh.sh
之前,那么就会被覆盖。我个人喜欢将配置项尽可能地归类放置,完全是出于个人喜好,再譬如一些配置项出于个人习惯就没有按照上面的规则进行放置,比如
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
这行代码,所以可以作为参考,但并不代表说我的配置风格就是最好的、完美的。Vim 的配置相较来说比较简单,我认为除了以下配置外其他配置项都不是必需的,根据自己需求和喜好增删就可以了:
1" 显示行号2set number3" 语法高亮显示4syntax on5" 启用自动对齐功能,把上一行的对齐格式应用到下一行6set autoindent7" 设置显示制表符的空格字符个数,改进 tab 缩进值,默认为 8,现改为 28set tabstop=29" 显示匹配的括号10set showmatch下面的配置是为了在 iTerm2 中让光标在 insert 模式和 normal 模式下显示不同的样式,可以根据个人需求自行选择是否保留
1" Change cursor shape between insert and normal mode in iTerm2.app2if $TERM_PROGRAM =~ "iTerm"3 let &t_SI = "\<Esc>]50;CursorShape=1\x7" " Vertical bar in insert mode4 let &t_EI = "\<Esc>]50;CursorShape=0\x7" " Block in normal mode5endif