它应该很小,甚至可能在帮助中,但我不知道如何导航它。如何在vi中快速缩进多行?
当前回答
执行以下操作:
$vi .vimrc
并添加此行:
autocmd FileType cpp setlocal expandtab shiftwidth=4 softtabstop=4 cindent
这仅适用于cpp文件。您可以对其他文件类型执行此操作,也可以通过修改文件类型。。。
其他回答
假设您使用2个空格缩进代码。类型:
:set shiftwidth=2
键入v(进入视觉块编辑模式)使用箭头键(或使用h/j/k/l)移动光标以高亮显示要缩进或不缩进的行。
然后:
键入>以缩进一次(2个空格)。键入2>以缩进两次(4个空格)。键入3>以缩进三次(6个空格)。...键入<以取消缩进一次(2个空格)。类型2<取消缩进两次(4个空格)。类型3<至无凹痕三次(6个空格)。...
你明白了。
(空行不会缩进,我觉得这有点不错。)
我在(g)vim文档中找到了缩进块的答案:
:help visual-block
/indent
如果要给命令计数,请在键入之前执行此操作运算符字符:“v{movearound}3>”(将第3行缩进到右侧)。
我使用块模式视觉选择:
到块的前面移动(在顶部或底部)。按Ctrl+V进入视觉块模式。导航以选择行前面的列。按I(Shift+I)进入插入模式。键入一些空格。按Esc键。所有线路都会移位。
这不是一蹴而就。它起作用:
在队伍中间。在所有行上插入任何字符串。要更改列(使用c而不是I)。拖动、删除、替换等。。。
对于C缩进缩进,也可以尝试此操作。Do:help=了解更多信息:
={
这将自动缩进当前代码块。
或者只是:
==
自动缩进当前行。
当您选择一个块并使用>缩进时,它将缩进,然后返回正常模式。我的.vimrc文件中有这个:
vnoremap < <gv
vnoremap > >gv
它使您可以根据需要多次缩进所选内容。
除了提供的解决方案之外,我喜欢用>}一段一段地做事情
推荐文章
- JavaScript错误(Uncaught SyntaxError:意外的输入结束)
- 使用vimdiff查看所有' git diff '
- 禁止在vim中创建交换文件
- NERDTree重载新文件
- 在Vim中,我想返回一个词。w的反义词
- 在tmux模式中丢失vim配色方案
- 在VIM中删除光标后面或周围的单词
- 如何在vi文本编辑器中获得文件的sudo访问权限?
- 我如何可以删除在VIM所有文本从当前行文件结束?
- 如何在vim中剪切一整行并粘贴它?
- /etc/apt/sources.E212:无法打开文件写入
- 向左/向右移动窗口?
- 如何使Vim不突出显示所搜索的内容?
- 哪些Vim命令可以用来引用/取消引用单词?
- 如何从文件跳转回NERDTree在选项卡?