Linux don';t将当前选项应用于新打开的文件vim
我经常在vim中打开许多文件。问题是有些文件有自己的选项。例如: 生成文件的设置Linux don';t将当前选项应用于新打开的文件vim,linux,vim,Linux,Vim,我经常在vim中打开许多文件。问题是有些文件有自己的选项。例如: 生成文件的设置 set noexpandtab tabstop=4 shiftwidth=4 softtabstop=4 set list listchars=eol:¬,tab:→⠀,trail:~,extends:>,precedes:< hi SpecialKey ctermfg=243 hi NonText ctermfg=243 所以,如果我先打开makefile,然后打开:tabe mai
set noexpandtab tabstop=4 shiftwidth=4 softtabstop=4
set list listchars=eol:¬,tab:→⠀,trail:~,extends:>,precedes:<
hi SpecialKey ctermfg=243
hi NonText ctermfg=243
所以,如果我先打开makefile,然后打开:tabe main.c
,我可以看到从makefile打开的不可见字符
我知道我可以
:set nolist
,但想象一下,如果我有许多其他选项继承许多其他文件。当我使用另一个文件时,如何告诉vim不要继承它们?:tabe另一个文件?好的,setlocal
只为缓冲区设置这些内容。
但这当然不适用于.vimrc
。有两种可能,autocmds或文件类型插件:
autocmd BufRead,BufNewFile *.{c} setlocal colorcolumnt=100
这会将本地设置设置为以.c
也可以将设置添加到文件类型插件。请参阅
:h filetype plugin
,了解更多信息。基本上,只需将设置添加到特定文件。在您的情况下,最有可能是在.vim/ftplugin/c.vim
下,有setlocal
只为缓冲区设置这些内容。
但这当然不适用于.vimrc
。有两种可能,autocmds或文件类型插件:
autocmd BufRead,BufNewFile *.{c} setlocal colorcolumnt=100
这会将本地设置设置为以.c
也可以将设置添加到文件类型插件。请参阅:h filetype plugin
,了解更多信息。基本上,只需将设置添加到特定文件。在您的情况下,最有可能出现在.vim/ftplugin/c.vim