问题
Possible Duplicate:
In vim, how do I get a file to open at the same line number I closed it at last time?
How do you make Vim take you back where you were when you last edited a file?
My work computer has this feature, but not my home computer! How do you set Vim to remember in which part of a file you were when you last edited it?
EDIT: just to be more precise, I want this behavior when opening a new file, or on startup.
回答1:
I have this in my .vimrc and it works:
" go to the position I was when last editing the file
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal g'\"" | endif
回答2:
This is done with the viminfo file. It should be sufficient simply to enable this feature (and ensure that the file is writable). I use:
set viminfo='25,\"50,n~/.viminfo
...which stores viminfo data into ~/.viminfo. You can read about the other customization options here.
回答3:
First, check that your .vimrc file is writable.
If that isn't sufficient, add this to your .vimrc:
if has("autocmd")
autocmd BufReadPost *
\ if line("\'") > 0 && line("\'") <= line("$") |
\ exe "normal g`" |
\ endif
endif
回答4:
'0 // (single quote followed by zero) take you to place you last edited
回答5:
This is a dirty solution.
Whenever you are done editing a file and you are going to quit, just mark that place using m<letter>. Now you create a session file for this using mks!. Next time you open this file, just do ``` to reach that place.
You can have different letters to reach different places in the file. e.g. e for the place you were last editing or f function definition you were last working on etcetera. It depends upon your taste.
One thing bad about this solution is that mks! will create a Session.vim file in the current directory.
回答6:
See also the Vim Wikia article on Restore Cursor to File Position in Previous Editing Session. It looks like it lists a couple of the solutions already listed here, in addition to one larger script that specifically stores the last position for the last 10 files you've edited; you can change that value to suit your needs.
来源:https://stackoverflow.com/questions/1682536/how-do-you-make-vim-take-you-back-where-you-were-when-you-last-edited-a-file