红联Linux门户
Linux帮助

.viminfo权限引起的vim无法记住上次编辑位置

发布时间:2015-09-10 10:28:22来源:linux网站作者:halazi100

让VIM记录文件上次浏览或编辑的位置。
 
问题:
当源码文件超过一个显示屏大小,每次使用vim打开这个文件时,编辑光标总是停留在首行开始处,在反复查看/编辑文档的过程中非常不方便,要是vim能够记录文档最后一次浏览或编辑的位置该多好!
 
解决办法:
在~/.vimrc中加入以下内容
 
"让vim记忆上次编辑的位置
autocmd BufReadPost * if line("'\"")>0 && line("'\"")<=line("$") | exe "normal! g`\"" endif
"注意"normal! g`\""中g后面的不是单引号而是波浪号下面的反引号`

"让vim记忆上次编辑的位置 
if has("autocmd") 
autocmd BufReadPost *  
\if line("'\"")>0 && line("'\"")<=line("$") | 
\   exe "normal! g`\"" | 
\endif 
endif 


异常问题及解决:
只有用sudo vim的时候才会记住上次编辑的位置,直接vim总是从第一行开始。

原因:
[ubuntu: ~]$ ls -l ~/.viminfo
-rw------- 1 root root 4558 2015-05-09 13:58 ~/.viminfo
原来记录位置的文件权限有问题。

解决办法:
删除文件~/.viminfo

sudo rm ~/.viminfo

然后重新打开vim(注意要以当前用户打开),vim会自动重建该文件.
vim


强大的vim配置文件,让编程更随意:http://www.linuxdiyf.com/linux/13633.html

Vi(Vim)键盘图及其基本命令:http://www.linuxdiyf.com/linux/12914.html

在Ubuntu 15.04下安装Vim:http://www.linuxdiyf.com/linux/11782.html