如何使用 vim easy motion 插件动作和 y/c/d 命令?
How to use vim easy motion plugin movements with y/c/d commands?
我在 vim 中使用 easymotion 插件 (https://github.com/easymotion/vim-easymotion)。
如果你在VIM中使用f/F动作(使用easymotion插件),当有多个匹配项时easy motion会突出显示所有可能的位置,这样你就可以轻松跳转到你想要的位置。
但它不适用于 y/c/d 命令,我该如何实现?
我在下面提供了一个示例来说明:
This is some line.
假设我正在 vim 中的上一行工作,光标位于 "This" 中的 i 处。如果我在 vim 中执行 "yfs",我想要简单的动作来标记光标右侧的三个 "s"。这样,我就可以轻松 yank/change/delete 到我想要的 s。
提前致谢!
你可以,在你的 .vimrc 中使用这样的东西:
" Find next occurence of a char using easymotion
map <Leader>f <Plug>(easymotion-bd-f)
nmap <Leader>f <Plug>(easymotion-overwin-f)
现在您可以执行类似 y<Leader>fs
的操作,它会突出显示三个 s 字符。选择一个然后将从光标位置猛拉到该字符。
如果这不起作用
这意味着还有其他键绑定正在使用相同的组合。您可以使用 :map
进行检查,然后查找您尝试映射到 easy-motion 的组合键。从您的 .vimrc
中删除该键绑定或删除创建绑定的插件应该可以解决问题。
如果是 YankRing 插件劫持了 y/c/d 击键,您可以将以下内容添加到您的 vimrc 以防止它这样做(查看 :h yankring
了解更多信息):
let g:yankring_zap_keys = ''
我在 vim 中使用 easymotion 插件 (https://github.com/easymotion/vim-easymotion)。 如果你在VIM中使用f/F动作(使用easymotion插件),当有多个匹配项时easy motion会突出显示所有可能的位置,这样你就可以轻松跳转到你想要的位置。
但它不适用于 y/c/d 命令,我该如何实现? 我在下面提供了一个示例来说明:
This is some line.
假设我正在 vim 中的上一行工作,光标位于 "This" 中的 i 处。如果我在 vim 中执行 "yfs",我想要简单的动作来标记光标右侧的三个 "s"。这样,我就可以轻松 yank/change/delete 到我想要的 s。
提前致谢!
你可以,在你的 .vimrc 中使用这样的东西:
" Find next occurence of a char using easymotion
map <Leader>f <Plug>(easymotion-bd-f)
nmap <Leader>f <Plug>(easymotion-overwin-f)
现在您可以执行类似 y<Leader>fs
的操作,它会突出显示三个 s 字符。选择一个然后将从光标位置猛拉到该字符。
如果这不起作用
这意味着还有其他键绑定正在使用相同的组合。您可以使用 :map
进行检查,然后查找您尝试映射到 easy-motion 的组合键。从您的 .vimrc
中删除该键绑定或删除创建绑定的插件应该可以解决问题。
如果是 YankRing 插件劫持了 y/c/d 击键,您可以将以下内容添加到您的 vimrc 以防止它这样做(查看 :h yankring
了解更多信息):
let g:yankring_zap_keys = ''