Vim]练习练习练习

官网:https://github.com/VSCodeVim/Vim

这个Vim主要针对的是VSCode上的Vim插件来说

其中包含了Vim的其他插件:

  • sound 处理字符串的包裹符号
  • sneak 双字符查找
  • easymotion 极速移动
  • replaceWithRegister 寄存器替换
  • foldfix 上下移动(j/k)时自动跳过折行

小技巧

1. 多使用标记

使用标记 来处理复制粘贴剪切

m +字符:标记

就像是视频剪辑一样,在两个位置做好标记,在使用y `d` 等时可以配合,比如

function asd<光标>fjkl(){
	let ffdjklfd="
asd{
djfk

}<光标>jj


命令
d`1
结果
asdjj

{ } 用来跳转空行(段落)

W 跳转到下一个空格

d/foo 向后删除到/foo前

bai<光标>du.asdfasdf123
d/123
bai123

d?bar 向前删除到/bar前(也就包括bar)

baidu2333.asdfasd<光标>f123
d/2333
baiduf123

寄存器Registers

:reg :查看所有寄存器内容

:reg a : 查看a 寄存器内容

基本逻辑

" +寄存器字符 +操作

"ap 粘贴a寄存器内容

注释

gc 单行注释即\\

gC 多行注释即/**/

gCi(( 括号里的内容注释下

常用情况总结

创建完一个变量快速回到变量名

let a = "sadfasdf";<插入模式光标>

jj02w
jj 返回普通模式
0 到达行首
2w 跳2个单词

针对情练习:

为了减轻双手压力,在一些快捷键要使用正确的手

Shift (右手)+A :在最后插入

Shift (右手)+A :在最后插入

Shift (右手)+5 :切换光标在括号的位置

Shift (右手)+4/6 :切换光标到行首/尾

Shift (右手)+S选择模式下添加包围

查找

[范围] s/目标/替换/g

字符功能
数字第x行
$最后一行
.当前行
+/-当前行向下/上偏移行数
%所有行相当于(1,$)

命令模式

:r! [命令]

将执行的命令插入到当前行

[范围]sort

根据第一个字符排序

<leader>使用

easymotion中开启

评论