Vim键盘快捷键:删除代码而不删除if语句

人生与希望

对于所有那些vim专家来说,这可能是一个基本的vim问题。

如果要删除特定的if语句及其右括号,但又不想删除表达式中的代码,如何通过一些键盘快捷键来实现?

例如:

if (a == 2) {
    // do not delete this part.
    for (int i = 1; i < 10; i++) {
      // code 
    }
}

结果将是:

// do not delete this part.
for (int i = 1; i < 10; i++) {
  // code 
}

谢谢你的帮助。

扎克

使用if语句将光标移动到行的任何位置。这是命令的顺序(将在后面说明)

$%dd''.

说明

$转到该行的末尾(光标现在处于{)。

%转到匹配的花括号(或括号等)。游标现在在}if语句中

dd删除光标所在的行(}现已删除)

''转到最后一跳的行。最后一跳是我们使用的时候%(光标返回到if语句行)

.重复上一个命令(dd)。这将删除行(如果现在删除了语句行)

结果:

    // do not delete this part.
    for (int i = 1; i < 10; i++) {
        // code 
    }

缩进将关闭,因此您可以使用gg=G(正确缩进文件)修复它。

如果您大量这样做,则可以将其映射到.vimrc中的键,也可以将其映射

使其成为映射:

.vimrc中的映射示例:

nnoremap <C-d> $%dd''.gg=G

每当按下control-d(您可以选择任何键,只需替换<C-d>),Vim就会运行这些命令,执行我之前解释过的操作,然后执行整个文件缩进。使用此命令时,请确保光标位于if语句行上,否则可能会导致意外的结果。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

禁用/删除肉桂键盘快捷键

来自分类Dev

如何删除Anaconda的键盘快捷键

来自分类Dev

禁用/删除肉桂键盘快捷键

来自分类Dev

如何删除Anaconda的键盘快捷键

来自分类Dev

如何删除键盘快捷键

来自分类Dev

如何在tinyMCE 4中删除键盘快捷键?

来自分类Dev

在Windows 8中删除键盘快捷键

来自分类Dev

晶须菜单删除键盘快捷键

来自分类Dev

重击:使用键盘快捷键从光标删除到行尾

来自分类Dev

查找并删除系统范围内的键盘快捷键

来自分类Dev

如何删除或替换Mac键盘快捷键?

来自分类Dev

如何删除Chromium中的所有键盘快捷键?

来自分类Dev

MS是否删除了Windows + X键盘快捷键?

来自分类Dev

删除对 WIN+L 键盘快捷键的访问

来自分类Dev

无法从键盘快捷键启动 vim

来自分类Dev

删除键分配给键盘快捷键,现在不起作用

来自分类Dev

删除键分配给键盘快捷键,现在不起作用

来自分类Dev

如何删除Unity的快捷键,它是键盘上的“ Meta”键

来自分类Dev

粘贴后删除格式的快捷键?

来自分类Dev

Atom中的“删除两个括号”键盘快捷键?

来自分类Dev

Windows 7:安全删除硬件键盘快捷键不起作用

来自分类Dev

如何自定义Emacs键盘快捷键以删除当前行

来自分类Dev

是否有键盘快捷键可以删除libreoffice writer中的表?

来自分类Dev

Atom中的“删除两个括号”键盘快捷键?

来自分类Dev

为vim命令设置键盘快捷键

来自分类Dev

移动窗口的 Vim 键盘快捷键不起作用

来自分类Dev

在Ubuntu Linux上更改代码块的键盘快捷键

来自分类Dev

在Ubuntu Linux上更改代码块的键盘快捷键

来自分类Dev

Visual Studio 代码自定义键盘快捷键

Related 相关文章

热门标签

归档