如何在Vim中缩进特定的代码块?

7
Aptana Studio中,当我需要格式化代码时,我选择一段代码,然后按下Ctrl + Shift + F
在Vim中这个操作的相当于什么?
即,假设我们有以下代码行:
function() {
var test = "Hello, World!";
var test2 = "Hello, World! Again";
}

我希望看到的最终输出是像下面这样格式良好的代码:
function(){
  var test = "Hello, World!";
  var test2 = "Hello, World! Again";
}

2
你读过这篇文章了吗? - admdrew
4个回答

9
如果 Vim 知道你正在使用的语言,那么可以使用等号键 = 自动生成代码的缩进。在块内部输入 =a},或者输入 gg=G 对整个文件进行自动缩进。

今天我所见过的最酷炫的东西!!! - Student

5

使用>i{(在当前块内右移),或更好的方法是=a{(正确缩进当前块),并且启用适当的缩进模式(例如:set cindent)。

如果打开一个缩进错误的整个文件,您可能需要从gg=G开始(重新缩进整个文件)。


3

您可以使用

set shiftwidth=2

为了缩进两个空格,正如我在您的示例中所看到的那样,然后:
V

在可视模式下插入块:
j

向下移动一行并同时选择两个。

>

要进行一次缩进。


2
  • Esc键进入普通模式。
  • 使用vV选择,然后使用>键。
  • 使用>>:>将一行缩进。
  • 如果要缩进多行,请使用X>>:X>

查看:help shiftwidth以设置缩进的空格数。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接