如何在 Ubuntu 17.04 中禁用 Vim“跳转到上一个位置”功能?

如何在 Ubuntu 17.04 中禁用 Vim“跳转到上一个位置”功能?

我刚刚升级到 Ubuntu 17.04,发现当您重新打开同一个文件时,Vim 现在会跳转到光标所在的最后一个位置。以前,此功能是带有/etc/vim/vimrc自动命令的“可选”功能。在 17.04 中,它默认启用,但块/etc/vim/vimrc仍然被注释掉,那么我该如何正确禁用此功能?

" Uncomment the following to have Vim jump to the last position when
" reopening a file
"if has("autocmd")
"  au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
"endif

答案1

刚刚在 irc://chat.freenode.net/#vim 上找到了解决方案。

事实上,这是一个在 处定义的自动命令/usr/share/vim/vim80/defaults.vim,我没有清楚地显示出来,:verbose autocmd因为它的执行方式有点模糊。您可以简单地注释掉此块以禁用此功能:

" When editing a file, always jump to the last known cursor position.
" Don't do it when the position is invalid or when inside an event handler
" (happens when dropping a file on gvim).
"autocmd BufReadPost *
"  \ if line("'\"") >= 1 && line("'\"") <= line("$") |
"  \   exe "normal! g`\"" |
"  \ endif

这里还默认启用了许多新选项,您可以找到。

不管怎么说,还是要谢谢你!

答案2

~/.vimrc我正在运行 Ubuntu 17.10,并且我设法像这样覆盖文件中的行为:

:augroup vimStartup | au! | augroup END

相关内容