在 /etc/vim/vimrc 中禁用 vim 视觉模式不起作用

在 /etc/vim/vimrc 中禁用 vim 视觉模式不起作用

我发现了很多关于在 vim 中禁用视觉模式的问题,但没有一个能解决我的特定问题:

我添加set mouse-=a到我的/etc/vim/vimrc文件中以永久禁用视觉模式。事实是:这似乎没有任何作用。但是,当我将完全相同的指令放入用户的.vimrc文件中时,它就可以工作。

这是预期的行为吗?我错过了什么?有没有人有一个不涉及.vimrc为每个用户管理文件的解决方案?

提前致谢!

我使用的是 Debian 10,顺便说一句,已经完全更新了。

答案1

Debian 的/etc/vim/vimrc包含这样的评论:

" Vim will load $VIMRUNTIME/defaults.vim if the user does not have a vimrc.
" This happens after /etc/vim/vimrc(.local) are loaded, so it will override
" any settings in these files.
" If you don't want that to happen, uncomment the below line to prevent
" defaults.vim from being loaded.
" let g:skip_defaults_vim = 1

正如:verbose set mouse?所说,这是由/usr/share/vim/vim81/defaults.vim上面提到的设置的($VIMRUNTIME在 Debian 上是这样/usr/share/vim/vim<version>)。

因此,您可以为您的用户创建一个~/.vimrc(或~/.vim/vimrc)(即使是空的也可以),或者取消let g:skip_defaults_vim = 1注释/etc/vim/vimrc

答案2

我没有直接编辑默认值/usr/share/vim/vim81/defaults.vim(或者无论你的 vim 版本是什么),而不是 muru 的答案。

注释掉,set mouse=a将其更改为"set mouse=a

"就是如何注释掉 vim 配置文件中的内容

这样做的好处是可以将有用的内容保留在默认值中,例如语法突出显示,但删除了烦人的视觉模式

我可能会得到回复说我不应该这样做,因为它会在 vim 更新时被覆盖,但现在对我来说这是一个快速修复!

答案3

$ cat >.vimrc
source $VIMRUNTIME/defaults.vim
set mouse=
^D
$

相关内容