> 作者简介:დ旧言~,目前大二,现在学习Java,c,c++,Python等
> 座右铭:松树千年终是朽,槿花一日自为荣。> 目标:熟练掌握vim,并且能用vim敲出简单的代码。
> 毒鸡汤:一万个美丽的未来,抵不上一个温暖的现在,每一个真实的现在,都是我们曾经幻想的未来,愿你爱上现在,梦见未来。
> 望小伙伴们点赞收藏✨加关注哟
前面捏,我们能使用Linux命令,简单的写一个程序,输出了hello Linux,只能说浅谈,本期我们在前面基础的延续,来正式续写Linux代码,Linux路正式启程,大家准备好编译器和小本本,OK,走起!!!
咱们从七大板块学习,vim编辑器,vim四种模式的关系,vim编辑器的使用,编辑模式,vim编辑器实用功能,简单vim配置。
vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、windows。
在我们的编辑器中(Xshell)中默认已经帮我安装好vim
在有些编译器中是没有安装vim的,像这种编译器是比较古老的,不要也罢,我建议大家安装Xshell用起来比较爽,当然也可以用其他编译器,咱们看看如何安装vim:
# 安装vim
# yum install vim -y
大家可以安装看看
我们讲解vim的三种模式(其实有好多模式,目前掌握这3种即可),分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者last line mode
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入:help vim-modes
咱们用一个图就可以很好解释他们之间的关系:
基本语法:
案例:使用vim命令打开demo1.c文件
在任何模式下,连续按两次Esc键,即可返回到命令模式。然后按冒号:
,进入到末行模式,输入wq
,代表保存并退出。
在任何模式下,连续按两次Esc键,即可返回到命令模式。然后按冒号:,进入到末行模式,输入q!,代表强制退出但是不保存文件。
这样的输入,是不保存文件的写的内容的,不建议!!!
命令模式下的相关操作
在Linux操作系统中,当我们使用vim命令直接打开某个文件时,默认进入的就是命令模式。如果我们处于其他模式(编辑模式、可视化模式以及末行模式)可以连续按两次Esc键也可以返回命令模式,简称无脑Esc就可以到命令模式
在命令模式我们可以以下内容
① 移动光标 ② 复制 粘贴 ③ 剪切 粘贴 删除 ④ 撤销与恢复
咱就一个一个来讲解
这里我们都是在命令模式下执行的,不要忘记咯
- 移动光标到首行 : gg
- 移动光标到末行 : G
这里我们都是在命令模式下执行的,不要忘记咯
- 向上翻屏,按键:ctrl + b (before) 或 PgUp
- 向下翻屏,按键:ctrl + f (after) 或 PgDn
- 向上翻半屏,按键:ctrl + u (up)
- 向下翻半屏,按键:ctrl + d (down)
这里我们都是在命令模式下执行的,不要忘记咯
- 行号 + G,如(100 + G)代表快速移动光标到第100行。
这里我们都是在命令模式下执行的,不要忘记咯
① 复制当前行(光标所在那一行)
按键:yy
粘贴:在想要粘贴的地方按下p 键【将粘贴在光标所在行的下一行】,如果想粘贴在光标所在行之前,则使用P键
② 从当前行开始复制指定的行数,如复制 10 行,10 + yy
粘贴:在想要粘贴的地方按下p 键【将粘贴在光标所在行的下一行】,如果想粘贴在光标所在行之前,则使用P键
上述简称Ctrl CV,这个可得好好学,咱们都是CV工程师
在vim编辑器中,剪切与删除都是dd
① 剪切/删除当前光标所在行
按键:dd (删除之后下一行上移)
粘贴:p
② 剪切/删除多行(从当前光标所在行开始计算)
按键:dd (删除之后下一行上移)
粘贴:p
③ 剪切/删除光标所在的当前行(光标所在位置)之后的内容,但是删除之后下一行不上移
按键:D(Shift + d) (删除之后当前行会变成空白行)
撤销:u(undo)
恢复:ctrl + r 恢复(取消)之前的撤销操作【重做,redo】
底行模式先进入命令模式(无脑Esc),然后Shift + ;,前面的图解已经介绍咯!
在这个模式我们可以:文件保存、退出、查找与替换、显示行号、paste模式.....
底行模式咱们就看看就行,主要是咱们的命令模式
- :w 代表对当前文件进行保存操作,但是其保存完成后,并没有退出这个文件
- :q 代表退出当前正在编辑的文件,但是一定要注意,文件必须先保存,然后才能退出
- :wq 代表文件先保存后退出(保存并退出)
- q! 代表强制退出但是文件未保存(不建议使用)
文件内容的替换可是在底行模式,咱们再看看这张图片叭
只替换光标所在这一行的第一个满足条件的结果(只能替换1次)
:s/要替换的关键词/替换后的关键词 + 回车
案例:把第一行的#include
显示行号:
:set nu
取消行号:
:set nonu
其实这里就没啥指令,它的功能就是写代码。还是看这张图解:
之前说过vim 是vi 的升级版本,其中比较典型的区别就是vim 更加适合coding,因为vim比vi 多一个代码着色的功能,这个功能主要是为程序员提供编程语言升的语法显示效果,如下:
第一步:定义后缀名为网页文件的代码文件
# vim index.php
第二步:编写对应的PHP代码
echo 'hello world';
?>
在vim编辑器中,我们可以通过:syntax on或:syntax off开启或关闭代码着色功能。
用户配置:用户配置文件.vimrc由用户自己创建,存放于用户根目录下。
如果大家没有这个文件的就touch .vimrc
咱们用下面的指令可以编辑咱们的vimrc
在这里就不讲解vim的配置了,有兴趣的小伙伴,可以查看vim的配置,这里博主配置好了vim,还是挺好用到,大家可以试试
colorscheme desert
syntax on
filetype on
au BufRead,BufNewFile *.sv set filetype=systemverilog
au BufRead,BufNewFile *.v set filetype=verilog
set number
set autoindent
set ts=2
set expandtab
set shiftwidth=4
autocmd FileType make set noexpandtab
set hlsearch
set cursorline
set cursorcolumn
set guifont=Monospace\ 16
inoremap ( ()i
inoremap { {}i
inoremap [ []i
inoremap " ""i
source ~/.vim/user/alias.vim
今天内容就到这里啦,时间过得很快,大家沉下心来好好学习,会有一定的收获的,大家多多坚持,嘻嘻,成功路上注定孤独,因为坚持的人不多。那请大家举起自己的小说手给博主一键三连,有你们的支持是我最大的动力,回见。