From b85e30381feba9a6c8fdfd616d9a71301ae815ab Mon Sep 17 00:00:00 2001 From: cxykevin Date: Tue, 27 Aug 2024 19:47:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shell_and_shell_script/vim_editor.md | 37 ++++++++++--------- 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/src/learn_linux_basic/shell_and_shell_script/vim_editor.md b/src/learn_linux_basic/shell_and_shell_script/vim_editor.md index 4106968..5dcee6c 100644 --- a/src/learn_linux_basic/shell_and_shell_script/vim_editor.md +++ b/src/learn_linux_basic/shell_and_shell_script/vim_editor.md @@ -1,6 +1,6 @@ # Vim 编辑器 -> 在下文中,键盘按键会使用 `<按键>` 来表示,例如 `` 表示回车键,`` 表示 Esc 键。下面所有的键位注意区分大小写,所有大写的命令都需要按下 `Shift` 键,例如 `V` 表示为 `` + `v` +> 在 Vim 中所有的键位注意区分大小写,所有大写的命令都需要按下 `Shift` 键,例如 `V` 表示为 `S-v` 不知道你有没有听说过 Bram 发明的 Vim 编辑器,有这么一个梗,就是: @@ -38,6 +38,19 @@ vim [文件名] 如果看不懂也没关系,下面我们会讲解其中常用的一些功能。 +### Vim 的“模式” + +Vim 有一个最基本的东西“模式”,在不同模式下,快捷键的功能会有所不同。Vim 会在左下角提示你所在的模式。 + +以下是常见的模式: + +- `命令模式` 这个是 Vim 启动所在的模式,以下的所有内容均在这个模式内进行。其它模式均可以使用 `Esc` 退出到命令模式。 +- `编辑模式` 使用 `i` 进入,底部会提示 `-- INSERT --`(`-- 插入 --`),在这个模式下,你可以正常编辑文档,和一般的文本编辑器无异。 + - `替换模式` 底部会提示 `-- REPLACE --`(`-- 替换 --`),使用 `R` 进入,这个模式与编辑模式差别不大,但是你输入的所有内容都会替换光标后的内容。 +- `选择模式` 原名是“可视模式”,使用 `v` 进入,底部会提示 `-- VISUAL --`(`-- 可视 --`),你可以选择一段文本进行操作。 + - `选择行模式` 使用 `V` 进入,底部会提示 `-- VISUAL LINE --`(`-- 可视 行 --`),此时所有的选择都变成了整行选择。操作没有任何区别。 +- `底部命令行模式` 使用 `:`、`/`、`?` 进入(功能不同),此时整个底部都会变成命令行,以 `:` 与 `/` 等字符开头,此时可以输入命令,按下 `Enter` 就可以执行并退出。 + ### 移动光标 在命令模式下,我们可以使用键盘上的方向键来移动光标。但是,我们也可以使用 Vim 提供的命令来移动光标: @@ -52,17 +65,9 @@ vim [文件名] > 当你熟悉了 `hjkl` 的使用后,你会发现使用这几个命令比使用方向键快多了 -### 插入模式 +### 命令行 -在命令模式按下 `i` 键,就可以进入插入模式,此时就可以像 Nano 一样打字了。 - -> 在最下面会有一个 `-- INSERT --`(`-- 插入 --`) 的提示,表示当前处于插入模式。 - -其中,文件下面每行最前面的 `~` 表示空行(文件中不存在的行)。 - -### 命令行模式 - -在命令模式按下 `:` 键,就可以进入命令行模式。我们会看到 Vim 界面最底下的那行最前面会出现一个冒号。此时我们就可以输入复杂的命令了。 +我们输入 `:` 就可以进入命令行(和上面的底部命令行模式有点区别)了。在 Vim 中,命令行负责了许多复杂的工作。 下面是最常见的命令组合: @@ -74,7 +79,7 @@ vim [文件名] > > 另外,在 `w` 命令后面可以接上文件保存的路径,实现另存为的功能,例如 `:w 1.txt` -其中命令行模式我们在下面还会细讲。 +其中命令行模式的其它功能我们在下面还会讲到。 ### 删除与剪切 @@ -125,11 +130,9 @@ vim [文件名] 这个命令是 `.`,没错,就是点。可以重复你的上一个命令。 -### 可视模式 +### 选择模式(可视模式) -可视模式,这个名字有点误导人。事实上,可视模式就是选择一段文字。(事实上你如果在终端中直接使用鼠标进入的就是这个模式) - -> 最下面的提示是: `-- VISUAL --`(`-- 可视 --`) +可视模式,这个名字其实有点误导人。事实上,这个模式就是选择一段文字。(事实上你如果在终端中直接使用鼠标进入的就是这个模式) 下面是在可视模式中的操作: @@ -140,8 +143,6 @@ vim [文件名] - `p` 覆盖粘贴 - `gg`、`G`、`0`、`$` 移动光标 -另外,使用 `V` 可以进入可视行模式,以行为单位选择内容。 - ### 查找内容 在 Vim 中,我们可以使用 `/` 进行查找,输入 `/` 然后再输入关键词。