目录
1.vim基本概念
Vim是一个编辑器(只能写代码)
命令模式(默认打开时的模式):esc
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode
插入模式:i
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
底行模式:shift+:
文件保存:w
退出:q wq退出并保存 wq!强制退出并保存
也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。
1.2 vim基本指令
复制
将当前光标所在的行复制:yy 将复制行粘贴:p (yy 100p代表复制100行 )
一次性复制n行指令 (nyy p) 一次性复制5行指令,复制1000次(5yy 1000p)
yw:将光标所在之处到字尾的字符复制到缓冲区中
#yw:复制#个字到缓冲区
撤销
u,按多次“u”可以执行多次撤销
ctrl + r 撤销的恢复
移动光标
1.光标定位到文件结尾:shift+g 按[gg]:进入到文本开始
2.移动到光标所在行的“行尾” :$ 移动到光标所在行的“行首”:^
3.光标定位到任意行号: xxx +shift+g
按照单词为单位进行左右移动:b(左) w(右) e(光标跳到下个字的字尾)
5.vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母
「 h 」「 j 」「 k 」「 l 」,分别控制光标左、下、上、右移一格
6.按「x l」:光标移到该行的第x个位置,如:5l,56l
7.按「ctrl」+「b」:屏幕往“前”移动一页
按「ctrl」+「f」:屏幕往“后”移动一页
按「ctrl」+「u」:屏幕往“前”移动半页
按「ctrl」+「d」:屏幕往“后”移动半页
删除
「dd」:删除光标所在行(也可以充当剪切,同时支持ndd,然后p)
删除部分行数:8dd(从当前开始往下删八行)
「x」:每按一次,删除光标所在位置的一个字符 ,支持nx
shift+x:从右向左删
「#x」:例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符
「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符
「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符
替换
「r」:替换光标所在处的字符(nr ,n个字符都被替换)
「R」:替换光标所到之处的字符,直到按下「ESC」键为止。
shift+r:无视原来内容,直接替换
更改大小写
对一行小写内容全部改大写(大写改小写):shift + ~
2.底行模式指令
1.set nu 调出行号 set nonu取消行号
2.vs 文件名 --vim实现分屏操作(vim可以创造不存在的文件)
光标如何在分屏中切换:ctrl+ww(快速按)
3.w! 强制写入保存文件 q! 强制退出 wq! 强制写入保存文件并退出
跳到文件中的某一行
4.「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15, 再回车,就会跳到文章的第15行
5.!cmd 的作用是不退出vim执行指令操作,(例如! ls -al 不退出vim查看当前文件信息)
查找字符
「/关键字」: 先按「/」键,再输入想寻找的字符,如果第一次找的关键字不是想要的,可以一直按 「n」会往后寻找到要的关键字为止。
「?关键字」:先按「?」键,再输入想寻找的字符,如果第一次找的关键字不是想要的,可以一直 按「n」会往前寻找到要的关键字为止。
替换:[range]s[ubstitute] / {pattern} / {string} / [flags] [count]
s 表示substitute,也就是替换, 格式为以下
range 表示区间 % 用于表示全文, 2,3 表示从第2行开始到第3行
{pattern} 表示字符串匹配规则,要匹配什么样的字符串 , 比如^a 表示以a字符起始的字符串
{string} 表示要将匹配到的字符串替换为的新的string字符串
[flags] s_flags中,g比较常用,通常使用g表示全部替换,默认如果不给的话,表示只替换一次
[count] 表示在一行中匹配多少次,很少会用到
如果想要将文件中所有 nihao 替换为 hello 则命令为: %s/nihao/hello/g
其他命令
p 用于打印指定区间的行
:[range]p[rint] [flags]
i 在指定行上方添加文本
:{range}i[nsert][!]
3.快速配置vim
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
4.sudo 白名单
whoami (我是哪个账号)
root进入 vim /etc/sudoers,往下翻找到Allows,把自己账号添加进去
