Vim基础操作指南

Vim基础操作指南

本文主要是介绍Vim的基本操作,不过当你能熟练使用这些操作以后,你的代码编写效率绝对会飞起,当然最后我也会介绍一些进阶读物,方便对VIm感兴趣的读者进一步了解。

写在前面:个人感觉 vscode + vim 绝配,yyds

1.移动光标

检查键盘是否为英文输入,且大写未锁定

  • 基本操作: h左 j下 k上 l右
  • number+‘w’ 将光标向前移动number个单词
  • number+‘e’ 功能同上
  • 数字0将光标移动到当前行首

'e’和’w’区别:

  • ‘w’ 将光标从当前位置移动到下一个单词起始,且不包括起始字符
  • ‘e’ 将光标从当前位置移动到当前单词末尾

个人感觉具体使用时区别不会太大。。

2.Vim的保存和退出

键可以切换Vim的状态,从编辑状态切换到正常状态,然后输入

  • :q!不保存强制退出
  • :wq保存并退出
  • 通过 vim + 文件名 + 回车便可以通过vim打开对应文件

3.文本编辑之删除

该操作在normal模式下

  • 通过 'x’来删除掉光标所在字符
  • 通过 ‘dd’ 来删除光标当前所在整行
  • 通过 ‘dw’ 从光标处删除到一个单词的词末
  • 通过 ‘d$’ 删除当前光标到行末

此处可以观察到 操作+操作对象 的使用规则,通过后面的计数操作,功能会更加强大,即 操作+number+操作对象

  • 'd3w’删除三行
  • ‘2dd’ 删除两行
  • 类比如上…

4.文本编辑之插入

以下操作均会进入编辑模式

  • 通过 'i’在光标所在字母前面插入
  • 通过 'a’在光标所在字母后面插入
  • 通过 'A’在当前行的最后进行插入,此时光标在何位置并不重要
  • 通过小写 'o’在当前光标的下一行插入,此时Vim进入编辑模式
  • 通过大写 'O’在当前光标的上一行插入,此时VIm进入编辑模式

友情提示:键除了能带你会normal模式外,还能撤销一个你不想输入或者部分完整的命令

5.撤销类命令

  • 'u’撤销最后执行的命令
  • 'U’撤销对一行的操作
  • 撤销以前的撤销命令,则通过 Ctrl+R

6.置入类命令

  • 'p’可以配合删除命令来使用,该操作可以将已删除的文本内容置于光标之后。如果最后一次删除的是一个整行,那么该行将置于当前光标所在行的下一行。

7.替换+更改类命令

  • 'r’和一个字符可以替换当前光标所在位置的字符,该操作只能一个一个替换
  • 'R’可以连续替换多个字符,通过<ESC>结束
  • ‘c’+对象 可以实现连续替换
    • ce 改变文本直到一个单词的末尾

同样也可以 ‘c’+number+motion 使用

  • 查找替换:
    1. 只在当前行查找替换:
    • : s/old/new 该命令只替换当前行的第一个old
    • : s/old/new/g 该命令对当前行内的所有old进行替换
    • : s/old/new/gc 该命令对当前行内的所有old进行替换并询问,需要确认
    1. 在全文进行查找替换:

    类比<1>,只需在’s’前加 ‘%’

    • :%s/old/new 只替换全文中的第一个old
    • :%s/old/new/g 替换全文中的所有old
    • :%s/old/new/gc 替换全文中的所有old并问询

8.定位及文件状态

  • Ctrl+g 组合键可以查看当前光标所在行的行号及文件状态信息
  • gg 可以跳转到第一行
  • G 可以跳转到文件最后一行
  • 行号 + G 则可以跳转到指定行

9.搜索类命令

  • 正向查找:输入 ‘/’ (类似于’:'命令) ,然后输入 ’待查找字符串‘ ,回车即可
  • 逆向查找:输入 ‘?’+‘待查找字符串’,回车即可
  • 上面两种情况连续查找:
    • 若连续同上次方向查找则输入’n’,即正向查找下’n’为向下搜索,逆向查找下为向上搜索
    • 若连续逆上次方向查找则输入’N’,即正向查找下’N’为向上搜索,逆向查找下为向下搜索

个人认为这两种用好一种就行了,容易混淆

10.配对括号的查找

  • 输入 ‘%’ 可以配对 )、 ]、}

  1. 在Vim内执行外部命令
  • ‘:!’+外部命令 便可以在Vim中执行外部命令
    • 例如 ‘:!ls’ 便可以查看当前vim文件同目录下的文件列表
  1. 使用外部命令进行文件输出保存/读取写入
  • 'v’命令可以使vim进入可视选取状态
  • ':w filname’可以将选中字段保存到 filename 文件中,可搭配 'v’命令使用
  • ':r filename’可以将外部filename中的内容写入到当前光标后面
    • 例如 ‘:r !ls’ 可以将当前路径下的所有文件目录写入到光标后面

13.复制粘贴文本

  • 通过 ‘y’ 复制文本, 'p’粘贴文本

可搭配 'v’命令使用 ,如同前面所说,单独使用 'p’命令将粘贴最后一次删除文本到当前光标所在下一行


14.设置类命令选项:

  • 输入 ‘:set xxx’ 可以设置xxx选项

    • ‘ic’ ‘ignorecase’ 查找时忽略字母大小写
    • ‘is’ ‘incsearch’ 查找短语时显示部分匹配
    • ‘hls’ ‘hlsearch’ 高亮显示所有的匹配短语

    选项名可以用完整版本,也可以用缩略版本。

  • 在选项前加上 no 可以关闭选项: :set noic

15.关于组合键命令的小结

  • ctrl + g 显示当前光标所在行号及文件状态
  • ctrl + D / 键进行自动补全
  • ctrl + o 返回光标上次所在位置,可多次返回
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值