sublime text 2片段错误 - 空键?

时间:2013-05-19 13:43:00

标签: sublimetext2 code-snippets

Sublime Text 2 snippet parsing error

这是错误:

Error parsing content for snippet Packages/User/servlet-definition.sublime-snippet: Empty key

这是代码:

<snippet>
    <content><![CDATA[
    <servlet>
        <servlet-name>$1</servlet-name>
        <servlet-class>${2:spray.servlet.Servlet30ConnectorServlet}</servlet-class>
        <async-supported>${3:true}</async-supported>
    </servlet>

    <servlet-mapping>
        <servlet-name>$1</servlet-name>
        <url-pattern>$(4:/*}</url-pattern>
    </servlet-mapping>

    ${5}
]]></content>
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
    <tabTrigger>sdef</tabTrigger>
    <!-- Optional: Set a scope to limit where the snippet will trigger -->
    <!-- <scope>XML</scope> -->
</snippet>

2 个答案:

答案 0 :(得分:4)

问题不在于Sublime Text 2 thinks you're using a regular expression,而是$(4:/*}应该用括号括起来,而不是括号和括号。就像现在一样,Sublime Text想知道为什么你的$不是变量的一部分。请改用${4:/*},你应该没问题。

此外,您可以使用$0来定义the exit position for the cursor - 看起来您正在使用$5用于此目的,如果您想要添加将来会出现问题更多领域。

答案 1 :(得分:0)

$(4:/ *}是问题。不知道为什么,似乎可能它被评估为正则表达式。我尝试转义正斜杠但没有运气。我刚刚删除了默认文本。