MEW-DOS v1.1

vim cheat sheet written by neko

Preface

I’ve been using vim for a long while now, working on the terminal as much as I do. Over the years, I slowly started using more and more actual features of vim, instead of just having it work for me as a complex to deal with text editor. Last year, I finally set up a personal dotfile-repository. Yes, I guess I am one of those guys now.

Anyway, so I’ve been getting more used to using vim as an in-place IDE instead of running vim solely to edit one document and closing it again. And once you start working with panes in vim, a lot of keyboard shortcuts come into play. I’ve spend some time aggregating the ones I keep forgetting in a short list, once again, copied verbatim from my internal wiki.

If you got any tips for me surrounding the usage of vim, or would like me to append some shortcuts that weren’t mentioned, shoot me a message!

Commands

Command Description
:e filename Edit a file

Buffers

Command Description
:new Open an empty buffer
:b Next buffer
:b N Select buffer N
:bp Previous buffer
:buffers or :ls List buffers
:split Split the current window into horizontal panes
:vsplit Split the current window into vertical panes

Tabs

Command Description
:tab new Create new tab
:tabn Switch to next tab
:tabp Switch to previous tab
:tabs List tabs

Editing

Command Description
^v Block selection mode
^v (select) I Multiline insert (esc to confirm)
V Line selection mode
>>or << Change indentation of current line
>N> or <N< Change indentation of next N lines
u Undo
^r Redo

Terminal

Command Description
:ter Open a terminal window

Windows

command description
:help window-moving Opens the window command help
^w x Exchange current window with next one
^w w Switch to next pane
^w _ Maximise current pane
^w = Make all windows equal size
^w <arrow> Switch to pane in direction
^w r Rotate windows down/right
^w R Rotate windows up/left
^w L Move current window to the far right
^w H Move current window to the far left
^w J Move current window to the very bottom
^w K Move current window to the very top
:res N Resize pane to N lines
:res +/-N Increase/decrease pane size by N
:hide Hide current window
:only Hide all windows except current