2015-09-15 19 views
0

我有下面的代碼片段:崇高片段沒有將範圍限定至HTML

<snippet> 
    <content><![CDATA[ 
<label for="my-id">Name:</label> 
<input type="text" id="my-name" name="my-name" value="enter your name" /> 
]]></content> 
    <!-- Optional: Set a tabTrigger to define how to trigger the snippet --> 
    <tabTrigger>htmlLabel</tabTrigger> 
    <!-- Optional: Set a scope to limit where the snippet will trigger --> 
    <scope>text.html</scope> 
    <description>Html Label and input</description> 
</snippet> 

應該作用域爲HTML。當我使用C#或純文本時,它不在那裏,但在Markdown中是IS

回答

2

有兩種方法可以解決此問題:

  1. 更改scopetext.html.basic

  2. 更改scopetext.html -text.html.markdown

降價僅僅是一個語法速記HTML。降價的範圍實際上只是text.html.markdown。您有text.html指定爲您的scope,因此所有text.html的孩子都可以訪問該代碼段。如果你只想爲純HTML指定一個片段,你必須指定你只想要text.html.basic(我顯示的第一個方法),或者你可以通過使用-符號來否定某些範圍(我顯示的第二種方法)。

Here是一個很好的資源,你可以看到所有不同類型的Sublime作用域。

+0

這可能會回答我在Sublime Text論壇上的問題。 https://www.sublimetext.com/forum/viewtopic.php?f=3&t=20179 – BanksySan