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 Aug 11 9" SSH Version: 7.3p1 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 IPQoS 185syn keyword sshconfigKeyword KbdInteractiveAuthentication 186syn keyword sshconfigKeyword KbdInteractiveDevices 187syn keyword sshconfigKeyword KexAlgorithms 188syn keyword sshconfigKeyword LocalCommand 189syn keyword sshconfigKeyword LocalForward 190syn keyword sshconfigKeyword LogLevel 191syn keyword sshconfigKeyword MACs 192syn keyword sshconfigKeyword Match 193syn keyword sshconfigKeyword NoHostAuthenticationForLocalhost 194syn keyword sshconfigKeyword NumberOfPasswordPrompts 195syn keyword sshconfigKeyword PKCS11Provider 196syn keyword sshconfigKeyword PasswordAuthentication 197syn keyword sshconfigKeyword PermitLocalCommand 198syn keyword sshconfigKeyword Port 199syn keyword sshconfigKeyword PreferredAuthentications 200syn keyword sshconfigKeyword Protocol 201syn keyword sshconfigKeyword ProxyCommand 202syn keyword sshconfigKeyword ProxyJump 203syn keyword sshconfigKeyword ProxyUseFDPass 204syn keyword sshconfigKeyword PubkeyAcceptedKeyTypes 205syn keyword sshconfigKeyword PubkeyAuthentication 206syn keyword sshconfigKeyword RSAAuthentication 207syn keyword sshconfigKeyword RekeyLimit 208syn keyword sshconfigKeyword RemoteForward 209syn keyword sshconfigKeyword RequestTTY 210syn keyword sshconfigKeyword RhostsRSAAuthentication 211syn keyword sshconfigKeyword SendEnv 212syn keyword sshconfigKeyword ServerAliveCountMax 213syn keyword sshconfigKeyword ServerAliveInterval 214syn keyword sshconfigKeyword SmartcardDevice 215syn keyword sshconfigKeyword StrictHostKeyChecking 216syn keyword sshconfigKeyword TCPKeepAlive 217syn keyword sshconfigKeyword Tunnel 218syn keyword sshconfigKeyword TunnelDevice 219syn keyword sshconfigKeyword UseBlacklistedKeys 220syn keyword sshconfigKeyword UsePrivilegedPort 221syn keyword sshconfigKeyword User 222syn keyword sshconfigKeyword UserKnownHostsFile 223syn keyword sshconfigKeyword UseRoaming 224syn keyword sshconfigKeyword VerifyHostKeyDNS 225syn keyword sshconfigKeyword VisualHostKey 226syn keyword sshconfigKeyword XAuthLocation 227 228" Define the default highlighting 229 230hi def link sshconfigComment Comment 231hi def link sshconfigTodo Todo 232hi def link sshconfigHostPort sshconfigConstant 233hi def link sshconfigNumber sshconfigConstant 234hi def link sshconfigConstant Constant 235hi def link sshconfigYesNo sshconfigEnum 236hi def link sshconfigCipher sshconfigEnum 237hi def link sshconfigCiphers sshconfigEnum 238hi def link sshconfigMAC sshconfigEnum 239hi def link sshconfigHostKeyAlgo sshconfigEnum 240hi def link sshconfigLogLevel sshconfigEnum 241hi def link sshconfigSysLogFacility sshconfigEnum 242hi def link sshconfigAddressFamily sshconfigEnum 243hi def link sshconfigIPQoS sshconfigEnum 244hi def link sshconfigKbdInteractive sshconfigEnum 245hi def link sshconfigKexAlgo sshconfigEnum 246hi def link sshconfigTunnel sshconfigEnum 247hi def link sshconfigPreferredAuth sshconfigEnum 248hi def link sshconfigVar sshconfigEnum 249hi def link sshconfigEnum Identifier 250hi def link sshconfigSpecial Special 251hi def link sshconfigKeyword Keyword 252hi def link sshconfigHostSect Type 253hi def link sshconfigMatch Type 254 255let b:current_syntax = "sshconfig" 256 257" vim:set ts=8 sw=2 sts=2: 258