What's the easiest way to increase or decrease indentation for a large block of code in vi?
The shiftwidth parameter controls your indentation size; if you want four space indents, use :set shiftwidth=4 , or the abbreviation :set sw=4 .
In normal mode, press Tab or Shift-Tab to adjust the indent on the current line and position the cursor on the first nonblank character; in insert mode, press Shift-Tab to unindent; in visual mode, press Tab or Shift-Tab to adjust the indent on selected lines.
In vim (not sure if this applies to you too), you use >>
to indent one line. As with nearly every command in vim, type in a number before the command to perform is multiple times. So to indent the next 50 lines, type 50>>
.
Autoidenting:
For a { } block I use the command: =iB (with the cursor inside the block to ident)
For re-identing a complete file, I use gg=G
Now for increase or decrease identation on a block, you have to select it (I use viB command) and then you do >> or << and if you want to repeat the identation just use the dot .
Also remember to set your identation settings with
:set shiftwidth=NUMOFSPACES
and
:set softtabstop=NUMOFSPACES
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With