Vim tips
Motions
ciw
: Change the inner worddwi
: Delete current word and enter edit moded$
orD
: delete all after current position$
: go to the last char normal-modew
andb
: move a word forward or backwardsdaw
: delete from the current char til the first letter on next wordd9w
: delete 9 wordsdap
: delete around paragraphdd
: delete a line2dd
: delete two linesu
andctrl+o
: undo and redo editions
more of this:
0
: go to beginning$
: go the the endlineI
: Edit beginning lineA
: Edit end of the lineO
: Add blank line aboveo
: Add blank line belowJ
: Join bottom line to currentD
: Remove all to the end from current chardd
: remove linegg
: jump to first lineG
: jump to last line
Moving things around
- Join (move) the line bellow at the end of the current:
gJ
- Join lines by removing tabs and newlines (supports visualmode):
J
- Split a long line in multiple sized lines:
%!fmt --width=75 --split-only
Markdown
- Generate a ToC with anchor links:
GenTocGFM
- Open a buffer with the markdown headers navigation:
Toc
:
Stuff
- Delete blank lines:
:g/^$/d
: - Correct a file edited on windows os:
:ed ++ff=dos %
: - Go back to terminal and go back again to vim:
CTRL+z
&fg
:
FZF and Vim
- Search recent opened files and open it vertically splitted:
:History
+CTRL+v
: - will uppercase the selection
Edits
shift+I
will go to the first letter in the line and enter edit modeshift+A
will go to the last letter in the line and enter edit mode
Files
- gf - Edit existing file under cursor in same window
- C-W f - Edit existing file under cursor in split window
- C-W C-F - Edit existing file under cursor in split window
- C-W gf - Edit existing file under cursor in new tabpage
Buffers
- C-W L - Moves a horizontal buffer to vertical
Search
:g//#
: Incremental search and list matches with line numbers
Other tips
|
|
Commands
Deletions:
:.,$d
: From the current line to the end of the file.:.,1d
: From the current line to the beginning of the file.10,$d
: From the 10th line to the end of the file.
Deletions by search:
:g /word/d
: Delete lines that has word:g!/word/d
: The opposite:g/^$/d
: Delete blank lines
Copying and pasting
:364,757y
Copy range:364,757t2
Copy and paste two lines after current:364,757t.
Copy and paste in current line
Powerful plugins
Git
- Git blame
Plugins
<leader>KP
: Paste result from CheatshM-CR
: Results from Copilot
mkdx
LEADER + I
: List headers in a bufferLEADER + i
: Update TOC