2015-11-27 49 views
2

我需要一個以*字符開頭的tabTrigger,但它不起作用。已經試圖逃脫它,但它也不起作用。想法?Sublime Snippet:在tabTrigger中使用*字符

<snippet> 
    <content><![CDATA[ 
*CLOAD, KEYWORD1=${1:VALUE1}, KEYWORD2=${2:VALUE2} 
]]></content> 
    <tabTrigger>*CLOAD</tabTrigger> 
    <scope>text.abaqus</scope> 
    <description>CLOAD Keyword</description> 
</snippet> 
+0

還試圖將此添加到用戶設置文件:{「selector」:「text.abaqus」,「characters」:「*」}。沒有運氣 – SenhorLucas

+1

爲什麼不使用'CLOAD'作爲觸發器? – MattDMo

+1

它適用於我,您是否測試了它,取消了範圍? – sergioFC

回答

0

閱讀sergioFC的comment後,我測試的片段在你的問題,當我註釋掉<scope>線,它工作得很好。所以,我懷疑這個問題不是用星號(*字符),而是用範圍。我從來沒有聽說過Abacus,但我仍然無法找到Sublime或TextMate的語言語法(儘管我的確發現了Atom的極小值和NotePad ++的關鍵字),但顯然它的語法與Fortran類似。如我錯了請糾正我。

無論如何,您正在使用的語言語法最可能的範圍是source.abaqus而不是text.abacussource用於源代碼,而text用於諸如純文本,HTML,Markdown,LaTeX等之類的東西。您可以將作用域保留爲空,以觸發其他語言的代碼段的風險,或者可以將其更改爲source.abaqus。爲了找到肯定的基地範圍是什麼,你可以使用下面的按鍵組合在窗口的底部顯示的光標在狀態欄的全部範圍:

  • 的Windows/Linux的:Ctrl鍵Alt鍵移位P
  • OS X:Ctrl鍵移位P
+0

感謝您的回答@MattDMo。這雖然沒有奏效。我從頭開始開發abaqus的語法,因爲還沒有可用的東西。我將我的tmLanguage文件中的scopeName改爲source.abaqus,然後我改變了剪切後的範圍。沒有運氣... Abaqus是機械工程中使用的有限元求解器。它需要一個與fortran非常相似的輸入文件。 – SenhorLucas

+0

@SenhorLucas你可以給我一個鏈接到你的回購,所以我可以看看'tmLanguage'文件嗎?另外,你可以添加一些示例文件,以便我可以測試它們嗎?我是[Python Improved](https://packagecontrol.io/packages/Python%20Improved)的維護者,我已經在這裏工作了兩年多了,所以我可能會給你一些指針。 – MattDMo

+0

https://github.com/SenhorLucas/AbaqusSublimePackage – SenhorLucas

相關問題