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