帮助我创建一个vim代码段(snipmate)
假设我有以下片段:帮助我创建一个vim代码段(snipmate),vim,code-snippets,snipmate,Vim,Code Snippets,Snipmate,假设我有以下片段: snippet divt <div id="${1:div_id}"> ${2:'some text'} </div> snippetdivt ${2:'some text'} 所以,当我输入divt并点击tab两次时,应该选择“some text”,当我再次点击tab时,我希望选择“some text”(不带单引号)。我怎么做 编辑1:谢谢你的回答。也许这个例子更有意义: snippetdivt 有时我想要一个没
snippet divt
<div id="${1:div_id}">
${2:'some text'}
</div>
snippetdivt
${2:'some text'}
所以,当我输入divt并点击tab两次时,应该选择“some text”,当我再次点击tab时,我希望选择“some text”(不带单引号)。我怎么做
编辑1:谢谢你的回答。也许这个例子更有意义:
snippetdivt
有时我想要一个没有id的div,所以我需要能够完全删除id=“div\u id”。有时我希望有一个id,这样我就可以只更改div_id部分。很遗憾,SnipMate不支持嵌套占位符,但根据@Benoit的建议,您可以在编辑第二个占位符时使用另一个代码段。不过,一定要带一件陀螺 我不确定你想用
一些文本
和一些文本
来实现什么-在这个上下文中,地球上的每个html解析器都以完全相同的方式对待这两种文本-但我会用一个简单的
snippet div
<div id="${1:div_id}">
${2}
</div>
或
将扩展为(|
是插入符号)
多亏了DiffractMate或其他类似的插件
'some text'
或者使用环绕来改变
some text|
进入
通过打字
<Esc>v2bS'
用鼠标选择它
v2e
或者类似的东西
S'
要添加引号,请选择带引号的行
V
和类型
S<div id="div_id">
S
取得
<div id="div_id">
'some text'
</div>
“一些文本”
或者换一种方式做,或者。。。必须有人写一篇博文,介绍在Vim中完成给定任务的所有可能方法。我目前正在进行一次促销旅行,我正在为此进行维护。对于UltiSnips,执行此操作的代码段如下所示:
snippet divt "div" b
<div ${1:id="${2:div_id}"}>
</div>
endsnippet
片段divt“div”b
尾端片段
UltiSnips还附带了一个用于snipMate片段的转换脚本,因此切换应该很轻松。我建议您创建两个片段divt和divtq谢谢您的回复。我最近发现了有关UltiSnips的信息。太棒了。
v2e
S'
V
S<div id="div_id">
<div id="div_id">
'some text'
</div>
snippet divt "div" b
<div ${1:id="${2:div_id}"}>
</div>
endsnippet