Linux:Vim的安装及使用

目录

        1.前言

        2.Vim的下载

        3.Vim的模式

        4.Vim中命令模式下的操作

        5.Vim中末行模式

        6.Vim中man文档

        7.Vim中代码注释


前言

        这篇论文主要对Linux下关于Vim文本编译器进行讲解,一步步从具体的Vim下载,使用进行讲解,废话不多说,期待带来更多的优质文章(PS:作者是在Centos下存在,如果使用Ubuntu的同学,可以针对特定情况进行指令的修改哈!但关于Vim的指令基本没有差异)


Vim的下载

        在使用git命令对Vim进行下载时,我们需要先在终端判断是否存在git命令(PS:因为博主的Centos是重新下载过的,所以不存在git命令)。如果不存在git命令,则可使用以下命令下载git

//下载git
sudo yum install git    

        下载完git则可以装备下载Vim,其Vim的开源地址如下,可使用git clone把项目克隆至指定的路径下:

//下载Vim至当前用户Home目录下的.vimplus文件夹中
git clone https://github.com/chxuan/vimplus.git ~/.vimplus

Vim开源地址icon-default.png?t=N7T8https://github.com/chxuan/vimplus        由于GitHub属于外网访问可能比较慢,针对这种情况博主给出以下两种方式(自测):

                1.修改/etc/hosts文件,提高对GitHub的访问速度,可参考下图

#修改Host文件,更改DNS解析
140.82.114.4 github.com
140.82.114.4 gist.github.com 

图1.修改host文件

                2.修改Linux网络连接模式为桥接模式后,在进入clash打开同局域网允许连接,然后修改Linux中的代理(PS:本人五星好市民,不会这个操作,所以就不列出步骤了)

        下载完Vim,输入以下命令进入下载好的文件夹,并执行Shell命令:

//进入下载好的文件夹(如果之前修改了下载的文件夹名称,此处也要修改)
cd ~/.vimplus

//执行Shell命令,install.sh为Shell文件
./install.sh

        为防止Vim显示乱码,需设置linux终端字体为Droid Sans Mono Nerd Font,可参考下图进行操作:

图2.设置终端字体为Droid Sans Mono Nerd Font


Vim的模式

        vim中一共有三种模式:命令模式,末行模式,编辑模式。当我们打开Vim默认进入的是命令模式。

        1.命令模式:主要是使用各种快捷键来移动光标、查找文本、复制、粘贴、删除文本等操作
        2.编辑模式:主要是对文件内容插入,修改和添加等操作
        3.末行模式:主要是执行Linux命令,如保存文件、退出Vim、设置选项,窗口分屏等操作

        在了解进入Vim后如何进行模式的切换前,我们得先了解模式之间是否可以相互切换,针对命令模式可以切换为编辑模式再切换回命令模式,命令模式也可以切换为末行模式再切换回命令模式,但是编辑模式和末行模式之间不可相互切换,可以参考下图:

图3.Vim中模式的切换

        在图中可知道编辑模式和末行模式切换回命令模式都是点击Esc键,而编辑模式只需要点击一次Esc键,末行模式需要点击两次Esc键则可切换回命令模式

        1.命令模式切换至末行模式的操作

                按住Shift键,然后输入":"号即可,如下图:

图4.命令模式切换至末行模式

        2.命令模式切换至编辑模式的操作

切换快捷键实现功能
i从光标前边开始输入
I(大写i)从光标行行首开始输入
o在光标下一行插入行, 并输入
在光标上一行插入行, 并输入
a在光标后开始输入
A在光标行行尾开始输入
s删除光标指示的字符, 从删除的字符位置输入
S删除光标当前行, 并在当前行开始输入

表1.命令模式切换至编

//使用vim打开指定文件
vim 文件名

辑模式的快捷键


Vim中命令模式下的操作

        1.使用Vim打开文件,若文件不存在则创建文件:

//使用Vim打开文件
vim 文件名

        2.退出命令模式:使用Vim打开文件后,按住键盘Shift键后,连续按两次Z键

        3.代码快速缩进:在进入命令模式后,点击两次g键后,点击=键再按住Shift键,最后按G键(必须得连贯操作)

图5.代码快速缩进

        4.命令行下的光标移动操作:可以使用字母h,j,k,l进行光标的移动,也可以使用键盘中的方向键进行移动

//移动光标的方法
            光标上移   
               ↑
光标左移<- h    j    k    l ->光标右移
                    ↓
                 光标下移    

        5.命令模式下的光标跳转

跳转快捷键实现功能备注
0(数字)将光标移动到当前行的行首
$将光标移动到当前行的行尾按住shift键后按4
G将光标移动到文件尾部
gg将光标移动到文件头部
nG行跳转n 代表要跳转到哪一行
n行+Enter键跳转到当前行的下 n 行组合键,输入行数后按回车

表2.命令模式下的光标跳转

        6.剪切命令:剪切命令相当于删除,即删除也可以使用剪切命令

剪切命令快捷键实现功能备注
x剪切光标当前指向的字符相当于剪切光标后的字符
X剪切光标前的字符
dd剪切光标当前所在的行
ndd剪切光标所在行开始后n行含当前行
dw剪切光标当前指向的单词要把光标移动到单词的第一个字母上再剪切,否则只会剪切当前光标指向的字母和其后的字母
d0剪切光标前的字符串剪切字符串开头到光标当前位置的字符串
剪切光标后的字符串剪切光标当前位置到字符串尾部的字符串

表3.命令模式下的剪切命令   

        7.撤销命令和恢复命令:Centos中的撤销命令相当于Windows中的ctrl+z,恢复命令相当于
Windows中的ctrl+y

命令快捷键实现功能备注
u撤销
ctrl+r恢复组合键,按住ctrl键后点击r键

表4.撤销命令和恢复命令

        8.复制命令和粘贴命令:Centos中的删除命令就是剪切命令,所以剪切数据后可以使用粘贴命令再恢复

命令快捷键实现功能备注
yy复制光标所在行 
nyy复制光标所在行向下数 n 行含当前光标指向的行
p粘贴到光标所在行的下面小写p
P粘贴到光标所在行的上面大写P

表5.复制目录和粘贴命令

        9.查找关键字:先点击快捷键,后在键盘中输入查找的字符,以及遍历方式即可,其中遍历方式为n和N,n代表从光标当前位置向下遍历,N代表从光标当前位置向上遍历。快捷键参考下表

查找快捷键实现功能备注
/查找关键字查找输入的关键字
?查找关键字查找输入的个积极
#查找关键字查找光标当前指向的关键字

表6.查找关键字

图6.查找关键字

        10.命令模式中的可视模式:可视模式是指光标中选中的范围,一般范围是为一个字符,而在可视模式中可以将范围提升至行或块大小。使用可视模式前,在命令模式输入以下快捷键便可进入可视模式

快捷键实现功能备注
v进入字符可视化模式光标范围以字符为单位
V进入行可视化模式光标范围以行为单位
ctrl+v进入块可视化模式光标范围以块为单位(按住ctrl键后点击v键)
Esc退出可视化模式

表7.查找关键字

图7.进入可视化模式

        11.可视化模式的操作:可视化模式光标操作与命令模式中类似,也可以使用h,j,k,l键进行光标的操作,在此基础上可视化模式还支持剪切,复制和粘贴等操作,具体快捷键如下:

快捷键实现功能备注
p将字符粘贴至光标前粘贴数据块或数据行
P将字符粘贴至光标后粘贴数据块或数据行
d剪切剪切数据块或数据行
y复制复制数据块或数据行

表8.可视化模式的操作

图8.操作光标选中块为单位的数据

        12.替换指定关键字

替换快捷键实现功能备注
r替换光标当前指向后的字符替换光标覆盖的字符
R替换光标当前指向后的多个字符点击Esc键后停止替换,替换字符含光标当前覆盖的字符

表9.替换指定关键字

图9.替换指定关键字


Vim中末行模式

        由命令模式进入末行模式只需要在命令模式中输入":"即可,末行模式支持对文件的保存,文本替换,分屏等操作,以下便对末行模式进行讲解

        1.文件的保存操作

快捷键备注
w保存, 但不退出
wq保存并退出
q退出前提示是否要保存
q!退出, 不保存
保存并退出

表10.末行模式中文件的保存操作

        2.替换操作:末行模式中的替换相较于命令模式,区别在于可选中被替换的关键字或者多个行中替换指定的关键词,具体操作如下

快捷键备注
s/ + 被替换的关键字/ +新的关键字/ +g 对光标所在行进行关键字替换
行1, 行2s/ + 被替换的关键字/ + 新的关键字/ +g对行1到行2的范围中进行关键字替换
%s/ + 被替换的关键字/ + 新的关键字/ +g%代表对所有行进行替换

表11.末行模式中的替换操作

图10.末行模式中的替换操作

        3.分屏操作:在项目编写的过程中,我们往需要对多个文件同时浏览,这个时候就需要对界面进行分屏操作,一下为分屏快捷键:

快捷键实现功能备注
qall退出多个屏幕不保存修改内存
wqall保存退出多个屏幕
sp水平分屏 多个窗口中显示同一个文件里的内容
vsp垂直分屏 多个窗口中显示同一个文件里的内容
sp文件名水平分屏在新窗口中显示指定的文件的内容
vsp文件名垂直分屏在新窗口中显示指定的文件的内容
ctrl+w+w光标在打开的屏幕之间切换按住ctrl键后按两次w

表12.末行模式中的分屏操作

图11.末行模式中的分屏操作

        4.行跳转:将文件中的光标跳转至指定行

#行跳转格式
:行号

        5.执行Shell命令

#执行Shell命令格式
:!Shell命令

//执行ll操作
:!ll

Vim中man文档

        man文档属于Linux中的自带的帮助文档,用于查询shell指令或者系统配置文件说明等,可以使用以下指令打开man文档和退出man文档

//打开man文档
man man

//退出man文档(输入q即可)
q

图12.man文档 

        在man文档中,其章节共分为9个章节,每一个章节代表意思如下:

章节说明
1Linux提供的所有shell命令
2由内核提供的系统函数
3程序库中的函数
4/dev目录中的文件说明
5系统配置文件格式和约定
6游戏
7杂项,包括宏包和约定
8系统管理命令
9非标准的内核例程

表13.man文档章节讲解 

        在man文档中可以使用man命令来查询相关的命令或函数信息

//查找格式
man 章节数 命令或函数

man 1 rm     //查询第一章的rm命令
man 5 passwd //查询第五章的passwd文件夹

        如果在Vim的命令模式下,可以通过以下格式跳转光标所在的命令所处的man文档位置

//跳转格式
章节号(可选)+K

Vim中代码注释

        通常我们写代码时,注释的范围都是一行或一块,所以在普通的命令模式下注释代码便显得有些鸡肋,所以在代码注释时我们通常先进入可视化模式,然后选定注释的范围后进入编辑模式,输入注释符后点击Esc键便可完成注释,参考下图:

图13.Vim中代码注释

tar -xf vim.tar -C ~ vim /etc/vimrc vim /root/.vimrc set ts=4 设置tab有多少空格 set ai 自动对齐 set nu set mouse=a set shiftwidth=4 shift + . 向左向右缩进 shift + , jklh ,cs 性感的注释 ,cu 取消注释 ,cc 注释一行 ,ca 切换单行注释符 选中代码块 按=  自动对齐 ctags -Rn . ctrl + ] ctrl + t 二、VIM编辑器的使用 vi vim (增强版vi,现在各版本的linux都带有vim) 三种模式: 普通模式:控制光标移动,删除字符,段落复制(按ESC) 编辑模式:包含插入模式和替换模式,新增文字和修改文字 命令行模式/末行模式:保存文字,离开vim,以及其它设置 vim newfile 新建一vim空白文件进行编辑 普通模式 编辑模式下按ESC切换为普通模式 命令 说明 移动: h 将光标向左移动一格 l 将光标向右移动一格 j 将光标向下移动一格 k 将光标向上移动一格 ^ 光标移动到行首,即第一有效字符位置 0 将光标移动到该行的行首,行的第一格位置 $ 将光标移动到行尾 H 将光标移动到该屏幕的顶端 M 将光标移动到该屏幕的中间 L 将光标移动到该屏幕的底端 gg 将光标移动到文章的首行 G 将光标移动到文章的尾行 w 将光标移动到下一单词 b 将光标移动到上一单词 e 将光标移动到下一单词,光标到下一单词词尾 W 和w功能一样,只不过以.或-或)字符为分界 B 和b功能一样,只不过以.或-或)字符为分界 E 和e功能一样,只不过以.或-或)字符为分界 f f后跟一字符可直接跳到本行光标之后有此字符位置 F F后跟一字符可直接跳到本行光标之前有此字符位置 t 和f一样功能,只不过光标停在要搜索字符前一字符位置 T 和T一样功能,只不过光标停在要搜索字符后一字符位置 zt 将当前位置置于屏幕顶端 zb 将当前位置置于屏幕底端 zz 将当前位置置于屏幕中间 zf 创建折行 zc 折叠 zo 打开折叠 % 跳到匹配的括号 Ctrl+u 将窗口向上移动半屏 Ctrl+d 将窗口向下移动半屏 Ctrl+f 向前滚动一整屏 ctrl+b 向后滚动一整屏 ctrl+g 在窗口下方显示信息,告诉当前文件中的位置和文件名等 Ctrl+o 跳到上次光标位置 ‘’ 跳到上次光标位置,和ctrl+o不同,它只能和上一次光标位置和当前位置来回跳转 ctrl+i 和ctrl+o功能相反 m 有名标记,在想要做标记位置按ma, 再到移动其它地方,当想回到做标记位置时,按'a就跳回做标记位置 简单搜索:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wild_Pointer.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值