Indenting a bunch of lines in Vim

后端 未结 5 1780
挽巷
挽巷 2020-12-24 14:36

Is there a way to indent a selection of lines in Vim, like we have in text editors where we select a bunch of lines and press tab (or shift tab) to indent/unindent the selec

相关标签:
5条回答
  • 2020-12-24 14:39

    Use visual mode as Peter suggests. You can also use X>> where X is the number of lines you want to indent. E.g. 5>> indents five lines from current line and down.

    0 讨论(0)
  • 2020-12-24 14:42

    As suggested by the other answers you can use >. Alternatively, you can automatically correctly indent your code by selecting the set of line in visual mode (using shift+V), and then using =, or using == to indent the current line.

    0 讨论(0)
  • 2020-12-24 14:52

    There's a Vim Cast on this topic: Indentation commands

    I like Vim Casts. They are informative and pleasant to watch.

    0 讨论(0)
  • 2020-12-24 14:53

    You can select a set of lines with visual line mode (via Shift + V), and then type

    >

    and, to dedent,

    <

    You can also add numeric arguments. Find out you didn't indent enough? Hit gv to re-select your previous selection.

    While typing in normal mode, try out Ctrl + T or Ctrl + D to indent or dedent.

    0 讨论(0)
  • 2020-12-24 14:53

    I use the following mappings to indent/unindent:

    vmap <TAB> >gv
    vmap <S-TAB> <gv
    

    Use TAB to indent and shift-TAB to unindent the visually selected lines.

    If a block is selected Vim indents/unindents what is right of the start of the block.

    0 讨论(0)
提交回复
热议问题