How do I select text character by character in Vim?
v
The v command enters character-wise visual mode, letting you select text one character at a time.
870 results for "it at"
v
The v command enters character-wise visual mode, letting you select text one character at a time.
:set isfname+=@-@
gf is fast until it stops exactly at characters common in modern import paths, especially @ in scoped package names (@org/pkg/file).
\%#
The \%# atom in Vim's regex engine matches the exact position of the cursor — zero-width, between characters.
:set nowrap
The nowrap option prevents long lines from wrapping to the next screen line.
:echo synIDattr(synID(line('.'),col('.'),1),'name')
When customizing a colorscheme or debugging unexpected colors, you need to know exactly which highlight group is coloring the text under your cursor.
{count}%
When used with a count, the % command jumps to the line at that percentage of the file.
qaI"<Esc>A": "",<Esc>jq
This macro transforms a plain word into a JSON key-value pair format, useful for converting lists of field names into JSON structure.
{count}gt
Prefixing gt (go to next tab) with a count jumps directly to the tab page at that position.
buffers-windows #tabs #buffers-windows #navigation #normal-mode
nzz
Typing nzz chains two normal-mode commands: n jumps to the next match of the last search, and zz immediately redraws the screen so the cursor line is vertically
:ptag function_name
The :ptag command opens a tag definition in a small preview window at the top of the screen, letting you read the definition without losing your place in the cu
buffers-windows #buffers #windows #tags #preview #navigation
'0
Pressing '0 in normal mode jumps to the exact cursor position in the most recently edited file, even after closing and reopening Vim.
:set splitkeep=screen
Controls how Neovim preserves the visual position of content when creating, closing, or resizing horizontal splits.
<C-y>
The command scrolls the window up one line at a time while keeping the cursor position fixed.
:keepmarks %s/pattern/replacement/g
The :keepmarks modifier prevents Vim from adjusting mark positions when a buffer-modifying command runs.
:g/pattern/+1d
Using :g/pattern/+1d you can delete the line that comes right after each line matching a pattern, in one pass.
]p
The ]p command pastes text and adjusts its indentation to match the current line.
:%s/old/new/gc
Adding the c flag to a substitute command makes Vim pause at every match and ask you whether to replace it.
m'
Vim's jump list automatically records your position whenever you make large motions (like G, /pattern, or ).
qa I1. <Esc>j q
This simple macro inserts a list number prefix at the beginning of each line.
set foldlevelstart=N
When Vim opens a file with folds enabled, it uses the foldlevelstart option to decide how many fold levels to open automatically.