当前位置 : 主页 > 操作系统 > centos >

vim的简单使用

来源:互联网 收集:自由互联 发布时间:2022-06-20
写在前面 今天我们主要看看再Linux环境下如何编辑代码,里面的一些指令大家可能会有些不太懂,不过没有关系,先看着我写,后面会逐渐了解的.在学习之前,我想和大家说一句话,不要对Li

写在前面

今天我们主要看看再Linux环境下如何编辑代码,里面的一些指令大家可能会有些不太懂,不过没有关系,先看着我写,后面会逐渐了解的.在学习之前,我想和大家说一句话,不要对Linux感到神秘,也不要觉得它很难,学习新知识是困难的,但是学习过之后,你会发现也就那样,没有什么值得感到无从下手的.

vim

一般情况下,我们在widows环境下,编写代码都是有专门的软件,例如VS,IDEA...使用这些软件,我们不仅仅可以编写代码,还可以在这里运行,调试...它们存在很多功能,所以有一个共同的名字:集成开发工具,但是在Linux中就不一样的,我们很少使用这些东西,每个模块都有相对应的工具来帮助我们使用.


什么是vim

不知道大家在Windows下使用过文本编辑器(记事本)过没有,就是那个可以写.txt文件,又可以修改文件后缀的小工具,vim的本质就是它. 也就是说vim就是我们编写代码的地方,它只负责这个功能.我们在vim中编写代码,后面的编译运行等等的事交给其他的工具来干.

如何下载vim

在Linux中也有一个和vim功能一样的编辑器,叫做vi,但是我们一般很少使用.vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面 . 但是vim又不是Linux自带的,我们该如何下载呢?在Linux中下载软件有点麻烦,大家就按照我下面写的指令就可以了. 按照这一条指令就可以了,后面输入一下超级用用户的密码,按下回车就可以自动下载安装了,很简单.

sudo yum -y install "vim"

vim的简单使用_vim

这里的配置我先不说,在篇博客的后面会专门谈一谈,不过说的比较浅.我们先可以看看这篇如何配置. 这里强烈建议

​​​一键部署vim配置​​



为何学习vim的使用

大家为何不用一些电脑上自带的软件,而去选择那些心仪的,这就体现出一个优胜略汰,好的工具我们会第一选择使用,我们也喜欢用它,就是因为它好用,vim也是如此.在vim中,我们可以做很多事情,初步接触的时候大家可能感觉有些困难,但是一旦我们上手了,就会知道它的优点了. 大家可能觉得vim不就是一个编辑器吗,他还需要我们学习?不就是把我们的代码写到文件中吗?这不就是有手就行.是的,有手就行,但是vim要仅仅是这些最基本的功能,大家也不会在今天学习它了.学习vim在于我们如何快速的编写代码,修改代码.这也是我们今天学习的主要内容.

vim的模式

我们先看看如何使用vim编辑文件,再说这个vim的模式. 在编译文件前,我们需要创建一个文本文件,但是vim会自动创建我们需要的文件.

vim main.cpp // vim + 空格 + 文件名(带上后缀)

即使没有main.cpp这个文件,vim也会自动帮忙创建出来,下面的代码就是我们回车会出现的结果.画面中主要包括三个方面,我都标出来了.其中一个就是我们要谈的模式.

vim的简单使用_下载_02

vim中包含很多种模式,分别有不同的作用,这里我谈谈大家经常接触的,共有三种.


  • 底行模式(last line mode) : 文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作
  • 命令模式(Normal mode) : 控制屏幕光标的移动,字符、字或行的删除
  • 插入模式(Insert mode) : 就是我们普普通通编写代码,也就是敲字,该模式是我们后面用的最频繁的编辑模式


如何切换vim的模式

如何在vim中切换模式,对我们来说是很重要的,大家来看看吧. 这三种模式是可以相互切换的,我们只需要知道一些常用的切换方法就可以了,对于那些很偏僻的方法,我们不太提倡,大不了切换的时候绕些远路.

vim的简单使用_vim_03

命令模式 -> 插入模式

我们一进入vim,模式就是命令模式,先要进入插入模式有下面三种常见的方法.这三种方法又不同的作用,适合不同的场景.


  • 按键盘的 a 当文件中有文字时,按a 光标会自动后移一下
  • 按键盘的 i 当文件中有文字时,按 i 光标会不会动
  • 按键盘的 o 当文件中有文字时,按o 光标移动到下一行


vim的简单使用_vim_04


插入模式 -> 命令模式

按一下ESC按键就可以了.

vim的简单使用_下载_05


命令模式 -> 底行模式

按一下shift + : 就可以了

vim的简单使用_vim配置_06


命令模式

插入模式没有什么好说的,就是正常编辑代码就可以了,大家主要还是放在另外两种模式下.命令模式在大范围修改代码有很大的优点,可以随意跳到任意一行...这些功能都是我们需要的. 下面我将一一列出vim在命令模式的快捷方式.


光标的上下左右移动

在vim中,光标的上下移动有两种方式,一种是使用键盘上自带的上下左右移动的按键,另外一种是使用 h,j,k,l这四个英文,大写不行.这里我建议使用英文字母,因为有的vim不支持第一种方法. 我来详细说说这四个英文字母如何和上下左右相匹配


  • 上移 k 可以理解为 king 国王高高在上
  • 下移 j 可以理解为 jump 先下跳
  • 左移 h 四个按键最左边
  • 右移 l 四个按键最右边


vim的简单使用_vim配置_07


移动一个单词的大小

或许大家觉得一个一个字符移动的速度太慢了,我们是不是有一个比较快的移动,这里有一个一次移动一个单词的长度的快捷键,说是一个单词不太准确,但是大概就是这种情况.


  • 先后移动一个单词 w
  • 先前移动一个单词 b


vim的简单使用_vim_08


跳至行尾行首

在Windows环境下一般都有单独的按键home键跳到行首,end键跳至行尾,但是在vim中有一点问题,我们不用这两个键.


  • 直接跳到行尾: shift+4 也就是 $ 符
  • 直接跳到行首: shift+6 也就是 ^ 符


vim的简单使用_vim_09


跳至末行和首行

当一个文件的代码变的很少多的时候,我们要是想要直接跳到到尾行,需要不断的滑动鼠标的滚轮,但是在vim中一个简单的快捷方式就可以了.


  • 最后一行 shift+g
  • 最上一行 gg


vim的简单使用_vim_10

并且在这里vim还提供跳到任意一行的方法,和上面差不多.


  • 第N行 N+ shift+g


vim的简单使用_vim配置_11


复制&粘贴

vim中也提供复制和粘贴的快捷方式,避免我们用鼠标一点点弄.


  • yy 复制光标所在的一行
  • p 默认粘贴到下一行


vim的简单使用_vim_12


有人可能会疑问道,我们复制多行的话不是还需要鼠标吗?上面的那个只能复制一行,但是下面的这个就可以复制多行了.


  • N yy 复制从光标可以数N行
  • N p 把复制的内容粘贴N次


vim的简单使用_下载_13vim的简单使用_vim配置_14


撤销上一次的操作

要是我们感觉到上一次的操作用错了,我们可以撤销上一次的操作,和CTRL+ Z一样

  • u 撤销上一次的操作

vim的简单使用_vim配置_15


剪切&删除

剪切包含复制和删除两种,只要我们不对剪切的内容进行粘贴,那不就是删除了吗!


  • x 删除光标所在的一个字符
  • N shift+x 删除贯标所在之前的N个字符(光标所在的字符不删除)
  • dd剪切 剪切光标所在的一行 但是会保存 p可以粘贴出来
  • N dd 可以剪切从贯标开始数的N行


vim的简单使用_vim配置_16


大小写转化

在Windows环境下,要是我们想要把一行代码从小写变成大写这是很难做到的,但是vim却可以很简单的做到.


  • shift+ ~ 大小写转换


光标会从左向右滑动,我们不想改变了,松开按键就可以了

vim的简单使用_vim_17


底行模式

一般情况下,命令模式那些东西够我们平常使用vim,这里我简单的谈一下底行模式的内容,不是太多. 我们需要先进入底行模式,先按esc键,然后shift + :,这样就可以了.

打开多个窗口

在vim中也可以使用多个窗口来一起编译.


  • vs 文件名(带后缀)


vim的简单使用_vim配置_18

这样vim会自动打开这个这个文件,但是这里有一个问题,我们如何确定自己是在编写哪个文件呢?这个也很用辨别,记住光标是唯一的,光标在那里,编写的就是那个文件.这个有有一个问题,我们该如何将光标移动其他的文件中,vim也可以帮忙. 在命令模式下,下面的快捷方式就可以将光标移动的其他的窗口


  • CTRL + ww

vim的简单使用_vim配置_19


保存文件&退出vim

我们写好了文件后,就可以保存和退出了.


  • : w (保存当前文件)
  • :wq (输入「wq」,存盘并退出vim)
  • : q! (输入q!,不存盘强制退出vim)

vim的简单使用_vim_20


vim配置

大家要是没有使用上面的vim的自动配置,看到我的vim页面会和你们的大不一样,我的vim是经过配置的,里面装了很多插件,大家会看到我的代码补全功能,这是刚下载的vim所没有的,甚至没有行号这个功能.我们可以自己配置自己的vim,这里建议一个用户配置独属于自己的vim配置.

自动配置

我建议是自动配置,别人是专门配置vim的,他们是专业的,这里我把上面的连接复制下来,我和它的配置是一样的. 这里强烈建议 ​​一键部署vim配置​​


手动配置

要是大家想要手动配置vim的话,这里也给给大家一些方法,vim配置包含两个方面,我只谈谈基本配置就可以了,插件的安装很麻烦


  • 基本配置
  • 插件


我们需要下面几个步骤.

而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,通 常已经存在一个.vimrc文件,如果不存在,则创建之

  • 在 用户目录下查看隐藏文件
  • 要是有 .vmrc文件就直接vim .vmrc,没有的话创建一个再编辑
  • 在.vmrc文件里面填写你要的功能
  • vim的简单使用_vim_21

    这个我给出几个功能,大家也可以去网上找找关于这些的博客,把自己想要的功能复制粘贴到文件中就行了.

    set number // 显示行号
    syntax on // 语法高亮度显示
    set autoindent // vim使用自动对起,也就是把当前行的对起格式应用到下一行
    set smartindent // 依据上面的对起格式,智能的选择对起方式,对于类似C语言编
    set tabstop=4 // 设置tab键为4个空格


    网友评论