vim问题:标记一段代码

时间:2009-09-10 21:51:03

标签: vim

如何在左侧,上下左右选中一段代码?

6 个答案:

答案 0 :(得分:38)

我最喜欢的方法是选择你的代码块(通常使用[V]正常行模式),然后按>或者<。

如果您想要多次标签,2>或3>重复一遍。

如果您没有足够的标签(或选项卡太多),请输入“gv”重新选择您的选择,然后重试。

要移动一段代码,请使用[V]正常行模式选择它,然后按“d”。这是“剪切”操作。

然后将光标移动到您想要的位置,然后按“p”。这是“粘贴”操作。

您也可以尝试使用[V]正常行模式选择代码块并按“=”自动标记代码块。

答案 1 :(得分:5)

页面“Indenting source code”应该为您提供所需的所有信息。

答案 2 :(得分:4)

要缩进包含光标的内部块,请执行:>iB 要缩进包含括号括号的内部块,请执行:>aB

您可以替换'>'与'<'向左缩进。

要自动缩进按==(或=如果您有突出显示的文字)。

答案 3 :(得分:1)

在命令模式下:

>

与任何其他命令一样,您可以预先设置要应用它的行数:

2 + 2 + >

将“标签”22行。

如果要“重新标记”

,请按

答案 4 :(得分:1)

我使用方便的重映射视觉模式,允许多次缩进文本,同时保持选择文本。类似于某些IDE允许您选择并按Tab键(或shift-tab)缩进的方式。

将以下内容添加到.vimrc

" Pressing < or > will let you indent/unident selected lines
vnoremap < <gv
vnoremap > >gv

此外,您可以使用==让vim尝试并自动确定正确的缩进。它可以在任何线上购买只需将光标放在那里并按==或者你可以做一些奇特的东西,比如选择整个文件并按==来修复所有缩进(在wysiwyg编辑器生成的html上创作奇迹)。

答案 5 :(得分:0)

只需进入视觉模式键入v然后使用&lt;或者&gt;性格:))