vim-split-line icon indicating copy to clipboard operation
vim-split-line copied to clipboard

vim plugin to easily split the line at the cursor

vim-split-line

Without exiting normal mode, joining two lines is easy: J

But splitting and auto-indenting a line is a little awkward:

Context Keyboard
Splitting on cursor i Enter Esc
Splitting on one char of whitespace r Enter
Splitting on more than one char of whitespace c i w Enter Esc

vim-split-line gives the :SplitLine command. Without leaving normal mode it:

  • Splits the line under the cursor
  • Remove trailing whitespace on first line
  • Auto-indents second line

Installation

Install with a plugin manager.

Configuration

nnoremap S :SplitLine<CR>

I use S because the default behaviour is almost identical to c c, and it has a nice symmetry with J.

Alternatives

You don't actually need this plugin, the below also works:

nnoremap S :keeppatterns substitute/\s*\%#\s*/\r/e <bar> normal! ==<CR>