如何在VIM中用n个空格缩进整个文件?

时间:2014-02-27 21:05:40

标签: vim

我想在VIM中用n个空格缩进整个文本文件。

我目前的方法是:

  1. 转到文件的开头
  2. 输入 Ctrl + V
  3. 按向下键 j 键选择要缩进的行
  4. 输入 Shift + I
  5. 键入空格键键n次
  6. Esc
  7. 有没有办法在不使用可视模式且必须手动浏览整个文件的情况下完成此操作?

4 个答案:

答案 0 :(得分:8)

使用全球替代

假设你要缩进四个空格,你可以这样做:

:%s/^/    /

这将在每行的开头有效地插入四个空格。调整替换表达式右侧的空格数以满足缩进需求。

使用可视模式

或者,您可以进入正常模式,然后:

  1. SHIFT + V
  2. SHIFT +
  3. SHIFT + >
  4. 通过 shiftwidth 的值缩进整个文件。

答案 1 :(得分:5)

怎么样:

:%s/^/(you count n spaces here)/

答案 2 :(得分:3)

:normal变体,在每行的开头添加两个空格:

:%norm 0i<space><space><CR>

另一个:normal变体,在每行的第一个可打印字符之前添加两个空格:

:%norm I<space><space><CR>

答案 3 :(得分:2)

您可以缩进一组这样的行:

:1,44>

如果按ctrl-g,它会显示文件的最后一行。