VIM四种工作模式
- 命令模式:Vim启动后默认进入命令模式。在此模式下,可以使用光标键进行光标移动,也可以键入不同的命令完成选择、复制、粘贴、删除等操作。例如,按gg可以快速移动到文本行首,按G可以快速移动到文本行尾。
- 编辑模式:在命令模式下按i、a、o等键可以进入编辑模式,在此模式下可以输入文本。按Esc键可以退出编辑模式,返回到命令模式。
- 底行模式:在命令模式下按:键进入底行模式。此时光标会移到屏幕底部,可以输入相关指令保存修改或退出Vim,也可以设置编辑环境、寻找字符串、列出行号等。指令执行后会自动返回命令模式。
- 视图模式:它允许用户选择文本区域以便进行复制、剪切或删除等操作。
命令模式
光标命令
- 逐字符移动:
- h:向左移动一个字符。
- l:向右移动一个字符。
- j:向下移动一个字符(等同于按下行键)。
- k:向上移动一个字符(等同于按上键)。
- #h:向左移动#个字符(#为数字)。
- 以单词为单位移动:
- w:移至下一个单词的词首。
- e:跳至当前或下一个单词的词尾。
- b:跳至当前或前一个单词的词首。
- #w:向右移动#个单词。
- 行内跳转:
- 0:跳转至绝对行首。
- ^:跳转至行首的第一个非空白字符。
- $:跳转至绝对行尾。
- 行间跳转:
- #G:跳转至第#行(例如,150G代表跳转至第150行)。
- gg:跳转至第一行。
- G:跳转至最后一行。
- 翻屏:
- Ctrl+f:向下翻一屏。
- Ctrl+b:向上翻一屏。
- Ctrl+d:向下翻半屏。
- Ctrl+u:向上翻半屏。
文本编辑命令
- 复制:
- yy:复制当前行。
- nyy:从当前行开始复制n行。
- y$:从当前光标位置复制到行尾。
- y^:从当前光标位置复制到行首的非空白字符。
- 剪切:
- dd:剪切(删除)当前行。
- ndd:从当前行开始剪切n行。
- d$:从当前光标位置剪切到行尾。
- d^:从当前光标位置剪切到行首的非空白字符。
- 粘贴:
- p:在当前光标下一行粘贴复制或剪切的内容(如果复制或剪切的内容为非整行,则粘贴至光标所在字符的后面)。
- P:在当前光标上一行粘贴复制或剪切的内容(如果复制或剪切的内容为非整行,则粘贴至光标所在字符的前面)。
- 删除:
- x:删除光标所在处的单个字符。
- #x:删除光标所在处及向后的共#个字符。
- d:与跳转命令组合使用,如dw删除当前光标到下一个单词词首的内容,de删除当前光标到当前或下一个单词词尾的内容。
- 撤销与恢复:
- u:撤销前一次的编辑操作。
- #u:直接撤销最近#次编辑操作。
- Ctrl+r:恢复最近一次撤销的操作。
编辑模式
在命令模式下,用户可以通过以下按键组合进入编辑模式:
- i:在当前光标所在字符的前面插入文本。
- a:在当前光标所在字符的后面插入文本。
- o:在当前光标所在行的下方新建一行,并转到新行的行首插入文本。
- I:在当前行的行首插入文本(即光标移动到行首后再插入)。
- A:在当前行的行尾插入文本(即光标移动到行尾后再插入)。
- O:在当前光标所在行的上方新建一行,并转到新行的行首插入文本。
退出编辑模式
要退出编辑模式并返回到命令模式,用户只需按下Esc键。这样,用户就可以继续使用Vim的命令模式命令来浏览和编辑文档了。
底行模式(末行)
- 进入底行模式:在Linux终端中,用户可以通过输入冒号(:)来进入底行模式。一旦进入底行模式,用户就可以在命令行界面下输入各种命令。
- 退出底行模式:按Esc键可以退出底行模式,返回到命令模式。
文件编辑相关命令
- :w:保存当前文件。
- :q:退出编辑器。
- :q!:强制退出编辑器,放弃对文件的修改。
- :wq:保存并退出编辑器。
- :x:保存并退出编辑器,只有在文件有修改的情况下才会执行保存操作。
- :w filename:以指定的文件名保存当前文件。
搜索替换命令
- :/pattern:搜索指定模式的文本,可以使用正则表达式进行高级的匹配。
- : s/old/new:替换当前行第一个匹配的文本。
- :%s/old/new/g:替换整个文件中的所有匹配文本。
- :%s/old/new/gc:替换整个文件中的所有匹配文本,并给出提示是否替换。
文件定位命令
- :n:跳转到下一个文件。
- :N:跳转到上一个文件。
- :number 或 :#(#代表数字):跳转到文件的指定行,例如“:10”跳转到文件的第10行。
- : $: 跳转到文件的最后一行。
其他常用命令
- :ls:列出打开的所有文件。
- :e!:放弃对文件的修改并重新加载文件。
- :r filename:在当前光标位置插入另一个文件的内容。
- :set:查看或修改底行模式的参数设置。
- :file:显示当前编辑的文件名和文件类型。
- command:在底行模式下运行指定的Shell命令。
视图模式
- 字符视图模式:按v键进入,允许用户选择单个字符或字符块。
- 行视图模式:按V键进入,允许用户选择整行文本。
- 块视图模式:按Ctrl+v键进入,允许用户选择矩形块状的文本区域。
视图模式中的操作
进入视图模式后,用户可以使用方向键(h、j、k、l)来移动光标,从而选择所需的文本区域。选择完成后,用户可以使用以下命令对所选文本进行操作:
- 复制:按y键复制所选文本。
- 剪切:按d键剪切所选文本。
- 粘贴:退出视图模式后,按p键将复制的文本粘贴到当前光标位置。
视图模式退出:要退出视图模式并返回到命令模式,用户只需按下Esc键。
持续更新修正补充中