在VIM中缩进一堆行

时间:2010-02-25 07:23:51

标签: vim indentation

有没有办法在vim中缩进选择的行,就像我们在文本编辑器中选择一堆行并按Tab键(或shift tab)缩进/取消所选行一样?我说的是一般缩进,与代码缩进无关。

5 个答案:

答案 0 :(得分:36)

您可以选择一组具有可视线模式的线条(通过 shift + V ),然后键入

>

,并且,dedent,

<

您还可以添加数字参数。找出你没有足够的缩进?按 g v 重新选择之前的选择。

在正常模式下输入时,请尝试 ctrl + T ctrl + D 缩进或dedent

答案 1 :(得分:16)

彼得建议使用视觉模式。您还可以使用 X>> ,其中X是您要缩进的行数。例如。 5>> 从当前行向下缩进五行。

答案 2 :(得分:9)

我使用以下映射来缩进/取消:

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

使用TAB缩进并移动-TAB以取消显示视觉选择的行。

如果选择了一个块,Vim会缩进/取消对象的开头是什么 块。

答案 3 :(得分:4)

这个主题有一个Vim演员:

http://vimcasts.org/episodes/indentation-commands/

我喜欢Vim Casts。它们内容丰富且令人愉​​悦。

答案 4 :(得分:3)

根据其他答案的建议,您可以使用&gt; 。或者,您可以通过在可视模式下选择行集(使用 shift + V ),然后使用 = 来自动正确缩进代码。 ,或使用 == 缩进当前行。