1

每当我输入关键字并按 Tab 键以使用我的代码段时,我必须通过单击鼠标将光标放在其他位置才能使用另一个代码段。那一点都不好。我希望能够输入 tk;tab 来获取

\begin{tikzpicture}
  |
\end{tikzpicture}

我的光标在管道上。到目前为止,这有效。但是现在我想例如键入 dr 以在此位置完成 \draw 。虽然我写了这个片段,但它不起作用。那么如何连续使用多个片段呢?

很高兴每一次帮助

4

1 回答 1

1

我的猜测是你$1在你的第一个片段中使用,所以它看起来像这样(除了我没有使用latex范围):

<snippet>
    <content><![CDATA[
\begin{tikzpicture}
  $1
\end{tikzpicture}
]]></content>
    <tabTrigger>tk</tabTrigger>
</snippet>

当 Sublime 展开一个片段时,它允许您按数字顺序浏览所有字段,然后“退出”片段。片段的默认退出点位于片段中的最后一个字符之后。

因此,如果您要扩展此代码段,它会在 的位置插入光标$1,现在它正在等待您输入 field 的内容$1。如果您查看状态行,您会看到它Field 1 of 2告诉您您在一个片段的中间(字段 2 是片段“结束”的位置)。

如果你的代码片段是这样工作的,你必须手动告诉 Sublime 你已经完成了代码片段,例如通过移动光标或按Escape

特殊的片段字段$0告诉 Sublime 一旦你完成了片段,你希望光标在哪里结束。如果您没有明确指定它,则假定它位于代码段文本的末尾。

如果整个片段只是为了扩展该文本以让您输入里面的内容,您可以将片段更改为使用$0而不是$1.

当你这样做时,在初始文本扩展之后,Sublime 找不到任何字段供你输入,并立即退出代码段,将光标留在 position $0。从那时起,您可以毫无问题地使用新代码段:

示例多片段扩展

于 2017-12-09T04:32:38.077 回答