Vim简介

  • Vim是什么?
    • Vim可以是一个文本编辑器,但更是一个代码编辑器,甚至可以是一个IDE
  • 为什么要使用Vim?
    • 俗话说的好,“工欲善其事,必先利其器”,身为整日整夜撸代码的程序员,拥有强大高效的的编辑器是必不可少的
    • 然而Vim的使用一开始让人感到不适,这需要一段时间练习并熟悉最终形成肌肉记忆,Vim的技巧可以非常高深,身为小白的我只会分享一点我常用的用法

Vim的安装

  • 安装Vim编辑器
  • Visual Stdio Code安装Vim插件
  • JetBrains系列产品安装Vim插件

Vim的基本操作

  • Vim的三种模式
    • 编辑模式
    • 可选模式:按v进入可选模式
    • 普通模式:按Ctrl+C/Ctrl+[ / Esc 从任意模式下回到普通模式
    • ![[Pasted image 20240614215022.png]]
  • 阅读相关操作
    • 显示/关闭显示行号:set nu(number)/set nonu(nonumber)
    • 光标跳跃
      • 上下左右移动:j k h l/方向键
      • ![[Pasted image 20240614214821.png]]
      • 跳到上/下一个单词开头:W w
      • 跳到下一个单词末尾:e

      • 跳到行首/行尾:0、$
      • 跳到非空格行首:^
      • 跳到文件最开始:gg
      • 跳到文件最末尾:G
      • B b
      • 跳到上/下一段:{ }
      • 括号匹配:%
      • 跳到指定行::行号->回车,行号+G
      • Ctrl+f(forword):向前翻页
      • Ctrl+b(backword):向后翻页
      • Ctrl+u(up):向前翻半页
      • Ctrl+d(down):向后翻半页
      • ![[Pasted image 20240614214619.png]]
    • 搜索:普通模式下按/(向下查找),?(向上查找)
      • 高亮显示搜索结果:hls
      • 取消高亮显示:nohls
      • 在查找末尾+\c:不区分大小写
      • set ic(ignore case)
    • 行内搜索字母:(F)f (反向)要搜索的字母
  • 写入相关操作
    • 进入编辑模式:a(光标后面添加append),A(行尾添加),I(行首添加),i(光标前面添加insert),o(在下一行插入),O(在上一行插入)
      • 想在某个地方下面加东西,我就会o一下
      • ![[Pasted image 20240614214920.png]]
    • 复制与粘贴:y,p
    • 复制一行yy
    • :4,7>
  • 删除相关操作
    • x:删除光标所在的字符
    • 删除:d
      • 删除一行:dd
      • 删除后按p即可复制![[Pasted image 20240614214745.png]]
    • 删除直到:dt
    • 删除并进入编辑模式:c
      • 像我有个变量名写错了啊,就会cw修改一个单词
  • 修改相关操作
    • r:修改光标所在的字符
    • 进入命令模式(:):(范围选择:(当前行可以省略为空)/开始行号,结束行号/%【全文,1,$也可以】)s/被替换的旧文本/替换的新文本(替换范围 是否询问])
      • 加/g(global全局):替换所有匹配的内容,不加g的话只会匹配每行第一个内容
    • u:撤销
  • 其他操作
    • .:重复上一次的操作
    • Ctrl+shift+G:进入底行模式
  • n+操作
    • 2yy:复制两行
    • 3p:复制三次
    • 100p:复制100次
  • .vimrc:配置文件
    • 显示行号

VSCode的Vim配置

  • 进行绑定按键
  • 设置非Vim接管按键
  • 同步剪贴板

推荐的Vim学习网站