Preserve last editing position in VIM

Solution 1:

Taken from http://amix.dk/vim/vimrc.html

" Return to last edit position when opening files (You want this!)
autocmd BufReadPost *
     \ if line("'\"") > 0 && line("'\"") <= line("$") |
     \   exe "normal! g`\"" |
     \ endif

Solution 2:

The "out of the box" .vimrc enables this with the statement:

source $VIMRUNTIME/vimrc_example.vim

You may just need to restore this statement in your .vimrc. In any case, see vimrc_example.vim and also see the line() function in the Vim manual for a discussion of how it works.

Solution 3:

The last edit position is automatically preserved by Vim, and is available as "special" jump mark .. Other special marks include " (position you saved from) and ' (position you jumped from).

You can jump to a mark by typing '<mark>, so '. will take you to the place of the last edit, '' will take you back to where you were, and '" takes you to the position you saved the file at.

That and more about Vim marks at Vim.Wikia.