Linux编辑器-vim使用
文章目录
一、vim的基本概念
vim是一款多模式的编辑器,具有十几种模式,每种模式在用法和差别上各不相同,我们只要学习其中最常用的3~5种即可。
vim是一个单纯的编辑器
1.vim的三种模式
- 命令模式:
也称正常模式,控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode(插入模式)下,或者到 last line mode(底行模式)。
- 插入模式:
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式
- 底行模式:
也称末行模式,负责文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。
二、vim的基本操作
- 进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面:
- 比如
vim test.c
,进入test.c- 需要特别注意的是,进入vim之后,是处于[命令模式],要切换到[插入模式]才能够输入文字,进行代码编写
- [命令模式]切换至[插入模式]
- 输入i,a,o均可,一般输入i较为常见,后面会做详细介绍,进入插入模式后,底面会出现提示
- [插入模式]切换至[命令模式]
- 按ESC(退出键)即可
- [命令模式]切换至[底行模式]
shift :
即可,末行模式回到命令模式也是按ESC(从其他模式返回命令模式都是按ESC)
- 退出vim及保存文件
进入底行模式
w
:保存当前文件wq
:存盘并退出vimq
:退出q!
:不存盘强制退出vim
三、vim命令模式命令集
1.插入模式与命令模式转换
按
i
切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按a
进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按o
进入插入模式后,是插入新的一行,从行首开始输入文字。
从插入模式切换为命令模式,按ESC
键。
2.移动光标
vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母h
、j
、k
、l
,分别控制光标左、下、上、右移一格,除此,vim还有许移动光标的命令
命令 | 作用 |
---|---|
按「G」 | 移动到文章的最后 |
按[gg] | 进入到文本开始 |
按「#G」 | 移动到第#行 |
按「 $ 」 | 移动到光标所在行的“行尾” |
按「^」 | 移动到光标所在行的“行首” |
按「w」 | 光标跳到下个单词的开头 |
按「e」 | 光标跳到下个单词的字尾 |
按「b」 | 光标回到上个单词的开头 |
按「#l」 | 光标移到该行的第#个位置,如:5l,56l |
按「ctrl」+「b」 | 屏幕往“后”移动一页 |
按「ctrl」+「f」 | 屏幕往“前”移动一页 |
按「ctrl」+「u」 | 屏幕往“后”移动半页 |
按「ctrl」+「d」 | 屏幕往“前”移动半页 |
3.复制
命令 | 作用 |
---|---|
「yw」 | 将光标所在之处到字尾的字符复制到缓冲区中。 |
「#yw」 | 复制#个字到缓冲区 |
「yy」 | 复制光标所在行到缓冲区。 |
「#yy」 | 例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。 |
「p」 | 将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。 |
「#p」 | 执行#次p操作 |
4.剪切/删除文字
被删除的文字会移入缓冲区,就相当于剪切了,可以和p命令配合做剪切粘贴操作
命令 | 作用 |
---|---|
「x」 | 每按一次,删除光标所在位置的一个字符 |
「#x」 | 例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符 |
「X」 | 大写的X,每按一次,删除光标所在位置的“前面”一个字符 |
「#X」 | 例如,「20X」表示删除光标所在位置的“前面”20个字符 |
「dd」 | 删除光标所在行 |
「#dd」 | 从光标所在行开始删除#行 |
5.替换
命令 | 作用 |
---|---|
「r」 | 替换光标所在处的字符。例如rw 是将该光标字符改为w |
「R」 | 替换光标所到之处的字符,直到按下「ESC」键为止。 |
「shift + ~」 | 该光标所在字母的大小写切换,如果不是字母不受则不受影响。按着不松可以进行多个字母的大小写切换 |
6.撤销上一次操作
命令 | 作用 |
---|---|
「u」 | 如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次撤销。 |
「ctrl + r」 | 撤销的恢复,俗称撤销“撤销”。 |
7.总结
四、vim底行模式命令集
- 列出行号:
「set nu」: 输入「set nu」后,会在文件中的每一行前面列出行号。
「set nonu」: 取消行号
- 跳到文件中的某一行:
「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。
- 查找字符:
「/关键字」: 先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。
- 保存文件:
「w」: 在冒号输入字母「w」就可以将文件保存起来
- 离开vim:
「q」:按「q」就是退出,如果无法离开vim,可以在「q」后跟一个「!」强制离开vim。
「wq」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。
- 分屏操作:
底行模式下输入vs加需要分屏的文档,比如我想分屏test.h文档
光标在哪里,就是在操作哪个文档
输入ctrl ww
在界面中切换
五、vim的配置
我们可以对vim进行配置,使之编写c/c++代码更加方便。下面分享一种配置的配置方法。
在 shell 中执行指令(想在哪个用户下让vim配置生效, 就在哪个用户下执行这个指令. 强烈 “不推荐” 直接在 root 下执行):
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
需要按照提示输入 root 密码. (您的 root 密码不会被上传, 请放心输入)。
具体内容点击右侧链接查看(点我查看)