有没有办法在vim中使视觉成为可能?

时间:2012-06-16 17:07:37

标签: vim

当你在vim中玩耍时,没有你刚刚制造的猛拉的视觉指示。除了检查寄存器之外,有没有人知道一个设置或插件会让vim突出显示刚被拉出的编辑器区域?

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

3 个答案:

答案 0 :(得分:3)

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

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

  1. 使用 visual 模式或 visual-line 模式直观地选择你想要的东西
  2. 猛拉它
  3. 通过这种方式,您可以确切地知道您将要使用gv重新选择

答案 1 :(得分:2)

怎么样?

除了扬言或划线外,当你一般都知道你猛拉了什么时,大部分的猛拉都是通过视觉或阻挡模式完成的,而那些你知道什么是猛拉的,因为它是在yanking之前被选中的。

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

答案 2 :(得分: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>