在 Linux Vim 环境中,如何轻松把缩进设定为2个或4个空格?
Vim 是几十年来最流行的基于终端的文本编辑器之一。
但无论你使用 Vim 多久,总会有更多你不知道的技巧和窍门。
这是关于在 Vim 中将缩进宽度设置为 2 个空格或 4 个空格。
如果您是程序员,尤其是 Python 程序员,这将特别有用。
在您的 vimrc 文件(位于 ~/.vimrc)中,添加以下行以在 Vim 中自动使用 2 个空格而不是制表符。
set autoindent expandtab tabstop=2 shiftwidth=2
本文将详细介绍它。
设置自动缩进
假设您正在编写一行代码并且下一行代码需要缩进,您按 Enter 键转到下一行,但不会自动应用缩进。
要自动缩进行,将以下行添加到您的 'vimrc'。
set autoindent
一旦你把它保存在你的 'vimrc' 中,无论你使用什么编程或脚本语言,它都会在你的 vim 会话中启用自动缩进。
使用空格进行缩进
如果你想使用空格来缩进你的代码,将以下行添加到你的 '.vimrc' 文件中。
set expandtab
set tabstop=<NUM OF SPACES>
set shiftwidth=<NUM OF SPACES>
- 第一行启用expandtabVim 中的选项。此选项确保空格用于缩进行,即使您按下“Tab”键。
- 第二个选项tabstop采用数值。假设我输入了 set tabstop=2,这将为行缩进插入 2 个空格。
- 最后,第三个选项shiftwidth管理缩进,当您使用 '>>' 或 '<<' 运算符添加或删除已经存在的代码行/代码块的缩进时。
我建议使用 2 或 4 作为tabstop和shiftwidth值。
我还建议您对tabstop和使用相同的值shiftwidth。使用不同的值可能会弄乱您的缩进。
这是 Vim 中缩进的代码:
????在极少数情况下,如果您需要使用制表符,按“制表符”键将无法expandtab启用。要使用制表符,请使用“Ctrl + V”组合键,然后键入制表符。
反之亦然:使用制表符进行缩进
服务于站在“制表符与空格”两侧的人,现在让我们看看如何使用制表符而不是空格来缩进。
将以下行添加到您的 'vimrc' 中:
set noexpandtab
set tabstop=4
set shiftwidth=4
在这 3 行中,vimrc 使用制表符而不是空格的唯一区别是使用 ofnoexpandtab而不是expandtab. 该noexpandtab选项可防止将制表符转换为空格。
结论
以上所有内容都适用于新文件,要在 Vim 中将当前打开的文件中的制表符转换为空格,请按 Esc 键进入 Normal 模式。现在retab通过按 ':'(冒号)字符使用该命令,Vim 会将现有的制表符转换为空格。