02.Vim

Vim

三个模式

  • img

指令列模式

  • 命令 作用
    :w 写入磁盘
    :w! 当文件为只读时,强制写入磁盘。到底能不能写入,与用户对该文件的权限有关
    :q 离开
    :q! 强制离开不保存
    :wq 写入磁盘后离开
    :wq! 强制写入磁盘后离开
    :行号 跳转到某一行

一般命令模式

移动光标
  • l or 右箭头 : 向右移动一个字符
  • h or 左箭头 :向左移动一个字符
  • j or 下箭头 :向下移动一行
  • k or 上箭头 :向上移动一行
  • 0 (零按键):移动到当前行的行首。
  • ^:移动到当前行的第一个非空字符。
  • $:移动到当前行的末尾。
  • w:移动到下一个单词或标点符号的开头。
  • W:移动到下一个单词的开头,忽略标点符号。
  • b:移动到上一个单词或标点符号的开头。
  • B:移动到上一个单词的开头,忽略标点符号。
  • e: 跳到本单词或下一个单词的结尾
翻页
  • Ctrl-f or Page Down:向下翻一页
  • Ctrl-b or Page Up : 向上翻一页

光标搜索跳转可以用在增删改查

  • f [char] : 光标跳到当前行下一char所在的位置,F:跳到上一个
  • t[char] : 光标跳到d当前行下一char的前一个所在的位置,T:跳到后一个所在的位置
  • , :反向查找上次的查找命令
  • ;:重复上次的字符查找操作
  • numberG :移动到第 number 行。例如,1G 移动到文件的第一行。
  • G : 移动到文件末尾。
插入
  • i:在光标前插入
  • I:在行首插入
  • a:在光标后插入
  • A:在行尾追加字符
  • o :当前行的下方打开一行。
  • O :当前行的上方打开一行。
复制粘贴查找撤销
  • 撤销:u
  • 剪切:d
  • 删除并进入写入:c
  • 复制:y
  • 粘贴:p
文本删除
  • x:当前字符
  • 3x:当前字符及其后的两个字符。
  • dd: 当前行。
  • 5dd:当前行及随后的四行文本。
  • dW:从光标位置开始到下一个单词的开头。
  • d$: 从光标位置开始到当前行的行尾。
  • d0:从光标位置开始到当前行的行首。
  • d^:从光标位置开始到文本行的第一个非空字符。
  • dG:从当前行到文件的末尾。
  • d20G:从当前行到文件的第20行

动作:快速选中一些字符

  • i ” : 选中两个”之间的字符,不包含“
  • a “ : 选中两个“ 之间的字符,包含”
  • iw:选中当前光标所在的单词,不包含单词前后的空格
  • aw:选中当前光标所在的单词,包含单词前后的空格
  • i ( : 选中()之间的字符,不包含(
  • a( : 选中()之间的字符,包含(
  • 类似的还有:< { ‘ ` [ t(tag)

切换大小写

  • ~ 切换当前光标下的大小写
  • 3~ : 从光标位置开始的三个字母改变其大小写
  • g ~~: 改变当前行的大小写
  • gUU : 将当前行改为大写
  • guu :将当前行改为小写
  • gUaw : 将光标下的单词改为大写
  • guaw :将光标下的单词改为小写

tips

  • 进入函数 : gd
  • 查看函数签名:gh
  • 跳回到上一个函数: ctrl + o
  • 切换标签页: g T/t
  • 跳到文件区域:ctrl + 0 (零)
  • 分屏跳转:ctrl + 2
  • ds [char] : 删除当前行左右两侧的char
  • cs [char1] [char2] : 将当前行的左右两侧的char1 替换为char2
  • ys 动作 [char] 在动作两边添加char

指令列模式:

  • 显示行号: set nu

02.Vim
https://x-leonidas.github.io/2022/02/01/13Linux/02.Vim/
作者
听风
发布于
2022年2月1日
更新于
2024年10月24日
许可协议