20bb0a92f0d60c58dc99d631fd8bfcbba5cd0831
[monky] / extras / vim / syntax / conkyrc.vim
1 " Vim syntax file
2 " Language:     conkyrc
3 " Author:       Ciaran McCreesh <ciaranm@gentoo.org>
4 " Version:      20060307
5 " Copyright:    Copyright (c) 2005 Ciaran McCreesh
6 " Licence:      You may redistribute this under the same terms as Vim itself
7 "
8 " $Id$
9
10 if exists("b:current_syntax")
11   finish
12 endif
13
14 syn region ConkyrcComment start=/^\s*#/ end=/$/
15
16 syn keyword ConkyrcSetting
17         \ alignment
18         \ background
19         \ border_margin
20         \ border_width
21         \ cpu_avg_samples
22         \ default_color
23         \ default_outline_color
24         \ default_shade_color
25         \ double_buffer
26         \ draw_borders
27         \ draw_graph_borders
28         \ draw_outline
29         \ draw_shades
30         \ font
31         \ gap_x
32         \ gap_y
33         \ imap
34         \ mail_spool
35         \ max_port_monitor_connections
36         \ max_specials
37         \ max_user_text
38         \ maximum_width
39         \ minimum_size
40         \ mpd_host
41         \ mpd_password
42         \ mpd_port
43         \ net_avg_samples
44         \ no_buffers
45         \ out_to_console
46         \ override_utf8_locale
47         \ own_window
48         \ own_window_colour
49         \ own_window_hints
50         \ own_window_transparent
51         \ own_window_type
52         \ pad_percents
53         \ pop3
54         \ stippled_borders
55         \ total_run_times
56         \ update_interval
57         \ uppercase
58         \ use_spacer
59         \ use_xft
60         \ wm_class_name
61         \ xftalpha
62         \ xftfont
63
64 syn keyword ConkyrcConstant 
65         \ above
66         \ below
67         \ bottom_left
68         \ bottom_right
69         \ desktop
70         \ no
71         \ none
72         \ normal
73         \ override
74         \ skip_pager
75         \ skip_taskbar
76         \ sticky
77         \ top_left
78         \ top_right
79         \ undecorated
80         \ yes
81
82 syn match ConkyrcNumber /\S\@<!\d\+\(\.\d\+\)\?\(\S\@!\|}\@=\)/
83       \ nextgroup=ConkyrcNumber,ConkyrcColour skipwhite
84 syn match ConkyrcColour /\S\@<!#[a-fA-F0-9]\{6\}\(\S\@!\|}\@=\)/
85       \ nextgroup=ConkyrcNumber,ConkyrcColour skipwhite
86
87 syn region ConkyrcText start=/^TEXT$/ end=/\%$/ contains=ConkyrcVar
88
89 syn region ConkyrcVar start=/\${/ end=/}/ contained contains=ConkyrcVarStuff
90 syn region ConkyrcVar start=/\$\w\@=/ end=/\W\@=\|$/ contained contains=ConkyrcVarName
91
92 syn match ConkyrcVarStuff /{\@<=/ms=s contained nextgroup=ConkyrcVarName
93
94 syn keyword ConkyrcVarName contained nextgroup=ConkyrcNumber,ConkyrcColour skipwhite
95         \ acpiacadapter 
96         \ acpifan 
97         \ acpitemp 
98         \ acpitempf 
99         \ addr 
100         \ adt746xcpu
101         \ adt746xfan 
102         \ alignc 
103         \ alignr 
104         \ apm_adapter 
105         \ apm_battery_life 
106         \ apm_battery_time
107         \ audacious_bar
108         \ audacious_bitrate
109         \ audacious_channels
110         \ audacious_filename
111         \ audacious_frequency
112         \ audacious_length
113         \ audacious_length_seconds
114         \ audacious_playlist_length
115         \ audacious_playlist_position
116         \ audacious_position
117         \ audacious_position_seconds
118         \ audacious_status
119         \ audacious_title
120         \ battery 
121         \ bmpx_album 
122         \ bmpx_artist 
123         \ bmpx_bitrate
124         \ bmpx_title 
125         \ bmpx_track 
126         \ bmpx_uri 
127         \ buffers 
128         \ cached 
129         \ color 
130         \ colour 
131         \ cpu 
132         \ cpubar 
133         \ diskio 
134         \ downspeed 
135         \ downspeedf
136         \ else 
137         \ entropy_avail
138         \ entropy_bar
139         \ entropy_poolsize
140         \ exec 
141         \ execbar 
142         \ execgraph 
143         \ execi 
144         \ execibar 
145         \ execigraph 
146         \ font 
147         \ freq
148         \ freq_dyn 
149         \ freq_dyn_g 
150         \ freq_g 
151         \ fs_bar 
152         \ fs_free 
153         \ fs_free_perc 
154         \ fs_size 
155         \ fs_used 
156         \ goto
157         \ hddtemp
158         \ head
159         \ hr 
160         \ i2c 
161         \ i8k_ac_status 
162         \ i8k_bios 
163         \ i8k_buttons_status 
164         \ i8k_cpu_temp 
165         \ i8k_cpu_tempf
166         \ i8k_left_fan_rpm 
167         \ i8k_left_fan_status 
168         \ i8k_right_fan_rpm 
169         \ i8k_right_fan_status
170         \ i8k_serial 
171         \ i8k_version 
172         \ if_existing 
173         \ if_mounted 
174         \ if_running 
175         \ kernel 
176         \ linkstatus 
177         \ loadavg
178         \ machine 
179         \ mails 
180         \ mem 
181         \ membar 
182         \ memmax 
183         \ memperc 
184         \ mpd_album 
185         \ mpd_artist 
186         \ mpd_bar 
187         \ mpd_bitrate 
188         \ mpd_elapsed
189         \ mpd_file
190         \ mpd_length 
191         \ mpd_name
192         \ mpd_percent 
193         \ mpd_smart
194         \ mpd_status 
195         \ mpd_title
196         \ mpd_vol 
197         \ new_mails 
198         \ nodename 
199         \ offset 
200         \ outlinecolor 
201         \ pre_exec 
202         \ processes
203         \ running_processes 
204         \ shadecolor 
205         \ stippled_hr 
206         \ swap 
207         \ swapbar 
208         \ swapmax 
209         \ swapperc 
210         \ sysname
211         \ tab
212         \ tail 
213         \ tcp_portmon 
214         \ texeci 
215         \ time 
216         \ top 
217         \ top_mem 
218         \ totaldown 
219         \ totalup 
220         \ tztime
221         \ updates 
222         \ upspeed 
223         \ upspeedf
224         \ upspeedgraph 
225         \ uptime 
226         \ uptime_short 
227         \ voffset
228         \ voltage_mv
229         \ voltage_v
230
231 hi def link ConkyrcComment   Comment
232 hi def link ConkyrcSetting   Keyword
233 hi def link ConkyrcConstant  Constant
234 hi def link ConkyrcNumber    Number
235 hi def link ConkyrcColour    Special
236
237 hi def link ConkyrcText      String
238 hi def link ConkyrcVar       Identifier
239 hi def link ConkyrcVarName   Keyword
240
241 let b:current_syntax = "conkyrc"