🪐🪐🪐欢迎来到程序员餐厅💫💫💫
主厨:邪王真眼
主厨的主页:Chef‘s blog
所属专栏:青果大战linux
总有光环在陨落,总有新星在闪烁
前言:
我们在进入了linux后学习了一堆指令、权限、相信很多小伙伴都有一种踏入新世界的感觉,但是,我们是程序员啊,程序员怎么能不敲代码呢,于是乎,今天我们就来学习一个Linux下的工具vim,它可以帮助我们继续敲代码。
vim****的基本概念
** 来源**
vim(vi improved)是一款在LInux下运行的、功能强大的编辑器,他的前身是上个世纪七十年代的Vi编辑器。
vi/vim的区别:
它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、 windows。我们课堂上,统一按照vim来进行讲解。
下载方法:
sudo yum install -y vim
在下载之后我们就可以用它来编辑文件了,
指令格式:vim 文件名
功能:
- 如果该文件已存在。则会跳转至文件中,进行编辑
- 如果文件不存在则会创建该文件并且进入该文件中进行编辑
Vim使用方法
之后我们就会进入以下界面(我的vim编辑器是配置了环境的,后面会教大家)
这时候有同学肯定按耐不住开始敲Hello,world了,但是却发现无论自己怎么敲键盘都无法输入,这是因为vim有多种模式,准确来说是12种,我们今天只讲其中四种,
分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),替换模式、
模式的切换与功能概述
1.命令模式切插入模式
我们可以看到左下角有【NORMAL】这个单词,说明我们现在处于命令模式,我们按下i按键,就可以切换到插入模式
这个时候单词就变成了【INSERT】,说明我们成功切换到了插入模式
在这个模式下我们就可以敲代码了
> #include <stdio.h>
int main()
{
printf("Hello,Vim");
return 0;
}
2.插入模式切命令模式
我们敲击esc就可以退出当前模式,于是我们又回到了命令模式中
3.命令模式切底行模式
接着输入 shift+;我们就可以进入底行模式,记住要开英文键盘别开中文(血的教训)
于是我们就成功进入了底行模式,显示单词【COMMAND】
最后输入wq即可保存退出,w表示保存,q表示退出。你也可以输入wq!,“!“表示强制执行命令对刚才编辑的文件使用cat指令发现确实编辑进去了
以上就是vim的使用方法,切记我们三个模式之间的切换,不要直接插入模式转换为底行模式,对于新手来说先不要学各种快捷键,**先把基础的用好才是王道**
模式简介
命令模式
- 进入vim时的默认模式
- 无法进行文本编辑,我们的输入都会被解析而为对应的命令
- 控制屏幕光标的移动,字符、字或行的删除等等(文章后面细说)
插入模式(Insert mode)
- 在命令模式下输入i就可以进入插入模式
- 只有在插入模式下,才可以做文字输入,也就是敲代码,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
底行模式(last line mode)
- 在命令模式下输入 shift+;就可以进入底行模式,输入esc就可以退出到命令模式
- 文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。
*vim***模式命令集 **
命令模式
切换光标位置
关于切换光标要先说一下,或许有些朋友觉得自己用上下左右就完全okle、,不需要再去学这些指令,这是不对的,要知道以后你成为大能后面对的就是以千甚至万来计算行数的代码,那你还能一行一行切换吗,这是不现实的,我们也无法用鼠标。所以指令成了最后的武器
输入gg,光标直接定位到第一行首字母
输入shift+g,光标直接定位到最后一行首字母
输入n+shift+g,光标定位到第n行的首字母
输入$:把光标移动到当前行的结尾
输入^:把光标移动到当前行的开头
复制粘贴
输入yy:把光标所在一行复制到缓冲区
输入p:把缓冲区的内容复制到当前行的下一行
输入n+p:把缓冲区的内容从当前光标所在行的下一行开始,复制n份
输入dd:剪切当前光标所在行
输入w:向右移动到下一个单词(我们之前的上下左右一次移动一个字符)
输入b:向左移动到上一个单词
输入h:向左移动一个字符
输入j:向下移动一个字符
输入k:向上移动一个字符
输入l:向右移动一个字符
这里小小科普一下,在键盘刚出来时是没有我们现在用的上下左右四个键的,这四个键是后来为了方便普通人使用才加上的,所以一开始以字符为单位移动的重任就交给了hjkl四位
删除
x:删除当前光标所在字符
n+x:一当前光标所在位置为起点,向后删除n个字符
shift+x:删除当前光标所在位置的前一个位置的字符
n+shiift+x:以当前光标所在位置前一个位置为起点,向前删除n个字符
替换
输入~:将当前光标对应字符大小写切换
输入r+某个字符:把当前光标对应字符替换为该字符
输入n+r+某个字符:以当前光标为起点向后把n个字符替换为该字符
输入shift+r:进入替换模式,你在光标下的输入会直接把该字符替换为你输入的字符
撤销操作
输入u:撤销上一个操作,当没有上一个操作时,左下角会提示
ctrl+r:撤销上一个撤销操作
底行模式
输入 vs 文件名
可以打开两个文件,方便观看。在命令模式下输入ctrl+ww即可更换当前操作的文件,光标在哪个文件,就是可以处理那个文件,对于每个文件只需要用我们之前学的操作佬处理就好
在某个文件的底行模式输入q即可退出该文件
输入set nu:在文件的每一行前列出行号
输入set nonu:取消每一行前的行号
1 #include <stdio.h>
2 int main()
3 {
4 printf("Hello,Vim");;
5 return 0;
6 }
/xxx 会自动帮你找该字符串,并高亮显示
但是当你不需要后,高亮要手动去处,底行输入 noh
*简单vim*配置 **
欲善其工,必先利其器,要敲出好的代码,一个良好的编辑器是必不可少的,但是原版的vim功能过于单调,会影响我们,于是我们就要自己搭建环境
找vimrc
在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。
而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。下面就是我的用户下的vimrc
如果没有那就touch一个出来,他就是我们的vim的配置文件
切换用户成为自己执行 su ,进入自己的主工作目录,执行 cd ~ 打开自己目录下的.vimrc文件,执行 vim .vimrc
常用配置选项,
注意这里的注释是以“”为开头
syntax on " 设置语法高亮
set nu " 设置行数显示
set tabstop=4 " 设置tab缩进长度为4空格
set autoindent " 设置自动缩进,适用所有类型文件
set cindent " 针对C语言的自动缩进功能,在C语言的编程环境中,比autoindent更加精准
set list lcs=tab:\|\ " 设置tab提示符号为 "|",注意最后一个反斜杠后面要留有空格
set cc=0 " 设置高亮的列,这里设置为0,代表关闭
set cursorline " 突出显示当前行
我们只需要vim进到.vimrc,再把这些指令中自己喜欢的复制到里面并且保存就好
但是,我觉得,这样太麻烦了,挑来挑去的,增大了学习成本,所以同学们只需要知道这个方法就行,我们直接上终极方案
快速将 vim 打造成 C++IDE
(1)安装方法
在你的用户目录下,执行下面这条命令:(需要按照提示输入 root 密码. 您的 root 密码不会被上传, 请放心输入)
curl -sLf https://gitee.com/HGtz2222/VimForCpp/raw/master/install.sh -o ./install.sh && bash ./install.sh
(2)卸载方法:
执行如下命令:
bash ~/.VimForCpp/uninstall.sh
我的vim就是用的这个方法,这是gitee上的一个开源项目,只能说感谢大佬的贡献,好人一生平安
今天我们学习了vim编辑器的三种模式功能以及对应的指令,最后配置了他的环境,下一次我们要学习编译器gcc
版权归原作者 一颗青果 所有, 如有侵权,请联系我们删除。