如果我打开ac文件而我的缓冲区使用 “c.vim” ftplugin,则打开/编辑/获取 .vimrc ,我失去了 “c.vim” ftplugin的功能。
什么是自动重新加载ftplugin的最佳方式?
以下是一个例子:
在获取 .vimrc: 之前,c文件的缓冲状态
// This line has an existing comment.
// I used 'o' while on the above line to continue that comment.
// Awesome, after pressing return I am still commenting.
我的 .vimrc:
后,c文件的缓冲状态
// This line has an existing comment.
I used 'o' while on the above line to try and continue that comment.
After pressing return it is obvious the ftplugin for this filetype is not active.
这是我的 .vimrc ,以防它以某种方式导致问题:
set nocompatible
set backspace=indent,eol,start
filetype plugin indent on
syntax on
set hls
nnoremap <leader>ev :split $MYVIMRC<cr>
nnoremap <leader>sv :source $MYVIMRC<cr>
答案 0 :(得分:1)
我在给出第一个答案时误读了你的问题,或者你的编辑大大改变了这个问题。
简答:删除该行
:set nocompatible
来自你的vimrc文件。
以下是:help 'compatible'
的一些相关行:
This is a special kind of option, because when it's set or reset,
other options are also changed as a side effect. ...
When a |vimrc| or |gvimrc| file is found while Vim is starting up,
this option is switched off, and all options that have not been
modified will be set to the Vim defaults. ...
这意味着vimrc文件开头的:set nocompatible
是多余的。此外,关于“所有尚未设置的选项”的位仅适用于查找vimrc文件的自动效果,而不适用于设置或重置选项时。
正如我在之前的回答中所说,'formatoptions'
选项是困扰你的选项;这是受'compatible'
选项影响的众多选项之一。
答案 1 :(得分:0)
你必须做两件事:
我最近就超级用户的#1提出了建议:https://superuser.com/questions/719329/automatic-indentation-with-macvim/719411#719411
在您的情况下,您要更改的选项为'formatoptions'
(简称'fo'
)。
对于#2,请参阅:help ftplugin-overrule
。我建议使用那里描述的第三个选项。