文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Vim:提高工作效率的7个Vim使用技巧

2024-12-24 23:19

关注

本文介绍7个提高你工作效率和生产力的Vim使用技巧,作为你体验使用Vim进行高效操作的入门级教程。

1、重映射 vim 的 ESCAPE 键

vim 有多个模式并不是什么大问题,但在模式间切换的时候会感觉很糟。ESC 键有点远,这太麻烦了。当我面对新的 vim 环境时,所做的第一件事就是添加如下映射:

 

  1. inoremap jj <ESC> 

2、重映射 Vim 的 Leader 键

如果你不熟悉 leader 键,也不知道它能为你做什么,那你就从这开始了解吧。它本质上是作为你快捷键的激活键,你可以自定义用哪个键作为你的 leader 键。所以,你可以:

 

  1. nnoremap j VipJ 

这可以让你按下 leader 键结合大写 ‘j’ 后可视化的选择整段并加入行。

我个人用 ‘,’ 键作为我的leader键,这样我可以用 ‘,’ 激活我所有的快捷键,然后通过 ‘jj’ 退出插入模式。你可以在 .vimrc中像这样映射:

 

  1. let mapleader = “,” 

3、光标移动

Vim的最大好处就是几乎所有的操作都是通过主键区的键位进行操作,双手不用离开键盘主区

 

  1. ◎h、j、k、l,分别是左下上右移动光标,前面加上n,可以重复移动多次,例如3j就可以往下移动3行  
  2. ◎^,跳到一行的开始  
  3. ◎$,跳到一行的结束  
  4. ◎gg,跳到文本的第一行  
  5. ◎G,跳转到文本的最后一行  
  6. ◎nG或者ngg,跳转到第n行,例如: 10G,跳转到第10行;20gg,跳转到第20行 

4、提高 Git 工程中 Ctrl-P 的执行效率

将下面的内容添加到你的 .vimrc 文件中(配置使用 来使用 git 或 silver 查找工具来自动补全):

 

  1. et g:ctrlp_use_caching = 0  
  2. if executable('ag')  
  3.    set grepprg=ag --nogroup --nocolor  
  4.    let g:ctrlp_user_command = 'ag %s -l --nocolor -g ""'  
  5. else  
  6.  let g:ctrlp_user_command = ['.git', 'cd %s && git ls-files . -co --exclude-standard', 'find %s -type f']  
  7.  let g:ctrlp_prompt_mappings = {  
  8.     'AcceptSelection("e")': ['<space>', '<cr>', '<2-LeftMouse>'],  
  9.     }  
  10. endif 

注:建议使用 vim-scripts/gitignore 插件。

5、提高单元测试执行效率

我用 vim-vroom 插件以及相应的 tmux 配置来进行我的测试。

vim-room 缺省使用 r 执行测试,由于我已将 Leader 映射为 ,因此我通过r 来运行测试工具。

由于测试在 tmux 的单独窗口运行,因此我可以边看测试进展共修订我的代码。

6、Vim normal命令

Vim normal 命令可以在命令行模式执行普通模式下的命令,当normal命令与Vim可视化模式结合时,只需很少的操作就能完成大量重复性工作。

比如在编辑Markdown文件时想在某些行前面都加上 - 让普通文本行变成无序列表,可以先用 V 选中这些行,然后按 :'<,'>normal I- 并回车即可实现。

7、Vim替换命令s

Vim命令行模式下使用 :substitute 命令 (缩写形式 s ) 可以将指定范围内的字符替换成其他目标字符,实现同时处理多个目标行的操作效果。

例如,假设希望将Vim当前打开文件的所有行尾多余的空格删除,可以使用Vim命令 :%s= *$==。

其中,% 表示整个文件范围, *$ 表示以0个或多个 * 结尾的文本行。

 

 

来源:C语言与C++编程内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯