Vim快捷键(自用)

编程入门 行业动态 更新时间:2024-10-21 15:41:33

Vim快捷键(<a href=https://www.elefans.com/category/jswz/34/1765693.html style=自用)"/>

Vim快捷键(自用)

自用。保存一下自己常用的快捷键

Vim 常用快捷键

光标移动

  • 0 → 回到当前行开头(然后可以方便得用f 来跳转)(为了方便使用,我用的 H键替换)
  • $ → 移动到行尾(为了方便使用,我用的 L键替换)
  • w → 往右移动一个单词
  • b → 往左移动一个单词
  • e → 移动到下一个单词的末尾
  • ; 重复上次的搜索操作
  • ctrl d 向上移动半个屏幕
  • Ctrl u 向下移动半个屏幕
  • { 跳到下一个段落, } 上一个段落(vim中使用一行空行空白行表示不同段落)
  • % 跳转到与单括号匹配的另一个括号处
  • n + Enter 往下移动n行

查找,跳转(用easymotion更快)(查找并替换可以用substitute命令)

  • f → 行内搜索 f r → 搜索本行内下一个r 。F 向前查
  • t → 行内搜索 t r → 光标跳转到字符 r 的前一个字符上。T 向前查
  • , ;经常和 f 查找一块使用(f 查找之后 ;可以查找下一个 , 可以查找上一个)
  • / 是全部搜索,显示多个结果,n → 跳转到下一个 N → 跳转上一个(查找后 查找内容会一直高亮显示,想去掉高亮就 :nohlsearch,也可简写成 noh )
    • 也是全局搜索,搜索当前光标所在的这个单词
  • % 括号匹配
  • g (go 的意思)
  • gd (go to define) 相当于 idea 中的函数跳转(按住Ctrl点鼠标) ctrl o 返回
  • gf (go to file)跳转到当前光标所表示的文件
  • 数字+G 或者 :+数字,移动到对应行数
  • g; → 跳转到上次修改过的地方,可以多次按,就能找到前几处修改的地方。(ideavim 并不能用这个功能)
    复制
  • yy → 复制一整行
  • yny → 复制n行
  • yi( 复制在括号中的东西
  • yt? (yank to ?)→ 复制当前光标字符直到?字符为止(包括当前光标,不包括?)
  • ggyG → gg跳转到第一行首字母处,y复制,G到页面最后处 → 结合起来就是,复制本页的所有内容
    插入
  • a (append) → 直接在当前光标的后面去插入
  • A → 向当前行最后面插入
  • i (insert) → 在光标前插入
  • I → 向当前行最前面插入
  • o (open a line ,新开一行) → 普通模式下直接换行并切换到insert模式开始输入
  • O → 将光标所在的这一行清空,原来的内容往下顺延一行

删除 粘贴

  • dd → 删除一整行
  • ddp → 上下两行换位置
  • dw → 删除当前光标 到 此单词结尾的所有字符
  • diw → 删除当前单词
  • daw → 删除当前单词及后面跟着的空格
  • dap → 删除一个段落(vim中用空一行表示不同的段落)
  • 域内操作
  • 域内删除 di’ (delete in ’ ’ 内的东西)
  • cc → 删除一整行并进入编辑模式
  • cw → 删除当前光标到这个单词结束的所有字符并进入插入模式
  • ciw → 删除光标所在单词,不包含后面的空格,并进入插入模式
  • caw → 删除光标所在单词,包含后面的空格,并进入插入模式
  • p → 粘贴在游标下一行
  • P → 粘贴在上一行
  • 与系统剪切板连通后,在 insert 模式下,可以 Ctrl r + 三个字符来粘贴
  • x → 删除光标下的单个字符
  • xp → 先删除当前字符,再粘贴 → 相当于让当前字符及后面的字符调换顺序
  • s → 删除光标下的单个字符并进入插入模式

修改 撤销

  • ciw (change in word) → 修改单词(即删除单词)
  • u → 撤销操作
  • substitude 替换命令(后面有详细介绍,此处简单提一嘴)
  • 替换本行的所有 + 为 ,→ 😒/+/,/g
  • r 在不进入插入模式的情况下修改当前光标的字符,在 视图模式下也可以用(替换模式,下面有解释)
  • R → 进入替换模式 → 然后再进行修改

注释(插件vim-commentary的功能)

vscode不需要设置就能直接用,
ideavim 还需要再 vimrc 文件中添加一下配置:
set commentary
不知道为啥?(弄了半天,还是去问的chatgpt 才解决,真好使)

  • gcc 单行注释
  • gcap 注释整个段落
  • 先找到 { → gc% → 注释整个方法
  • gc?k 向上注释?行,同理 gc?j 向下注释 ?行,gc} 从光标到下个} 全部都注释掉
  • Ctrl V 进入块模式 → j , k 选行 → 大写 I 插入 → esc 退出(注意,是Ctrl V,不是shift V,但是由于 Ctrl V经常用来粘贴,习惯了,所以在我一般是禁用了)

其他常用快捷键

  • vscode-vim
  • gt 下一个标签页
  • gT 上一个标签页
  • . 重复上次的修改操作(这个功能很强大,详见后面的技巧)
  • Ctrl d:窗口向下滚动N行,默认滚动窗口行数的一半。
  • ctrl f 也是翻页
  • gh 函数提示,参数提示
  • :h i 查看命令帮助
  • viw (选中一个单词,不包含单词前面的空格)
  • vaw 选中一个单词,包含单词前面的空格
  • gu 将当前光标选中字符小写,gU 将当前光标选中字符大写,可以配合 iw等 使用
  • gUiw → 把当前光标所在的单词全部大写
  • ysiw) → 会把当前光标所在的此用 ()包裹起来(yank surround in word () )
  • cs)] → 把包裹该词的()替换成 [ ] (change surround ()【】)
  • ds) → 把包裹该词的()给删掉 (delete surround ())

更多推荐

Vim快捷键(自用)

本文发布于:2024-02-26 17:54:16,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1703372.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:自用   快捷键   Vim

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!