1
0
Fork 0
mirror of https://github.com/vim/vim synced 2025-03-24 18:55:11 +01:00
vim/runtime/syntax/sshconfig.vim

271 lines
10 KiB
VimL
Raw Normal View History

2004-06-13 20:20:40 +00:00
" Vim syntax file
2011-12-14 21:17:39 +01:00
" Language: OpenSSH client configuration file (ssh_config)
" Author: David Necas (Yeti)
2015-12-29 19:10:25 +01:00
" Maintainer: Dominik Fischer <d dot f dot fischer at web dot de>
2016-01-15 20:57:49 +01:00
" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
" Contributor: Karsten Hopp <karsten@redhat.com>
2016-03-04 22:22:32 +01:00
" Last Change: 2016 Mar 1
" SSH Version: 7.2
2011-12-14 21:17:39 +01:00
"
2004-06-13 20:20:40 +00:00
" Setup
if version >= 600
2010-01-06 20:54:52 +01:00
if exists("b:current_syntax")
finish
endif
2004-06-13 20:20:40 +00:00
else
2010-01-06 20:54:52 +01:00
syntax clear
2004-06-13 20:20:40 +00:00
endif
if version >= 600
2010-01-06 20:54:52 +01:00
setlocal iskeyword=_,-,a-z,A-Z,48-57
2004-06-13 20:20:40 +00:00
else
2010-01-06 20:54:52 +01:00
set iskeyword=_,-,a-z,A-Z,48-57
2004-06-13 20:20:40 +00:00
endif
2011-12-14 21:17:39 +01:00
" case on
syn case match
2004-06-13 20:20:40 +00:00
" Comments
2011-12-14 21:17:39 +01:00
syn match sshconfigComment "^#.*$" contains=sshconfigTodo
syn match sshconfigComment "\s#.*$" contains=sshconfigTodo
syn keyword sshconfigTodo TODO FIXME NOTE contained
2004-06-13 20:20:40 +00:00
" Constants
syn keyword sshconfigYesNo yes no ask
2010-01-06 20:54:52 +01:00
syn keyword sshconfigYesNo any auto
2011-12-14 21:17:39 +01:00
syn keyword sshconfigYesNo force autoask none
2016-03-04 22:22:32 +01:00
syn keyword sshconfigCipher 3des blowfish
2011-12-14 21:17:39 +01:00
2016-03-04 22:22:32 +01:00
syn keyword sshconfigCiphers 3des-cbc
syn keyword sshconfigCiphers blowfish-cbc
syn keyword sshconfigCiphers cast128-cbc
syn keyword sshconfigCiphers arcfour
syn keyword sshconfigCiphers arcfour128
syn keyword sshconfigCiphers arcfour256
syn keyword sshconfigCiphers aes128-cbc
syn keyword sshconfigCiphers aes192-cbc
syn keyword sshconfigCiphers aes256-cbc
syn match sshconfigCiphers "\<rijndael-cbc@lysator\.liu.se\>"
syn keyword sshconfigCiphers aes128-ctr
syn keyword sshconfigCiphers aes192-ctr
syn keyword sshconfigCiphers aes256-ctr
syn match sshconfigCiphers "\<aes128-gcm@openssh\.com\>"
syn match sshconfigCiphers "\<aes256-gcm@openssh\.com\>"
syn match sshconfigCiphers "\<chacha20-poly1305@openssh\.com\>"
syn keyword sshconfigMAC hmac-sha1
syn keyword sshconfigMAC mac-sha1-96
syn keyword sshconfigMAC mac-sha2-256
syn keyword sshconfigMAC mac-sha2-512
syn keyword sshconfigMAC mac-md5
syn keyword sshconfigMAC mac-md5-96
syn keyword sshconfigMAC mac-ripemd160
syn match sshconfigMAC "\<hmac-ripemd160@openssh\.com\>"
2011-12-14 21:17:39 +01:00
syn match sshconfigMAC "\<umac-64@openssh\.com\>"
2016-03-04 22:22:32 +01:00
syn match sshconfigMAC "\<umac-128@openssh\.com\>"
syn match sshconfigMAC "\<hmac-sha1-etm@openssh\.com\>"
syn match sshconfigMAC "\<hmac-sha1-96-etm@openssh\.com\>"
syn match sshconfigMAC "\<hmac-sha2-256-etm@openssh\.com\>"
syn match sshconfigMAC "\<hmac-sha2-512-etm@openssh\.com\>"
syn match sshconfigMAC "\<hmac-md5-etm@openssh\.com\>"
syn match sshconfigMAC "\<hmac-md5-96-etm@openssh\.com\>"
syn match sshconfigMAC "\<hmac-ripemd160-etm@openssh\.com\>"
syn match sshconfigMAC "\<umac-64-etm@openssh\.com\>"
syn match sshconfigMAC "\<umac-128-etm@openssh\.com\>"
2011-12-14 21:17:39 +01:00
2016-03-04 22:22:32 +01:00
syn keyword sshconfigHostKeyAlgo ssh-ed25519
syn match sshconfigHostKeyAlgo "\<ssh-ed25519-cert-v01@openssh\.com\>"
syn keyword sshconfigHostKeyAlgo ssh-rsa
syn keyword sshconfigHostKeyAlgo ssh-dss
syn keyword sshconfigHostKeyAlgo ecdsa-sha2-nistp256
syn keyword sshconfigHostKeyAlgo ecdsa-sha2-nistp384
syn keyword sshconfigHostKeyAlgo ecdsa-sha2-nistp521
syn match sshconfigHostKeyAlgo "\<ssh-rsa-cert-v01@openssh\.com\>"
syn match sshconfigHostKeyAlgo "\<ssh-dss-cert-v01@openssh\.com\>"
syn match sshconfigHostKeyAlgo "\<ecdsa-sha2-nistp256-cert-v01@openssh\.com\>"
syn match sshconfigHostKeyAlgo "\<ecdsa-sha2-nistp384-cert-v01@openssh\.com\>"
syn match sshconfigHostKeyAlgo "\<ecdsa-sha2-nistp521-cert-v01@openssh\.com\>"
2011-12-14 21:17:39 +01:00
syn keyword sshconfigPreferredAuth hostbased publickey password gssapi-with-mic
2004-06-13 20:20:40 +00:00
syn keyword sshconfigPreferredAuth keyboard-interactive
2011-12-14 21:17:39 +01:00
2004-06-13 20:20:40 +00:00
syn keyword sshconfigLogLevel QUIET FATAL ERROR INFO VERBOSE
syn keyword sshconfigLogLevel DEBUG DEBUG1 DEBUG2 DEBUG3
2010-01-06 20:54:52 +01:00
syn keyword sshconfigSysLogFacility DAEMON USER AUTH AUTHPRIV LOCAL0 LOCAL1
syn keyword sshconfigSysLogFacility LOCAL2 LOCAL3 LOCAL4 LOCAL5 LOCAL6 LOCAL7
2011-12-14 21:17:39 +01:00
syn keyword sshconfigAddressFamily inet inet6
2016-01-15 20:57:49 +01:00
syn match sshconfigIPQoS "af1[123]"
syn match sshconfigIPQoS "af2[123]"
2011-12-14 21:17:39 +01:00
syn match sshconfigIPQoS "af3[123]"
syn match sshconfigIPQoS "af4[123]"
syn match sshconfigIPQoS "cs[0-7]"
syn keyword sshconfigIPQoS ef lowdelay throughput reliability
syn keyword sshconfigKbdInteractive bsdauth pam skey
2016-03-04 22:22:32 +01:00
syn keyword sshconfigKexAlgo diffie-hellman-group1-sha1
syn keyword sshconfigKexAlgo diffie-hellman-group14-sha1
syn keyword sshconfigKexAlgo diffie-hellman-group-exchange-sha1
syn keyword sshconfigKexAlgo diffie-hellman-group-exchange-sha256
syn keyword sshconfigKexAlgo ecdh-sha2-nistp256
syn keyword sshconfigKexAlgo ecdh-sha2-nistp384
syn keyword sshconfigKexAlgo ecdh-sha2-nistp521
syn match sshconfigKexAlgo "\<curve25519-sha256@libssh\.org\>"
2011-12-14 21:17:39 +01:00
syn keyword sshconfigTunnel point-to-point ethernet
syn match sshconfigVar "%[rhplLdun]\>"
2004-06-13 20:20:40 +00:00
syn match sshconfigSpecial "[*?]"
syn match sshconfigNumber "\d\+"
syn match sshconfigHostPort "\<\(\d\{1,3}\.\)\{3}\d\{1,3}\(:\d\+\)\?\>"
syn match sshconfigHostPort "\<\([-a-zA-Z0-9]\+\.\)\+[-a-zA-Z0-9]\{2,}\(:\d\+\)\?\>"
syn match sshconfigHostPort "\<\(\x\{,4}:\)\+\x\{,4}[:/]\d\+\>"
2012-02-22 17:30:19 +01:00
syn match sshconfigHostPort "\(Host \)\@<=.\+"
syn match sshconfigHostPort "\(HostName \)\@<=.\+"
2011-12-14 21:17:39 +01:00
" case off
syn case ignore
2004-06-13 20:20:40 +00:00
" Keywords
syn keyword sshconfigHostSect Host
2011-12-14 21:17:39 +01:00
2015-12-29 19:10:25 +01:00
syn keyword sshconfigMatch canonical exec host originalhost user localuser all
2010-01-06 20:54:52 +01:00
syn keyword sshconfigKeyword AddressFamily
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword BatchMode
syn keyword sshconfigKeyword BindAddress
2016-01-15 20:57:49 +01:00
syn keyword sshconfigKeyword CanonicalDomains
syn keyword sshconfigKeyword CanonicalizeFallbackLocal
syn keyword sshconfigKeyword CanonicalizeHostname
syn keyword sshconfigKeyword CanonicalizeMaxDots
2016-03-04 22:22:32 +01:00
syn keyword sshconfigKeyword CertificateFile
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword ChallengeResponseAuthentication
syn keyword sshconfigKeyword CheckHostIP
syn keyword sshconfigKeyword Cipher
syn keyword sshconfigKeyword Ciphers
syn keyword sshconfigKeyword ClearAllForwardings
syn keyword sshconfigKeyword Compression
syn keyword sshconfigKeyword CompressionLevel
syn keyword sshconfigKeyword ConnectTimeout
syn keyword sshconfigKeyword ConnectionAttempts
syn keyword sshconfigKeyword ControlMaster
syn keyword sshconfigKeyword ControlPath
syn keyword sshconfigKeyword ControlPersist
syn keyword sshconfigKeyword DynamicForward
syn keyword sshconfigKeyword EnableSSHKeysign
syn keyword sshconfigKeyword EscapeChar
syn keyword sshconfigKeyword ExitOnForwardFailure
syn keyword sshconfigKeyword ForwardAgent
syn keyword sshconfigKeyword ForwardX11
syn keyword sshconfigKeyword ForwardX11Timeout
2010-01-06 20:54:52 +01:00
syn keyword sshconfigKeyword ForwardX11Trusted
syn keyword sshconfigKeyword GSSAPIAuthentication
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword GSSAPIClientIdentity
syn keyword sshconfigKeyword GSSAPIDelegateCredentials
syn keyword sshconfigKeyword GSSAPIKeyExchange
syn keyword sshconfigKeyword GSSAPIRenewalForcesRekey
syn keyword sshconfigKeyword GSSAPIServerIdentity
syn keyword sshconfigKeyword GSSAPITrustDNS
syn keyword sshconfigKeyword GSSAPITrustDns
syn keyword sshconfigKeyword GatewayPorts
2010-01-06 20:54:52 +01:00
syn keyword sshconfigKeyword GlobalKnownHostsFile
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword HashKnownHosts
syn keyword sshconfigKeyword HostKeyAlgorithms
syn keyword sshconfigKeyword HostKeyAlias
syn keyword sshconfigKeyword HostName
syn keyword sshconfigKeyword HostbasedAuthentication
2015-12-29 19:10:25 +01:00
syn keyword sshconfigKeyword HostbasedKeyTypes
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword IPQoS
syn keyword sshconfigKeyword IdentitiesOnly
syn keyword sshconfigKeyword IdentityFile
2016-01-15 20:57:49 +01:00
syn keyword sshconfigKeyword IgnoreUnknown
syn keyword sshconfigKeyword IPQoS
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword KbdInteractiveAuthentication
syn keyword sshconfigKeyword KbdInteractiveDevices
syn keyword sshconfigKeyword KexAlgorithms
syn keyword sshconfigKeyword LocalCommand
syn keyword sshconfigKeyword LocalForward
syn keyword sshconfigKeyword LogLevel
2010-01-06 20:54:52 +01:00
syn keyword sshconfigKeyword MACs
2015-12-29 19:10:25 +01:00
syn keyword sshconfigKeyword Match
2010-01-06 20:54:52 +01:00
syn keyword sshconfigKeyword NoHostAuthenticationForLocalhost
syn keyword sshconfigKeyword NumberOfPasswordPrompts
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword PKCS11Provider
syn keyword sshconfigKeyword PasswordAuthentication
2010-01-06 20:54:52 +01:00
syn keyword sshconfigKeyword PermitLocalCommand
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword Port
syn keyword sshconfigKeyword PreferredAuthentications
syn keyword sshconfigKeyword Protocol
syn keyword sshconfigKeyword ProxyCommand
2015-12-29 19:10:25 +01:00
syn keyword sshconfigKeyword ProxyUseFDPass
syn keyword sshconfigKeyword PubkeyAcceptedKeyTypes
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword PubkeyAuthentication
syn keyword sshconfigKeyword RSAAuthentication
syn keyword sshconfigKeyword RekeyLimit
syn keyword sshconfigKeyword RemoteForward
syn keyword sshconfigKeyword RequestTTY
2010-01-06 20:54:52 +01:00
syn keyword sshconfigKeyword RhostsRSAAuthentication
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword SendEnv
syn keyword sshconfigKeyword ServerAliveCountMax
syn keyword sshconfigKeyword ServerAliveInterval
syn keyword sshconfigKeyword SmartcardDevice
syn keyword sshconfigKeyword StrictHostKeyChecking
syn keyword sshconfigKeyword TCPKeepAlive
syn keyword sshconfigKeyword Tunnel
syn keyword sshconfigKeyword TunnelDevice
syn keyword sshconfigKeyword UseBlacklistedKeys
syn keyword sshconfigKeyword UsePrivilegedPort
syn keyword sshconfigKeyword User
2010-01-06 20:54:52 +01:00
syn keyword sshconfigKeyword UserKnownHostsFile
2016-01-15 20:57:49 +01:00
syn keyword sshconfigKeyword UseRoaming
2011-12-14 21:17:39 +01:00
syn keyword sshconfigKeyword VerifyHostKeyDNS
syn keyword sshconfigKeyword VisualHostKey
2010-01-06 20:54:52 +01:00
syn keyword sshconfigKeyword XAuthLocation
2004-06-13 20:20:40 +00:00
" Define the default highlighting
if version >= 508 || !exists("did_sshconfig_syntax_inits")
2010-01-06 20:54:52 +01:00
if version < 508
let did_sshconfig_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
2004-06-13 20:20:40 +00:00
2010-01-06 20:54:52 +01:00
HiLink sshconfigComment Comment
HiLink sshconfigTodo Todo
HiLink sshconfigHostPort sshconfigConstant
HiLink sshconfigNumber sshconfigConstant
HiLink sshconfigConstant Constant
HiLink sshconfigYesNo sshconfigEnum
HiLink sshconfigCipher sshconfigEnum
2011-12-14 21:17:39 +01:00
HiLink sshconfigCiphers sshconfigEnum
2010-01-06 20:54:52 +01:00
HiLink sshconfigMAC sshconfigEnum
2016-03-04 22:22:32 +01:00
HiLink sshconfigHostKeyAlgo sshconfigEnum
2010-01-06 20:54:52 +01:00
HiLink sshconfigLogLevel sshconfigEnum
HiLink sshconfigSysLogFacility sshconfigEnum
2011-12-14 21:17:39 +01:00
HiLink sshconfigAddressFamily sshconfigEnum
HiLink sshconfigIPQoS sshconfigEnum
HiLink sshconfigKbdInteractive sshconfigEnum
HiLink sshconfigKexAlgo sshconfigEnum
HiLink sshconfigTunnel sshconfigEnum
2010-01-06 20:54:52 +01:00
HiLink sshconfigPreferredAuth sshconfigEnum
HiLink sshconfigVar sshconfigEnum
HiLink sshconfigEnum Identifier
HiLink sshconfigSpecial Special
HiLink sshconfigKeyword Keyword
HiLink sshconfigHostSect Type
2015-12-29 19:10:25 +01:00
HiLink sshconfigMatch Type
2010-01-06 20:54:52 +01:00
delcommand HiLink
2004-06-13 20:20:40 +00:00
endif
let b:current_syntax = "sshconfig"
2011-12-14 21:17:39 +01:00
" vim:set ts=8 sw=2 sts=2: