我使用Smarty來生成html模板。我目前使用html突出顯示,除了沒有突出顯示smarty標籤,ex {foreach} 我試過安裝Smarty包,但這看起來不太好。所以基本上我需要能夠使用大括號將標準HTML着色中的任何內容加亮。可能嗎?如何才能做到這一點?崇高文字:如何自定義語法高亮?
回答
您可能需要修改您的.tmTheme
,爲通過將語法設置爲Smarty定義的範圍添加自定義高亮顯示。 Packages/Smarty/Syntaxes
目錄中應該有一個Smarty.tmlanguage
文件。它是XML,因此對於隨意閱讀可能有點困難,但是如果您瞭解正則表達式並且範圍被智能地命名,您應該能夠弄清楚如何修改您的主題。
@MattDMo是正確的一個.tmTheme
文件是控制高亮的主要文件。它是一個包含一系列正則表達式和標記的XML文件,用於表示哪個RegEx匹配哪種類型的語法元素。
您可以在GitHub上搜索並找到許多已經創建了包含.tmTheme
文件的Sublime Text包的人。請注意,您可以直接使用爲TextMate創建的包,因爲Sublime Text使用相同的約定。 (這是真的,至少只要.tmTheme
和.tmPreferences
文件去。)
例如,我能直接拿一個語法高亮顯示包夾頭語言,最初是爲TextMate的製作,並使用它SublimeText2。 .tmTheme
通過複製與TextMate一起使用的文件立即生效。我剛剛刪除了其他垃圾文件,然後對.tmTheme
進行了一些更改,並增加了對軟件包管理器的支持。
查看該項目在這裏:https://github.com/nathanleiby/ChucK.tmbundle。
如何安裝新的語法
包控制
理想情況下,你已經想語法包括可供下載的崇高文本包控制。在Package Control中搜索並直接安裝。如果你直接下載一個.tmTheme
文件或.tmBundle
手動
,你會想要將它複製到相應的軟件包:(https://github.com/wbond/package_control_channel/如果沒有包控制的是,你必須得到它) ST中的文件夾。請注意,有一個/Packages
文件夾和一個/Packages/User
文件夾。 ST2文檔建議複製到後者,因爲即使主文件夾中的其他軟件包在更新過程中被刪除/修改,它也可以保留。
在OSX,該目錄是:~/Library/Application Support/Sublime Text 2/Packages/User/
(注意:您可能希望git clone
包放到這個文件夾,這樣就可以輕鬆地更新它。)
如何創建自己的
如果你想挖和自定義語法高亮,這裏有幾個地方開始。
- 刷上正則表達式。
- Sublime Text documentation for syntax definitions
<ctrl> + <shift> + p
。無論何時查看文件,選擇任何單詞並按下該組合鍵,然後查看頁腳欄。你應該看到一系列的語法描述。例如:我只是在我正在查看的SQL文件中突出顯示一個單詞,其迴應是:source.sql string.other.quoted.backtick.sql
。- 您可能更喜歡使用JavaScript/JSON解析您的語法,而不是XML。使用PackageDev。你可以通過包控制來獲得這個。它具有允許您在.json(JSON)和.tmTheme(XML)文件之間來回切換的命令。
- A related question on StackOverflow。
買者
這可能是顯而易見的,但語法高亮的用處是關係到其配色方案您在崇高的文本選擇。 (Sublime Text 2 - > Preferences - > Color Scheme - > ...)
我還沒有機會探索/詳細驗證這一點,但似乎有些配色方案可能會區分更多/更少類型的語法元素。
因爲這個原因,我強烈推薦「Monokai」配色方案(特別是「Monokai蘇打水」),它似乎是「帶出顏色」。
如果你想要一個與許多(可定製)示波器完美對比的主題,請查看我的[Neon.tmTheme](https://github.com/MattDMo/Neon.tmTheme)。它是明亮的黑色,雖然我主要將它用於Python,但它與許多其他語言(包括HTML/CSS/JavaScript)看起來不錯。是的,你在說明某些配色方案沒有其他配色方案的範圍時是正確的。我已經整理了一些關於我的主題的其他計劃的範圍,所以希望有些東西可供您使用。但是,這一切都取決於細粒度的。tmLanguage文件是。 – MattDMo 2013-04-08 20:06:40
謝謝@MattDMo - 我會給它一個鏡頭!看起來非常簡單和乾淨。我很高興知道我的觀察是正確的,一些顏色方案區分了更多/更少的句法範圍。 – Nate 2013-04-09 22:55:01
這很簡單
- 有了崇高的文本2默認安裝
- 打開文件 「包\ HTML \ HTML.tmLanguage」,如果搜索字符串
<!--
你會發現,(目前)有是對「Smarty」評論的兩個參考。不要評論這些。 - 在您的
Smarty.tmLanguage
文件中搜索字符串scopeName
。這實際上是一個關鍵,相關的字符串應該是類似text.html.smarty
。 - 該字符串複製到
HTML.tmLanguage
到位source.smarty
的(字符串爲重點include
在最後塊結束時,你只是取消註釋)
就是這樣。享受
- 1. 在崇高文本中自定義語法高亮3
- 2. 崇高文本Sweave語法高亮
- 3. 如何將語法高亮添加到崇高文本2
- 4. 語法高亮部分爲崇高.vue工作文字
- 5. 崇高的文字3難看的語法高亮
- 6. 崇高文字:添加CSS3語法高亮
- 7. 崇高文字3:高亮當前行
- 8. MonoDevelop自定義語法高亮
- 9. sublime text自定義語法高亮
- 10. 爲UltraEdit自定義AutoHotkey語法高亮?
- 11. 自定義語法VIM高亮鏈接
- 12. 在Geany中自定義語法高亮
- 13. 在Vim中自定義語法高亮
- 14. 在ICSharp.texteditor中自定義語法高亮
- 15. QScintilla自定義語法高亮
- 16. 純文本語法高亮(崇高文本)
- 17. 在崇高文本中錯誤的默認語法高亮3
- 18. 崇高的文本語法高亮不工作在Windows?
- 19. 帕格(玉)語法高亮不與崇高的文本3
- 20. 崇高文本2 JSP語法高亮問題
- 21. 如何創建簡單的崇高文本3自定義語法定義
- 22. 崇高的Javascript關鍵字高亮
- 23. 崇高的3語言高亮,Linting,自動完成等包裝
- 24. 如何自定義Visual Studio 2005中的語法高亮顯示?
- 25. 如何在崇高文字2中創建自定義佈局?
- 26. 自定義佈局,崇高文本2
- 27. 語法高亮
- 28. 定義自定義語法高亮Atlassian的魚眼/坩堝:MATLAB
- 29. 語法高亮規則和定義
- 30. 崇高Monokai語法高亮:如何着色方法調用,使插值串
這是一個模糊的問題,所以我只能模糊地說要嘗試使用brackethighlighter2。 – AGS 2013-03-26 21:42:41