+ -
当前位置:首页 → 问答吧 → 如何让vim打开文件后自动回到上一次最后编辑的地方?

如何让vim打开文件后自动回到上一次最后编辑的地方?

时间:2010-03-29

来源:互联网

我在.vimrc 里头加了这么一句:
au BufReadPost * if line("'\"") > 0|if line("'\"") <= line("$")|exe("norm '\"")|else|exe "norm $"|endif|endif

在别的地方都管用。但是在的archlinux中,不起作用。
每次光标还是在文件的起首处。

作者: naturennn   发布时间: 2010-03-29

arch里以前是这样的

作者: qiang_liu8183   发布时间: 2010-03-29

引用:
作者: qiang_liu8183
arch里以前是这样的
多谢。可是为啥呢?

作者: naturennn   发布时间: 2010-03-29

应该是/etc/vimrc有变动吧

作者: qiang_liu8183   发布时间: 2010-03-29

引用:
作者: naturennn
我在.vimrc 里头加了这么一句:
au BufReadPost * if line("'\"") > 0|if line("'\"") <= line("$")|exe("norm '\"")|else|exe "norm $"|endif|endif
在别的地方都管用。但是在的archlinux中,不起作用。
每次光标还是在文件的起首处。
如果你用的是 arch 自带的 vim ,貌似需要使用 .virc

如果你的 vim 是自己编译的,不会出现你说的问题。

作者: poet   发布时间: 2010-03-29

现在早没有.virc这玩意了.

我的.vimrc里加的是这样:

代码:
au BufReadPost *
 \ if line("'\"") > 1 && line("'\"") <= line("$") |
 \ exe "normal! g'\"" |
 \ endif

作者: kevinlei   发布时间: 2010-03-29

不会吧?我的设置在Arch下一直有效。

代码:
autocmd BufReadPost *
 \ if line("'\"") > 0 && line ("'\"") <= line("$") |
 \ exe "normal g`\"" |
 \ endif

作者: 狱卒   发布时间: 2010-03-29