初识Vim
Vim是一个强大的文本编辑器,通常在命令行界面中使用。:
-
模式:Vim有不同的模式,包括正常模式、插入模式和可视模式。在正常模式下,你可以执行各种命令,如移动光标、复制、粘贴等。
-
快捷键:Vim使用大量的快捷键来执行各种操作。例如,要复制文本,你可以在正常模式下按下
yy
,要粘贴文本,可以按下p
。 -
插入模式:在插入模式下,你可以像普通文本编辑器一样输入文本。按下
i
进入插入模式,在插入模式下按Esc
返回正常模式。 -
可定制性:Vim非常可定制,你可以根据自己的需求配置它,添加插件和自定义快捷键。
-
强大的搜索和替换:Vim允许你使用正则表达式进行高级搜索和替换操作。
-
分屏和多窗口:你可以在Vim中分割窗口,同时编辑多个文件或多个部分的同一文件。
-
扩展性:有很多Vim插件可用,可以增加编辑器的功能,例如代码高亮、自动完成等。
-
学习曲线:Vim有陡峭的学习曲线,但一旦掌握,它可以极大提高你的编辑效率。
-
跨平台:Vim可在多种操作系统上运行,包括Linux、macOS和Windows。
要开始使用Vim,你可以打开终端并输入vim
,然后按i
进入插入模式以开始编辑文本。
1.> 准备工作
vim --version
没有的情况安装vim
# su - root
#yum install vim
2.>创建文件
vim file920.txt
在Vim中保存文件的方式是通过在正常模式下执行以下命令:
- 按下
Esc
,确保你在正常模式下。 - 输入
:w
并按下Enter
。
这将保存当前编辑的文件。如果你要保存文件并退出Vim,可以执行以下步骤:
- 按下
Esc
,确保你在正常模式下。 - 输入
:wq
并按下Enter
。
这将保存文件并退出Vim。如果你只想退出而不保存文件,可以执行以下步骤:
- 按下
Esc
,确保你在正常模式下。 - 输入
:q!
并按下Enter
。
这将强制退出Vim而不保存任何更改。如果文件没有更改,你可以简单地输入:q
来退出Vim。
这些是保存和退出Vim的基本命令。请注意,在Vim中使用冒号(:
)会进入命令行模式,让你能够执行各种操作,包括保存和退出。
3.>输入文本 按insert键可以将插入变为替换
在Vim中输入文本有几种不同的模式,最常用的是插入模式。以下是如何进入插入模式以输入文本的步骤:
-
打开终端并输入
vim 文件名
来创建或编辑一个文件。如果文件不存在,Vim将创建一个新文件。 -
在正常模式下,按下
i
键,这将使你进入插入模式。现在你可以像普通文本编辑器一样输入文本。 -
输入你想要的文本内容。你可以自由编辑,输入文字、删除、添加等。
-
当完成编辑后,按下
Esc
键,以返回到正常模式。 -
如果你想保存文件,可以执行
:w
命令,然后按下Enter
。如果你还想退出Vim,可以执行:q
命令。
如果你想在光标之前插入文本,而不是在当前光标位置后插入,你可以在正常模式下按下 I
键(大写的 “I”),这将使光标移动到当前行的开头,然后开始插入。
还有其他插入模式的选项,如
a
(append,在当前光标位置之后插入)、
A
(append to end of line,在当前行的末尾插入)、
o
(open a new line below,在当前行下插入新行) 和
O
(open a new line above,在当前行上插入新行) 等等,可以根据需要选择使用。
这些是基本的Vim文本输入操作,一旦熟悉了这些,你就可以开始使用Vim进行文本编辑。
4.>移动光标
在Vim中,你可以使用键盘上的箭头键以及其他一些特殊的移动命令来移动光标。以下是一些常见的光标移动命令:
-
使用箭头键:
- 向上移动:
↑
或k
- 向下移动:
↓
或j
- 向左移动:
←
或h
- 向右移动:
→
或l
- 向上移动:
-
使用单词级别的移动:
- 向前移动一个单词:
w
- 向后移动一个单词:
b
- 向前移动一个单词:
-
使用行级别的移动:
- 移动到行的开头:
0
- 移动到行的第一个非空字符:
^
- 移动到行的末尾:
$
- 移动到行的开头:
-
使用屏幕滚动:
- 向上滚动一屏:
Ctrl + u
- 向下滚动一屏:
Ctrl + d
- 向上滚动一屏:
-
跳转到特定行:
- 跳转到指定行号(例如,跳转到第10行):
10G
或:10
(进入命令行模式)
- 跳转到指定行号(例如,跳转到第10行):
-
搜索并跳转:
-
向前搜索关键字:
/关键字
,然后按下Enter
,使用n
来查找下一个匹配项 -
-
向后搜索关键字:
?关键字
,然后按下Enter
,使用N
来查找上一个匹配项
-
这些是Vim中最常用的光标移动命令。通过结合使用这些命令,你可以在文本中自如地移动光标,快速导航和编辑文件。要记住,Vim的效率在于熟练掌握这些命令和快捷键。
5.>删除
在Vim中,你可以使用不同的命令来删除文本,取决于你想要删除的内容和位置。以下是一些常见的删除命令:
-
删除字符:
- 删除光标所在位置的字符:按下
x
。 - 删除光标前面的字符:按下
X
(大写的 “X”)。
- 删除光标所在位置的字符:按下
-
删除单词:
- 删除光标所在位置的单词:按下
dw
(d
表示删除,w
表示单词)。 - 删除光标前面的单词:按下
d
空格b
。
- 删除光标所在位置的单词:按下
-
删除行:
- 删除光标所在行:按下
dd
。 - 删除指定行数的行,例如删除当前行和下面的两行:
d3d
。
- 删除光标所在行:按下
-
删除至行末:
- 删除从光标位置到当前行末的内容:按下
D
。
- 删除至行首:
- 删除从光标位置到当前行首的内容:按下
d0
(注意0
是数字零)。
-
删除选定文本:
- 进入可视模式:按下
v
。 - 移动光标以选择文本。
- 删除选定的文本:按下
d
。
- 进入可视模式:按下
-
删除至指定字符:
- 删除从光标位置到指定字符的内容,例如删除到下一个分号:
dt;
。
- 删除至匹配字符:
- 删除从光标位置到匹配的括号、大括号或引号等字符,例如删除到下一个右括号:
dt)
。
-
删除多行:
- 进入行选择模式:按下
Shift + V
。 - 移动光标以选择多行。
- 删除选定的多行:按下
d
。
10.删除列:
要在Vim中删除一列文本,你可以使用"块删除"的方式,以下是步骤:
-
进入正常模式(按下
Esc
键)。 -
将光标移到你要删除的列的起始位置。
-
按下
Ctrl + v
进入可视块模式(Visual Block Mode)。 -
使用箭头键(或
h
、j
、k
、l
)选择要删除的列。 -
按下
d
键,这将删除所选的列。 -
最后,按下
Esc
退出可视块模式。
这将删除你选定的列。如果需要保存更改,可以执行
:w
命令保存文件,然后使用:q
退出 Vim。如果不需要保存更改,可以使用:q!
命令强制退出而不保存。 - 进入行选择模式:按下
请注意,删除操作通常会将文本放入Vim的剪贴板中,这样你可以粘贴被删除的内容。要粘贴被删除的内容,可以在正常模式下按下 p
。如果你不想将内容放入剪贴板,可以使用 "_d
命令来执行删除操作,例如 "_dw
将删除一个单词但不将其放入剪贴板。
这些是Vim中用于删除文本的基本命令。根据你的需要,你可以组合使用这些命令来进行更复杂的文本编辑。
6.>撤销和重复
在Vim中,你可以使用撤销和重复命令来更改编辑操作。以下是如何在Vim中执行这些操作的方法:
撤销(Undo):
-
在正常模式下,按下
u
键,这将撤销最近的编辑操作。每按一次u
,就会撤销上一步操作。 -
若要多次连续撤销,可以使用
u
键的前缀数字。例如,要撤销5次,可以输入5u
。
重复(Redo):
-
在正常模式下,按下
Ctrl + r
键,这将重做最近的被撤销的操作。每按一次Ctrl + r
,就会重做上一步被撤销的操作。 -
同样,要多次连续重做,可以使用
Ctrl + r
键的前缀数字。例如,要重做3次,可以输入3Ctrl + r
。
请注意,撤销和重做在Vim中是非常有用的,因为它们允许你在编辑时更轻松地回退和再次执行操作。这对于避免误操作和提高编辑效率非常有帮助。
7.保存和退出
在Vim中,要保存文件并退出有几种常用的方法,具体取决于你的需求和编辑状态。以下是一些常见的保存和退出命令:
-
保存文件并退出:
- 进入正常模式(按下
Esc
键)。 - 输入
:wq
并按下Enter
键。这将保存文件并退出Vim。
- 进入正常模式(按下
-
保存文件但不退出:
- 进入正常模式(按下
Esc
键)。 - 输入
:w
并按下Enter
键。这将仅保存文件,但不退出Vim。
- 进入正常模式(按下
-
不保存文件并退出:
- 进入正常模式(按下
Esc
键)。 - 输入
:q
并按下Enter
键。这将退出Vim,如果文件有未保存的更改,Vim会阻止你退出。
- 进入正常模式(按下
-
强制不保存文件并退出:
- 如果有未保存的更改,进入正常模式(按下
Esc
键)。 - 输入
:q!
并按下Enter
键。这将强制退出Vim并放弃未保存的更改。
- 如果有未保存的更改,进入正常模式(按下
-
在保存时确认退出:
- 进入正常模式(按下
Esc
键)。 - 输入
:wq
并按下Enter
键。如果有未保存的更改,Vim会提示你是否保存。按y
以保存并退出,按n
放弃保存并退出。
- 进入正常模式(按下
这些是保存和退出Vim的常见方式。你可以根据需要选择其中一种。如果你想了解更多关于Vim的命令和功能,请查阅Vim的帮助文档,它提供了详细的信息和示例。
非正常退出的CTRL+Z
按R
8.帮助文档
在Vim中,你可以使用内置的帮助系统来获取关于编辑器功能和命令的详细信息。以下是如何访问和使用Vim帮助文档的方法:
-
打开帮助文档:
- 进入正常模式(按下
Esc
键)。 - 输入
:help
并按下Enter
键。
- 进入正常模式(按下
-
搜索帮助文档:
- 在打开的帮助文档中,你可以输入关键字来搜索特定的主题或命令。例如,要查找有关复制和粘贴的信息,可以输入
:help copy-paste
。
- 在打开的帮助文档中,你可以输入关键字来搜索特定的主题或命令。例如,要查找有关复制和粘贴的信息,可以输入
-
导航帮助文档:
- 使用箭头键、
Page Up
、Page Down
等来浏览帮助文档。 - 输入
:q
来退出帮助文档并返回正常模式。
- 使用箭头键、
-
帮助索引:
- 输入
:help index
来打开帮助索引,其中包含了Vim帮助文档的大纲和主题列表。
- 输入
-
查找命令帮助:
- 如果你知道要查找的特定命令,可以使用
:help
命令,然后输入命令名称。例如,要查找有关删除命令的信息,可以输入:help delete
。
- 如果你知道要查找的特定命令,可以使用
-
按主题查找:
- 如果你不确定要查找什么,可以在搜索之前浏览帮助索引以查看可用的主题。
-
离开帮助文档:
- 输入
:q
或按下Ctrl + c
来关闭帮助文档并返回正常模式。
- 输入
Vim的帮助文档非常详尽,提供了关于Vim的各个方面的信息,包括基本操作、高级功能、插件、配置等等。它是学习和掌握Vim的重要资源之一,特别是对于新手来说。通过查阅帮助文档,你可以快速了解如何使用Vim的各种功能和命令。
9.复制、剪切
在Vim中,你可以使用以下方式进行复制和剪切操作:
复制文本:
- 进入正常模式(按下
Esc
键)。 - 移动光标到你想要复制的文本起始位置。
- 按下
v
进入可视模式(Visual Mode)。 - 使用箭头键或移动光标来选择要复制的文本。
- 按下
y
键,这将复制所选的文本。 - 退出可视模式,按下
Esc
键。 - 移动光标到你想要粘贴复制的文本的位置。
- 按下
p
键,这将粘贴复制的文本。
剪切文本:
- 进入正常模式(按下
Esc
键)。 - 移动光标到你想要剪切的文本起始位置。
- 按下
v
进入可视模式(Visual Mode)。 - 使用箭头键或移动光标来选择要剪切的文本。
- 按下
x
键,这将剪切所选的文本。 - 退出可视模式,按下
Esc
键。 - 移动光标到你想要粘贴剪切的文本的位置。
- 按下
p
键,这将粘贴剪切的文本。
这些是在Vim中进行复制和剪切文本的基本步骤。你可以根据需要进行多次操作,以便复制或剪切多个文本片段。请记住,Vim的可视模式允许你以精确的方式选择文本,这在编辑时非常有用。
在Vim中,你可以使用以下方式来复制和剪切当前行或当前列:
复制当前行:
-
进入正常模式(按下
Esc
键)。 -
移动光标到当前行。
-
输入以下命令:
yy
(复制当前行)。或者可以使用Y
键来完成相同的操作。
剪切当前行:
-
进入正常模式(按下
Esc
键)。 -
移动光标到当前行。
-
输入以下命令:
dd
(剪切当前行)。
复制当前列:
-
进入正常模式(按下
Esc
键)。 -
移动光标到当前列的起始位置。
-
进入可视块模式(Visual Block Mode),按下
Ctrl + v
。 -
使用箭头键或移动光标来选择当前列。
-
输入以下命令:
y
(复制所选列)。
剪切当前列:
-
进入正常模式(按下
Esc
键)。 -
移动光标到当前列的起始位置。
-
进入可视块模式(Visual Block Mode),按下
Ctrl + v
。 -
使用箭头键或移动光标来选择当前列。
-
输入以下命令:
d
(剪切所选列)。
请注意,在复制或剪切列时,你需要进入可视块模式(Visual Block Mode)来选择列。这允许你选择和操作列的内容,而不是整行。一旦选择了列,你可以像之前解释的那样进行复制或剪切操作。
10.记录回放
在Vim中,你可以使用宏(macro)来记录一系列编辑操作,然后将它们回放在其他地方。以下是如何记录和回放宏的步骤:
记录宏:
-
进入正常模式(按下
Esc
键)。 -
按下
q
键,然后紧接着按下一个字母键,用于指定宏的寄存器,例如q
。 -
此时,Vim会开始录制你的宏。在这个时候,你可以执行一系列编辑操作,例如移动光标、插入文本、删除文本等。
-
完成宏录制后,按下
q
键,结束录制。
回放宏:
-
进入正常模式(按下
Esc
键)。 -
输入
@
后跟之前分配给宏的寄存器字母,例如@q
。 -
Vim会自动重放之前录制的宏,执行与录制时相同的一系列编辑操作。
这允许你选择和操作列的内容,而不是整行。一旦选择了列,你可以像之前解释的那样进行复制或剪切操作。