vim 进阶用法

vim 进阶用法

模式转换 > - 普通模式 -> 插入模式: i

  • 插入模式 -> 普通模式: esc

移动光标(上下左右)

  • 在普通模式下: 上:k 下:j 左:h 右:l
  • 本行头: 0 本行头:^ 本行尾巴:$
  • 迅速移动(跳过空格):ctrl + 箭头
  • 迅速移动(跳过符号):shift + 箭头
  • 移至顶部:gg
  • 移至底部:g
  • 跳行: :# (#为自然数) 跳行: #g(#为自然数)
  • 移动光标#个字符: # + space
  • 寻书移动到页面顶部、中间、底部: h m l
  • 在一行中快速定位到某一个位置: f+字符
  • 移动到某一回到位置前: t+字符

保存

  • 退出: :q
  • 强制退出,不保存: :q!
  • 保存: :w
  • 另存为: :w filename
  • 保存并退出: :wq 保存并退出: :x
  • 移动到某一回到位置前: t+字符u

复制

  • 复制当前行到系统剪切板: "+yy
  • 复制所选内容到系统剪切板: "+y
  • 选择: v 复制: y
  • 复制当前行到vim板剪切: yy

粘贴

  • vim剪切板至下一行: p
  • vim剪切板至上一行: P

删除

  • del: x
  • backspace: X
  • 向后删除#个字符: #x
  • 向前删除#个字符: #X
  • 删除当前单词: diw
  • 删除到某一个字符位置: df+字符
  • 删除到某一个字符前: dt+字符

删除/剪切

  • 删除所在光标下的#行: #dd
  • 删除所在光标上的#行: #dk
  • 向下删除至底部: dG
  • 向上删除至顶部: dgg
  • 向右删除至末: d$
  • 向左删除至始:d0

撤销以及反撤销

  • 撤销: u
  • 反撤销: ctrl + r

批量选择

  • 向下: G
  • 向上: gg
  • 选中某个方格: ctrl + v
  • 选中某个段落: vap
  • 以段落为单位选择: v{ or v}
  • 选中某个括号内的东西: vi(

缩进格

  • 向前缩进: <<
  • 向后缩进: >>
  • 自动缩进: ==

搜索

  • 向下搜索: /string + enter (n为下一个)
  • 向上搜索: ?string + enter (n为上一个)
  • 从#1行到#2行,搜索替换x为y
    • :#1,#2s/x/y/g (#1 #2为自然数)
    • :#1,#2s/x/y/gc (替换前确认confirm)

特殊搜索

字符 含义
^ 放在字符串前,匹配行首的字符
$ 放在字符串后,匹配行尾的字符
< 匹配一个字符的头
> 匹配一个字符的尾
. 匹配任何单个正文字符
[str] 匹配str中的任何单个字符
[^str] 匹配任何不在str中的单个字符
[a-b] 匹配a~b之间的字符
* 匹配前一个字符的0次或多次出现
\ 转义后面的字符

大小写转换

  • 将光标下的字母改变大小写: ~
  • 可视化模式下: U 大写 u 小写

设置set

  • 显示行号: :set nu
  • 取消行号: :set nonu
  • 设置缩进: :set tabstop=#
  • 自动缩进: :set autoindent
  • 显示名称: :set laststatus=2
  • 显示行符: :set list
  • 取消行符: :set nolist

多窗口

  • 开出新窗口: :sp
  • 切换窗口: ctrl w + 上下键

改写

  • 修改单个字符: r
  • 改写多个字符: c
  • 数值加一: ctrl + a
  • 数值减一: ctrl + x

有关宏Macro

  • 录制宏: q+单字母+指令+q (开始+给予+指令+结束)
  • 运行宏: @+宏值
  • 运行上一个宏: @@
  • 运行#个宏: # + @ + 宏
  • 显示宏内容: " + 宏值 + p
  • 编译宏内容: :let @宏值=“指令”

其他

  • 显示路径: 普通模式下先按1 在按ctrl + g
  • 显示历史命令窗口: q: (回车退出)
  • 新增新行并且转入为插入: o

特殊补充

  • 迅速移动到页面顶部,中间,底部:h m l
  • 单个字符往后跳:w 单个字符往前跳:b
  • 每个字符往下跳:shift + w
  • 旋转某个方格: ctrl + v
  • 修改单个字符: r + 修改内容

参考链接

你可能感兴趣的:(工具使用)