vim 缩进设置
配置和操作代码缩进,支持空格和 Tab
语法
:set tabstop / :set shiftwidth / >> / <<
参数
| 参数 | 说明 | 示例 | 级别 |
|---|---|---|---|
>> |
当前行右缩进 | >> |
常用 |
<< |
当前行左缩进 | << |
常用 |
= |
自动缩进 | gg=G |
常用 |
:set ts=4 |
设置 Tab 显示宽度为 4 | :set tabstop=4 |
常用 |
:set sw=4 |
设置缩进宽度为 4 | :set shiftwidth=4 |
常用 |
:set expandtab |
用空格代替 Tab | :set expandtab |
常用 |
:retab |
将已有 Tab 转为空格 | :retab |
进阶 |
示例
全文自动缩进
gg=G
gg 到文件头,= 自动缩进,G 到文件尾
选区缩进
V5j>
选中 5 行后右缩进
设置 Python 缩进
:set ts=4 sw=4 expandtab
4 空格缩进
Tab 转空格
:set expandtab | :retab
将文件中所有 Tab 替换为空格
常见错误
缩进混用 Tab 和空格
用 :set list 显示不可见字符,:retab 统一转换
技巧
- 在 .vimrc 中按文件类型设置缩进:autocmd FileType python setlocal ts=4 sw=4 expandtab
- 用 :set list 可以看到 Tab 和行尾空格
- gg=G 是快速格式化整个文件的好方法