我已经进入set formatoptions=cqn了我的行列vimrc,但出于某种原因它并没有坚持下去.似乎Vim fo=tcq在某个时候恢复到默认值()但是我无法弄清楚为什么.跑步-V100/tmp/log只是给了我:
formatoptions=tcq Last set from ~/.vimrc
没有有用的背景.
那么,有没有办法让formatoptions坚持下去?或者我是否只需要创建一个autocmd来在每次加载新文件时重置它?
编辑
使用:verbose set formatoptions显示:
formatoptions=tcq Last set from ~/.vimrc
但是,我fo或formatoptions〜/ .vimrc中唯一的引用是set formatoptions+=cqn.
小智 14
此行为是因为VIM中的C文件插件.由于在加载.vimrc后加载了文件插件,因此会覆盖.vimrc中的设置.
David Wolever给出的解决方案似乎是最好的选择.
在.vimrc中添加以下行:
autocmd BufNewFile,BufRead * setlocal formatoptions+=cqn
...而不是正常的set formatoptions命令.
小智 5
我也碰到了这个问题.我有类似于项目的配置
autocmd BufRead,BufNewFile project/*.c setlocal formatoptions-=cro
Run Code Online (Sandbox Code Playgroud)
然而,set fo?显示formatoptions=croql.事实证明,我需要BufWinEnter而不是BufRead:
在窗口中显示缓冲区后.这可以是在加载缓冲区(处理模型之后)或在窗口中显示隐藏缓冲区(并且不再隐藏)时.不会发生:没有参数的拆分,因为你继续编辑相同的缓冲区,或者":拆分"一个已经在窗口中打开的文件,因为它重用了现有的缓冲区.但它确实发生了一个带有当前缓冲区名称的":split",因为它重新加载了该缓冲区.
这样可行
autocmd BufWinEnter,BufNewFile project/*.c setlocal formatoptions-=cro
Run Code Online (Sandbox Code Playgroud)
根据vim文档formatoptions:
注意:当
设置'compatible'时,此选项设置为Vi默认值,当'compatible'复位时,此选项设置为Vim默认值.
因此,如果兼容的价值在变化的过程中发生变化,那可能会导致您看到的问题.
| 归档时间: |
|
| 查看次数: |
7639 次 |
| 最近记录: |