Vim 常用键
环境
vscode 安装以下插件即可体验
快速切换insert 和 normal 模式
- 需求1:切换插入(insert)模式
i在当前光标前切换到insert模式a在当前光标后切换到insert模式o换行并且切换到insert模式
- 需求2:切换正常(normal)模式
- 按
Esc切换成正常(normal)模式 - 或者使用
ctrl + c/ctrl + [切换normal 模式
- 按
快速删除一个字符和单词
- Vim在normal模式下使用
x快速删除一个字符 - 使用
d(delete)配合文本对象快速删除一个单词 daw (d around word) d和x都可以搭配数字来执行多次v(visual)模式下,v+h/j/k/l进行视图移动 再加d/y就是这块区域删除/复制
Vim Normal模式复制+剪切+粘贴
初学者会感觉Vim 复制粘贴比较奇怪,先从normal模式学习
-
normal模式下复制粘贴分别使用
y(yank)和p(put),剪切d和粘贴p -
yf+有的字符- 选择拷贝光标当前行光标后,有的字母,并且输入这个字母就会到剪贴板
const str = 'fdaghgg422gfdg525ff' // 当前光标在行首c这里,按下`y`+`f`+`4`,就复制了const str = 'fdaghgg4 -
需求1: 复制 / 剪切光标后的词组
- 使用
y/d+w
- 使用
-
需求2: 复制 / 剪切当前光标行
- 使用
y+y/d+d
- 使用
-
需求3: 复制任意区域
- 使用
v(visual)+h/j/k/l/w/e/b命令选中所要复制y的地方,然后使用p粘贴
- 使用
vim 快速修改
相比删除,更常用修改,一般是删除之后改成我们期望的文本
- 常用有三个,
r(replace),c(change),s(substitute) - normal模式下使用r可以替换一个字符。s 替换并进入插入模式
- 使用
c配合文本对象,我们可以快速进行修改
c+i+ [ 表示change insert [ / } ;改变中括号/大括号的代码并且进行insert模式
括号间和字符串跳转
- 把光标放在括号,如何按下
%就可以实现括号的头尾位置切换 ^跳转本行最前一个字符串,就是正则的语法$跳转本行最后一个字符串,就是正则的语法
需求
- 需求1:
{,},[,],(,)括号光标跳转- 将光标放在括号上,使用
%就可实现光标来回跳转
- 将光标放在括号上,使用
- 需求2: 本行字符串跳转头尾
- 使用
^就是头,使用$,就是尾
- 使用
普通的光标移动
j、k、h、l:向下/上/左/右滚动w、光标跳到后一个词组的头部e、光标跳到后一个词组的尾部b、光标跳到前一个词组的头部gi快速跳转到你最后一次编辑的地方并进入插入模式gg/G快速跳转到页头和页尾ctrl + uctrl + f上下翻页(upword/forward)zz把屏幕置为中间
行首/尾之间快速进行insert模式
I跳转到行首并进入insert模式,相当于^iA跳转到行尾并进入insert模式,相当于$a
常见例子
import { createApp } from 'vue'
import 'bootstrap/dist/css/bootstrap.css'
import App from './App.vue'
createApp(App).mount('#app')
- 需求:想在第一行头部插入
- 第一种方案:使用
gg+i/I就可实现 - 第二种方案:使用一直按
k跳到第一行,然后I,可以实现
- 第一种方案:使用
- 需求2:想在第一行尾部插入
- 第一种方案:使用
gg+A就可实现 - 第二种方案:使用
gg+$+a就可实现
- 第一种方案:使用
利用数字加移动键快速光标跳转
- [count] +
w(word) - [count] +
e(end) - [count] +
b(backward) - [count] +
h - [count] +
j - [count] +
k - [count] +
l - [count] +
G
3+G将光标跳转到第三行行头 !!特殊
3+w将光标跳转到第3个词组(word)首
2+e将光标跳转到第2个词组(end)尾
3+b将光标往前跳转到第3个词组(backward)头
h,j,k,l同理可得
快速查找并且跳转
const str = `fadhnkgksfsdgkfdsjhksdk`
这是往后找
- 情景situation:此时的光标在开头的第一个c位置
- 任务task:快速查找第三个d 并且光标跳转到那个位置
- 行动action: 按下
3fd - 结果result: 实现完毕
这是往前找
- 情景situation:此时的光标在最后的第一个k位置
- 任务task:快速查找从左往右找第2个s 并且光标跳转到那个位置
- 行动action: 按下
3Fs - 结果result: 实现完毕
normal模式下总结
- j : 向下移动。
- k:向上移动。
- h:向左移动。
- l:向右移动。
- w、光标跳到后一个词组的头部
- e、光标跳到后一个词组的尾部
- b、光标跳到前一个词组的头部
- gg:跳转到页面的顶部。
- G:跳转到页面的底部。
- A: 跳转到行尾并进入insert模式
- I 跳转到行首并进入insert模式
- yy:拷贝光标当前行到剪贴板
- yf+[含有字符]:复制当前行光标,到指定字符区域
- p:粘贴
- d: 剪切
- dd: 当前行剪切
- v: 配合移动键选取可视区域+y/d 进行复制或者剪切
- $: 括号间进行跳跃
- [count]+移动键:进行快速移动
- [count]+f+[含有字符]: 当前行进行字符光标跳跃
以上就是文件内进行vim移动和crud
感谢收看!!觉得比较适用可以点个心心(~ . ) !( . ~ )
-> (~ . ~)