3

在 vim 中拉动时,您刚刚进行的拉动没有视觉指示。除了检查寄存器之外,有没有人知道一个设置或插件可以使 vim 突出显示刚刚被拉出的编辑器区域?

尝试谷歌搜索,但如果它在那里,我使用错误的短语进行搜索。

4

3 回答 3

3

您可能可以使用'[and']来标记最后一个被拉出的文本的开头和结尾,但您的目的是什么,究竟是什么?您想验证您实际拉动的内容是否与您想要拉动的内容相对应?请澄清你的问题。

相反,您可以做的是反转整个过程:

  1. 使用视觉模式或视觉线模式来直观地选择你想要拉的东西
  2. 拉它

这样您就可以确切地知道要拉出什么,并且可以使用 重新选择它gv

于 2012-06-16T20:07:27.303 回答
2

怎么会这样?

除了 yanking word 或 line,当你通常知道你 yanking 的内容时,大多数 yanks 是通过视觉或块模式完成的,而在那些你知道什么是 yanking 的情况下,因为它是在 yanking 之前选择的。

但是除此之外,就像您说的那样,您可以查看寄存器,或者您可以安装像 YankRing 之类的插件(或其一些更简单的 coutnerparts)。它为您提供了一个很棒的功能,可以快速(pff,除非您使用多个剪贴板管理器,这有点难以解释)在抽出的文本之间切换。您按下,p粘贴,然后从那里选择,让我们说出Ctrl-p您想要拉入到位的内容。这是一个非常实用且易于使用的功能。

于 2012-06-16T20:35:01.767 回答
0

我不知道它是否总是有效,但我试过了

vnoremap <silent> y y:execute '2match InterestingWord2 /<c-r>"/'<cr>
hi InterestingWord2 guibg=DarkOrange guifg=black ctermbg=202 ctermfg=black

它适用于单行的视觉选择 - 但不适用于多行。

也许以下工作也是 - 我没有尝试过

nnoremap <silent> yy yy:execute '2match InterestingWord2 /<c-r>"/'<cr>
nnoremap <silent> y$ y$:execute '2match InterestingWord2 /<c-r>"/'<cr>
nnoremap <silent> Y Y:execute '2match InterestingWord2 /<c-r>"/'<cr>
于 2012-06-17T16:28:37.057 回答