当前位置:  开发笔记 > 前端 > 正文

VI/VIM编辑器:使用地图序列用HTML标签包装单词

如何解决《VI/VIM编辑器:使用地图序列用HTML标签包装单词》经验,为你挑选了1个好方法。

我正在尝试定义一个vi'map'命令序列,它将当前单词包装在HTML标记内,例如B(粗体)标记.地图定义如下:

:map K ebiea

地图以动作"eb"开始移动到所选单词的开头,假设最可能的光标位置是单词的开头或中间.问题是,如果光标位于单词的最后一个字符上,则它不起作用 - 然后将包装后面的单词.

有没有一个技巧可以让这个地图可靠地用于任何一个单词的光标位置?



1> sykora..:

如果这是一个一次性的地图,那很好,但如果你想做更多,或者更频繁地做,你最好使用带有surround.vim的文本对象.

如果您使用该脚本,您可以(在正常模式下)

ysiwtb>

你必须按字面意思输入.ys是告诉surround.vim听一个文本动作.iw选择您当前所在的单词.t告诉它你要用标签包围.b>告诉它你要使用哪个标签.

即使您不想使用surround.vim,也可以考虑:help text-objects在地图中使用text-objects().在iwinner-word文本对象是你想要的这里,但我不太知道如何来包装起来的地图呢.

编辑:我想到如何在地图中使用它,这里...

:map K viwOilviwa

这会将光标留>在结束标记的结束处.它应该在光标最初的任何地方都可以工作.

但就像我说的那样,surround.vim更可取.

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有