DarkMatter in Cyberspace
  • Home
  • Categories
  • Tags
  • Archives

Easy Search and Jump in vim


easymotion 的基本思想是为多个备选目标 加上标号,通过按键选择标号,定位备选结果,从而避免了反复多次输入光标移动指令 (jjjjjjjjjjjj 或者 llllllllllllll等)。

通过试用,发现 f 作为跳转触发快捷键比较好:f 加上两个字母, 如果有多个匹配结果,再加一个标号,最多4个按键就可以跳转到任何位置,配置如下:

let g:EasyMotion_smartcase = 1
nmap f <Plug>(easymotion-overwin-f2)

Plug 'easymotion/vim-easymotion'

Note:

按照 easymotion README 的说明,它(以及配合 incsearch)还可以实现如下功能:

  • 使用 f 加一个搜索字母加上标号选择实现跳转;

  • 使用 s 加两个字母加上标号选择实现跳转;

  • 使用 / 后面加上目标字符串,再结合标号选择跳转到任一匹配目标上;

  • 使用 ,L 结合标号选择跳转到任何行;

但 neovim 默认的 incsearch (/) 已经比较好用了,没必要再加上标号选择,也没必要再安装一个插件。 f, s 是结合搜索跳转,相比 w 纯跳转多了一个环节,且 s 覆盖了原本相对常用的修改功能; .L 实现的功能可以被 w 覆盖,而操作复杂度比后者高的多。

另外使用 f, s 和 结合 easymotion 的 / 时出现了乱码 [2 q,见 Nvim shows weird symbols ([2 q) when changing modes, 按照说明添加了 :set guicursor= 也无效。



Published

Oct 1, 2018

Last Updated

Feb 7, 2021

Category

Tech

Tags

  • jump, easymotion 1
  • vim 92

Contact

  • Powered by Pelican. Theme: Elegant by Talha Mansoor