Gtk
gtksourceview 的自定義突出顯示不起作用
我正在嘗試為 gtksourceview 編寫自己的語法突出顯示。如果完成,它應該在文本文件中突出顯示吉他和弦。這是我未完成的文件:
<?xml version="1.0" encoding="UTF-8"?> <language id="tab" _name="Tab" version="2.0" _section="Others"> <metadata> <property name="mimetypes">text/plain</property> <property name="globs">*.txt;*.tab</property> </metadata> <styles> <style id="chord" _name="Chord" foreground="blue" bold="true"/> </styles> <definitions> <context id="chord" style-ref="chord" class="no-spell-check"> <match>[A-H]</match> </context> <context id="tab"> <include> <context ref="chord"/> </include> </context> </definitions> </language>
我希望每個大寫字母 A 到 H 在突出顯示的文本中都是藍色和粗體。將文件保存到
/usr/share/gtksourceview-3.0/language-specs
,我可以在 GEdit 中選擇它。但是文本中沒有突出顯示任何內容。誰能告訴我我做錯了什麼?
原來我無法在
.lang
文件中定義樣式。在<style>
標籤中,我只能引用在/usr/share/gtksourceview-3.0/styles
. 例如程式語言中用於關鍵字的樣式:<style id="chord" _name="Chord" map-to="def:keyword"/>