blob: 57054a21d31966aa7f24a853e2188869ce78338c [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" This is a GENERATED FILE. Please always refer to source file at the URI below.
3" Language: Gtk+ theme files `gtkrc'
4" Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
5" Last Change: 2002-10-31
6" URL: http://trific.ath.cx/Ftp/vim/syntax/gtkrc.vim
7
8" Setup
9if version >= 600
10 if exists("b:current_syntax")
11 finish
12 endif
13else
14 syntax clear
15endif
16
17if version >= 600
18 setlocal iskeyword=_,-,a-z,A-Z,48-57
19else
20 set iskeyword=_,-,a-z,A-Z,48-57
21endif
22
23syn case match
24
25" Base constructs
26syn match gtkrcComment "#.*$" contains=gtkrcFixme
27syn keyword gtkrcFixme FIXME TODO XXX NOT contained
28syn region gtkrcACString start=+"+ skip=+\\\\\|\\"+ end=+"+ oneline contains=gtkrcWPathSpecial,gtkrcClassName,gtkrcClassNameGnome contained
29syn region gtkrcBString start=+"+ skip=+\\\\\|\\"+ end=+"+ oneline contains=gtkrcKeyMod contained
30syn region gtkrcString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=gtkrcStockName,gtkrcPathSpecial,gtkrcRGBColor
31syn match gtkrcPathSpecial "<parent>" contained
32syn match gtkrcWPathSpecial "[*?.]" contained
33syn match gtkrcNumber "^\(\d\+\)\=\.\=\d\+"
34syn match gtkrcNumber "\W\(\d\+\)\=\.\=\d\+"lc=1
35syn match gtkrcRGBColor "#\(\x\{12}\|\x\{9}\|\x\{6}\|\x\{3}\)" contained
36syn cluster gtkrcPRIVATE add=gtkrcFixme,gtkrcPathSpecial,gtkrcWPathSpecial,gtkrcRGBColor,gtkrcACString
37
38" Keywords
39syn keyword gtkrcInclude include
40syn keyword gtkrcPathSet module_path pixmap_path
41syn keyword gtkrcTop binding style
42syn keyword gtkrcTop widget widget_class nextgroup=gtkrcACString skipwhite
43syn keyword gtkrcTop class nextgroup=gtkrcACString skipwhite
44syn keyword gtkrcBind bind nextgroup=gtkrcBString skipwhite
45syn keyword gtkrcStateName NORMAL INSENSITIVE PRELIGHT ACTIVE SELECTED
46syn keyword gtkrcPriorityName HIGHEST RC APPLICATION GTK LOWEST
47syn keyword gtkrcPriorityName highest rc application gtk lowest
48syn keyword gtkrcTextDirName LTR RTL
49syn keyword gtkrcStyleKeyword fg bg fg_pixmap bg_pixmap bg_text base font font_name fontset stock text
50syn match gtkrcKeyMod "<\(alt\|ctrl\|control\|mod[1-5]\|release\|shft\|shift\)>" contained
51syn cluster gtkrcPRIVATE add=gtkrcKeyMod
52
53" Enums and engine words
54syn keyword gtkrcKeyword engine image
55syn keyword gtkrcImage arrow_direction border detail file gap_border gap_end_border gap_end_file gap_file gap_side gap_side gap_start_border gap_start_file orientation overlay_border overlay_file overlay_stretch recolorable shadow state stretch thickness
56syn keyword gtkrcConstant TRUE FALSE NONE IN OUT LEFT RIGHT TOP BOTTOM UP DOWN VERTICAL HORIZONTAL ETCHED_IN ETCHED_OUT
57syn keyword gtkrcFunction function nextgroup=gtkrcFunctionEq skipwhite
58syn match gtkrcFunctionEq "=" nextgroup=gtkrcFunctionName contained skipwhite
59syn keyword gtkrcFunctionName ARROW BOX BOX_GAP CHECK CROSS DIAMOND EXTENSION FLAT_BOX FOCUS HANDLE HLINE OPTION OVAL POLYGON RAMP SHADOW SHADOW_GAP SLIDER STRING TAB VLINE contained
60syn cluster gtkrcPRIVATE add=gtkrcFunctionName,gtkrcFunctionEq
61
62" Class names
63syn keyword gtkrcClassName GtkAccelLabel GtkAdjustment GtkAlignment GtkArrow GtkAspectFrame GtkBin GtkBox GtkButton GtkButtonBox GtkCList GtkCTree GtkCalendar GtkCheckButton GtkCheckMenuItem GtkColorSelection GtkColorSelectionDialog GtkCombo GtkContainer GtkCurve GtkData GtkDialog GtkDrawingArea GtkEditable GtkEntry GtkEventBox GtkFileSelection GtkFixed GtkFontSelection GtkFontSelectionDialog GtkFrame GtkGammaCurve GtkHBox GtkHButtonBox GtkHPaned GtkHRuler GtkHScale GtkHScrollbar GtkHSeparator GtkHandleBox GtkImage GtkImageMenuItem GtkInputDialog GtkInvisible GtkItem GtkItemFactory GtkLabel GtkLayout GtkList GtkListItem GtkMenu GtkMenuBar GtkMenuItem GtkMenuShell GtkMessageDialog GtkMisc GtkNotebook GtkObject GtkOptionMenu GtkPacker GtkPaned GtkPixmap GtkPlug GtkPreview GtkProgress GtkProgressBar GtkRadioButton GtkRadioMenuItem GtkRange GtkRuler GtkScale GtkScrollbar GtkScrolledWindow GtkSeparatorMenuItem GtkSocket GtkSpinButton GtkStatusbar GtkTable GtkTearoffMenuItem GtkText GtkTextBuffer GtkTextMark GtkTextTag GtkTextView GtkTipsQuery GtkToggleButton GtkToolbar GtkTooltips GtkTree GtkTreeView GtkTreeItem GtkVBox GtkVButtonBox GtkVPaned GtkVRuler GtkVScale GtkVScrollbar GtkVSeparator GtkViewport GtkWidget GtkWindow GtkWindowGroup contained
64syn keyword gtkrcClassName AccelLabel Adjustment Alignment Arrow AspectFrame Bin Box Button ButtonBox CList CTree Calendar CheckButton CheckMenuItem ColorSelection ColorSelectionDialog Combo Container Curve Data Dialog DrawingArea Editable Entry EventBox FileSelection Fixed FontSelection FontSelectionDialog Frame GammaCurve HBox HButtonBox HPaned HRuler HScale HScrollbar HSeparator HandleBox Image ImageMenuItem InputDialog Invisible Item ItemFactory Label Layout List ListItem Menu MenuBar MenuItem MenuShell MessageDialog Misc Notebook Object OptionMenu Packer Paned Pixmap Plug Preview Progress ProgressBar RadioButton RadioMenuItem Range Ruler Scale Scrollbar ScrolledWindow SeparatorMenuItem Socket SpinButton Statusbar Table TearoffMenuItem Text TextBuffer TextMark TextTag TextView TipsQuery ToggleButton Toolbar Tooltips Tree TreeView TreeItem VBox VButtonBox VPaned VRuler VScale VScrollbar VSeparator Viewport Widget Window WindowGroup contained
65syn keyword gtkrcClassNameGnome GnomeAbout GnomeAnimator GnomeApp GnomeAppBar GnomeCalculator GnomeCanvas GnomeCanvasEllipse GnomeCanvasGroup GnomeCanvasImage GnomeCanvasItem GnomeCanvasLine GnomeCanvasPolygon GnomeCanvasRE GnomeCanvasRect GnomeCanvasText GnomeCanvasWidget GnomeClient GnomeColorPicker GnomeDEntryEdit GnomeDateEdit GnomeDialog GnomeDock GnomeDockBand GnomeDockItem GnomeDockLayout GnomeDruid GnomeDruidPage GnomeDruidPageFinish GnomeDruidPageStandard GnomeDruidPageStart GnomeEntry GnomeFileEntry GnomeFontPicker GnomeFontSelector GnomeHRef GnomeIconEntry GnomeIconList GnomeIconSelection GnomeIconTextItem GnomeLess GnomeMDI GnomeMDIChild GnomeMDIGenericChild GnomeMessageBox GnomeNumberEntry GnomePaperSelector GnomePixmap GnomePixmapEntry GnomeProcBar GnomePropertyBox GnomeScores GnomeSpell GnomeStock GtkClock GtkDial GtkPixmapMenuItem GtkTed contained
66syn cluster gtkrcPRIVATE add=gtkrcClassName,gtkrcClassNameGnome
67
68" Stock item names
69syn keyword gtkrcStockName gtk-add gtk-apply gtk-bold gtk-cancel gtk-cdrom gtk-clear gtk-close gtk-convert gtk-copy gtk-cut gtk-delete gtk-dialog-error gtk-dialog-info gtk-dialog-question gtk-dialog-warning gtk-dnd gtk-dnd-multiple gtk-execute gtk-find gtk-find-and-replace gtk-floppy gtk-goto-bottom gtk-goto-first gtk-goto-last gtk-goto-top gtk-go-back gtk-go-down gtk-go-forward gtk-go-up gtk-help gtk-home gtk-index gtk-italic gtk-jump-to gtk-justify-center gtk-justify-fill gtk-justify-left gtk-justify-right gtk-missing-image gtk-new gtk-no gtk-ok gtk-open gtk-paste gtk-preferences gtk-print gtk-print-preview gtk-properties gtk-quit gtk-redo gtk-refresh gtk-remove gtk-revert-to-saved gtk-save gtk-save-as gtk-select-color gtk-select-font gtk-sort-ascending gtk-sort-descending gtk-spell-check gtk-stop gtk-strikethrough gtk-undelete gtk-underline gtk-undo gtk-yes gtk-zoom-100 gtk-zoom-fit gtk-zoom-in gtk-zoom-out contained
70syn cluster gtkrcPRIVATE add=gtkrcStockName
71
72" Gtk Settings
73syn keyword gtkrcSettingsName gtk-double-click-time gtk-cursor-blink gtk-cursor-blink-time gtk-split-cursor gtk-theme-name gtk-key-theme-name gtk-menu-bar-accel gtk-dnd-drag-threshold gtk-font-name gtk-color-palette gtk-entry-select-on-focus gtk-can-change-accels gtk-toolbar-style gtk-toolbar-icon-size
74syn cluster gtkrcPRIVATE add=gtkrcSettingsName
75
76" Catch errors caused by wrong parenthesization
77syn region gtkrcParen start='(' end=')' transparent contains=ALLBUT,gtkrcParenError,@gtkrcPRIVATE
78syn match gtkrcParenError ")"
79syn region gtkrcBrace start='{' end='}' transparent contains=ALLBUT,gtkrcBraceError,@gtkrcPRIVATE
80syn match gtkrcBraceError "}"
81syn region gtkrcBracket start='\[' end=']' transparent contains=ALLBUT,gtkrcBracketError,@gtkrcPRIVATE
82syn match gtkrcBracketError "]"
83
84" Synchronization
85syn sync minlines=50
86syn sync match gtkrcSyncClass groupthere NONE "^\s*class\>"
87
88" Define the default highlighting
89if version >= 508 || !exists("did_gtkrc_syntax_inits")
90 if version < 508
91 let did_gtkrc_syntax_inits = 1
92 command -nargs=+ HiLink hi link <args>
93 else
94 command -nargs=+ HiLink hi def link <args>
95 endif
96
97 HiLink gtkrcComment Comment
98 HiLink gtkrcFixme Todo
99
100 HiLink gtkrcInclude Preproc
101
102 HiLink gtkrcACString gtkrcString
103 HiLink gtkrcBString gtkrcString
104 HiLink gtkrcString String
105 HiLink gtkrcNumber Number
106 HiLink gtkrcStateName gtkrcConstant
107 HiLink gtkrcPriorityName gtkrcConstant
108 HiLink gtkrcTextDirName gtkrcConstant
109 HiLink gtkrcSettingsName Function
110 HiLink gtkrcStockName Function
111 HiLink gtkrcConstant Constant
112
113 HiLink gtkrcPathSpecial gtkrcSpecial
114 HiLink gtkrcWPathSpecial gtkrcSpecial
115 HiLink gtkrcRGBColor gtkrcSpecial
116 HiLink gtkrcKeyMod gtkrcSpecial
117 HiLink gtkrcSpecial Special
118
119 HiLink gtkrcTop gtkrcKeyword
120 HiLink gtkrcPathSet gtkrcKeyword
121 HiLink gtkrcStyleKeyword gtkrcKeyword
122 HiLink gtkrcFunction gtkrcKeyword
123 HiLink gtkrcBind gtkrcKeyword
124 HiLink gtkrcKeyword Keyword
125
126 HiLink gtkrcClassNameGnome gtkrcGtkClass
127 HiLink gtkrcClassName gtkrcGtkClass
128 HiLink gtkrcFunctionName gtkrcGtkClass
129 HiLink gtkrcGtkClass Type
130
131 HiLink gtkrcImage gtkrcOtherword
132 HiLink gtkrcOtherword Function
133
134 HiLink gtkrcParenError gtkrcError
135 HiLink gtkrcBraceError gtkrcError
136 HiLink gtkrcBracketError gtkrcError
137 HiLink gtkrcError Error
138
139 delcommand HiLink
140endif
141
142let b:current_syntax = "gtkrc"