我们都会犯错,犯错是人之常情,改进也很重要。
如果你在 Vim 你可以犯错误在普通模式下使用删除单词。dd它将删除当前行。
如果要在 Vim 中删多行,可以用同样的 dd Vim 将行数添加到命令中。
因此,10dd删除光标底部 10 行(包括光标所在行)。
让我们详细了解如何在以效率着称的编辑器中删除一行或多行。
删除单行
以下是在 Vim 中删除单行文本的步骤:
- 按 Escape (Esc) 键进入 Normal 模式
- 确保光标位于要删除的行上。
- 快速按下dd
这将删除光标所在的整行。
正如你在 gif 我在第一行看到了。dd命令只删除了第一行。
指定要删除的行数
在你使用dd在命令删除一行之前,你可以在它前面指定一个数字 Vim 一次删除几行。
以下是语法:
:[num]dd
当您指定数字替换时 时num,Vim 开始删除行,你可以认为这是 Vim 多次执行dd命令num。
指定要删除的行程范围
不需要指定从现在到底要删除多少行。你只需要告诉我 Vim 应该从哪一行删除,直到哪一行。
以下是删除一系列行的语法:
:[begin],[end]d
让我们分解这个语法…
- :(冒号)表示它是 Vim 命令。
- begin告诉 Vim 从哪一行开始
- end告诉 Vim 删除的最后一行是什么?
- dVim 删除命令
此外,以下是指定范围内的字符(用于开始和结束):
- .(当前行)
- $(文件中的最后一行)
- %(所有行)
让我们从几个例子中学习。
- :10,45d- 从第 10 行删除到第 45 行
- :.,$d- 从当前删除到最后一行
- :.,1d- 从当前删除到文件开始
- :dgg- 从当前删除到文件开始
删除所有行
如前所述,该%符号用于指定从文件开始到结束的范围,基本上是所有行。
这意味着,要删除 Vim 中文件的所有行,您需要使用:%d命令。
删除与特定模式匹配的行
除此之外 Vim 魔法,你知道你可以删除匹配特定模式吗?
:g/PATTERN/d
要执行相反的操作,删除与指定模式不匹配的行,您可以使用以下指定的语法。
:g!/PATTERN/d
分解它,我们得到以下元素:
- g- 全局搜索(即整个文件)
- !- 反向匹配
- PATTERN- 匹配模式
- d- 删除命令
如果您在 Vim 在下列命令的运行中,它将删除行中的所有extern crate模式行。
:g/extern\ crate/d
删除所有空行
要删除空行,模式匹配需要使用正则表达式。以下是删除空行的命令:
:g/^$/d
在正则表达式中,^$模式表示任何从换行符开始的行,本质上都是空行。