文章目录
- 前言
- vim的基本概念
- vim的基本操作
- vim正常模式命令集
- (1)复制与粘贴
- (2)删除
- (3)光标移动和定位
- (4)撤销与反撤销
- vim底行模式命令集
- (1)查找
- (2)跨文件操作
- 补充
- 结束语
前言
博主之前使用的VS属于IDE,即集成开发环境,具体来说也就是编辑器、编译器以及调试器等等各种功能集成与一体的软件,可以在此软件上同时完成编辑、编译以及调试运行等多项功能,使用成本大幅降低。
而在Linux当中编写各种编程语言,虽然也有集成的开发环境,但是为了深入理解计算机,简而言之为了学习!我们需要刻意的让集成环境分开,以便深入学习计算机。
而Linux中,编写代码使用vim编辑器,编译代码使用gcc/g++编译器,调试代码时使用gdb调试器等等。
博主在这里主要以入门的级别去介绍vim编辑器的使用方法和常用命令
vim的基本概念
一般我们使用的vim编辑器,常用模式有三种模式,即正常模式(normal mode)、插入模式(insert mode)和底行模式(last line mode),各模式的功能如下:
- 正常模式(Normal mode)
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段,说白了其实就是除了不允许写入以外,其他事情都能做。
- 插入模式(Insert mode)
只有在Insert mode下,才可以做文字输入,按i计进入Insert mode,按[Esc]键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
- 底行模式(Last line mode)
文件保存或退出,可以进行文件替换,找字符串,列出行号等操作。在正常模式下,shift+: 即可进入该模式。
vim的基本操作
进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面,如:
vim test.c
前提是需要创建好该文件。
1、进入插入模式的三种方式
使用vim编辑器打开文件后,可以有三种方式进入插入模式,略有区别
方式 | 描述 |
---|---|
i | 光标原味,不会移动 |
a | 光标向后移动 |
o | 光标移至下一行 |
2、如何返回命令模式
按下 Esc
即可返回命令模式
3、如何进入末行模式
切换为命令模式后,输入shift+:
,即可进入末行模式。在末行模式中可以进行保存,退出等操作。需要保存时输入w!
,需要退出时输入q!
,保存并推出则输入wq!
。(!
表示强制执行)如下:
vim正常模式命令集
注意的是我所指的大写字母,如G
,其实等于shift+g
(1)复制与粘贴
1、复制粘贴单行
- 按下
yy
将光标所在行复制到缓冲区 - 按下
p
将缓冲区字符粘贴至光标所在行的下一行
2、复制粘贴多行
- 输入
nyy
,复制n行 - 输入
np
,粘贴n行
(2)删除
1、删除某行
- 输入
dd
表示删除光标所在行
2、剪切
- 输入
ndd
,可以删除n行
3、删除多行
- 输入
ndd
,可以删除n行(同样可以进行多行剪切)
4、删除字符
- 输入
x
,删除光标所在的字符,输入一次删除一个 - 输入
nx
,删除光标所在位置及以后的n个字符 - 输入
X
,删除光标所在位置的前一个字符 - 输入
nX
,删除光标所在位置及以前的n个字符
(3)光标移动和定位
1、光标的上下定位
- 输入
gg
即可将光标定位至开始 - 输入
G
即可将光标定位至末尾 - 输入
nG
,即可将光标定位至第n行
2、光标的左右定位
- 输入
$
,将光标定位至所在行行尾 - 输入
^
,将光标定位至所在行行首 - 输入
w
,将光标定位至所在行下个单词的首字母 - 输入
b
,将光标定位至所在行上个单词的首字母 - 输入
nl
,光标移到该行的第n个位置,如:5l,6l
3、hjkl
- 输入
h
,将光标向前移动到上一个字符 - 输入
j
,将光标向下移动到下一行 - 输入
k
,将光标向上移动到上一行 - 输入
l
,将光标向后移动到下一个字符
4:打开时定位
- 输入
vim test.c +n
,表示打开文件后定位到test.c的第n行,该操作经常用于定位错误日志所在行
(4)撤销与反撤销
- 输入
u
表示撤销上次操作 - 输入
ctrl+r
表示反撤销
vim底行模式命令集
(1)查找
- 输入
/[查询关键字]
,可以查找所有匹配的关键字,然后高亮显示,按住n可以向下在关键字中切换 - 输入
?[查询关键字]
,可以查找所有匹配的关键字,然后高亮显示,按住n可以向上在关键字中切换
(2)跨文件操作
1、分屏
- 输入
vs[文件名]
(没有将自动创建,即可分屏)
2、切换窗口 - 在命令模式下,输入
ctrl+w+w
(连按两下w),即可在打开的窗口中来回切换
补充
1、大小写转换
- 输入
shift+~
即可将光标所在的字母在大小和小写间来回切换
2、打开上次编辑的文件
- 在终端输入
!vim
可以打开上次编辑的文件
3、快速退出
- 快速输入两次大写Z,也即
ZZ
,即可快速保存并退出(normal mode)
4、批量化注释
使用批量化注释,需要进入vim的块模式状态下。比如注释C语言文件,首先光标移动到需要开始注释的地方,然后进入命令模式,按下ctrl+v
,进入块模式,接着使用h j k l
进行区域选择,然后输入大写的I
,接着输入你要输入的符号,这里比如要输入//
,接着快速按两下esc
,完成注释。
结束语
vim手册 ,更多详细介绍,请看链接吼。