7
|
1 " Vim syntax file
|
3224
|
2 " Language: OpenSSH client configuration file (ssh_config)
|
|
3 " Author: David Necas (Yeti)
|
|
4 " Maintainer: Leonard Ehrenfried <leonard.ehrenfried@web.de>
|
3371
|
5 " Last Change: 2012 Feb 19
|
3224
|
6 " SSH Version: 5.9p1
|
|
7 "
|
7
|
8
|
|
9 " Setup
|
|
10 if version >= 600
|
2034
|
11 if exists("b:current_syntax")
|
|
12 finish
|
|
13 endif
|
7
|
14 else
|
2034
|
15 syntax clear
|
7
|
16 endif
|
|
17
|
|
18 if version >= 600
|
2034
|
19 setlocal iskeyword=_,-,a-z,A-Z,48-57
|
7
|
20 else
|
2034
|
21 set iskeyword=_,-,a-z,A-Z,48-57
|
7
|
22 endif
|
|
23
|
3224
|
24
|
|
25 " case on
|
|
26 syn case match
|
|
27
|
7
|
28
|
|
29 " Comments
|
3224
|
30 syn match sshconfigComment "^#.*$" contains=sshconfigTodo
|
|
31 syn match sshconfigComment "\s#.*$" contains=sshconfigTodo
|
|
32
|
|
33 syn keyword sshconfigTodo TODO FIXME NOTE contained
|
|
34
|
7
|
35
|
|
36 " Constants
|
|
37 syn keyword sshconfigYesNo yes no ask
|
2034
|
38 syn keyword sshconfigYesNo any auto
|
3224
|
39 syn keyword sshconfigYesNo force autoask none
|
|
40
|
|
41 syn keyword sshconfigCipher 3des blowfish
|
|
42 syn keyword sshconfigCiphers aes128-cbc 3des-cbc blowfish blowfish-cbc cast128-cbc
|
|
43 syn keyword sshconfigCiphers aes192-cbc aes256-cbc aes128-ctr aes192-ctr aes256-ctr
|
|
44 syn keyword sshconfigCiphers arcfour arcfour128 arcfour256 cast128-cbc
|
|
45
|
7
|
46 syn keyword sshconfigMAC hmac-md5 hmac-sha1 hmac-ripemd160 hmac-sha1-96
|
|
47 syn keyword sshconfigMAC hmac-md5-96
|
3224
|
48 syn keyword sshconfigMAC hmac-sha2-256 hmac-sha2-256-96 hmac-sha2-512
|
|
49 syn keyword sshconfigMAC hmac-sha2-512-96
|
|
50 syn match sshconfigMAC "\<umac-64@openssh\.com\>"
|
|
51
|
7
|
52 syn keyword sshconfigHostKeyAlg ssh-rsa ssh-dss
|
3224
|
53 syn match sshconfigHostKeyAlg "\<ecdsa-sha2-nistp256-cert-v01@openssh\.com\>"
|
|
54 syn match sshconfigHostKeyAlg "\<ecdsa-sha2-nistp384-cert-v01@openssh\.com\>"
|
|
55 syn match sshconfigHostKeyAlg "\<ecdsa-sha2-nistp521-cert-v01@openssh\.com\>"
|
|
56 syn match sshconfigHostKeyAlg "\<ssh-rsa-cert-v01@openssh\.com\>"
|
|
57 syn match sshconfigHostKeyAlg "\<ssh-dss-cert-v01@openssh\.com\>"
|
|
58 syn match sshconfigHostKeyAlg "\<ssh-rsa-cert-v00@openssh\.com\>"
|
|
59 syn match sshconfigHostKeyAlg "\<ssh-dss-cert-v00@openssh\.com\>"
|
|
60 syn keyword sshconfigHostKeyAlg ecdsa-sha2-nistp256 ecdsa-sha2-nistp384 ecdsa-sha2-nistp521
|
|
61
|
|
62 syn keyword sshconfigPreferredAuth hostbased publickey password gssapi-with-mic
|
7
|
63 syn keyword sshconfigPreferredAuth keyboard-interactive
|
3224
|
64
|
7
|
65 syn keyword sshconfigLogLevel QUIET FATAL ERROR INFO VERBOSE
|
|
66 syn keyword sshconfigLogLevel DEBUG DEBUG1 DEBUG2 DEBUG3
|
2034
|
67 syn keyword sshconfigSysLogFacility DAEMON USER AUTH AUTHPRIV LOCAL0 LOCAL1
|
|
68 syn keyword sshconfigSysLogFacility LOCAL2 LOCAL3 LOCAL4 LOCAL5 LOCAL6 LOCAL7
|
3224
|
69 syn keyword sshconfigAddressFamily inet inet6
|
|
70
|
|
71 syn match sshconfigIPQoS "af1[1234]"
|
|
72 syn match sshconfigIPQoS "af2[23]"
|
|
73 syn match sshconfigIPQoS "af3[123]"
|
|
74 syn match sshconfigIPQoS "af4[123]"
|
|
75 syn match sshconfigIPQoS "cs[0-7]"
|
|
76 syn keyword sshconfigIPQoS ef lowdelay throughput reliability
|
|
77 syn keyword sshconfigKbdInteractive bsdauth pam skey
|
|
78
|
|
79 syn keyword sshconfigKexAlgo ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521
|
|
80 syn keyword sshconfigKexAlgo diffie-hellman-group-exchange-sha256
|
|
81 syn keyword sshconfigKexAlgo diffie-hellman-group-exchange-sha1
|
|
82 syn keyword sshconfigKexAlgo diffie-hellman-group14-sha1
|
|
83 syn keyword sshconfigKexAlgo diffie-hellman-group1-sha1
|
|
84
|
|
85 syn keyword sshconfigTunnel point-to-point ethernet
|
|
86
|
|
87 syn match sshconfigVar "%[rhplLdun]\>"
|
7
|
88 syn match sshconfigSpecial "[*?]"
|
|
89 syn match sshconfigNumber "\d\+"
|
|
90 syn match sshconfigHostPort "\<\(\d\{1,3}\.\)\{3}\d\{1,3}\(:\d\+\)\?\>"
|
|
91 syn match sshconfigHostPort "\<\([-a-zA-Z0-9]\+\.\)\+[-a-zA-Z0-9]\{2,}\(:\d\+\)\?\>"
|
|
92 syn match sshconfigHostPort "\<\(\x\{,4}:\)\+\x\{,4}[:/]\d\+\>"
|
3371
|
93 syn match sshconfigHostPort "\(Host \)\@<=.\+"
|
|
94 syn match sshconfigHostPort "\(HostName \)\@<=.\+"
|
3224
|
95
|
|
96 " case off
|
|
97 syn case ignore
|
|
98
|
|
99
|
7
|
100 " Keywords
|
|
101 syn keyword sshconfigHostSect Host
|
3224
|
102
|
2034
|
103 syn keyword sshconfigKeyword AddressFamily
|
3224
|
104 syn keyword sshconfigKeyword BatchMode
|
|
105 syn keyword sshconfigKeyword BindAddress
|
|
106 syn keyword sshconfigKeyword ChallengeResponseAuthentication
|
|
107 syn keyword sshconfigKeyword CheckHostIP
|
|
108 syn keyword sshconfigKeyword Cipher
|
|
109 syn keyword sshconfigKeyword Ciphers
|
|
110 syn keyword sshconfigKeyword ClearAllForwardings
|
|
111 syn keyword sshconfigKeyword Compression
|
|
112 syn keyword sshconfigKeyword CompressionLevel
|
|
113 syn keyword sshconfigKeyword ConnectTimeout
|
|
114 syn keyword sshconfigKeyword ConnectionAttempts
|
|
115 syn keyword sshconfigKeyword ControlMaster
|
|
116 syn keyword sshconfigKeyword ControlPath
|
|
117 syn keyword sshconfigKeyword ControlPersist
|
|
118 syn keyword sshconfigKeyword DynamicForward
|
|
119 syn keyword sshconfigKeyword EnableSSHKeysign
|
|
120 syn keyword sshconfigKeyword EscapeChar
|
|
121 syn keyword sshconfigKeyword ExitOnForwardFailure
|
|
122 syn keyword sshconfigKeyword ForwardAgent
|
|
123 syn keyword sshconfigKeyword ForwardX11
|
|
124 syn keyword sshconfigKeyword ForwardX11Timeout
|
2034
|
125 syn keyword sshconfigKeyword ForwardX11Trusted
|
|
126 syn keyword sshconfigKeyword GSSAPIAuthentication
|
3224
|
127 syn keyword sshconfigKeyword GSSAPIClientIdentity
|
|
128 syn keyword sshconfigKeyword GSSAPIDelegateCredentials
|
|
129 syn keyword sshconfigKeyword GSSAPIKeyExchange
|
|
130 syn keyword sshconfigKeyword GSSAPIRenewalForcesRekey
|
|
131 syn keyword sshconfigKeyword GSSAPIServerIdentity
|
|
132 syn keyword sshconfigKeyword GSSAPITrustDNS
|
|
133 syn keyword sshconfigKeyword GSSAPITrustDns
|
|
134 syn keyword sshconfigKeyword GatewayPorts
|
2034
|
135 syn keyword sshconfigKeyword GlobalKnownHostsFile
|
3224
|
136 syn keyword sshconfigKeyword HashKnownHosts
|
|
137 syn keyword sshconfigKeyword HostKeyAlgorithms
|
|
138 syn keyword sshconfigKeyword HostKeyAlias
|
|
139 syn keyword sshconfigKeyword HostName
|
|
140 syn keyword sshconfigKeyword HostbasedAuthentication
|
|
141 syn keyword sshconfigKeyword IPQoS
|
|
142 syn keyword sshconfigKeyword IdentitiesOnly
|
|
143 syn keyword sshconfigKeyword IdentityFile
|
|
144 syn keyword sshconfigKeyword KbdInteractiveAuthentication
|
|
145 syn keyword sshconfigKeyword KbdInteractiveDevices
|
|
146 syn keyword sshconfigKeyword KexAlgorithms
|
|
147 syn keyword sshconfigKeyword LocalCommand
|
|
148 syn keyword sshconfigKeyword LocalForward
|
|
149 syn keyword sshconfigKeyword LogLevel
|
2034
|
150 syn keyword sshconfigKeyword MACs
|
|
151 syn keyword sshconfigKeyword NoHostAuthenticationForLocalhost
|
|
152 syn keyword sshconfigKeyword NumberOfPasswordPrompts
|
3224
|
153 syn keyword sshconfigKeyword PKCS11Provider
|
|
154 syn keyword sshconfigKeyword PasswordAuthentication
|
2034
|
155 syn keyword sshconfigKeyword PermitLocalCommand
|
3224
|
156 syn keyword sshconfigKeyword Port
|
|
157 syn keyword sshconfigKeyword PreferredAuthentications
|
|
158 syn keyword sshconfigKeyword Protocol
|
|
159 syn keyword sshconfigKeyword ProxyCommand
|
|
160 syn keyword sshconfigKeyword PubkeyAuthentication
|
|
161 syn keyword sshconfigKeyword RSAAuthentication
|
|
162 syn keyword sshconfigKeyword RekeyLimit
|
|
163 syn keyword sshconfigKeyword RemoteForward
|
|
164 syn keyword sshconfigKeyword RequestTTY
|
2034
|
165 syn keyword sshconfigKeyword RhostsRSAAuthentication
|
3224
|
166 syn keyword sshconfigKeyword SendEnv
|
|
167 syn keyword sshconfigKeyword ServerAliveCountMax
|
|
168 syn keyword sshconfigKeyword ServerAliveInterval
|
|
169 syn keyword sshconfigKeyword SmartcardDevice
|
|
170 syn keyword sshconfigKeyword StrictHostKeyChecking
|
|
171 syn keyword sshconfigKeyword TCPKeepAlive
|
|
172 syn keyword sshconfigKeyword Tunnel
|
|
173 syn keyword sshconfigKeyword TunnelDevice
|
|
174 syn keyword sshconfigKeyword UseBlacklistedKeys
|
|
175 syn keyword sshconfigKeyword UsePrivilegedPort
|
|
176 syn keyword sshconfigKeyword User
|
2034
|
177 syn keyword sshconfigKeyword UserKnownHostsFile
|
3224
|
178 syn keyword sshconfigKeyword VerifyHostKeyDNS
|
|
179 syn keyword sshconfigKeyword VisualHostKey
|
2034
|
180 syn keyword sshconfigKeyword XAuthLocation
|
7
|
181
|
|
182 " Define the default highlighting
|
|
183 if version >= 508 || !exists("did_sshconfig_syntax_inits")
|
2034
|
184 if version < 508
|
|
185 let did_sshconfig_syntax_inits = 1
|
|
186 command -nargs=+ HiLink hi link <args>
|
|
187 else
|
|
188 command -nargs=+ HiLink hi def link <args>
|
|
189 endif
|
7
|
190
|
2034
|
191 HiLink sshconfigComment Comment
|
|
192 HiLink sshconfigTodo Todo
|
|
193 HiLink sshconfigHostPort sshconfigConstant
|
|
194 HiLink sshconfigNumber sshconfigConstant
|
|
195 HiLink sshconfigConstant Constant
|
|
196 HiLink sshconfigYesNo sshconfigEnum
|
|
197 HiLink sshconfigCipher sshconfigEnum
|
3224
|
198 HiLink sshconfigCiphers sshconfigEnum
|
2034
|
199 HiLink sshconfigMAC sshconfigEnum
|
|
200 HiLink sshconfigHostKeyAlg sshconfigEnum
|
|
201 HiLink sshconfigLogLevel sshconfigEnum
|
|
202 HiLink sshconfigSysLogFacility sshconfigEnum
|
3224
|
203 HiLink sshconfigAddressFamily sshconfigEnum
|
|
204 HiLink sshconfigIPQoS sshconfigEnum
|
|
205 HiLink sshconfigKbdInteractive sshconfigEnum
|
|
206 HiLink sshconfigKexAlgo sshconfigEnum
|
|
207 HiLink sshconfigTunnel sshconfigEnum
|
2034
|
208 HiLink sshconfigPreferredAuth sshconfigEnum
|
|
209 HiLink sshconfigVar sshconfigEnum
|
|
210 HiLink sshconfigEnum Identifier
|
|
211 HiLink sshconfigSpecial Special
|
|
212 HiLink sshconfigKeyword Keyword
|
|
213 HiLink sshconfigHostSect Type
|
|
214 delcommand HiLink
|
7
|
215 endif
|
|
216
|
|
217 let b:current_syntax = "sshconfig"
|
3224
|
218
|
|
219 " vim:set ts=8 sw=2 sts=2:
|