Vim:如何将所选文本作为vim命令执行

时间:2010-11-24 15:34:52

标签: vim

当我编写文档时,我发现自己已经找到了适合该文档的orginization约定,我希望vim能够突出显示该约定。但是制作一个ftplugin太“全局”了,我希望语法着色随文档一起提供,所以如果我把它发送到没有该插件的某个地方,他们仍然可以获得着色。我发现你无法通过模式线进行,因为它只接受选项。

现在我试图找出是否有办法在视觉模式中选择一些文本(或者其他什么,但我使用视觉线模式来处理所有内容以便它会很好)并将其作为一系列vim执行命令。

例如,在一份文件的底部我有:

vim highlighting:
    syn match Comment "^>.*$"

如何选择该文字并说“繁荣,执行”而不必重新输入?

3 个答案:

答案 0 :(得分:43)

您可以选择线条,拉动选区并使用

执行
:@"

答案 1 :(得分:2)

我喜欢制作此映射,要求您先进行视觉选择,不要覆盖未命名的寄存器:

vmap <space> "xy:@x<CR>

如果你想用行连续写vim命令:

vmap <space> :w! /tmp/x.vim<CR>:so /tmp/x.vim<CR>

答案 2 :(得分:1)

我根据a few mappings定义了lh-vim-lib,不涉及任何注册。 这确实是一个矫枉过正的解决方案,但对于映射来说是一个很好的解决方案 - 因为它永远不会修改默认寄存器。