VIM:如何将搜索/替换命令添加到vimrc并映射到快捷方式

时间:2010-02-24 13:00:33

标签: search map replace vim

我有两个搜索/替换命令,我发现自己经常在vim中运行以清理HTML代码,因此我可以在线复制/粘贴它。命令是:

:%s!<!\&lt;!g
:%s!>!\&gt;!g

我想要一种方法可以将这两个命令映射到一起运行...我做了一些搜索如何在vimrc中使用:map命令,但是,我看不出如何组合将两行划分为单个命令,该命令通过单击键(或单个笔画序列)运行。

谢谢!

5 个答案:

答案 0 :(得分:11)

您可以将命令放在用条分隔的单行上。

:%s!<!\&lt;!g|%s!>!\&gt;!g

但你必须在map命令

中逃避它
:map <F3> :%s!<!\&lt;!g\|:%s!>!\&gt;!g<CR>

答案 1 :(得分:3)

:TOhtml

将创建一个新的缓冲区,其中包含先前的HTML-ized缓冲区,包括实体转义(以及语法突出显示,如果已启用)。有关详细信息,请参阅:h TOhtml

答案 2 :(得分:2)

如果您将此搜索/替换模式用于HTML编码实体,则可能需要查看unimpaired plugin。除此之外,它还为encoding and decoding XML,URL和C字符串提供了快捷方式。

答案 3 :(得分:1)

:map <F3> :%s!<!\&lt;!<cr>:%s!>!\&gt;!<cr>    

当然可以用你想要的任何键替换

答案 4 :(得分:0)

我没试过,但是你不能把它们放在"<CR>"分隔的同一行吗?