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

问题描述 投票:28回答:3

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

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

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

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

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

vim
3个回答
43
投票

您可以选择线条,拉动选区并执行

:@"

2
投票

我想制作这种映射,这将要求您首先进行视觉选择,而不是覆盖未命名的寄存器:

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

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

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

1
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.