添加光标位置在崇高的文本3

问题描述:

到预览可用这是我在崇高的文本3添加代码片段:添加光标位置在崇高的文本3

<snippet> 
    <content><![CDATA[ 
document.write(); 
]]></content> 
    <tabTrigger> dw </tabTrigger> 
</snippet> 

的问题是如何在这个代码添加光标位置? 谢谢。

+0

这里“光标位置”是什么意思?当你调用片段时光标结束了吗? – OdatNurd

+0

的确如此:文档。写([cursor here]),现在,光标在最后。 – ISTech

Sublime中的片段允许您选择性地指定字段(制表位),以允许您交互地在片段中添加额外信息。

当片断扩展你能够标签Shift + Tab键来回场之间,而当你按下Tab键在最后一个字段,该代码段扩建完成。

此状态在当前窗口的状态栏中显示,您将看到Sublime告诉您您所在的区域以及区域的数量。 Field 1 of 2

字段用$后跟一个数字来指定,Sublime按照它们的数字顺序($1,然后$2等)跟随字段。出于这个原因,重要的是你在你的代码片段内容中输入$作为\$,以便Sublime知道它不是一个字段。

就是这样说的,$0这个字段是特殊的,它指出了当代码段扩展完成时光标最终应该结束的位置。如果$0未出现在代码段中的任何位置,则Sublime的行为就好像它是代码段内容中的最后一件事情。

这就是它在上面的代码片段中所做的事情,所以当代码片段展开时,它将光标留在代码片尾部,即;字符之后。

一个片段,如下面将代替离开光标paranthesis内,这样就可以输入你要插入到文档中的内容:

<snippet> 
    <content><![CDATA[ 
document.write($0); 
]]></content> 
    <tabTrigger> dw </tabTrigger> 
</snippet> 

当这样的规定,该代码段有没有“真正的“字段(只是特殊的”退出“字段),所以只要它展开,光标就在括号内,并且片段扩展完成。

根据你的使用情况,还可以实现用这样的片段类似的东西:

<snippet> 
    <content><![CDATA[ 
document.write($1);$0 
]]></content> 
    <tabTrigger> dw </tabTrigger> 
</snippet> 

当您展开这个片段中,光标像以前放在括号内,但现在的状况行会告诉你Field 1 of 2,因为现在有两个字段(你的显式字段和“退出”在$0)。

这允许您键入填写呼叫的值为document.write,然后按标签直接跳到行的末尾。我想推荐Unofficial Documentation on Snippets