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