vi ~/.ssh/config
:set syn?
>syntax=conf
当我做:
set syn=sshconfig
然后语法高亮就如它应该的那样了。
为何无法自动识别文件类型?如何设置自动识别?
答案1
假设您所做的是在系统上其他位置创建一个符号链接“~/.ssh”到名为“ssh”的文件夹,例如~/git/ssh,您有 2 个选择:
解决方案 A
在 '~/.vim/ftdetect/ssh.vim' 里面输入以下行:
au BufNewFile,BufRead */ssh/config setf sshconfig
解决方案 B
确保符号链接解析到的文件夹名为“.ssh”
罪魁祸首文件⇒/usr/share/vim/vim73/filetype.vim:
au BufNewFile,BufRead ssh_config,*/.ssh/config setf sshconfig
答案2
如果您希望 ssh 配置语法对所有文件~/.ssh/config.d/
(或您想要的任何其他目录)进行着色,那么请使用@Shane Mulligan 的解决方案 A 或 B,但改为输入此行:
au BufNewFile,BufRead ssh_config,*/.ssh/config.d/* setf sshconfig
答案3
将此行添加到您的~/.vimrc
filetype plugin indent on
应该足以让 Vim 识别文件类型并应用正确的语法。