github-linguist 7.17.0 → 7.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/annotation.liquidhaskell.haskell.json +1 -1
  3. data/grammars/hint.haskell.json +1 -1
  4. data/grammars/hint.message.haskell.json +1 -1
  5. data/grammars/hint.type.haskell.json +1 -1
  6. data/grammars/source.clarion.json +1 -1
  7. data/grammars/source.dart.json +1 -1
  8. data/grammars/source.ditroff.json +1 -1
  9. data/grammars/source.earthfile.json +1 -0
  10. data/grammars/source.fsharp.json +1 -1
  11. data/grammars/source.futhark.json +1 -1
  12. data/grammars/source.gcode.json +1 -1
  13. data/grammars/source.goldgrm.json +1 -0
  14. data/grammars/source.hack.json +1 -1
  15. data/grammars/source.haskell.json +1 -1
  16. data/grammars/source.hsig.json +1 -1
  17. data/grammars/source.json.json +1 -1
  18. data/grammars/source.julia.json +1 -1
  19. data/grammars/source.kotlin.json +1 -1
  20. data/grammars/source.m2.json +1 -1
  21. data/grammars/source.matlab.json +1 -1
  22. data/grammars/source.mo.json +1 -0
  23. data/grammars/source.opts.json +1 -1
  24. data/grammars/source.pic.json +1 -1
  25. data/grammars/source.postscript.json +1 -1
  26. data/grammars/source.promela.json +1 -0
  27. data/grammars/source.q_output.json +1 -1
  28. data/grammars/source.scala.json +1 -1
  29. data/grammars/source.ssh-config.json +1 -1
  30. data/grammars/source.wsd.json +1 -1
  31. data/grammars/text.html.php.json +1 -1
  32. data/grammars/text.roff.json +1 -1
  33. data/grammars/text.tex.latex.haskell.json +1 -1
  34. data/grammars/version +1 -1
  35. data/lib/linguist/VERSION +1 -1
  36. data/lib/linguist/generated.rb +19 -13
  37. data/lib/linguist/languages.json +1 -1
  38. data/lib/linguist/languages.yml +45 -0
  39. data/lib/linguist/linguist.so +0 -0
  40. data/lib/linguist/samples.json +1 -1
  41. metadata +11 -8
  42. data/lib/linguist/linguist.bundle +0 -0
@@ -1 +1 @@
1
- {"name":"SSH Config","scopeName":"source.ssh-config","patterns":[{"include":"#main"}],"repository":{"boolean":{"name":"constant.language.logical.boolean.${1:/downcase}.ssh-config","match":"(?i)(?\u003c=\\s|=)(yes|no|true|false|on|off)(?=\\s|$)"},"comment":{"name":"comment.line.number-sign.ssh-config","begin":"^\\s*(#)","end":"$","beginCaptures":{"1":{"name":"punctuation.definition.comment.ssh-config"}}},"equals":{"match":"\\G\\s*(=)","captures":{"1":{"patterns":[{"include":"etc#eql"}]}}},"main":{"patterns":[{"include":"#comment"},{"include":"#option"}]},"option":{"name":"meta.option.ssh-config","contentName":"meta.arguments.ssh-option","begin":"^\\s*(?!#)([^\\s=]+)","end":"$","patterns":[{"include":"#comment"},{"include":"#equals"},{"include":"#string"},{"include":"#boolean"},{"include":"etc#ip"},{"include":"etc#int"},{"include":"#unquoted"}],"beginCaptures":{"1":{"name":"entity.option.name.ssh-config"}}},"string":{"name":"string.quoted.double.parameter.ssh-config","begin":"\"","end":"\"|(?=$)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ssh-config"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.ssh-config"}}},"unquoted":{"name":"variable.parameter.argument.ssh-config","match":"(?!\")\\S+"}}}
1
+ {"name":"SSH Config","scopeName":"source.ssh-config","patterns":[{"include":"#main"}],"repository":{"addr":{"patterns":[{"name":"constant.other.ip-address.ipv4.ssh-config","match":"(?:\\G|^)[*?\\d]+(?:\\.[*?\\d]+){3}","captures":{"0":{"patterns":[{"include":"#wildcard"}]}}},{"match":"(?xi) (\\[)\n( (?:[0-9A-F]{1,4}:){7}[0-9A-F]{1,4}\n| (?:[0-9A-F]{1,4}:){1,7}:\n| (?:[0-9A-F]{1,4}:){1,6}:[0-9A-F]{1,4}\n| (?:[0-9A-F]{1,4}:){1,5}(?::[0-9A-F]{1,4}){1,2}\n| (?:[0-9A-F]{1,4}:){1,4}(?::[0-9A-F]{1,4}){1,3}\n| (?:[0-9A-F]{1,4}:){1,3}(?::[0-9A-F]{1,4}){1,4}\n| (?:[0-9A-F]{1,4}:){1,2}(?::[0-9A-F]{1,4}){1,5}\n| [0-9A-F]{1,4}:(?::[0-9A-F]{1,4}){1,6}\n| :(?:(?::[0-9A-F]{1,4}){1,7}|:)\n| FE80:(?::[0-9A-F]{0,4}){0,4}%[0-9A-Z]+\n| ::(?:FFFF(?::0{1,4})?:)?(?:(?:25[0-5]|(?:2[0-4]|1?[0-9])?[0-9])\\.){3}(?:25[0-5]|(?:2[0-4]|1?[0-9])?[0-9])\n| (?:[0-9A-F]{1,4}:){1,4}:(?:(?:25[0-5]|(?:2[0-4]|1?[0-9])?[0-9])\\.){3}(?:25[0-5]|(?:2[0-4]|1?[0-9])?[0-9])\n) (\\])","captures":{"1":{"name":"punctuation.definition.ip-address.begin.ssh-config"},"2":{"name":"constant.other.ip-address.ipv6.ssh-config"},"3":{"name":"punctuation.definition.ip-address.end.ssh-config"}}},{"name":"string.unquoted.hostname.ssh-config","begin":"\\G|^","end":"$","patterns":[{"include":"#wildcard"}]}]},"any":{"name":"constant.language.any.ssh-config","match":"\\Gany(?=\\s*(?:$|#))"},"boolean":{"match":"(?:\\G|^|(?\u003c=\\s|=))(?i:(yes|on)|(no|off))(?=$|\\s|#)","captures":{"1":{"name":"constant.language.boolean.true.ssh-config"},"2":{"name":"constant.language.boolean.false.ssh-config"}}},"comma":{"name":"punctuation.separator.delimiter.comma.ssh-config","match":","},"comment":{"name":"comment.line.number-sign.ssh-config","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.ssh-config"}}},"field":{"patterns":[{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?xi) ^[ \\t]*\n( AFSTokenPassing\n| AllowAgentForwarding\n| BatchMode\n| CanonicalizeFallbackLocal\n| CheckHostIP\n| ClearAllForwardings\n| DisableForwarding\n| EnableSSHKeysign\n| ExitOnForwardFailure\n| ExposeAuthInfo\n| FallbackToRSH\n| ForkAfterAuthentication\n| ForwardX11\n| ForwardX11Trusted\n| GSSAPIAuthentication\n| GSSAPICleanupCredentials\n| GSSAPIDelegateCredentials\n| GSSAPIStrictAcceptorCheck\n| GSSAPITrustDNS\n| HashKnownHosts\n| HostbasedAuthentication\n| HostbasedUsesNameFromPacketOnly\n| IdentitiesOnly\n| IgnoreUserKnownHosts\n| KbdInteractiveAuthentication\n| KeepAlive\n| ChallengeResponseAuthentication\n| KerberosAuthentication\n| KerberosGetAFSToken\n| KerberosOrLocalPasswd\n| KerberosTicketCleanup\n| KerberosTGTPassing\n| NoHostAuthenticationForLocalhost\n| PasswordAuthentication\n| PermitEmptyPasswords\n| PermitLocalCommand\n| PermitTTY\n| PermitUserRC\n| PrintLastLog\n| PrintMotd\n| ProxyUseFdpass\n| PubkeyAuthentication\n| DSAAuthentication\n| RHostsAuthentication\n| RHostsRSAAuthentication\n| RSAAuthentication\n| SKeyAuthentication\n| StdinNull\n| StreamLocalBindUnlink\n| StrictModes\n| TCPKeepAlive\n| TISAuthentication\n| UseDNS\n| UseRSH\n| UseKeychain\n| UsePrivilegedPort\n| UseRoaming\n| VisualHostKey\n| X11Forwarding\n| X11UseLocalhost\n) (?:\\s*(=)|(?=$|\\s))[ \\t]* ","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#boolean"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?xi) ^[ \\t]*\n( CanonicalizeMaxDots\n| ClientAliveCountMax\n| CompressionLevel\n| ConnectionAttempts\n| MaxAuthTries\n| MaxSessions\n| NumberOfPasswordPrompts\n| Port\n| ServerAliveCountMax\n| X11DisplayOffset\n) (?:\\s*(=)|(?=$|\\s))[ \\t]* ","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#integer"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?xi) ^[ \\t]*\n( AllowGroups\n| AllowUsers\n| CASignatureAlgorithms\n| Ciphers?\n| DenyGroups\n| DenyUsers\n| FingerprintHash\n| HostKeyAlgorithms\n| HostbasedAcceptedAlgorithms\n| HostbasedAcceptedKeyTypes\n| HostbasedKeyTypes\n| KbdInteractiveDevices\n| KexAlgorithms\n| MACs\n| PreferredAuthentications\n| Protocol\n| PubkeyAcceptedAlgorithms\n| PubkeyAcceptedKeyTypes\n) (?:\\s*(=)|(?=$|\\s))[ \\t]* ","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#identifierList"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(IgnoreUnknown)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#patternList"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?xi) ^[ \\t]*\n( AuthorizedKeysCommandUser\n| AuthorizedKeysFile\n| AuthorizedPrincipalsCommandUser\n| AuthorizedPrincipalsFile\n| Banner\n| BindAddress\n| BindInterface\n| CanonicalDomains\n| CertificateFile\n| ChrootDirectory\n| ControlPath\n| GlobalKnownHostsFile2?\n| HostCertificate\n| HostKeyAlias\n| Hostname\n| HostKey\n| IdentityFile2?\n| Include\n| ModuliFile\n| PKCS11Provider\n| PidFile\n| RDomain\n| RevokedHostKeys\n| RevokedKeys\n| SmartCardDevice\n| TrustedUserCAKeys\n| UserKnownHostsFile2?\n| User\n| XAuthLocation\n) (?:\\s*(=)|(?=$|\\s))[ \\t]* ","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#none"},{"include":"#stringList"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?xi) ^[ \\t]*\n( ClientAliveInterval\n| ConnectTimeout\n| ControlPersist\n| ForwardX11Timeout\n| LoginGraceTime\n| ServerAliveInterval\n) (?:\\s*(=)|(?=$|\\s))[ \\t]* ","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#boolean"},{"include":"#time"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","match":"(?x) ^[ \\t]*\n(?i:\n\t( AuthorizedKeysCommand\n\t| AuthorizedPrincipalsCommand\n\t| ForceCommand\n\t| KnownHostsCommand\n\t| LocalCommand\n\t| ProxyCommand\n\t| RemoteCommand\n\t) (?:\\s*(=))?\n\t|\n\t(Subsystem)\n\t(?:\\s*(=))?\n\t(?:\\s+([^\\s\\#]+))?\n) (?=$|\\s) [ \\t]*\n( (none)\n| ([^\\s\\#][^\\#]*)\n)? (?=\\s*(?:$|\\#)) ","captures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"},"3":{"name":"keyword.operator.field-name.ssh-config"},"4":{"name":"keyword.operator.assignment.ssh-config"},"5":{"name":"entity.name.subsystem.ssh-config"},"6":{"name":"meta.arguments.ssh-config"},"7":{"name":"constant.language.none.ssh-config"},"8":{"name":"source.embedded.shell.ssh-config","patterns":[{"include":"source.shell"}]}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*((?:Accept|Send)Env)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"match":"(-)?(?!\\d)([*?\\w]+)","captures":{"1":{"name":"keyword.operator.logical.negate.not.ssh-config"},"2":{"name":"variable.environment.ssh-config","patterns":[{"include":"#wildcard"}]}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(AddKeysToAgent)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.ask.ssh-config","match":"\\Gask(?=\\s|$|#)"},{"include":"#boolean"},{"include":"#time"},{"match":"\\G(confirm)(\\s+(?:\\d+(?:[SMHDWsmhdw]|\\b))++)?(?=\\s*(?:$|#))","captures":{"1":{"name":"constant.language.ask.ssh-config"},"2":{"patterns":[{"include":"#time"}]}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(AddressFamily)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.address-family.${1:/downcase}.ssh-config","match":"\\G(inet6?)(?=\\s|$|#)"},{"include":"#any"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(Allow(?:StreamLocalForwarding|TcpForwarding))(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.$1.ssh-config","match":"\\G(all|local|remote)(?=\\s|$|#)"},{"include":"#boolean"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(AuthenticationMethods)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#any"},{"include":"#identifierList"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(CanonicalizeHostname)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.$1.ssh-config","match":"\\G(always)(?=\\s*(?:$|#))"},{"include":"#boolean"},{"include":"#none"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(CanonicalizePermittedCNAMEs)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"match":"\\G([^#:]*)(:)([^\\r\\n#:]*)(?=[ \\t]*(?:$|#))","captures":{"1":{"name":"meta.source-domains.ssh-config","patterns":[{"include":"#patternListInline"}]},"2":{"name":"punctuation.separator.ssh-config"},"3":{"name":"meta.target-domains.ssh-config","patterns":[{"include":"#patternListInline"}]}}},{"include":"#none"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(Compression)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.boolean.true.ssh-config","match":"\\G(delayed)(?=\\s|$|#)"},{"include":"#boolean"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(ControlMaster)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#boolean"},{"name":"constant.language.$1.ssh-config","match":"\\G(ask|auto|autoask)(?=\\s*(?:$|#))"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(EscapeChar)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#none"},{"name":"constant.character.escape.caret-notation.ssh-config","match":"\\G(\\^)[A-Za-z]","captures":{"1":{"name":"punctuation.definition.escape.ssh-config"}}},{"match":"\\G([^\\s#])[ \\t]*([^\\s#]*)","captures":{"1":{"name":"constant.character.literal.ssh-config"},"3":{"name":"invalid.illegal.unexpected-characters.ssh-config"}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(ForwardAgent|SecurityKeyProvider)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#boolean"},{"include":"#variableName"},{"include":"#stringList"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(GatewayPorts)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.$1.ssh-config","match":"\\G(clientspecified)(?=\\s*(?:$|#))"},{"include":"#boolean"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(IPQoS)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#none"},{"include":"#integer"},{"include":"#identifierList"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(IdentityAgent|HostKeyAgent)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#none"},{"name":"variable.environment.ssh-config","match":"\\G(SSH_AUTH_SOCK)(?=\\s*(?:$|#))"},{"include":"#variableName"},{"include":"#stringList"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(IgnoreRhosts)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#boolean"},{"name":"constant.language.shosts-only.ssh-config","match":"\\Gshosts-only(?=\\s*(?:$|#))"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(ListenAddress)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#port"},{"match":"\\G[^\\s#:]+(?=\\s*(?:$|#|\\s+rdomain\\s))","captures":{"0":{"patterns":[{"include":"#stringList"}]}}},{"begin":"(?!\\G)[ \\t]+(rdomain)[ \\t]+(?=[^\\s#])","end":"(?=\\s*(?:$|#))","patterns":[{"include":"#stringList"}],"beginCaptures":{"1":{"name":"storage.type.rdomain.ssh-config"}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(DynamicForward|LocalForward|RemoteForward)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#port"},{"include":"#stringList"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(LogLevel)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.loglevel.ssh-config","match":"\\G(QUIET|FATAL|ERROR|INFO|VERBOSE|DEBUG[1-3]?)(?=\\s*(?:$|#))"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(LogVerbose)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"meta.log-spec.ssh-config","match":"(?:\\G|(?\u003c=,))([^\\s:#,]+)(:)([^\\s:#,]+)(?:(:)([*?\\d]+)|(?=\\s|#|$))","captures":{"1":{"name":"string.unquoted.source-file.ssh-config","patterns":[{"include":"#wildcard"}]},"2":{"name":"punctuation.separator.ssh-config"},"3":{"name":"entity.name.function.ssh-config","patterns":[{"include":"#wildcard"}]},"4":{"name":"punctuation.separator.ssh-config"},"5":{"name":"constant.numeric.integer.decimal.line-number.ssh-config","patterns":[{"include":"#wildcard"}]}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(MaxStartups)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"match":"\\G(\\d*)(:)(\\d*)(:)(\\d*)","captures":{"1":{"name":"meta.start-limit.ssh-config","patterns":[{"include":"#integer"}]},"2":{"name":"punctuation.separator.ssh-config"},"3":{"name":"meta.rate-limit.ssh-config","patterns":[{"include":"#integer"}]},"4":{"name":"punctuation.separator.ssh-config"},"5":{"name":"meta.full-limit.ssh-config","patterns":[{"include":"#integer"}]}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(PerSourceMaxStartups)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#none"},{"include":"#integer"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(PerSourceNetBlockSize)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"match":"\\G(\\d+)(?:(:)(\\d*))?","captures":{"1":{"patterns":[{"include":"#integer"}]},"2":{"name":"punctuation.separator.ssh-config"},"3":{"patterns":[{"include":"#integer"}]}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(PermitListen|PermitOpen|PermitRemoteOpen)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#any"},{"include":"#none"},{"include":"#port"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(PermitRootLogin)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.$1.ssh-config","match":"\\G(prohibit-password|forced-commands-only|without-password)(?=\\s*(?:$|#))"},{"include":"#boolean"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(PermitTunnel|Tunnel)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.$1.ssh-config","match":"\\G(ethernet|point-to-point)(?=\\s*(?:$|#))"},{"include":"#boolean"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(PermitUserEnvironment)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#boolean"},{"include":"#patternList"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(ProxyJump)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.other.reference.link.underline.ssh.url.ssh-config","match":"ssh:[^\\s#,]+"},{"match":"(([^\\s\\#@:,]+)(@))?([^\\s\\#@:,]+(?::\\d+)?)","captures":{"1":{"name":"meta.authority.ssh-config"},"2":{"name":"string.unquoted.username.ssh-config"},"3":{"name":"meta.separator.punctuation.ssh-config"},"4":{"patterns":[{"include":"#port"}]}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(PubkeyAuthOptions)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.$1.ssh-config","match":"\\G(none|touch-required|verify-required)(?=\\s*(?:$|#))"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(RekeyLimit)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"match":"\\G((\\d+([KMG]?))|(default)|(none))(?:\\s+(((?:\\d+(?:[SMHDWsmhdw]|\\b))++)|(default)|(none)))?(?=\\s*(?:$|#))","captures":{"1":{"name":"meta.max-bytes.ssh-config"},"2":{"name":"constant.numeric.integer.decimal.filesize.ssh-config"},"3":{"name":"keyword.other.unit.filesize.ssh-config"},"4":{"name":"constant.language.default.ssh-config"},"5":{"patterns":[{"include":"#none"}]},"6":{"name":"meta.timeout.ssh-config"},"7":{"patterns":[{"include":"#time"}]},"8":{"name":"constant.language.default.ssh-config"},"9":{"name":"constant.language.none.ssh-config"}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(RequestTTY)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#boolean"},{"name":"constant.language.$1.ssh-config","match":"\\G(auto|force)(?=\\s*(?:$|#))"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(SessionType)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.$1.ssh-config","match":"\\G(none|default|subsystem)(?=\\s*(?:$|#))"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(SetEnv)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"meta.assignment.ssh-config","begin":"((?!\\d)[*?\\w]+)(=)","end":"(?=\\s|$|#)","patterns":[{"name":"string.unquoted.ssh-config","match":"\\G[^#\\s\"]+"},{"name":"string.quoted.double.ssh-config","begin":"\\G\"","end":"\"|(?=$)","patterns":[{"include":"#wildcard"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ssh-config"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.ssh-config"}}}],"beginCaptures":{"1":{"name":"variable.environment.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(StreamLocalBindMask)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.numeric.integer.octal.ssh-config","match":"\\G([0-7]+)(?=$|\\s|$)"},{"name":"invalid.illegal.bad-character.ssh-config","match":"\\G[^\\s0-7#]+"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(StrictHostKeyChecking)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#boolean"},{"name":"constant.language.$1.ssh-config","match":"\\G(ask|accept-new)(?=\\s*(?:$|#))"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(SyslogFacility)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.language.syslogfacility.ssh-config","match":"\\G(DAEMON|USER|AUTH|LOCAL[0-7])(?=\\s*(?:$|#))"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(TunnelDevice)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"match":"\\G((\\d+)|(any))(:)((\\d+)|(any))(?=\\s*(?:$|#))","captures":{"1":{"name":"meta.local-tunnel.ssh-config"},"2":{"patterns":[{"include":"#integer"}]},"3":{"name":"constant.language.any.ssh-config"},"4":{"name":"punctuation.separator.ssh-config"},"5":{"name":"meta.remote-tunnel.ssh-config"},"6":{"patterns":[{"include":"#integer"}]},"7":{"name":"constant.language.any.ssh-config"},"8":{"name":"punctuation.separator.ssh-config"}}}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(UpdateHostKeys|VerifyHostKeyDNS)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#boolean"},{"name":"constant.language.ask.ssh-config","match":"\\Gask(?=\\s*(?:$|#))"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.field.${1:/downcase}.ssh-config","contentName":"meta.arguments.ssh-config","begin":"(?i)^[ \\t]*(VersionAddendum)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"string.unquoted.herestring.ssh-config","begin":"\\G(?!none\\s*(?:$|#))(?=[^\\s#])","end":"(?=\\s*(?:$|#))"},{"include":"#none"}],"beginCaptures":{"1":{"name":"keyword.operator.field-name.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}}]},"identifierList":{"match":"(?:^|\\G|(?\u003c=\\s))([-+^])?([^\\s,]+(?:,[^\\s,]+)*+)","captures":{"1":{"name":"keyword.operator.combinator.ssh-config"},"2":{"patterns":[{"name":"constant.other.identifier.ssh-config","match":"[^\\s,]+","captures":{"0":{"patterns":[{"include":"#wildcard"}]}}},{"include":"#comma"}]}}},"integer":{"name":"constant.numeric.integer.decimal.ssh-config","match":"-?[0-9]+"},"main":{"patterns":[{"include":"#comment"},{"include":"#scope"},{"include":"#field"}]},"none":{"name":"constant.language.none.ssh-config","match":"\\G(none)(?=\\s*(?:$|#))"},"patternList":{"name":"meta.pattern-list.ssh-config","begin":"\\G","end":"(?=[ \\t]*(?:$|#))","patterns":[{"name":"constant.other.pattern.ssh-config","match":"(!)?([^,\\s#]+)","captures":{"1":{"name":"keyword.operator.logical.not.negation.ssh-config"},"2":{"patterns":[{"include":"#wildcard"}]}}},{"include":"#comma"}]},"patternListInline":{"begin":"(?:^|\\G)","end":"(?=[ \\t]*(?:$|#))","patterns":[{"include":"#patternList"}]},"port":{"match":"(?:\\G|^|(?\u003c=[ \\t]))(?:(\\[[^\\]]+\\]|[^\\s:]*)(:))?([?*\\d]+)(?=\\s*(?:$|#)|\\s+(?:(?:[^\\s:#]+:)?\\d+|rdomain[ \\t]))","captures":{"1":{"patterns":[{"include":"#addr"}]},"2":{"name":"punctuation.separator.ssh-config"},"3":{"name":"constant.numeric.integer.decimal.port-number.ssh-config","patterns":[{"include":"#wildcard"}]}}},"scope":{"patterns":[{"name":"meta.scope.${1:/downcase}.empty.ssh-config","match":"(?i)(?:^|\\G)[ \\t]*(Host|Match)(?:\\s*(=))?(?=[ \\t]*(?:$|#))","captures":{"1":{"name":"keyword.control.host.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.scope.host.ssh-config","begin":"(?i)(?:^|\\G)[ \\t]*(Host)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?i)(?!\\G)(?=^[ \\t]*(?:Host|Match)(?:$|\\s|=))","patterns":[{"include":"#patternList"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.host.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}},{"name":"meta.scope.match.ssh-config","begin":"(?i)(?:^|\\G)[ \\t]*(Match)(?:\\s*(=)|(?=$|\\s))[ \\t]*","end":"(?i)(?!\\G)(?=^[ \\t]*(?:Host|Match)(?:$|\\s|=))","patterns":[{"name":"constant.language.match-criteria.ssh-config","match":"\\GAll(?=\\s*(?:$|#))"},{"name":"meta.${1:/downcase}-match.ssh-config","contentName":"meta.arguments.ssh-config","begin":"\\G(?:(Address|Group|Host|LocalAddress|LocalPort|RDomain|User)(?=$|\\s|#))?[ \\t]*","end":"(?=\\s*(?:$|#))","patterns":[{"include":"#patternList"}],"beginCaptures":{"1":{"name":"constant.language.match-criteria.ssh-config"}}},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.match.ssh-config"},"2":{"name":"keyword.operator.assignment.ssh-config"}}}]},"stringList":{"patterns":[{"name":"string.quoted.double.ssh-config","begin":"\"","end":"\"|(?=$)","patterns":[{"include":"#wildcard"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ssh-config"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.ssh-config"}}},{"name":"string.unquoted.ssh-config","match":"[^\"\\s#]+","patterns":[{"include":"#wildcard"}]}]},"time":{"name":"constant.other.time.interval.ssh-config","match":"(?:\\d+(?:[SMHDWsmhdw]|\\b))++","captures":{"0":{"patterns":[{"name":"keyword.other.unit.time.ssh-config","match":"\\D"}]}}},"token":{"name":"constant.other.placeholder.token.ssh-config","match":"(%)[%CDdFfHhIiKkLlnprsTtUu]","captures":{"1":{"name":"punctuation.definition.token.ssh-config"}}},"variableName":{"name":"variable.environment.ssh-config","match":"\\G(\\$)(?!\\d)\\w+","captures":{"1":{"name":"punctuation.definition.variable.ssh-config"}}},"wildcard":{"name":"keyword.operator.wildcard.pattern.ssh-config","match":"[?*]"}},"injections":{"L:meta.field.hostname.ssh-config":{"patterns":[{"name":"constant.other.placeholder.token.ssh-config","match":"(%)[%h]","captures":{"1":{"name":"punctuation.definition.token.ssh-config"}}}]},"L:meta.field.knownhostscommand.ssh-config":{"patterns":[{"name":"constant.other.placeholder.token.ssh-config","match":"(%)[%CHIKLdfhiklnprtu]","captures":{"1":{"name":"punctuation.definition.token.ssh-config"}}}]},"L:meta.field.localcommand.ssh-config":{"patterns":[{"name":"constant.other.placeholder.token.ssh-config","match":"(%)[CDdFfHhIiKkLlnprsTtUu]","captures":{"1":{"name":"punctuation.definition.token.ssh-config"}}}]},"L:meta.field.proxycommand.ssh-config":{"patterns":[{"name":"constant.other.placeholder.token.ssh-config","match":"(%)[%hnpr]","captures":{"1":{"name":"punctuation.definition.token.ssh-config"}}}]},"L:meta.scope.match.ssh-config meta.pattern-list, L:meta.field.certificatefile.ssh-config, L:meta.field.controlpath.ssh-config, L:meta.field.identityagent.ssh-config, L:meta.field.identityfile.ssh-config, L:meta.field.localforward.ssh-config, L:meta.field.remotecommand.ssh-config, L:meta.field.remoteforward.ssh-config, L:meta.field.userknownhostsfile.ssh-config":{"patterns":[{"name":"constant.other.placeholder.token.ssh-config","match":"(%)[%CLdhiklnpru]","captures":{"1":{"name":"punctuation.definition.token.ssh-config"}}}]}}}
@@ -1 +1 @@
1
- {"name":"Diagram","scopeName":"source.wsd","patterns":[{"name":"diagram.source.wsd","begin":"(?i)^\\s*(@start[a-z]+)((\\s+)(.+?))?\\s*$","end":"(?i)^\\s*(@end[a-z]+)\\s*$","patterns":[{"include":"#Quoted"},{"include":"#Comment"},{"include":"#Style"},{"include":"#Class"},{"include":"#Object"},{"include":"#Activity"},{"include":"#Sequence"},{"include":"#State"},{"include":"#Keywords"},{"include":"#General"}],"beginCaptures":{"1":{"name":"keyword.control.diagram.source.wsd"},"5":{"name":"entity.name.function.diagram.source.wsd"}},"endCaptures":{"1":{"name":"keyword.control.diagram.source.wsd"}}},{"include":"#Quoted"},{"include":"#Comment"},{"include":"#Style"},{"include":"#Class"},{"include":"#Object"},{"include":"#Activity"},{"include":"#Sequence"},{"include":"#State"},{"include":"#Keywords"},{"include":"#General"}],"repository":{"Activity":{"patterns":[{"match":"(?i)^\\s*(else *if|if)\\s?\\((.+?)\\)\\s?(then)(\\s?\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.if.source.wsd"},"2":{"name":"string.quoted.double.activity.if.source.wsd"},"3":{"name":"keyword.other.activity.if.source.wsd"},"5":{"name":"meta.comment.activity.if.source.wsd"}}},{"match":"(?i)^\\s*(else)(\\s?\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.else.source.wsd"},"3":{"name":"meta.comment.activity.else.source.wsd"}}},{"match":"(?i)^\\s*(repeat\\s+)?(while)\\s*\\((.+?)\\)(\\s*(is)(\\s*\\((.+?)\\))?)?\\s*$","captures":{"1":{"name":"keyword.other.activity.while.source.wsd"},"2":{"name":"keyword.other.activity.while.source.wsd"},"3":{"name":"string.quoted.double.activity.while.source.wsd"},"5":{"name":"keyword.other.activity.while.source.wsd"},"7":{"name":"meta.comment.activity.while.source.wsd"}}},{"match":"(?i)^\\s*(end)\\s?(while)(\\s*\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.endwhile.source.wsd"},"2":{"name":"keyword.other.activity.endwhile.source.wsd"},"4":{"name":"meta.comment.activity.endwhile.source.wsd"}}}]},"Class":{"patterns":[{"begin":"(?i)^\\s*(enum|abstract\\s+class|abstract|class)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?(\\s+(as)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?)?(\\s+#(([\\w\\|\\\\\\/\\-]+)))?\\s*\\{\\s*$","end":"^\\s*(?\u003c!\\\\)\\}\\s*$","patterns":[{"match":"(?i)^\\s*([.=_-]{2,})\\s*((.+?)\\s*([.=_-]{2,}))?","captures":{"1":{"name":"meta.comment.class.group.separator.source.wsd"},"3":{"name":"string.quoted.double.class.group.separator.source.wsd"},"4":{"name":"meta.comment.class.group.separator.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(([\\p{L}0-9_]+(\\[\\])?\\s+)?([\\p{L}0-9_]+)(\\(\\))|([\\p{L}0-9_]+)(\\(\\))\\s*:\\s*([\\p{L}0-9_]+)?)\\s*$","captures":{"1":{"name":"storage.modifier.class.function.source.wsd"},"11":{"name":"support.type.class.function.source.wsd"},"3":{"name":"keyword.other.class.function.source.wsd"},"5":{"name":"support.type.class.function.source.wsd"},"7":{"name":"support.variable.class.function.source.wsd"},"9":{"name":"support.variable.class.function.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(([\\p{L}0-9_]+(\\[\\])?\\s+)?([\\p{L}0-9_]+)|([\\p{L}0-9_]+)\\s*:\\s*(\\w+)?)\\s*$","captures":{"1":{"name":"storage.modifier.class.fields.source.wsd"},"3":{"name":"keyword.other.class.fields.source.wsd"},"5":{"name":"support.type.class.fields.source.wsd"},"7":{"name":"support.variable.class.fields.source.wsd"},"8":{"name":"support.variable.class.fields.source.wsd"},"9":{"name":"support.type.class.fields.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(.+?)\\s*$","captures":{"1":{"name":"storage.modifier.class.fields.source.wsd"},"3":{"name":"keyword.other.class.fields.source.wsd"},"4":{"name":"string.quoted.double.class.other.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.other.class.group.source.wsd"},"10":{"name":"constant.numeric.class.definition.source.wsd"},"2":{"name":"support.variable.class.group.source.wsd"},"4":{"name":"string.quoted.double.class.definition.source.wsd"},"6":{"name":"keyword.other.class.group.source.wsd"},"7":{"name":"support.variable.class.group.source.wsd"},"9":{"name":"string.quoted.double.class.definition.source.wsd"}}},{"match":"(?i)^\\s*(hide|show)\\s+(([\\w\\d_\\.]+|\"[^\"]+\")|\u003c\u003c.+?\u003e\u003e|Stereotypes|class|interface|enum)(\\s+(empty fields|empty methods|fields|attributes|methods|members|circle))?\\s*$","captures":{"1":{"name":"keyword.other.class.hideshow.source.wsd"},"2":{"name":"support.variable.class.hideshow.source.wsd"},"5":{"name":"constant.numeric.class.hideshow.source.wsd"}}}]},"Comment":{"patterns":[{"name":"comment.line.comment.source.wsd","begin":"(?i)^\\s*(')","end":"(?i)\\n"},{"name":"comment.block.source.wsd","begin":"(?i)\\s*(/')","end":"(?i)('/)\\s*"}]},"General":{"patterns":[{"begin":"(?i)^\\s*(title)\\s*$","end":"(?i)^\\s*\\b(end\\s+title)\\b","patterns":[{"match":"(?i)^\\s*(.+?)\\s*$","captures":{"1":{"name":"entity.name.function.title.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.other.title.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.title.source.wsd"}}},{"match":"(?i)^\\s*(title)\\s+(.+?)\\s*$","captures":{"1":{"name":"keyword.other.title.source.wsd"},"2":{"name":"entity.name.function.title.source.wsd"}}},{"name":"keyword.other.scale.source.wsd","match":"(?i)^\\s*(scale)\\s+((max)\\s+)?(\\d+(\\.?\\d+)?)\\s*((([\\*/])\\s*(\\d+\\.?(\\.?\\d+)?))|(width|height))?\\s*$","captures":{"1":{"name":"keyword.other.scale.source.wsd"},"11":{"name":"keyword.other.scale.source.wsd"},"3":{"name":"keyword.other.scale.source.wsd"},"4":{"name":"constant.numeric.scale.source.wsd"},"8":{"name":"keyword.operator.scale.source.wsd"},"9":{"name":"constant.numeric.scale.source.wsd"}}},{"match":"(?i)^\\s*(caption)\\s+(.+)\\s*$","captures":{"1":{"name":"keyword.other.note.source.wsd"},"2":{"name":"constant.numeric.caption.source.wsd"}}},{"match":"(?i)^\\s*(note\\s(left|right))\\s*:\\s*(.+)\\s*$","captures":{"1":{"name":"keyword.other.note.source.wsd"},"3":{"name":"meta.comment.note.source.wsd"}}},{"begin":"(?i)^\\s*(note\\s(left|right))\\s*$","end":"(?i)^\\s*(end\\s*note)","patterns":[{"name":"meta.comment.multiple.note.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.note.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.note.source.wsd"}}},{"match":"(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*:\\s*(.+)$","captures":{"1":{"name":"keyword.other.noteof.source.wsd"},"2":{"name":"constant.numeric.noteof.source.wsd"},"3":{"name":"keyword.other.noteof.source.wsd"},"4":{"name":"support.variable.noteof.source.wsd"},"5":{"name":"support.variable.noteof.source.wsd"},"6":{"name":"support.variable.noteof.source.wsd"},"7":{"name":"keyword.other.noteof.source.wsd"},"8":{"name":"constant.numeric.noteof.source.wsd"},"9":{"name":"meta.comment.noteof.source.wsd"}}},{"begin":"(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*$","end":"(?i)^\\s*(end\\s*[rh]?note)","patterns":[{"name":"meta.comment.multline.noteof.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.noteof.source.wsd"},"2":{"name":"constant.numeric.noteof.source.wsd"},"3":{"name":"keyword.other.noteof.source.wsd"},"4":{"name":"support.variable.noteof.source.wsd"},"5":{"name":"support.variable.noteof.source.wsd"},"6":{"name":"support.variable.noteof.source.wsd"},"7":{"name":"keyword.other.noteof.source.wsd"},"8":{"name":"constant.numeric.noteof.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.multline.noteof.source.wsd"}}},{"match":"(?i)^\\s*(note)\\s+(\".+?\")\\s+(as)\\s+([\\w\\d]+)\\s*$","captures":{"1":{"name":"keyword.other.noteas.source.wsd"},"2":{"name":"meta.comment.noteas.source.wsd"},"3":{"name":"keyword.other.noteas.source.wsd"},"4":{"name":"support.variable.noteas.source.wsd"}}},{"begin":"(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s*\\n","end":"(?i)^\\s*(end\\s?(header|legend|footer))","patterns":[{"name":"meta.comment.header_legend_footer.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"constant.numeric.header_legend_footer.source.wsd"},"2":{"name":"keyword.other.header_legend_footer.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.header_legend_footer.source.wsd"}}},{"match":"(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s+(.+?)\\s*$","captures":{"1":{"name":"constant.numeric.header_legend_footer.source.wsd"},"2":{"name":"keyword.other.header_legend_footer.source.wsd"},"3":{"name":"meta.comment.header_legend_footer.source.wsd"}}},{"name":"entity.name.function.preprocessings.source.wsd","match":"(?i)(!includesub|!include|!enddefinelong|!definelong|!define|!startsub|!endsub|!ifdef|!else|!endif|!ifndef|!if|!elseif|!endif|!while|!endwhile|!(unquoted\\s|final\\s)*procedure|!(unquoted\\s|final\\s)*function|!end\\s*(function|procedure)|!return|!import|!includedef|!includeurl|!include_many|!include_once|!log|!dump_memory|!theme)"},{"begin":"(?i)((?:(?:(?:\\s+[ox]|[+*])?(?:\u003c\u003c|\u003c\\|?|\\\\\\\\|\\\\|//|\\}|\\^|#|0|0\\))?)(?=[-.~=]))[-.~=]+(\\[(?:\\#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)(?:[-\\\\/](?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+))?\\b)\\])?(?:(left|right|up|down)(?:[-.~=]))?[-.]*(?:(?:\u003e\u003e|\\|?\u003e|\\\\\\\\|\\\\|//|\\{|\\^|#|0|\\(0)?(?:[ox]\\s+|[+*])?))","end":"$","patterns":[{"include":"#General"},{"match":"(?i):([^:]+):\\s*:(.+)$","captures":{"1":{"name":"support.variable.actor.link.source.wsd"},"2":{"name":"meta.comment.message.link.source.wsd"}}},{"match":"(?i):(.+)$","captures":{"1":{"name":"meta.comment.message.link.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.control.note.source.wsd"},"2":{"name":"constant.numeric.link.color.source.wsd"},"3":{"name":"constant.language.link.source.wsd"}}},{"name":"constant.numeric.colors.source.wsd","match":"(?i)#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)"},{"name":"support.variable.source.wsd","match":"\\b[\\w_]+"}]},"Keywords":{"patterns":[{"name":"keyword.other.linebegin.source.wsd","match":"(?i)^\\s*(usecase|actor|object|participant|boundary|control|entity|database|create|component|interface|package|node|folder|frame|cloud|annotation|enum|abstract\\s+class|abstract|class|state|autonumber(\\s+stop|resume)?|activate|deactivate|return|destroy|newpage|alt|else|opt|loop|par|break|critical|group|box|rectangle|namespace|partition|agent|artifact|card|circle|collections|file|hexagon|label|person|queue|stack|storage|mainframe|map|repeat|backward|diamond)\\b"},{"name":"keyword.other.wholeline.source.wsd","match":"(?i)^\\s*(split( again)?|endif|repeat|start|stop|end|end\\s+fork|end\\s+split|fork( again)?|detach|end\\s+box|top\\s+to\\s+bottom\\s+direction|left\\s+to\\s+right\\s+direction|kill|end\\s+merge)\\s*$"},{"name":"keyword.other.other.source.wsd","match":"(?i)\\b(as|{(static|abstract)\\})\\b"}]},"Object":{"patterns":[{"match":"(?i)^\\s*([\\w\\d_]+)\\s+:\\s+s*$","captures":{"1":{"name":"support.variable.object.addfields.source.wsd"},"2":{"name":"meta.comment.object.addfields.source.wsd"}}}]},"Quoted":{"patterns":[{"name":"support.variable.definitions.source.wsd","begin":"(?i)^\\s*(:)","end":"(?i)(:)|[\\];|\u003c\u003e/}]?\\s*$"},{"name":"string.quoted.double.source.wsd","begin":"\"","end":"\""}]},"Sequence":{"patterns":[{"match":"(?i)^\\s*(={2,})\\s*(.+?)\\s*(={2,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.divider.source.wsd"},"2":{"name":"string.quoted.double.sequence.divider.source.wsd"},"3":{"name":"keyword.operator.sequence.divider.source.wsd"}}},{"match":"(?i)^\\s*(\\.{3,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.omission.source.wsd"}}},{"match":"(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*:\\s*(.+)\\s*$","captures":{"1":{"name":"keyword.other.sequence.ref.source.wsd"},"2":{"name":"support.variable.sequence.ref.source.wsd"},"3":{"name":"meta.comment.sequence.ref.source.wsd"}}},{"begin":"(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*$","end":"(?i)end\\s+ref","patterns":[{"name":"meta.comment.sequence.ref.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.sequence.ref.source.wsd"},"2":{"name":"support.variable.sequence.ref.source.wsd"}},"endCaptures":{"0":{"name":"keyword.other.sequence.ref.source.wsd"}}},{"match":"(?i)^\\s*(\\.{3,})\\s*(.+)\\s*(\\.{3,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.delay.source.wsd"},"2":{"name":"meta.comment.sequence.delay.source.wsd"},"3":{"name":"keyword.operator.sequence.delay.source.wsd"}}},{"match":"(?i)(\\|{2,})(\\d+)?(\\|{1,})","captures":{"1":{"name":"keyword.operator.sequence.space.source.wsd"},"2":{"name":"constant.numeric.sequence.space.source.wsd"},"3":{"name":"keyword.operator.sequence.space.source.wsd"}}}]},"State":{"patterns":[{"match":"(?i)^\\s*(-{2,})\\s*$","captures":{"1":{"name":"keyword.other.state.concurrent.source.wsd"}}}]},"Style":{"patterns":[{"match":"(?i)^\\s*(skinparam)\\s+(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$","captures":{"1":{"name":"keyword.other.skinparam.source.wsd"},"2":{"name":"keyword.other.skinparam.keyword.source.wsd"},"3":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"4":{"name":"string.quoted.double.skinparam.value.source.wsd"}}},{"begin":"(?i)^\\s*(?:(skinparam)(?:\\s+(\\w+?)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)?|(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)\\s*\\{\\s*$","end":"^\\s*(?\u003c!\\\\)\\}\\s*$","patterns":[{"match":"(?i)^\\s*(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$","captures":{"1":{"name":"keyword.other.skinparam.keyword.source.wsd"},"2":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"3":{"name":"string.quoted.double.skinparam.value.source.wsd"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.skinparam.source.wsd"},"2":{"name":"keyword.other.skinparam.keyword.source.wsd"},"3":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"4":{"name":"keyword.other.skinparam.keyword.source.wsd"},"5":{"name":"constant.numeric.skinparam.keyword.source.wsd"}}}]}}}
1
+ {"name":"Diagram","scopeName":"source.wsd","patterns":[{"name":"diagram.source.wsd","begin":"(?i)^\\s*(@start[a-z]+)((\\s+)(.+?))?\\s*$","end":"(?i)^\\s*(@end[a-z]+)\\s*$","patterns":[{"include":"#Quoted"},{"include":"#Comment"},{"include":"#Style"},{"include":"#Class"},{"include":"#Object"},{"include":"#Activity"},{"include":"#Sequence"},{"include":"#State"},{"include":"#Keywords"},{"include":"#General"}],"beginCaptures":{"1":{"name":"keyword.control.diagram.source.wsd"},"5":{"name":"entity.name.function.diagram.source.wsd"}},"endCaptures":{"1":{"name":"keyword.control.diagram.source.wsd"}}},{"include":"#Quoted"},{"include":"#Comment"},{"include":"#Style"},{"include":"#Class"},{"include":"#Object"},{"include":"#Activity"},{"include":"#Sequence"},{"include":"#State"},{"include":"#Keywords"},{"include":"#General"}],"repository":{"Activity":{"patterns":[{"match":"(?i)^\\s*(else *if|if)\\s?\\((.+?)\\)\\s?(then)(\\s?\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.if.source.wsd"},"2":{"name":"string.quoted.double.activity.if.source.wsd"},"3":{"name":"keyword.other.activity.if.source.wsd"},"5":{"name":"meta.comment.activity.if.source.wsd"}}},{"match":"(?i)^\\s*(else)(\\s?\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.else.source.wsd"},"3":{"name":"meta.comment.activity.else.source.wsd"}}},{"match":"(?i)^\\s*(repeat\\s+)?(while)\\s*\\((.+?)\\)(\\s*(is)(\\s*\\((.+?)\\))?)?\\s*$","captures":{"1":{"name":"keyword.other.activity.while.source.wsd"},"2":{"name":"keyword.other.activity.while.source.wsd"},"3":{"name":"string.quoted.double.activity.while.source.wsd"},"5":{"name":"keyword.other.activity.while.source.wsd"},"7":{"name":"meta.comment.activity.while.source.wsd"}}},{"match":"(?i)^\\s*(end)\\s?(while)(\\s*\\((.+?)\\))?\\s*$","captures":{"1":{"name":"keyword.other.activity.endwhile.source.wsd"},"2":{"name":"keyword.other.activity.endwhile.source.wsd"},"4":{"name":"meta.comment.activity.endwhile.source.wsd"}}}]},"Class":{"patterns":[{"begin":"(?i)^\\s*(enum|abstract\\s+class|abstract|class)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?(\\s+(as)\\s+([\\w\\d_\\.]+|\"[^\"]+\")(\\s*(\u003c\u003c.+?\u003e\u003e))?)?(\\s+#(([\\w\\|\\\\\\/\\-]+)))?\\s*\\{\\s*$","end":"^\\s*(?\u003c!\\\\)\\}\\s*$","patterns":[{"match":"(?i)^\\s*([.=_-]{2,})\\s*((.+?)\\s*([.=_-]{2,}))?","captures":{"1":{"name":"meta.comment.class.group.separator.source.wsd"},"3":{"name":"string.quoted.double.class.group.separator.source.wsd"},"4":{"name":"meta.comment.class.group.separator.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(([\\p{L}0-9_]+(\\[\\])?\\s+)?([\\p{L}0-9_]+)(\\(\\))|([\\p{L}0-9_]+)(\\(\\))\\s*:\\s*([\\p{L}0-9_]+)?)\\s*$","captures":{"1":{"name":"storage.modifier.class.function.source.wsd"},"11":{"name":"support.type.class.function.source.wsd"},"3":{"name":"keyword.other.class.function.source.wsd"},"5":{"name":"support.type.class.function.source.wsd"},"7":{"name":"support.variable.class.function.source.wsd"},"9":{"name":"support.variable.class.function.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(([\\p{L}0-9_]+(\\[\\])?\\s+)?([\\p{L}0-9_]+)|([\\p{L}0-9_]+)\\s*:\\s*(\\w+)?)\\s*$","captures":{"1":{"name":"storage.modifier.class.fields.source.wsd"},"3":{"name":"keyword.other.class.fields.source.wsd"},"5":{"name":"support.type.class.fields.source.wsd"},"7":{"name":"support.variable.class.fields.source.wsd"},"8":{"name":"support.variable.class.fields.source.wsd"},"9":{"name":"support.type.class.fields.source.wsd"}}},{"match":"(?i)^\\s*(\\s*\\{(static|abstract)\\}\\s*)?(\\s*[~#+-]\\s*)?(.+?)\\s*$","captures":{"1":{"name":"storage.modifier.class.fields.source.wsd"},"3":{"name":"keyword.other.class.fields.source.wsd"},"4":{"name":"string.quoted.double.class.other.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.other.class.group.source.wsd"},"10":{"name":"constant.numeric.class.definition.source.wsd"},"2":{"name":"support.variable.class.group.source.wsd"},"4":{"name":"string.quoted.double.class.definition.source.wsd"},"6":{"name":"keyword.other.class.group.source.wsd"},"7":{"name":"support.variable.class.group.source.wsd"},"9":{"name":"string.quoted.double.class.definition.source.wsd"}}},{"match":"(?i)^\\s*(hide|show)\\s+(([\\w\\d_\\.]+|\"[^\"]+\")|\u003c\u003c.+?\u003e\u003e|Stereotypes|class|interface|enum)(\\s+(empty fields|empty methods|fields|attributes|methods|members|circle))?\\s*$","captures":{"1":{"name":"keyword.other.class.hideshow.source.wsd"},"2":{"name":"support.variable.class.hideshow.source.wsd"},"5":{"name":"constant.numeric.class.hideshow.source.wsd"}}}]},"Comment":{"patterns":[{"name":"comment.line.comment.source.wsd","begin":"(?i)^\\s*(')","end":"(?i)\\n"},{"name":"comment.block.source.wsd","begin":"(?i)\\s*(/')","end":"(?i)('/)\\s*"}]},"General":{"patterns":[{"begin":"(?i)^\\s*(title)\\s*$","end":"(?i)^\\s*\\b(end\\s+title)\\b","patterns":[{"match":"(?i)^\\s*(.+?)\\s*$","captures":{"1":{"name":"entity.name.function.title.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.other.title.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.title.source.wsd"}}},{"match":"(?i)^\\s*(title)\\s+(.+?)\\s*$","captures":{"1":{"name":"keyword.other.title.source.wsd"},"2":{"name":"entity.name.function.title.source.wsd"}}},{"name":"keyword.other.scale.source.wsd","match":"(?i)^\\s*(scale)\\s+((max)\\s+)?(\\d+(\\.?\\d+)?)\\s*((([\\*/])\\s*(\\d+\\.?(\\.?\\d+)?))|(width|height))?\\s*$","captures":{"1":{"name":"keyword.other.scale.source.wsd"},"11":{"name":"keyword.other.scale.source.wsd"},"3":{"name":"keyword.other.scale.source.wsd"},"4":{"name":"constant.numeric.scale.source.wsd"},"8":{"name":"keyword.operator.scale.source.wsd"},"9":{"name":"constant.numeric.scale.source.wsd"}}},{"match":"(?i)^\\s*(caption)\\s+(.+)\\s*$","captures":{"1":{"name":"keyword.other.note.source.wsd"},"2":{"name":"constant.numeric.caption.source.wsd"}}},{"match":"(?i)^\\s*(note\\s(left|right))\\s*:\\s*(.+)\\s*$","captures":{"1":{"name":"keyword.other.note.source.wsd"},"3":{"name":"meta.comment.note.source.wsd"}}},{"begin":"(?i)^\\s*(note\\s(left|right))\\s*$","end":"(?i)^\\s*(end\\s*note)","patterns":[{"name":"meta.comment.multiple.note.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.note.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.note.source.wsd"}}},{"match":"(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*:\\s*(.+)$","captures":{"1":{"name":"keyword.other.noteof.source.wsd"},"2":{"name":"constant.numeric.noteof.source.wsd"},"3":{"name":"keyword.other.noteof.source.wsd"},"4":{"name":"support.variable.noteof.source.wsd"},"5":{"name":"support.variable.noteof.source.wsd"},"6":{"name":"support.variable.noteof.source.wsd"},"7":{"name":"keyword.other.noteof.source.wsd"},"8":{"name":"constant.numeric.noteof.source.wsd"},"9":{"name":"meta.comment.noteof.source.wsd"}}},{"begin":"(?i)^\\s*([rh]?note)(?:\\s+(right|left|top|bottom))?\\s+(?:(?:(of|over)\\s*(?:[^\\s\\w\\d]([\\w\\s]+)[^\\s\\w\\d]|(?:(\".+?\"|\\w+)(?:,\\s*(\".+?\"|\\w+))*)))|(on\\s+link))\\s*(#\\w+)?\\s*$","end":"(?i)^\\s*(end\\s*[rh]?note)","patterns":[{"name":"meta.comment.multline.noteof.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.noteof.source.wsd"},"2":{"name":"constant.numeric.noteof.source.wsd"},"3":{"name":"keyword.other.noteof.source.wsd"},"4":{"name":"support.variable.noteof.source.wsd"},"5":{"name":"support.variable.noteof.source.wsd"},"6":{"name":"support.variable.noteof.source.wsd"},"7":{"name":"keyword.other.noteof.source.wsd"},"8":{"name":"constant.numeric.noteof.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.multline.noteof.source.wsd"}}},{"match":"(?i)^\\s*(note)\\s+(\".+?\")\\s+(as)\\s+([\\w\\d]+)\\s*$","captures":{"1":{"name":"keyword.other.noteas.source.wsd"},"2":{"name":"meta.comment.noteas.source.wsd"},"3":{"name":"keyword.other.noteas.source.wsd"},"4":{"name":"support.variable.noteas.source.wsd"}}},{"begin":"(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s*\\n","end":"(?i)^\\s*(end\\s?(header|legend|footer))","patterns":[{"name":"meta.comment.header_legend_footer.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"constant.numeric.header_legend_footer.source.wsd"},"2":{"name":"keyword.other.header_legend_footer.source.wsd"}},"endCaptures":{"1":{"name":"keyword.other.header_legend_footer.source.wsd"}}},{"match":"(?i)^\\s*(?:(center|left|right)\\s+)?(header|legend|footer)\\s+(.+?)\\s*$","captures":{"1":{"name":"constant.numeric.header_legend_footer.source.wsd"},"2":{"name":"keyword.other.header_legend_footer.source.wsd"},"3":{"name":"meta.comment.header_legend_footer.source.wsd"}}},{"name":"entity.name.function.preprocessings.source.wsd","match":"(?i)(!includesub|!include|!enddefinelong|!definelong|!define|!startsub|!endsub|!ifdef|!else|!endif|!ifndef|!if|!elseif|!endif|!while|!endwhile|!(unquoted\\s|final\\s)*procedure|!(unquoted\\s|final\\s)*function|!end\\s*(function|procedure)|!return|!import|!includedef|!includeurl|!include_many|!include_once|!log|!dump_memory|!theme|!pragma|!assume\\s+transparent\\s+(dark|light))"},{"begin":"(?i)((?:(?:(?:\\s+[ox]|[+*])?(?:\u003c\u003c|\u003c\\|?|\\\\\\\\|\\\\|//|\\}|\\^|#|0|0\\))?)(?=[-.~=]))[-.~=]+(\\[(?:\\#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)(?:[-\\\\/](?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+))?\\b)\\])?(?:(left|right|up|down)(?:[-.~=]))?[-.]*(?:(?:\u003e\u003e|\\|?\u003e|\\\\\\\\|\\\\|//|\\{|\\^|#|0|\\(0)?(?:[ox]\\s+|[+*])?))","end":"$","patterns":[{"include":"#General"},{"match":"(?i):([^:]+):\\s*:(.+)$","captures":{"1":{"name":"support.variable.actor.link.source.wsd"},"2":{"name":"meta.comment.message.link.source.wsd"}}},{"match":"(?i):(.+)$","captures":{"1":{"name":"meta.comment.message.link.source.wsd"}}}],"beginCaptures":{"1":{"name":"keyword.control.note.source.wsd"},"2":{"name":"constant.numeric.link.color.source.wsd"},"3":{"name":"constant.language.link.source.wsd"}}},{"name":"constant.numeric.colors.source.wsd","match":"(?i)#(?:[0-9a-f]{6}|[0-9a-f]{3}|\\w+)"},{"name":"support.variable.source.wsd","match":"\\b[\\w_]+"}]},"Keywords":{"patterns":[{"name":"keyword.other.linebegin.source.wsd","match":"(?i)^\\s*(usecase|actor|object|participant|boundary|control|entity|database|create|component|interface|package|node|folder|frame|cloud|annotation|enum|abstract\\s+class|abstract|class|state|autonumber(\\s+stop|\\s+resume|\\s+inc)?|activate|deactivate|return|destroy|newpage|alt|else|opt|loop|par|break|critical|group|box|rectangle|namespace|partition|agent|artifact|card|circle|collections|file|hexagon|label|person|queue|stack|storage|mainframe|map|repeat|backward|diamond)\\b"},{"name":"keyword.other.wholeline.source.wsd","match":"(?i)^\\s*(split( again)?|endif|repeat|start|stop|end|end\\s+fork|end\\s+split|fork( again)?|detach|end\\s+box|top\\s+to\\s+bottom\\s+direction|left\\s+to\\s+right\\s+direction|kill|end\\s+merge|allow(_)?mixing)\\s*$"},{"name":"keyword.other.other.source.wsd","match":"(?i)\\b(as|{(static|abstract)\\})\\b"}]},"Object":{"patterns":[{"match":"(?i)^\\s*([\\w\\d_]+)\\s+:\\s+s*$","captures":{"1":{"name":"support.variable.object.addfields.source.wsd"},"2":{"name":"meta.comment.object.addfields.source.wsd"}}}]},"Quoted":{"patterns":[{"name":"support.variable.definitions.source.wsd","begin":"(?i)^\\s*(:)","end":"(?i)(:)|[\\];|\u003c\u003e/}]?\\s*$"},{"name":"string.quoted.double.source.wsd","begin":"\"","end":"\""}]},"Sequence":{"patterns":[{"match":"(?i)^\\s*(={2,})\\s*(.+?)\\s*(={2,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.divider.source.wsd"},"2":{"name":"string.quoted.double.sequence.divider.source.wsd"},"3":{"name":"keyword.operator.sequence.divider.source.wsd"}}},{"match":"(?i)^\\s*(\\.{3,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.omission.source.wsd"}}},{"match":"(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*:\\s*(.+)\\s*$","captures":{"1":{"name":"keyword.other.sequence.ref.source.wsd"},"2":{"name":"support.variable.sequence.ref.source.wsd"},"3":{"name":"meta.comment.sequence.ref.source.wsd"}}},{"begin":"(?i)^\\s*(ref\\s+over)\\s+(.+?)\\s*$","end":"(?i)end\\s+ref","patterns":[{"name":"meta.comment.sequence.ref.source.wsd","match":".+?"}],"beginCaptures":{"1":{"name":"keyword.other.sequence.ref.source.wsd"},"2":{"name":"support.variable.sequence.ref.source.wsd"}},"endCaptures":{"0":{"name":"keyword.other.sequence.ref.source.wsd"}}},{"match":"(?i)^\\s*(\\.{3,})\\s*(.+)\\s*(\\.{3,})\\s*$","captures":{"1":{"name":"keyword.operator.sequence.delay.source.wsd"},"2":{"name":"meta.comment.sequence.delay.source.wsd"},"3":{"name":"keyword.operator.sequence.delay.source.wsd"}}},{"match":"(?i)(\\|{2,})(\\d+)?(\\|{1,})","captures":{"1":{"name":"keyword.operator.sequence.space.source.wsd"},"2":{"name":"constant.numeric.sequence.space.source.wsd"},"3":{"name":"keyword.operator.sequence.space.source.wsd"}}}]},"State":{"patterns":[{"match":"(?i)^\\s*(-{2,})\\s*$","captures":{"1":{"name":"keyword.other.state.concurrent.source.wsd"}}}]},"Style":{"patterns":[{"match":"(?i)^\\s*(skinparam)\\s+(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$","captures":{"1":{"name":"keyword.other.skinparam.source.wsd"},"2":{"name":"keyword.other.skinparam.keyword.source.wsd"},"3":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"4":{"name":"string.quoted.double.skinparam.value.source.wsd"}}},{"begin":"(?i)^\\s*(?:(skinparam)(?:\\s+(\\w+?)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)?|(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?)\\s*\\{\\s*$","end":"^\\s*(?\u003c!\\\\)\\}\\s*$","patterns":[{"match":"(?i)^\\s*(\\w+)(\u003c\u003c\\s*.+?\\s*\u003e\u003e)?\\s+([^\\{\\}]+?)\\s*$","captures":{"1":{"name":"keyword.other.skinparam.keyword.source.wsd"},"2":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"3":{"name":"string.quoted.double.skinparam.value.source.wsd"}}},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.skinparam.source.wsd"},"2":{"name":"keyword.other.skinparam.keyword.source.wsd"},"3":{"name":"constant.numeric.skinparam.keyword.source.wsd"},"4":{"name":"keyword.other.skinparam.keyword.source.wsd"},"5":{"name":"constant.numeric.skinparam.keyword.source.wsd"}}}]}}}