vscode + vim 高效开发
本笔记用于自己遗忘时查看
建议观看教程 指尖飞舞:vscode + vim 高效开发(系列视频)总时长1小时

一、安装及其配置vim插件

点击 文件–>首选项–>设置

打开配置文件,把代码复制到配置文件的大括号中,不要删除原有的内容,添加时不要忘了给原有的上一个内容最后加 逗号
    "vim.easymotion": true,
    "vim.incsearch": true,
    "vim.useSystemClipboard": true,
    "vim.useCtrlKeys": true,
    "vim.hlsearch": true,
    "vim.insertModeKeyBindings": [
        {
        "before": ["j", "j"],
        "after": ["<Esc>"]
        }
    ],
    "vim.normalModeKeyBindingsNonRecursive": [
        {
        "before": ["<leader>", "d"],
        "after": ["d", "d"]
        },
        {
        "before": ["<C-n>"],
        "commands": [":nohl"]
        }
    ],
    "vim.leader": "<space>",
    "vim.handleKeys": {
        "<C-a>": false,
        "<C-f>": false
    }

二、vim设计哲学

三、vim模式


insert
append
one line



四、光标移动


w:跳到下一个单词开头
b:跳到本单词或上一个单词开头 begin
e:跳到本单词或下一个单词结尾 end
ge:跳到上一个单词结尾
0跳到行首
^跳到从行首开始第一个非空字符
$跳到行尾
gg跳到第一行
G跳到最后一行

五,动作


a arround
t 是标签的意思 tag /tab
p 段落 paragraph
s句子 sentence
w 单词 word
六、操作符

七、操作符+动作
p 粘贴
u 撤销动作+操作符
-  ciw 选中单词删除并进入插入模式 
-  yiw 选中并复制单词 
-  diw 选中并删除单词 
-  ndd/ncc/nyy 向下删除/修改/复制n行,包括当前行 
-  d/c/yf{char} 删除/修改/复制到向后的char字符 
-  d/c/y ^/$ 删除/修改/复制到开头/结尾 
-  die 删除整个文件 
-  cie 删除整个文件并进入写入模式 
-  多试试各种组合 
-  v+各种操作(可以看到啥被选中了)+操作符(y/c/d) 
八、大小写转换

九、tips
gd : goto [definition](javascript:😉 跳转到定义
gh :go hover 鼠标悬浮到这里的效果
gt: tab :下一个标签页
gT :上一个标签页
2gt 跳到第二个标签页
ctrl 0 ,左侧标签
在左侧标签 可以使用 h j k l space
分屏
ctrl + 1 2 3 到其中一个分屏
十、easymotion
<leader>:初始是space
| <leader><leader> s <char> | Search character | 
|---|---|
| <leader><leader> f <char> | Find character forwards | 
| <leader><leader> F <char> | Find character backwards | 
| <leader><leader> t <char> | Til character forwards | 
| <leader><leader> T <char> | Til character backwards | 
| <leader><leader> w | Start of word forwards | 
| <leader><leader> b | Start of word backwards | 
| <leader><leader> l | Matches beginning & ending of word, camelCase, after _, and after#forwards | 
| <leader><leader> h | Matches beginning & ending of word, camelCase, after _, and after#backwards | 
| <leader><leader> e | End of word forwards | 
| <leader><leader> ge | End of word backwards | 
| <leader><leader> j | Start of line forwards | 
| <leader><leader> k | Start of line backwards | 
| <leader><leader> / <char>... <CR> | Search n-character | 
| <leader><leader><leader> bdt | Til character | 
| <leader><leader><leader> bdw | Start of word | 
| <leader><leader><leader> bde | End of word | 
| <leader><leader><leader> bdjk | Start of line | 
| <leader><leader><leader> j | JumpToAnywhere motion; default behavior matches beginning & ending of word, camelCase, after _and after# | 
十一、vim surround

十二、多光标操作
gbgb
这个不太好用 ,有个插件Auto Rename Tag,修改一个tag 另外一个跟着变
而且vscode 自动添加尾部的tag










