≡ Menu

VIM: Jump Back To Previous or Last Cursor Position

Writing shell scripts in vim I usually go search for functions or something. Copy lines and then go back to where I was and modify the code. However, I need to manually navigate way back to the previous / last position. How can I automatically go back to where I was when I started my search operation under vim?

Tutorial details
DifficultyEasy (rss)
Root privilegesNo
RequirementsNone
Estimated completion timeN/A
Vim is a text editor that is upwards compatible to Vi. It supports the following markers and moving about keys:

[a] '. : Jump to last modification line.

[b] `. : Jump to exact spot in last modification line

[c] CTRL-O : Retrace your movements in file in backwards.

[d] CTRL-I : Retrace your movements in file in forwards.
From the vim help files:

Jumps are remembered in a jump list. With the CTRL-O and CTRL-I command you can go to cursor positions before older jumps, and back again. Thus you can move up and down the list. There is a separate jump list for each window. The maximum number of entries is fixed at 100.

Example

Open a text file called functions.bash, run:
$ vim functions.bash
Move cursor or go to line # 300 by typing the following vim command
300 shift g
Search for a shell function called _addNfsClientUser
/_addNfsClientUser
To jump back to line # 300 or previous position press CTRL-O (press and hold Ctrl key and press letter O). To jump back forwards press CTRL-I (press and hold Ctrl key and press letter I).

See also

Type the following command to get helpful info about jumping:
:help jumplist

Tweet itFacebook itGoogle+ itPDF itFound an error/typo on this page?

{ 2 comments… add one }

  • Allen September 9, 2013, 3:22 pm

    Great! Thanks!
    I have looking for these 2 short cuts for a while and this is what I need!

  • Profpatsch April 5, 2014, 2:08 pm

    Thanks, I always forget these.

Leave a Comment