]> ruderich.org/simon Gitweb - config/dotfiles.git/blob - vim/vim/syntax/interfaces.vim
vim: add syntax for /etc/network/interfaces
[config/dotfiles.git] / vim / vim / syntax / interfaces.vim
1 " Vim syntax file
2 " Language:     interfaces (/etc/network/interfaces)
3 " Maintaner:    François Wendling <frwending@free.fr>
4 " Version:      0.1
5 " Released under the terms of the GNU/GPL licence v2
6 "
7 if version < 600
8         syntax clear
9 endif
10 setlocal iskeyword+=-
11
12
13 syn match interfacesComment /^\s*#.*$/ contains=interfacesComment
14 syn keyword interfacesOpta address gateway netmask broadcast metric pointopoint media hwadress mtu hostname leasehours leasetime vendor client bootfile server hwaddr provider frame netnum endpoint local ttl network 
15 syn keyword interfacesSpec mapping iface script auto up down pre-up post-down map contained
16 syn keyword interfacesOptb inet inet6 static dhcp loopback bootp ppp wvdial v4tunnel manual 
17 "verify xxx.xxx.xxx.xxx && xxx.xxx.xxx.xxx/xx 
18 "IP addresses
19 syn match interfacesIP /\(\d\{1,3}.\)\{3}\d\{1,3}\(\/\d\d\)\?/ contains=interfacesIP
20 "MAC addresses
21 syn match interfacesMAC /\(\x\x\:\)\{5}\x\x/ 
22 syn match interfacesIface /iface\s\+\S\+\s/ contains=interfacesSpec
23 syn match interfacesArgz /\(mapping\|auto\)\+.*/ contains=interfacesSpec
24 " All related to scripts
25 syn match interfacesScript /\(script\|pre-up\|up\|post-up\|pre-down\|down\|post-down\)\s\+.*/ contains=interfacesMAC,interfacesIP,interfacesSpec 
26 syn match interfacesMap /map\s.*\s\S\+$/ contains=interfacesSpec,interfacesMAC,interfacesIP 
27
28 hi link interfacesComment Comment
29 hi link interfacesOpta Statement
30 hi link interfacesSpec Statement
31 hi link interfacesOptb Type 
32 hi link interfacesIP String
33 hi link interfacesMAC String
34 hi link interfacesNames Special
35 hi link interfacesIface Special
36 hi link interfacesArgz Special
37 hi link interfacesScript Define
38 hi link interfacesMap Special
39
40 let b:current_syntax = "interfaces"
41
42 " vim: ts=8 ft=vim