开始时的废话
Linux下vim编写文档和c文件,会一些常用的快捷键会大大的提高开发效率,并且能展现自己高超的技术,从而大大的增加自己的自信(而且还能装逼)。
开头小小的提一下vim的三种模式,命令行模式,插入模式和底行模式。
命令行模式或底行模式转插入模式—a,i,o等按键;
插入模式转命令行模式或底行模式—ESC按键;
命令行模式转底行模式----输入‘:’或空格;
底行模式转命令行模式—ESC按键。
开始
插入
按键 | 效果 |
---|
a | 按下后所在光标后移一位,再在光标前插入数据。 |
A | 按下后光标移到所在列的最后,再插入输入的数据 |
i | 按下后光标位置不变,在光标前插入数据 |
I | 按下后光标移到所在列的第一个字符开始插入数据 |
o | 按下后在光标所在列下面新增一列再插入数据 |
O | 按下后再光标所在列上面新增一列再插入数据 |
光标的移动
按键 | 效果 |
---|
0 | 光标移动到所在行的最前面 |
$ | 光标移动到所在行的最后面 |
: 0或H或gg | 光标移动到开头第一个字符处 |
: $ | 光标移动到最后一行的第一个字符处 |
n+ | 光标向下移动n行 |
n- | 光标向上移动n行 |
:n或nG | 光标移动到第n行(G是移动到最后一行) |
M | 光标移动到屏幕展示行数的中间行首个字符处 |
L | 光标移动到屏幕展示行数的最后一行首个字符处 |
b | 光标移动到前一个单词的首字符处 |
w | 光标移动到后一个单词的首字符处 |
e | 光标移动到后一个单词的尾字符处 |
h | 光标向左移动一(相当于<-) |
l(小写的L) | 光标向右移动一(相当于->) |
j | 光标向下移动一 |
k | 光标向上移动一 |
^ | 光标移动到所在行的首字符处 |
ctrl+d | 光标向下移动半页 |
ctrl+f | 光标向下移动一页 |
ctrl+u | 光标向上移动半页 |
ctrl+b | 光标向上移动一页 |
删除/剪切
在vim 中剪切常作为删除用
按键 | 效果 |
---|
ndd | 剪切光标所在行开始的n行,若到结尾不够N行,则剪切到最后一行 |
ncc | 剪切光标所在行开始的n行,若到结尾不够N行,则剪切到最后一行,并进入插入模式 |
d$ | 剪切光标所在字符到行尾的所有字符 |
c$ | 剪切光标所在字符到行尾的所有字符,并进入插入模式 |
d0 | 剪切光标所在字符到行首的所有字符 |
c0 | 剪切光标所在字符到行首的所有字符,并进入插入模式 |
:nd或n,md | 剪切第n行或剪切n到m行 |
dG | 剪切光标所在行到末行内容 |
dgg | 剪切光标所在行到首行内容 |
ncb或ndb | 剪切光标所在的前n个单词 |
ncw或ndw | 剪切光标所在的后n个单词 |
nx | 剪切从光标开始的n个字符 |
nX | 剪切光标前n个字符 |
s | 删除所在的字符,并进入插入模式 |
S | 删除光标所在的行,并进入插入模式 |
复制
按键 | 效果 |
---|
nyy | 复制光标所在的行开始,向下的n行 |
y0 | 复制光标到行首的所有字符 |
y$ | 复制光标到行尾的所有字符 |
:ny或n,my | 复制第n行或复制第n到m行 |
nyb | 复制光标所在的前n个单词 |
nyw | 复制光标所在的后n个单词 |
修改
按键 | 效果 |
---|
r字符1 | 将光标所在字符替换为字符1 |
R | 进入取代模式,可移动光标在要修改的地方按下按键,即可改为所按的字符,直到按ESC结束 |
粘贴,撤销,重复
按键 | 效果 |
---|
p | 粘贴剪切板中的内容 |
u | 撤销前一步操作 |
. | 重复前一步操作 |
替换和查找
按键 | 效果 |
---|
/字符或单词 | 向下查找要查找的单词 |
?字符或单词 | 向上查找要查找的单词 |
:范围s/字符或单词1/字符或单词2/gc | 例 :2,15s/hello/love/g 作用是把第2行到15行的hello全部替换为love 。范围常用:%全局替换,.(点)表示当前行,$表示末尾行。 c表示替换前询问,g表示全部替换 |
n | 用于查找时继续向原方向查找 |
N | 用于查找时继续向反方向查找 |
后记
目前就整理这些,在以后的学习中会继续补充!加油,期待未来更好的自己!!