Files
Notizen/06_Softwareentwicklung/03_Ressources/NEOVIM Dokumentation.md
2026-06-19 18:20:13 +02:00

92 lines
4.1 KiB
Markdown

# Neovim Tastenkombinationen:
> Anatomy of a motion - `Command + Count + Motion`
## Navigation
- Jump to beginning of line : `0` | jumps to the **first non-whitespace character** : `_`
- Jump to end of line : `$`
- Move forward by 1 word : jumps to **beginning of the next word** : `w` | jumps to **end of the next word** : `e`
- Move backward by 1 word : jumps to **beginning of the previous word** : `b` | jumps to **end of the previous word** : `ge`
- Jump to beginning of the file : `gg`
- Jump to end of the file : `G`
- Move forward to the next instance of the character (`(` in this case) : `f(` // NOTE : Repeat motion using `,` (for backwards movement) or `;` (for forward movement)
- Move forward upto (right before but not on) the next instance of the character (`(` in this case) : `t(` // NOTE : Repeat using `,` (for backwards movement) or `;` (for forward movement)
- Jump by half the window height : to jump down : `ctrl + d` | to jump up : `ctrl + u`
- Bring current line to the view centre : `zz`
- Move by a paragraph : move up : `{` | move down : `}`
- Go to definition : `gd`
- Go back to previous place : `ctrl + o` | Go back to next place : `ctrl + i`
- Go to the end of the line and enter insert mode : `I`
- Go to the end of the line and enter insert mode : `A`
- Enter normal mode from insert mode (temporarily) : `ctrl + o`
NOTE : Use `W` to select all of the contiguous text.
## Editing
- Undo : `u`
- Redo : `ctrl + r`
- Create new line and enter insert mode : after the current line :`o` | before the current line :`O`
- Enter insert mode : in the left side of the character you're currently on :`i` | in the right side of the character you're currently on: `a`
- Toggle comment for a line / selection : `gcc`
- Change : inside word : `ciw` | around word : `caw`
- Delete line : `dd`
- Delete all contents in the file : `dG`
- Delete from current to the first occurrence of the character (`_` in this case) : `df_` / `dt_` (excludes '_')
- Delete word : in normal mode : `dw` | in insert mode : `ctrl + w`
- Delete letter : `dl`
- Delete around : `da` | Delete inside : `di`
- Increment number : `ctrl + a` | Decrement number : `ctrl + x`
- Write to file using sudo : `w !sudo tee %`
- Make everything in selection undercase : `u`
- Squeeze up next line appending its contents to the current line : `shift + down-arrow`
- Increment a number : `ctrl + a `
- Rename a variable : `grr`
- Disable formatting : `space + uf`
## Copying and pasting
- Enter visual mode (for selecting) : `v`
- Enter line visual mode (for selecting) : `shift + v`
- Select till matching character (like from opening till closing paranthesis) : `v%`
- Copy selected text (yank) : `y` // NOTE : Yanked and deleted content go to the same buffer
- Copy line : `yy` / `shift + v + y`
- Paste : `p` (in normal mode) | `ctrl + r*` / `ctrl + v` (in insert mode)
- Yank everything inside paranethesis : `yi(`
- Yank everything till the closing paranthesis : `yt(`
## Searching
- If you want to search in a file, type `/` and then type the search query. Use `n` to go the next result / `shift + n` to go to the previous result.
Press `*` to automatically search using the word you're on as the query.
- Find files / folders - `space + ff`
- Grep : `space + fg`
## Code Folding
- Current blok of code : fold : `zc` | unfold : `zo`
- All code blocks : fold : `zM` | unfold : `zR`
## Buffer management
- Toggle buffers : `space + bb`
- Delete buffer : `space + bd`
- Open mini.buffers window : `option + space`
## File management
- Reveal current file in NeoTree : `space + fr`
- Create file / folder : `a`
- Delete file / folder : `d`
- Refresh file-tree : `R`
- Help : `?`
- Open mini.files window : `space + f + m` / `space + f + M`
## Window Management
- Toggle windows : `ctrl + w + w`
## Splits
- Split horizontally : `space + -` | vertically : `space + |`
- Maximize current window horizontally : `ctrl + w + |` | vertically : `ctrl + w + _`
- Bring back maximized window to original size - `ctrl + w + =`
## Others
- Change theme : `space + uC`
- Repeat last operation : `.`
- New terminal : `ctrl + /`
- Show description : `K`
- Restore session (from Neovim dashboard) : `s`