vi和vim都是Linux中的编辑器,不同的是vim比较高级,功能更全更好用,可以视为vi的升级版本。vi使用于文本编辑,但是vim更适用于coding。它们都是多模式编辑器,vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。某些情况下,你可以把vim当成vi来使用。
1、多级撤销
我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。
2、易用性
vi只能运行于linux中,而vim不仅可以运行于linux、windows 、mac等多操作平台。
3、语法加亮
vim可以用不同的颜色来加亮你的代码。
4、可视化操作
就是说vim不仅可以在终端运行,也可以运行于windows等。
5、对vi编辑器的完全兼容
参考博客:https://www.rstk.cn/news/743008.html?action=onClick
1、打开终端
2、输入命令:
sudo apt-get update
sudo apt-get install vim
3、输入用户密码(输入时不显示)
4、等待安装即可
任何时候,不管用户处于何种模式,只要按一下【ESC】键,即可进入命令行模式。且一般情况下,进入编辑器时,便是处于命令行模式下。在该模式下,用户可以输入各种合法的vim命令,用于管理自己的文档。此时从键盘上输入的任何字符都被当做编辑命令来解释,若输入的字符是合法的vim命令,则vim在接受用户命令之后完成相应的动作。但需注意的是,所输入的命令并不在屏幕上显示出来。若输入的字符不是vim的合法命令,vim会响铃报警。
编辑模式可以对内容进行编辑,按下i, I, o, O, a, A, r, R等任何一个指令之后即可进入编辑模式。如果要复制、粘贴、退出、保存等系列操作时,需要回到命令行模式,则必须要按下【ESC】这个按键即可退出编辑模式。
末行模式也称转义模式。一般是用来保存退出等操作。在命令模式下,用户按“:”【冒号】键即可进入末行模式下,此时vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”【冒号】作为末行模式的提示符,等待用户输入命令。
i:在当前光标所在字符的前面,转为输入模式;
a:在当前光标所在字符的后面,转为输入模式;
o:在当前光标所在行的下方,新建一行,并转为输入模式;
I:在当前光标所在行的行首,转为输入模式;
A:在当前光标所在行的行尾,转为输入模式;
O:在当前光标所在行的上方,新建一行,并转为输入模式;
h 光标左移一个字符
j 光标下移一个字符
k 光标上移一个字符
l 光标右移一个字符
w 移至下一个单词的词首
e 跳至当前或下一个单词的词尾
b 跳至当前或前一个单词的词首
yy 复制光标所在行
数字+yy 表示从光标所在行开始复制n行
p 在光标所在行下面开始粘贴
dd 剪切光标所在行(剪切不粘贴就是删除)
数字+dd 从光标所在行开始剪切n行
x 删除光标所在处的单个字符
数字+x 删除光标所在处及向后的共n个字符
gg 将光标定位到首行
G 将光标定位到尾行
数字+gg 表示将光标定位到第n行
u 撤销(返回上一步)
ctrl r 重做(重进行下一步)
/查找内容/回车 n 查找下一个 N 查找上一个
:w 保存
:q 退出
:wq 保存并退出
:q! 不保存强制退出
:x 保存退出 等同于 :wq
:set number 显示行号
:set nu 显示行号
:set nonumber 取消显示行号
:set nonu 取消显示行号
:%s/待替换内容/需要替换成的内容/g 全文替换
:%s/待替换内容/需要替换成的内容/gc 全文替换,每次替换进行询问
:syntax on 开启
:syntax off 关闭
:vsp file2 将两个文件垂直分屏
.vimrc是vim的配置文件,vim编辑器的功能都是通过.vimrc文件进行设置的。
.vimrc配置文件分系统配置和用户配置两种。
系统.vimrc配置文件存放在Vim的安装目录,默认路径为/usr/share/vim/.vimrc
用户.vimrc配置文件存放在用户主目录下~/.vimrc
Vim启动时会优先读取当前用户根目录下的.vimrc文件。所以我们配置vim编辑器的功能时步骤为:
1、返回用户目录:输入cd ~
2、编辑该文件:输入vi .vimrc
3、进入编辑模式
4、输入配置代码:如下详细所示
5、进入末行模式保存退出
set number 显示行号
map 自己设置的快捷键(如mf) i#include <stdio.h><Esc><Esc>oint main(int argc, char *argv[])<Esc>o{<Esc>oreturn 0;<Esc>o}<Esc>2ko
同样可以设置其他便捷代码输入。
下次在创建的.c文件中,直接按mf就可以自动初始化出main函数,节省了写代码的时间。
set tabstop 设置缩进:设置Tab长度为4空格
参考博客:https://blog.csdn.net/qq_42210767/article/details/127923911?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522169339986516800215076984%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=169339986516800215076984&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allbaidu_landing_v2~default-1-127923911-null-null.142v93chatgptT3_2&utm_term=.vimrc%E6%96%87%E4%BB%B6%E4%BD%8D%E7%BD%AE&spm=1018.2226.3001.4187
https://blog.csdn.net/qq_44394562/article/details/125820429