How do I open any file in a project by partial name without a fuzzy finder plugin in Vim?
Vim's built-in :find command supports recursive glob patterns, making it possible to locate and open files anywhere in a project without installing a fuzzy find
category:
navigation
tags:
#navigation
#ex-commands
#buffers
#completion
How do I make the Neovim jump list behave like a browser history stack instead of a ring?
By default Vim's jump list is a ring: if you press to go back several positions and then make a new jump, the list wraps around and future entries are preserved
category:
navigation
tags:
#navigation
#jump-list
#config
How do I jump to a tag and get an interactive list when multiple definitions exist in Vim?
:tjump {identifier} is the smart tag-jumping command: it jumps directly when there is only one matching tag, but shows an interactive numbered list when multipl
category:
navigation
tags:
#navigation
#tags
#buffers-windows
How do I jump between diff hunks when comparing files with Vim's built-in diff mode?
When files are open in Vim's built-in diff mode — whether via vimdiff, :diffsplit, or :diffthis — the ]c and [c motions let you jump precisely between chang
category:
navigation
tags:
#navigation
#diff
#buffers-windows
#normal-mode
How do I jump to a specific byte offset position in a file?
The go command moves the cursor to a specific byte offset from the start of the buffer.
category:
navigation
tags:
#navigation
#motions
#normal-mode
How do I jump to the start or end of the last changed, yanked, or pasted text using automatic marks?
Vim automatically sets two special marks after every change, yank, or put operation: '[ and '].
category:
navigation
tags:
#marks
#navigation
#editing
#normal-mode
How do I jump to the start or end of the current fold in Vim?
The [z and ]z commands jump the cursor to the start and end of the innermost open fold containing the cursor.
category:
navigation
tags:
#navigation
#folding
#motions
How do I see the raw UTF-8 byte values of the character under the cursor?
Pressing g8 in normal mode displays the UTF-8 encoding of the character under the cursor as a sequence of hex bytes.
category:
navigation
tags:
#navigation
#encoding
#unicode
#normal-mode
How do I set a bookmark that takes me back to a specific line in any file?
Uppercase marks (A–Z) are global marks in Vim — they persist across files and even across sessions (when viminfo or shada is configured).
category:
navigation
tags:
#navigation
#marks
#buffers
#normal-mode
How do I quickly see where a keyword was first defined or used without jumping there?
Pressing [i in normal mode displays the first line above the cursor (including included files) that contains the keyword under the cursor.
category:
navigation
tags:
#navigation
#search
#normal-mode
How do I reset the jump list to start fresh in the current window?
The :clearjumps command wipes the jump list for the current window, giving you a clean slate for and navigation.
category:
navigation
tags:
#navigation
#jumps
#jump-list
#normal-mode
How do I move to the first non-blank character of the next line?
The + command moves the cursor to the first non-blank character of the next line.
category:
navigation
tags:
#navigation
#motions
#normal-mode
How do I scroll the view horizontally so the cursor sits at the leftmost or rightmost visible column?
When nowrap is set and lines extend beyond the screen width, zs and ze snap the horizontal scroll position so the cursor sits exactly at the left or right edge
category:
navigation
tags:
#navigation
#scrolling
How do I jump to the start or end of a C-style comment block?
Vim provides two motions for navigating C-style block comments (/ .
category:
navigation
tags:
#navigation
#motions
#comments
#normal-mode
How do I navigate all undo states including branches that u and Ctrl+r can't reach?
Vim's undo history is a tree, not a linear stack.
category:
navigation
tags:
#undo-redo
#navigation
#normal-mode
How do I jump to the opening or closing brace of the block surrounding my cursor?
The [{ motion jumps to the previous unmatched { — the opening brace of the block enclosing your cursor.
category:
navigation
tags:
#navigation
#motions
#editing
#normal-mode
How do I open any file in a project by partial name without a fuzzy-finder plugin?
By adding to Vim's path option, you enable recursive directory search — which makes :find with tab completion a lightweight project-wide fuzzy finder, no plug
category:
navigation
tags:
#navigation
#ex-commands
#config
#buffers
How do I peek at a function definition without leaving my current window?
:ptag {identifier} opens a small preview window showing the definition of the given tag, while keeping your cursor in the original window.
category:
navigation
tags:
#navigation
#tags
#windows
How do I set a bookmark that persists across different files and Vim sessions?
Vim has two tiers of marks.
category:
navigation
tags:
#marks
#navigation
#normal-mode
How do I scroll the view left and right when lines are wider than the screen?
When nowrap is set and lines extend beyond the screen width, Vim provides dedicated horizontal scroll commands.
category:
navigation
tags:
#navigation
#normal-mode
#buffers-windows