等老了就养只柴犬,相依为命。
文章目录
- 一、命令模式
- 1.光标定位操作
- 2.文本复制、粘贴、剪切、撤销
- 3.文本编辑
- 二、插入模式
- 三、底行模式
- 四、vim配置原理
- 五、解决普通用户无法使用sudo提权
一、命令模式
刚打开vim时,默认就是命令模式,命令模式的意义是提高编辑效率。
1.光标定位操作
shift + 4 行右
shift + 6 行左
shift + g 底部
gg 顶部
n + shift + g 跳转光标到指定行,n代表具体的行号
h j k l 分别代表左、下、上、右的光标移动
w b 代表向后和向前按照单词移动(nw nb 多个单词向前向后移动),宏观上的单词
2.文本复制、粘贴、剪切、撤销
yy 复制(nyy 多行复制,n代表次数)
p 粘贴(np 多行粘贴,n代表次数)
u 撤销
ctrl + r 取消撤销
dd 删除光标所在行(ndd 多行删除)
ndd + p 剪切
shift + x 向前删除一个字符(n + shift + x 多个字符)
x 向后删除一个字符(n + x 多个字符)
nx + p 剪切
3.文本编辑
shift + ~ 大小写切换
shift + r 批量化替换文本内容
r 替换单个字符(nr 对n个字符进行相同的替换 )
cw 删除当前单词,切换到插入模式,cnw删除多个单词,切换插入模式
二、插入模式
从命令到插入模式的方法:
i 直接转到插入模式
a 光标向后移动一个字符并转到插入模式
o 光标切换到下一行并转到插入模式
三、底行模式
set nu 对文本调出行号,set nonu 取消调出的行号
wq写入并退出,q直接退出,q!,w!,wq!都表示强制操作
vs + 文件名进入分屏,但无论分多少屏,光标只有一个
ctrl + ww 切换光标到另一屏幕
可以不退出vim在底行模式下执行linux命令,但是需要在命令前加感叹号!
%s/printf/cout/g,将文本中所有的printf全替换为cout,s表示替换,g表示global全局
/2 表示在文本中检索包含2的所有内容,同理你也可以检索其他相关内容,这里只是举个栗子
四、vim配置原理
vim的配置是一人一份的,一个用户配置的是该用户的,不影响其他用户!
每一个用户虽然用的是同一个vim程序,但是大家用的是不同的vim配置,因为每一个用户(root和普通用户都包括),在自己的家目录下,都有一个属于自己的配置文件。
所谓的vim配置就是修改自己的.vimrc文件,不要动任何不属于你的配置文件!
例如下面,我对.vimrc进行了set nu的配置来让vim中的文本内容都带上行号。
网上有大量的vim配置,我们可以自己将搜索到的vim配置拷贝到自己的.vimrc文件中
下面就是我在网上搜到的一些vim配置
如果你不想自己配置的话,也可以将下面的这条命令拷贝下来,在xshell下直接执行,它会一键配置好所有的vim配置,我们什么都不用干。
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
五、解决普通用户无法使用sudo提权
将用户切换为root,在root中找到/etc/sudoers文件并用vim打开,然后在下面列表中仿照root的格式添加普通用户,最后在底行模式下输入wq保存并退出
上面步骤完成之后,普通用户也可以使用sudo指令了,因为我们已经将普通用户添加至信任列表了。