『Linux升级路』基础开发工具——vim篇

简介: 『Linux升级路』基础开发工具——vim篇



🗒️前言:

本期给大家介绍的工具是vim,它是多模式编辑器,vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、 windows。

一、vim的基本概念

    我们先介绍 vim 的三种模式,分别是命令模式(command mode)插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

📒1.1命令模式

    控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,或者进入底行模式。

📒1.2插入模式

    只有在插入模式下,才可以做文字输入,按ESC键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。

📒1.3底行模式

    文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下输入,shift  +  ' : '即可进入底行模式。

注意:要查看你的所有模式:打开vim,底行模式直接输入help vim-modes

二、vim的基本操作

📒2.1进入vim

指令:

  • vim code.c

    在系统提示符号输入vim加文件名称后,就进入vim全屏幕编辑画面。打开vim默认是命令模式,命令模式下所有的输入都被当成命名,所以我们敲击键盘,屏幕不会显示字符,想要显示字符,我们要切换为插入模式,接下来就让我们看看怎么切换模式。

注意:如果vim后的文件不存在,系统会生成一个新文件并进入编辑画面。

📒2.2模式转换

🎀「命令模式」切换为「插入模式」

    从命令模式切换为插入模式,可以输入 a o i ,它们三个的区别在于,进入插入模式后光标的位置不同。

  • 输入 a :进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字
  • 输入 o :进入插入模式后,是插入新的一行,从行首开始输入文字
  • 输入 i :进入插入模式后,是从光标当前位置开始输入文件

🎀「插入模式」切换为「命令模式」

    点击键盘上的Esc键,就可以退回到命令模式。(所有模式退到命令模式都是按Esc)

🎀「命令模式」切换为「底行模式」

  • 点击shift + ; ,其实就是输入

    插入模式无法直接进入底行模式, 因为插入模式下所有的输入都会被当成文本输入,没有被解释成命令。

📒2.3退出vim

    要退出vim要在底行模式下进行,在命令模式下输入「:」即可进入底行模式,输入q退出vim。

  • :w :保存当前文件
  • :wq:保存并退出vim
  • :q!:不保存,强制退出vim

三、命令模式命令集

📒3.1移动光标

  • $ :移动到光标到所在行的行尾
  • ^ :移动到光标到所在行的行首
  • gg:移动到光标到文本开始
  • G :移动到光标到文本末尾
  • w :光标移动到下个字的开头(可以配合n,一次跳过n个单词)
  • b :光标移动到上个字的开头(可以配合n,一次跳过n个单词)
  • h  j  k  l :以字符为单位,进行左、下、上、右移动

📒3.2复制粘贴

  • yy:复制光标所在行到缓冲区
  • p :将缓冲区内的字符贴到光标所在行的下一行位置。
  • n+yy:n是任意数字,从光标所在行开始,复制n行
  • n+p:n是任意数字,将缓冲区的的字符粘贴n份

注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

📒3. 3删除文字

  • dd:删除光标所在行
  • n+dd:从光标所在行开始删除n行
  • x 删除光标所在位置的一个字符
  • n+x删除从光标位置开始的n个字符
  • X :删除光标所在位置的前一个字符
  • n+X删除从光标位置开始的前n个字符

注意:dd完如果不p的话就是删除,如果p的话就是剪切。

📒3.4撤销

  • u 回到上一个操作,按多次可以执行多次回复
  • ctrl+r撤销的恢复

📒3.5替换

  • shift + ~:快速更换大小写
  • r :替换光标所在字符,点击r后,再点输入待替换的字符
  • n+r:把从光标位置开始的n个字符全部替换成目标字符
  • R :替换光标所到之处的字符,直到按下Esc键停止

四、底行模式命令集

    在使用底行模式之前,请记住先按ESC键确定已经处于命令模式,再按冒号即可进入底行模式。

📒4.1调出行号

  • set nu:调出行号,在文件每一行前面列出行号
  • set nonu:取消行号

📒4.2保存退出

  • w :保存
  • w!:强制保存
  • q :退出
  • q!:强制退出
  • wq:保存并退出
  • wq!:强制保存并退出

📒4.3多文件操作

  • vs 文件名:实现多文件分屏
  • ctrl+w+w:实现光标在分屏多文件之间的切换

注意:光标在哪个界面,我们就在编辑哪一个界面,底行也是一样。

📒4.4命令执行

  • !command:在底行模式下执行命令

在!后直接跟shell命令就可以执行 。

📒4.5查找字符

  • / 关键字:先输入 / ,在输入你先更要查找的字符,如果第一次找的不是你想要的,可以一直按n,会继续往后寻找你想要的。
  • ?关键字:先输入 ? ,在输入你先更要查找的字符,如果第一次找的不是你想要的,可以一直按n,会继续往后寻找你想要的。

五、vim的配置

   没有配置的vim,在插入模式下写代码的时候,没有任何语法提醒,也没有自动补全功能,使用起来比较笨重。要实现在写代码的时候给出提示,需要我们自行对vim进行配置。

📒5.1配置文件的位置

    配置项一般都放在用户家目录下,我们在家目录下建立私有的配置文件,命名为.vimrc。如果/root目录下,已经存在一个.vimrc文件,就不用创建。

示例:

1. 我们先进入配置文件,给配置文件中加入,调出行号的选项set nu

2. 再用vim打开文件,就可以看见,文本每一行的前面都有了行号

    以上就是配置vim的基本原理,即:将自己所需要的配置项,写入配置文件.vimrc中就行。
  在每一个用户自己家目录下配置的vim不会影响的其他普通用户,只对当前用户有效。而在/ect/目录下的
.vimrc属于系统公共的vim配置文件,对所有用户都有效,一般不建议对公共的配置文件进行修改。

📒 5.2vim常用配置选项

set nu              //设置行号
syntax on           //语法高亮
set showmode        //底部显示当前处于什么模式
set cursorline      //显示行号下划线
set shiftwidth=4    //设置缩进的空格数为4
……

本次的内容到这里就结束啦。希望大家阅读完可以有所收获,同时也感谢各位读者三连支持。文章有问题可以在评论区留言,博主一定认真认真修改,以后写出更好的文章。你们的支持就是博主最大的动力。

相关文章
|
19天前
|
搜索推荐 NoSQL Linux
Linux开发工具——vim篇
Linux开发工具——vim篇
|
20天前
|
Ubuntu Linux 编译器
【Linux】4. 开发工具的使用(yum/vim)
【Linux】4. 开发工具的使用(yum/vim)
44 2
|
3天前
|
Linux 开发工具 C语言
【linux基础(七)】Linux中的开发工具(下)--make/makefile和git
【linux基础(七)】Linux中的开发工具(下)--make/makefile和git
|
3天前
|
人工智能 数据可视化 Linux
【linux基础(五)】Linux中的开发工具(上)---yum和vim
【linux基础(五)】Linux中的开发工具(上)---yum和vim
|
25天前
|
存储 Ubuntu Linux
制作一个嵌入式Linux的应用程序升级文件
制作一个嵌入式Linux的应用程序升级文件
12 2
|
NoSQL Linux 开发工具
Linux开发工具的使用
1.   Linux开发工具的使用 Vim编译的使用 Gdb调试工具的使用 Makefile的编写 linux跟踪调试 SSH的使用 subversion的使用     1.
1325 0
|
6天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
2天前
|
监控 Linux Windows
50个必知的Linux命令技巧,你都掌握了吗?(下)
50个必知的Linux命令技巧,你都掌握了吗?(下)
|
3天前
|
Linux Shell Windows
Linux 常用基本命令
Linux 常用基本命令
|
3天前
|
Ubuntu Linux Shell
linux免交互登陆远程主机并执行命令(密钥对和Expect)
linux免交互登陆远程主机并执行命令(密钥对和Expect)