From 26e0b06e245088799551cc783138114a4832b4d5 Mon Sep 17 00:00:00 2001 From: Syed Daanish Date: Tue, 30 Dec 2025 10:55:32 +0000 Subject: [PATCH] Add strikethrough support --- grammar/bash.scm | 92 ++++++++-------- grammar/c.scm | 180 +++++++++++++++---------------- grammar/cpp.scm | 180 +++++++++++++++---------------- grammar/css.scm | 28 ++--- grammar/diff.scm | 24 ++--- grammar/erb.scm | 4 +- grammar/fish.scm | 64 +++++------ grammar/gdscript.scm | 112 ++++++++++---------- grammar/gitattributes.scm | 36 +++---- grammar/gitignore.scm | 22 ++-- grammar/go.scm | 112 ++++++++++---------- grammar/gomod.scm | 18 ++-- grammar/h.scm | 180 +++++++++++++++---------------- grammar/haskell.scm | 96 ++++++++--------- grammar/hover.scm | 34 +++--- grammar/html.scm | 36 +++---- grammar/ini.scm | 18 ++-- grammar/javascript.scm | 68 ++++++------ grammar/json.scm | 12 +-- grammar/jsonc.scm | 12 +-- grammar/lua.scm | 92 ++++++++-------- grammar/make.scm | 54 +++++----- grammar/man.scm | 14 +-- grammar/markdown.scm | 34 +++--- grammar/markdown_inline.scm | 32 +++--- grammar/nginx.scm | 24 ++--- grammar/php.scm | 136 ++++++++++++------------ grammar/python.scm | 136 ++++++++++++------------ grammar/query.scm | 42 ++++---- grammar/regex.scm | 20 ++-- grammar/ruby.scm | 78 +++++++------- grammar/rust.scm | 204 ++++++++++++++++++------------------ grammar/sql.scm | 38 +++---- grammar/toml.scm | 24 ++--- grammar/typescript.scm | 68 ++++++------ grammar/yaml.scm | 32 +++--- include/io/ui.h | 3 +- samples/markdown.md | 7 +- src/io/renderer.cc | 6 ++ src/ts/utils.cc | 9 +- 40 files changed, 1197 insertions(+), 1184 deletions(-) diff --git a/grammar/bash.scm b/grammar/bash.scm index 3ae0614..39a7aaf 100644 --- a/grammar/bash.scm +++ b/grammar/bash.scm @@ -1,4 +1,4 @@ -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "(" ")" @@ -12,7 +12,7 @@ "))" ] @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ ";" ";;" @@ -21,7 +21,7 @@ "&" ] @punctuation.delimiter -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ ">" ">>" @@ -49,7 +49,7 @@ "!" ] @operator -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 [ (string) (raw_string) @@ -57,7 +57,7 @@ (heredoc_body) ] @string -;; #E6C08A #000000 0 0 0 1 +;; #E6C08A #000000 0 0 0 0 1 [ (heredoc_start) (heredoc_end) @@ -72,7 +72,7 @@ (concatenation (word) @string) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "if" "then" @@ -84,7 +84,7 @@ "esac" ] @keyword.conditional -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "for" "do" @@ -94,7 +94,7 @@ "while" ] @keyword.repeat -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "declare" "typeset" @@ -104,39 +104,39 @@ "unsetenv" ] @keyword -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "export" @keyword.import -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "function" @keyword.function -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (special_variable_name) @constant -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 ((word) @constant.builtin (#match? @constant.builtin "^(SIGHUP|SIGINT|SIGQUIT|SIGILL|SIGTRAP|SIGABRT|SIGBUS|SIGFPE|SIGKILL|SIGUSR1|SIGSEGV|SIGUSR2|SIGPIPE|SIGALRM|SIGTERM|SIGSTKFLT|SIGCHLD|SIGCONT|SIGSTOP|SIGTSTP|SIGTTIN|SIGTTOU|SIGURG|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGIO|SIGPWR|SIGSYS|SIGRTMIN|SIGRTMIN\+1|SIGRTMIN\+2|SIGRTMIN\+3|SIGRTMIN\+4|SIGRTMIN\+5|SIGRTMIN\+6|SIGRTMIN\+7|SIGRTMIN\+8|SIGRTMIN\+9|SIGRTMIN\+10|SIGRTMIN\+11|SIGRTMIN\+12|SIGRTMIN\+13|SIGRTMIN\+14|SIGRTMIN\+15|SIGRTMAX\-14|SIGRTMAX\-13|SIGRTMAX\-12|SIGRTMAX\-11|SIGRTMAX\-10|SIGRTMAX\-9|SIGRTMAX\-8|SIGRTMAX\-7|SIGRTMAX\-6|SIGRTMAX\-5|SIGRTMAX\-4|SIGRTMAX\-3|SIGRTMAX\-2|SIGRTMAX\-1|SIGRTMAX)$")) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 ((word) @boolean.true (#match? @boolean.true "^true$")) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 ((word) @boolean.false (#match? @boolean.false "^false$")) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (test_operator) @operator -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (command_substitution "$(" @punctuation.special ")" @punctuation.special) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (process_substitution [ "<(" @@ -144,7 +144,7 @@ ] @punctuation.special ")" @punctuation.special) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (arithmetic_expansion [ "$((" @@ -152,43 +152,43 @@ ] @punctuation.special "))" @punctuation.special) -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (arithmetic_expansion "," @punctuation.delimiter) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (ternary_expression [ "?" ":" ] @keyword.conditional.ternary) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (binary_expression operator: _ @operator) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (unary_expression operator: _ @operator) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (postfix_expression operator: _ @operator) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (function_definition name: (word) @function) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (command_name (word) @function.call) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (command_name (word) @function.builtin (#match? @function.builtin "^(\.|\:|alias|bg|bind|break|builtin|caller|cd|command|compgen|complete|compopt|continue|coproc|dirs|disown|echo|enable|eval|exec|exit|false|fc|fg|getopts|hash|help|history|jobs|kill|let|logout|mapfile|popd|printf|pushd|pwd|read|readarray|return|set|shift|shopt|source|suspend|test|time|times|trap|true|type|typeset|ulimit|umask|unalias|wait)$")) -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (command argument: [ (word) @variable.parameter @@ -196,76 +196,76 @@ (word) @variable.parameter) ]) -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (declaration_command (word) @variable.parameter) -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (unset_command (word) @variable.parameter) -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (number) @number -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((word) @number (#match? @number "^[0-9]+$")) -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (file_redirect (word) @string.special.path) -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (herestring_redirect (word) @string) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (file_descriptor) @operator -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (simple_expansion "$" @punctuation.special) @none -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (expansion "${" @punctuation.special "}" @punctuation.special) @none -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (expansion operator: _ @punctuation.special) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (expansion "@" . operator: _ @character.special) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 ((expansion (subscript index: (word) @character.special)) (#any-of? @character.special "@" "*")) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 "``" @punctuation.special -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (variable_name) @variable -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 ((variable_name) @constant (#match? @constant "^[A-Z][A-Z_0-9]*$")) -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 ((variable_name) @variable.builtin (#match? @variable.builtin "^(CDPATH|HOME|IFS|MAIL|MAILPATH|OPTARG|OPTIND|PATH|PS1|PS2|_|BASH|BASHOPTS|BASHPID|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_ARGV0|BASH_CMDS|BASH_COMMAND|BASH_COMPAT|BASH_ENV|BASH_EXECUTION_STRING|BASH_LINENO|BASH_LOADABLES_PATH|BASH_REMATCH|BASH_SOURCE|BASH_SUBSHELL|BASH_VERSINFO|BASH_VERSION|BASH_XTRACEFD|CHILD_MAX|COLUMNS|COMP_CWORD|COMP_LINE|COMP_POINT|COMP_TYPE|COMP_KEY|COMP_WORDBREAKS|COMP_WORDS|COMPREPLY|COPROC|DIRSTACK|EMACS|ENV|EPOCHREALTIME|EPOCHSECONDS|EUID|EXECIGNORE|FCEDIT|FIGNORE|FUNCNAME|FUNCNEST|GLOBIGNORE|GROUPS|histchars|HISTCMD|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTIGNORE|HISTSIZE|HISTTIMEFORMAT|HOSTFILE|HOSTNAME|HOSTTYPE|IGNOREEOF|INPUTRC|INSIDE_EMACS|LANG|LC_ALL|LC_COLLATE|LC_CTYPE|LC_MESSAGES|LC_NUMERIC|LC_TIME|LINENO|LINES|MACHTYPE|MAILCHECK|MAPFILE|OLDPWD|OPTERR|OSTYPE|PIPESTATUS|POSIXLY_CORRECT|PPID|PROMPT_COMMAND|PROMPT_DIRTRIM|PS0|PS3|PS4|PWD|RANDOM|READLINE_ARGUMENT|READLINE_LINE|READLINE_MARK|READLINE_POINT|REPLY|SECONDS|SHELL|SHELLOPTS|SHLVL|SRANDOM|TIMEFORMAT|TMOUT|TMPDIR|UID)$")) -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (case_item value: (word) @variable.parameter) -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 ((program . (comment) @keyword.directive @nospell) diff --git a/grammar/c.scm b/grammar/c.scm index 7f3842e..306a7a0 100644 --- a/grammar/c.scm +++ b/grammar/c.scm @@ -2,45 +2,45 @@ ; Identifiers ; ============================================================ -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 ((identifier) @variable) -;; #FFB870 #000000 0 0 0 9 +;; #FFB870 #000000 0 0 0 0 9 (function_declarator declarator: (identifier) @function) -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 ((identifier) @constant (#match? @constant "^[A-Z][A-Z0-9_]+$")) -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (preproc_def (preproc_arg) @constant (#match? @constant "^[A-Z][A-Z0-9_]+$")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((identifier) @constant.builtin (#match? @constant.builtin "^(stderr|stdin|stdout|__FILE__|__LINE__|__DATE__|__TIME__|__STDC__|__STDC_VERSION__|__STDC_HOSTED__|__cplusplus|__OBJC__|__ASSEMBLER__|__BASE_FILE__|__FILE_NAME__|__INCLUDE_LEVEL__|__TIMESTAMP__|__clang__|__clang_major__|__clang_minor__|__clang_patchlevel__|__clang_version__|__clang_literal_encoding__|__clang_wide_literal_encoding__|__FUNCTION__|__func__|__PRETTY_FUNCTION__|__VA_ARGS__|__VA_OPT__)$")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_def (preproc_arg) @constant.builtin (#match? @constant.builtin "^(stderr|stdin|stdout|__FILE__|__LINE__|__DATE__|__TIME__|__STDC__|__STDC_VERSION__|__STDC_HOSTED__|__cplusplus|__OBJC__|__ASSEMBLER__|__BASE_FILE__|__FILE_NAME__|__INCLUDE_LEVEL__|__TIMESTAMP__|__clang__|__clang_major__|__clang_minor__|__clang_patchlevel__|__clang_version__|__clang_literal_encoding__|__clang_wide_literal_encoding__|__FUNCTION__|__func__|__PRETTY_FUNCTION__|__VA_ARGS__|__VA_OPT__)$")) -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 (preproc_def (preproc_arg) @variable) -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 (statement_identifier) @label -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 (declaration type: (type_identifier) @_type declarator: (identifier) @label (#match? @_type "^__label__$")) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 ((identifier) @variable.member (#match? @variable.member "^m_.*$")) @@ -48,7 +48,7 @@ ; Keywords ; ============================================================ -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "default" "goto" @@ -56,7 +56,7 @@ "__asm__" ] @keyword -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "enum" "struct" @@ -64,21 +64,21 @@ "typedef" ] @keyword.type -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 [ "sizeof" "offsetof" ] @keyword.operator -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (alignof_expression . _ @keyword.operator) -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 "return" @keyword.return -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "while" "for" @@ -87,7 +87,7 @@ "break" ] @keyword.repeat -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 [ "if" "else" @@ -95,14 +95,14 @@ "switch" ] @keyword.conditional -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (conditional_expression [ "?" ":" ] @keyword.conditional.ternary) -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 [ "#if" "#ifdef" @@ -115,13 +115,13 @@ (preproc_directive) ] @keyword.directive -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 "#define" @keyword.directive.define -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 "#include" @keyword.import -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "try" "catch" @@ -129,7 +129,7 @@ "throw" ] @keyword.exception -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "decltype" "explicit" @@ -140,7 +140,7 @@ "constexpr" ] @keyword -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "class" "namespace" @@ -149,14 +149,14 @@ "concept" ] @keyword.type -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "co_await" "co_yield" "co_return" ] @keyword.coroutine -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 [ "public" "private" @@ -165,21 +165,21 @@ "virtual" ] @keyword.modifier -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (storage_class_specifier) @keyword.modifier -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 [ (type_qualifier) (gnu_asm_qualifier) "__extension__" ] @keyword.modifier -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (linkage_specification "extern" @keyword.modifier) -;; #F29668 #000000 0 0 0 2 +;; #F29668 #000000 0 0 0 0 2 [ "new" "delete" @@ -196,39 +196,39 @@ "or" ] @keyword.operator -;; #F29668 #000000 0 1 0 2 +;; #F29668 #000000 0 1 0 0 2 "<=>" @operator ; ============================================================ ; Types & modules ; ============================================================ -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 [ (type_identifier) (type_descriptor) ] @type -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (type_definition declarator: (type_identifier) @type.definition) -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (primitive_type) @type.builtin -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (sized_type_specifier _ @type.builtin type: _?) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (namespace_identifier) @module -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 ((namespace_identifier) @type (#match? @type "^[A-Z]")) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (using_declaration . "using" @@ -244,22 +244,22 @@ ; Functions & calls ; ============================================================ -;; #FFB870 #000000 0 0 0 1 +;; #FFB870 #000000 0 0 0 0 1 (operator_name) @function -;; #FFB870 #000000 0 0 0 3 +;; #FFB870 #000000 0 0 0 0 3 "operator" @function -;; #78C2FF #000000 0 0 0 2 +;; #78C2FF #000000 0 0 0 0 2 (call_expression function: (identifier) @function.call) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((call_expression function: (identifier) @function.builtin) (#match? @function.builtin "^__builtin_")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((call_expression function: (identifier) @function.builtin)) @@ -267,30 +267,30 @@ ; Constructors & methods ; ============================================================ -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((call_expression function: (identifier) @constructor) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((call_expression function: (qualified_identifier name: (identifier) @constructor)) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((call_expression function: (field_expression field: (field_identifier) @constructor)) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((field_initializer (field_identifier) @constructor (argument_list)) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 4 +;; #59C2FF #000000 0 0 0 0 4 (destructor_name (identifier) @function.method) @@ -298,7 +298,7 @@ ; Properties & members ; ============================================================ -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((field_expression (field_identifier) @property) @_parent) @@ -309,7 +309,7 @@ (field_initializer (field_identifier) @property) -;; #F29CC3 #000000 0 0 1 2 +;; #F29CC3 #000000 0 0 1 0 2 (field_declaration (field_identifier) @variable.member) @@ -317,32 +317,32 @@ ; Parameters ; ============================================================ -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (identifier) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (array_declarator) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (pointer_declarator) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (preproc_params (identifier) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (reference_declarator) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (variadic_parameter_declaration declarator: (variadic_declarator (_) @variable.parameter)) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (optional_parameter_declaration declarator: (_) @variable.parameter) @@ -350,7 +350,7 @@ ; Attributes & specifiers ; ============================================================ -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 [ "__attribute__" "__declspec" @@ -365,12 +365,12 @@ (attribute_declaration) ] @attribute -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (attribute_specifier (argument_list (identifier) @variable.builtin)) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (attribute_specifier (argument_list (call_expression @@ -380,7 +380,7 @@ ; Operators & punctuation ; ============================================================ -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "=" "-" @@ -418,11 +418,11 @@ "++" ] @operator -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 (comma_expression "," @operator) -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 [ ";" ":" @@ -431,13 +431,13 @@ "::" ] @punctuation.delimiter -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 "::" @punctuation.delimiter -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 "..." @punctuation.special -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 [ "(" ")" @@ -447,14 +447,14 @@ "}" ] @punctuation.bracket -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 (template_argument_list [ "<" ">" ] @punctuation.bracket) -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 (template_parameter_list [ "<" @@ -465,40 +465,40 @@ ; Literals ; ============================================================ -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 [ (true) (false) ] @boolean -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 (true) @boolean_true -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 (false) @boolean_false -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (string_literal) @string -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (system_lib_string) @string -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (raw_string_literal) @string -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (escape_sequence) @string.escape -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 (number_literal) @number -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 (char_literal) @character -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (null) @constant.builtin -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (null "nullptr" @constant.builtin) @@ -506,59 +506,59 @@ ; Macros & directives ; ============================================================ -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_def name: (_) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_call directive: (preproc_directive) @_u argument: (_) @constant.macro (#match? @_u "^#undef$")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_ifdef name: (identifier) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_elifdef name: (identifier) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_defined (identifier) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_defined) @function.macro ; ============================================================ ; Builtins & special identifiers ; ============================================================ -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (attribute_specifier (argument_list (identifier) @variable.builtin)) -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (attribute_specifier (argument_list (call_expression function: (identifier) @variable.builtin))) -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (this) @variable.builtin ; ============================================================ ; Exceptions & control helpers ; ============================================================ -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 "static_assert" @function.builtin ; ============================================================ ; Comments ; ============================================================ -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell diff --git a/grammar/cpp.scm b/grammar/cpp.scm index 7f3842e..306a7a0 100644 --- a/grammar/cpp.scm +++ b/grammar/cpp.scm @@ -2,45 +2,45 @@ ; Identifiers ; ============================================================ -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 ((identifier) @variable) -;; #FFB870 #000000 0 0 0 9 +;; #FFB870 #000000 0 0 0 0 9 (function_declarator declarator: (identifier) @function) -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 ((identifier) @constant (#match? @constant "^[A-Z][A-Z0-9_]+$")) -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (preproc_def (preproc_arg) @constant (#match? @constant "^[A-Z][A-Z0-9_]+$")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((identifier) @constant.builtin (#match? @constant.builtin "^(stderr|stdin|stdout|__FILE__|__LINE__|__DATE__|__TIME__|__STDC__|__STDC_VERSION__|__STDC_HOSTED__|__cplusplus|__OBJC__|__ASSEMBLER__|__BASE_FILE__|__FILE_NAME__|__INCLUDE_LEVEL__|__TIMESTAMP__|__clang__|__clang_major__|__clang_minor__|__clang_patchlevel__|__clang_version__|__clang_literal_encoding__|__clang_wide_literal_encoding__|__FUNCTION__|__func__|__PRETTY_FUNCTION__|__VA_ARGS__|__VA_OPT__)$")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_def (preproc_arg) @constant.builtin (#match? @constant.builtin "^(stderr|stdin|stdout|__FILE__|__LINE__|__DATE__|__TIME__|__STDC__|__STDC_VERSION__|__STDC_HOSTED__|__cplusplus|__OBJC__|__ASSEMBLER__|__BASE_FILE__|__FILE_NAME__|__INCLUDE_LEVEL__|__TIMESTAMP__|__clang__|__clang_major__|__clang_minor__|__clang_patchlevel__|__clang_version__|__clang_literal_encoding__|__clang_wide_literal_encoding__|__FUNCTION__|__func__|__PRETTY_FUNCTION__|__VA_ARGS__|__VA_OPT__)$")) -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 (preproc_def (preproc_arg) @variable) -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 (statement_identifier) @label -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 (declaration type: (type_identifier) @_type declarator: (identifier) @label (#match? @_type "^__label__$")) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 ((identifier) @variable.member (#match? @variable.member "^m_.*$")) @@ -48,7 +48,7 @@ ; Keywords ; ============================================================ -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "default" "goto" @@ -56,7 +56,7 @@ "__asm__" ] @keyword -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "enum" "struct" @@ -64,21 +64,21 @@ "typedef" ] @keyword.type -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 [ "sizeof" "offsetof" ] @keyword.operator -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (alignof_expression . _ @keyword.operator) -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 "return" @keyword.return -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "while" "for" @@ -87,7 +87,7 @@ "break" ] @keyword.repeat -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 [ "if" "else" @@ -95,14 +95,14 @@ "switch" ] @keyword.conditional -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (conditional_expression [ "?" ":" ] @keyword.conditional.ternary) -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 [ "#if" "#ifdef" @@ -115,13 +115,13 @@ (preproc_directive) ] @keyword.directive -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 "#define" @keyword.directive.define -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 "#include" @keyword.import -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "try" "catch" @@ -129,7 +129,7 @@ "throw" ] @keyword.exception -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "decltype" "explicit" @@ -140,7 +140,7 @@ "constexpr" ] @keyword -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "class" "namespace" @@ -149,14 +149,14 @@ "concept" ] @keyword.type -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "co_await" "co_yield" "co_return" ] @keyword.coroutine -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 [ "public" "private" @@ -165,21 +165,21 @@ "virtual" ] @keyword.modifier -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (storage_class_specifier) @keyword.modifier -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 [ (type_qualifier) (gnu_asm_qualifier) "__extension__" ] @keyword.modifier -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (linkage_specification "extern" @keyword.modifier) -;; #F29668 #000000 0 0 0 2 +;; #F29668 #000000 0 0 0 0 2 [ "new" "delete" @@ -196,39 +196,39 @@ "or" ] @keyword.operator -;; #F29668 #000000 0 1 0 2 +;; #F29668 #000000 0 1 0 0 2 "<=>" @operator ; ============================================================ ; Types & modules ; ============================================================ -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 [ (type_identifier) (type_descriptor) ] @type -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (type_definition declarator: (type_identifier) @type.definition) -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (primitive_type) @type.builtin -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (sized_type_specifier _ @type.builtin type: _?) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (namespace_identifier) @module -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 ((namespace_identifier) @type (#match? @type "^[A-Z]")) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (using_declaration . "using" @@ -244,22 +244,22 @@ ; Functions & calls ; ============================================================ -;; #FFB870 #000000 0 0 0 1 +;; #FFB870 #000000 0 0 0 0 1 (operator_name) @function -;; #FFB870 #000000 0 0 0 3 +;; #FFB870 #000000 0 0 0 0 3 "operator" @function -;; #78C2FF #000000 0 0 0 2 +;; #78C2FF #000000 0 0 0 0 2 (call_expression function: (identifier) @function.call) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((call_expression function: (identifier) @function.builtin) (#match? @function.builtin "^__builtin_")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((call_expression function: (identifier) @function.builtin)) @@ -267,30 +267,30 @@ ; Constructors & methods ; ============================================================ -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((call_expression function: (identifier) @constructor) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((call_expression function: (qualified_identifier name: (identifier) @constructor)) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((call_expression function: (field_expression field: (field_identifier) @constructor)) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((field_initializer (field_identifier) @constructor (argument_list)) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 4 +;; #59C2FF #000000 0 0 0 0 4 (destructor_name (identifier) @function.method) @@ -298,7 +298,7 @@ ; Properties & members ; ============================================================ -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((field_expression (field_identifier) @property) @_parent) @@ -309,7 +309,7 @@ (field_initializer (field_identifier) @property) -;; #F29CC3 #000000 0 0 1 2 +;; #F29CC3 #000000 0 0 1 0 2 (field_declaration (field_identifier) @variable.member) @@ -317,32 +317,32 @@ ; Parameters ; ============================================================ -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (identifier) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (array_declarator) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (pointer_declarator) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (preproc_params (identifier) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (reference_declarator) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (variadic_parameter_declaration declarator: (variadic_declarator (_) @variable.parameter)) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (optional_parameter_declaration declarator: (_) @variable.parameter) @@ -350,7 +350,7 @@ ; Attributes & specifiers ; ============================================================ -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 [ "__attribute__" "__declspec" @@ -365,12 +365,12 @@ (attribute_declaration) ] @attribute -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (attribute_specifier (argument_list (identifier) @variable.builtin)) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (attribute_specifier (argument_list (call_expression @@ -380,7 +380,7 @@ ; Operators & punctuation ; ============================================================ -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "=" "-" @@ -418,11 +418,11 @@ "++" ] @operator -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 (comma_expression "," @operator) -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 [ ";" ":" @@ -431,13 +431,13 @@ "::" ] @punctuation.delimiter -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 "::" @punctuation.delimiter -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 "..." @punctuation.special -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 [ "(" ")" @@ -447,14 +447,14 @@ "}" ] @punctuation.bracket -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 (template_argument_list [ "<" ">" ] @punctuation.bracket) -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 (template_parameter_list [ "<" @@ -465,40 +465,40 @@ ; Literals ; ============================================================ -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 [ (true) (false) ] @boolean -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 (true) @boolean_true -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 (false) @boolean_false -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (string_literal) @string -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (system_lib_string) @string -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (raw_string_literal) @string -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (escape_sequence) @string.escape -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 (number_literal) @number -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 (char_literal) @character -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (null) @constant.builtin -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (null "nullptr" @constant.builtin) @@ -506,59 +506,59 @@ ; Macros & directives ; ============================================================ -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_def name: (_) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_call directive: (preproc_directive) @_u argument: (_) @constant.macro (#match? @_u "^#undef$")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_ifdef name: (identifier) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_elifdef name: (identifier) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_defined (identifier) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_defined) @function.macro ; ============================================================ ; Builtins & special identifiers ; ============================================================ -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (attribute_specifier (argument_list (identifier) @variable.builtin)) -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (attribute_specifier (argument_list (call_expression function: (identifier) @variable.builtin))) -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (this) @variable.builtin ; ============================================================ ; Exceptions & control helpers ; ============================================================ -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 "static_assert" @function.builtin ; ============================================================ ; Comments ; ============================================================ -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell diff --git a/grammar/css.scm b/grammar/css.scm index 81137e9..68f4ed9 100644 --- a/grammar/css.scm +++ b/grammar/css.scm @@ -1,9 +1,9 @@ -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (tag_name) @tag (nesting_selector) @tag (universal_selector) @tag -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 "~" @operator ">" @operator "+" @operator @@ -21,45 +21,45 @@ "not" @operator "only" @operator -;; #AAD94C #000000 0 0 0 2 +;; #AAD94C #000000 0 0 0 0 2 (attribute_selector (plain_value) @string) (string_value) @string -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 ((property_name) @variable (#match? @variable "^--")) ((plain_value) @variable (#match? @variable "^--")) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (class_name) @property (id_name) @property (namespace_name) @property (property_name) @property (feature_name) @property -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (pseudo_element_selector (tag_name) @attribute) (pseudo_class_selector (class_name) @attribute) (attribute_name) @attribute -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (function_name) @function -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (color_value) @string.special -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (integer_value) @number (float_value) @number -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (unit) @type -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 [ "#" "," @@ -69,7 +69,7 @@ ";" ] @punctuation.delimiter -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 [ "{" "}" @@ -79,7 +79,7 @@ "]" ] @punctuation.bracket -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (at_keyword) @keyword (to) @keyword (from) @keyword diff --git a/grammar/diff.scm b/grammar/diff.scm index bd2eee1..789dc11 100644 --- a/grammar/diff.scm +++ b/grammar/diff.scm @@ -1,33 +1,33 @@ -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (addition) @diff.plus -;; #F07178 #000000 0 0 0 2 +;; #F07178 #000000 0 0 0 0 2 (deletion) @diff.minus -;; #D2A6FF #000000 0 0 0 0 +;; #D2A6FF #000000 0 0 0 0 0 [ (new_file) (old_file) ] @file -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (commit) @constant -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (location) @attribute -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (command "diff" @function (argument) @variable.parameter) -;; #7dcfff #000000 0 0 0 6 +;; #7dcfff #000000 0 0 0 0 6 (mode) @number -;; #888888 #000000 0 0 0 3 +;; #888888 #000000 0 0 0 0 3 [ ".." "+" @@ -40,18 +40,18 @@ "----" ] @punctuation.special -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 [ (binary_change) (similarity) (file_change) ] @label -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (index "index" @keyword) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (similarity (score) @number "%" @number) diff --git a/grammar/erb.scm b/grammar/erb.scm index d1c91cd..0b48e7c 100644 --- a/grammar/erb.scm +++ b/grammar/erb.scm @@ -1,7 +1,7 @@ -;; #99ADBF #000000 0 1 0 4 +;; #99ADBF #000000 0 1 0 0 4 (comment_directive) @comment -;; #F29668 #000000 0 0 0 6 +;; #F29668 #000000 0 0 0 0 6 [ "<%#" "<%" diff --git a/grammar/fish.scm b/grammar/fish.scm index afc08bf..8cccb9d 100644 --- a/grammar/fish.scm +++ b/grammar/fish.scm @@ -1,4 +1,4 @@ -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "&&" "||" @@ -15,7 +15,7 @@ (command name: (word) @function.builtin (#match? @function.builtin "^test$") -;; #FFFFFF #000000 0 0 0 3 +;; #FFFFFF #000000 0 0 0 0 3 argument: (word) @word (#match? @word "^(!?=|-[a-zA-Z]+)$")) @@ -25,36 +25,36 @@ argument: (word) @word (#match? @word "^(!?=|-[a-zA-Z]+)$")) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 [ "not" "and" "or" ] @keyword.operator -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (if_statement [ "if" "end" ] @keyword.conditional) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (switch_statement [ "switch" "end" ] @keyword.conditional) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (case_clause "case" @keyword.conditional) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (else_clause "else" @keyword.conditional) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (else_if_clause [ "else" @@ -62,21 +62,21 @@ ] @keyword.conditional) ; Loops/Blocks -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (while_statement [ "while" "end" ] @keyword.repeat) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (for_statement [ "for" "end" ] @keyword.repeat) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (begin_statement [ "begin" @@ -84,17 +84,17 @@ ] @keyword.repeat) ; Keywords -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "in" (break) (continue) ] @keyword -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "return" @keyword.return -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "[" "]" @@ -104,38 +104,38 @@ ")" ] @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 "," @punctuation.delimiter -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (command_substitution "$" @punctuation.special) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (command name: (word) @function.call) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (command name: (word) @function.builtin (#match? @function.builtin "^(\\.|:|_|abbr|alias|argparse|bg|bind|block|breakpoint|builtin|cd|command|commandline|complete|contains|count|disown|echo|emit|eval|exec|exit|fg|functions|history|isatty|jobs|math|path|printf|pwd|random|read|realpath|set|set_color|source|status|string|test|time|type|ulimit|wait)$")) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (function_definition [ "function" "end" ] @keyword.function) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (function_definition name: [ (word) (concatenation) ] @function) -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (function_definition option: [ (word) @@ -144,47 +144,47 @@ ] @variable.parameter (#match? @variable.parameter "^[-]")) -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 [ (double_quote_string) (single_quote_string) ] @string -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (escape_sequence) @string.escape -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (variable_name) @variable -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (variable_expansion) @constant -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (variable_expansion "$" @punctuation.special) @none -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 ((variable_name) @variable.builtin (#match? @variable.builtin "^(PATH|CDPATH|LANG|LC_ALL|LC_COLLATE|LC_CTYPE|LC_MESSAGES|LC_MONETARY|LC_NUMERIC|LC_TIME|fish_color_normal|fish_color_command|fish_color_keyword|fish_color_redirection|fish_color_end|fish_color_error|fish_color_param|fish_color_valid_path|fish_color_option|fish_color_comment|fish_color_selection|fish_color_operator|fish_color_escape|fish_color_autosuggestion|fish_color_cwd|fish_color_cwd_root|fish_color_user|fish_color_host|fish_color_host_remote|fish_color_status|fish_color_cancel|fish_color_search_match|fish_color_history_current|fish_pager_color_progress|fish_pager_color_background|fish_pager_color_prefix|fish_pager_color_completion|fish_pager_color_description|fish_pager_color_selected_background|fish_pager_color_selected_prefix|fish_pager_color_selected_completion|fish_pager_color_selected_description|fish_pager_color_secondary_background|fish_pager_color_secondary_prefix|fish_pager_color_secondary_completion|fish_pager_color_secondary_description|fish_term24bit|fish_term256|fish_ambiguous_width|fish_emoji_width|fish_autosuggestion_enabled|fish_handle_reflow|fish_key_bindings|fish_escape_delay_ms|fish_sequence_key_delay_ms|fish_complete_path|fish_cursor_selection_mode|fish_cursor_default|fish_cursor_insert|fish_cursor_replace|fish_cursor_replace_one|fish_cursor_visual|fish_cursor_external|fish_function_path|fish_greeting|fish_history|fish_trace|FISH_DEBUG|FISH_DEBUG_OUTPUT|fish_user_paths|umask|BROWSER|_|argv|CMD_DURATION|COLUMNS|LINES|fish_kill_signal|fish_killring|fish_read_limit|fish_pid|history|HOME|hostname|IFS|last_pid|PWD|pipestatus|SHLVL|status|status_generation|TERM|USER|EUID|version|FISH_VERSION)$")) -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 [ (integer) (float) ] @number -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @spell -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 ((word) @boolean (#match? @boolean "^(true|false)$")) -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 ((program . (comment) @keyword.directive @nospell) diff --git a/grammar/gdscript.scm b/grammar/gdscript.scm index ceedc02..9bae87d 100644 --- a/grammar/gdscript.scm +++ b/grammar/gdscript.scm @@ -2,64 +2,64 @@ ; Basic ; ============================================================ -;; #FFFFFF #000000 0 0 0 0 +;; #FFFFFF #000000 0 0 0 0 0 (identifier) @variable -;; #FFFFFF #000000 0 0 0 0 +;; #FFFFFF #000000 0 0 0 0 0 (name) @variable -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (type (identifier) @type) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (string_name) @string -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (string) @string -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (float) @number.float -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (integer) @number -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (null) @constant -;; #5CCFE6 #000000 0 0 0 2 +;; #5CCFE6 #000000 0 0 0 0 2 (setter) @function -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (getter) @function -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (set_body "set" @keyword.function) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (get_body "get" @keyword.function) -;; #7DCFFF #000000 0 0 0 2 +;; #7DCFFF #000000 0 0 0 0 2 (static_keyword) @keyword.modifier -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (breakpoint_statement) @keyword.debug -;; #FF8F40 #000000 0 1 0 1 +;; #FF8F40 #000000 0 1 0 0 1 (inferred_type) @operator -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 [ (true) (false) ] @boolean -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 [ (get_node) (node_path) @@ -67,15 +67,15 @@ (class_name_statement (name) @type) -;; #7DCFFF #000000 0 0 0 2 +;; #7DCFFF #000000 0 0 0 0 2 @keyword2 -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (const_statement "const" @keyword.modifier (name) @constant) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (expression_statement (string) @comment @spell) @@ -83,35 +83,35 @@ ; Functions ; ============================================================ -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (constructor_definition "_init" @constructor) -;; #5CCFE6 #000000 0 0 0 4 +;; #5CCFE6 #000000 0 0 0 0 4 (function_definition (name) @function) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (parameters (identifier) @variable.parameter) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (typed_parameter (identifier) @variable.parameter) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (default_parameter (identifier) @variable.parameter) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (typed_default_parameter (identifier) @variable.parameter) -;; #5CCFE6 #000000 0 0 0 2 +;; #5CCFE6 #000000 0 0 0 0 2 (call (identifier) @function.call) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call (identifier) @keyword.import (#match? @keyword.import "^(preload|load)$")) @@ -120,15 +120,15 @@ ; Properties and Methods ; ============================================================ -;; #5CCFE6 #000000 0 0 0 2 +;; #5CCFE6 #000000 0 0 0 0 2 (attribute_call (identifier) @function.method.call) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (attribute_subscript (identifier) @property) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (attribute (_) (identifier) @property) @@ -137,11 +137,11 @@ ; Identifier conventions ; ============================================================ -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @type (#match? @type "^[A-Z]")) -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @constant (#match? @constant "^[A-Z][A-Z_0-9]*$")) @@ -149,7 +149,7 @@ ; Enums ; ============================================================ -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (enumerator left: (identifier) @constant) @@ -157,11 +157,11 @@ ; Builtins ; ============================================================ -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @variable.builtin (#match? @variable.builtin "^(self|super)$")) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (attribute_call (identifier) @keyword.operator (#match? @keyword.operator "^new$")) @@ -170,10 +170,10 @@ ; Pattern helpers ; ============================================================ -;; #7DCFFF #000000 0 0 0 2 +;; #7DCFFF #000000 0 0 0 0 2 (pattern_open_ending) @character.special -;; #7DCFFF #000000 0 0 0 2 +;; #7DCFFF #000000 0 0 0 0 2 ((identifier) @character.special (#match? @character.special "^_$")) @@ -181,7 +181,7 @@ ; Operators & punctuation ; ============================================================ -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "(" ")" @@ -191,7 +191,7 @@ "}" ] @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "," "." @@ -199,7 +199,7 @@ ";" ] @punctuation.delimiter -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "if" "elif" @@ -207,11 +207,11 @@ "match" ] @keyword.conditional -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (pattern_guard "when" @keyword.conditional) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "for" "while" @@ -219,7 +219,7 @@ "continue" ] @keyword.repeat -;; #FF8F40 #000000 0 1 0 1 +;; #FF8F40 #000000 0 1 0 0 1 [ "~" "-" @@ -256,7 +256,7 @@ "->" ] @operator -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "and" "as" @@ -270,7 +270,7 @@ ; Keywords ; ============================================================ -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "pass" "class_name" @@ -287,22 +287,22 @@ "puppetsync" ] @keyword -;; #7DCFFF #000000 0 0 0 2 +;; #7DCFFF #000000 0 0 0 0 2 "export" @keyword.import -;; #7DCFFF #000000 0 0 0 2 +;; #7DCFFF #000000 0 0 0 0 2 [ "enum" "class" ] @keyword.type -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 "func" @keyword.function -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "return" @keyword.return -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "await" @keyword.coroutine (call @@ -313,24 +313,24 @@ ; Annotations ; ============================================================ -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 ((annotation "@" @attribute (identifier) @attribute) (#match? @attribute "^(abstract|export|export_category|export_color_no_alpha|export_custom|export_dir|export_enum|export_exp_easing|export_file|export_file_path|export_flags|export_flags_2d_navigation|export_flags_2d_physics|export_flags_3d_render|export_flags_3d_navigation|export_flags_3d_physics|export_flags_3d_render|export_flags_avoidance|export_global_dir|export_global_file|export_group|export_multiline|export_node_path|export_placeholder|export_range|export_storage|export_subgroup|export_tool_button|icon|onready|rpc|static_unload|tool|warning_ignore|warning_ignore_restore|warning_ignore_start)$")) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 ; Builtin Types ((identifier) @type.builtin (#match? @type.builtin "^(AABB|AESContext|AStar2D|AStar3D|AStarGrid2D|AcceptDialog|AimModifier3D|AnimatableBody2D|AnimatableBody3D|AnimatedSprite2D|AnimatedSprite3D|AnimatedTexture|Animation|AnimationLibrary|AnimationMixer|AnimationNode|AnimationNodeAdd2|AnimationNodeAdd3|AnimationNodeAnimation|AnimationNodeBlend2|AnimationNodeBlend3|AnimationNodeBlendSpace1D|AnimationNodeBlendSpace2D|AnimationNodeBlendTree|AnimationNodeExtension|AnimationNodeOneShot|AnimationNodeOutput|AnimationNodeStateMachine|AnimationNodeStateMachinePlayback|AnimationNodeStateMachineTransition|AnimationNodeSub2|AnimationNodeSync|AnimationNodeTimeScale|AnimationNodeTimeSeek|AnimationNodeTransition|AnimationPlayer|AnimationRootNode|AnimationTree|Area2D|Area3D|Array|ArrayMesh|ArrayOccluder3D|AspectRatioContainer|AtlasTexture|AudioBusLayout|AudioEffect|AudioEffectAmplify|AudioEffectBandLimitFilter|AudioEffectBandPassFilter|AudioEffectCapture|AudioEffectChorus|AudioEffectCompressor|AudioEffectDelay|AudioEffectDistortion|AudioEffectEQ|AudioEffectEQ10|AudioEffectEQ21|AudioEffectEQ6|AudioEffectFilter|AudioEffectHardLimiter|AudioEffectHighPassFilter|AudioEffectHighShelfFilter|AudioEffectInstance|AudioEffectLimiter|AudioEffectLowPassFilter|AudioEffectLowShelfFilter|AudioEffectNotchFilter|AudioEffectPanner|AudioEffectPhaser|AudioEffectPitchShift|AudioEffectRecord|AudioEffectReverb|AudioEffectSpectrumAnalyzer|AudioEffectSpectrumAnalyzerInstance|AudioEffectStereoEnhance|AudioListener2D|AudioListener3D|AudioSample|AudioSamplePlayback|AudioServer|AudioStream|AudioStreamGenerator|AudioStreamGeneratorPlayback|AudioStreamMicrophone|AudioStreamPlayback|AudioStreamPlaybackPolyphonic|AudioStreamPlaybackResampled|AudioStreamPlayer|AudioStreamPlayer2D|AudioStreamPlayer3D|AudioStreamPolyphonic|AudioStreamRandomizer|AudioStreamWAV|BackBufferCopy|BaseButton|BaseMaterial3D|Basis|BitMap|Bone2D|BoneAttachment3D|BoneConstraint3D|BoneMap|BoneTwistDisperser3D|BoxContainer|BoxMesh|BoxOccluder3D|BoxShape3D|Button|ButtonGroup|CCDIK3D|CPUParticles2D|CPUParticles3D|Callable|CallbackTweener|Camera2D|Camera3D|CameraAttributes|CameraAttributesPhysical|CameraAttributesPractical|CameraFeed|CameraServer|CameraTexture|CanvasGroup|CanvasItem|CanvasItemMaterial|CanvasLayer|CanvasModulate|CanvasTexture|CapsuleMesh|CapsuleShape2D|CapsuleShape3D|CenterContainer|ChainIK3D|CharFXTransform|CharacterBody2D|CharacterBody3D|CheckBox|CheckButton|CircleShape2D|ClassDB|CodeEdit|CodeHighlighter|CollisionObject2D|CollisionObject3D|CollisionPolygon2D|CollisionPolygon3D|CollisionShape2D|CollisionShape3D|Color|ColorPalette|ColorPicker|ColorPickerButton|ColorRect|Compositor|CompositorEffect|CompressedCubemap|CompressedCubemapArray|CompressedTexture2D|CompressedTexture2DArray|CompressedTexture3D|CompressedTextureLayered|ConcavePolygonShape2D|ConcavePolygonShape3D|ConeTwistJoint3D|ConfigFile|ConfirmationDialog|Container|Control|ConvertTransformModifier3D|ConvexPolygonShape2D|ConvexPolygonShape3D|CopyTransformModifier3D|Crypto|CryptoKey|Cubemap|CubemapArray|Curve|Curve2D|Curve3D|CurveTexture|CurveXYZTexture|CylinderMesh|CylinderShape3D|DPITexture|DTLSServer|DampedSpringJoint2D|Decal|Dictionary|DirAccess|DirectionalLight2D|DirectionalLight3D|DisplayServer|EditorCommandPalette|EditorContextMenuPlugin|EditorDebuggerPlugin|EditorDebuggerSession|EditorDock|EditorExportPlatform|EditorExportPlatformAppleEmbedded|EditorExportPlatformExtension|EditorExportPlatformPC|EditorExportPlugin|EditorExportPreset|EditorFeatureProfile|EditorFileDialog|EditorFileSystem|EditorFileSystemDirectory|EditorFileSystemImportFormatSupportQuery|EditorImportPlugin|EditorInspector|EditorInspectorPlugin|EditorInterface|EditorNode3DGizmo|EditorNode3DGizmoPlugin|EditorPaths|EditorPlugin|EditorProperty|EditorResourceConversionPlugin|EditorResourcePicker|EditorResourcePreview|EditorResourcePreviewGenerator|EditorResourceTooltipPlugin|EditorSceneFormatImporter|EditorScenePostImport|EditorScenePostImportPlugin|EditorScript|EditorScriptPicker|EditorSelection|EditorSettings|EditorSpinSlider|EditorSyntaxHighlighter|EditorToaster|EditorTranslationParserPlugin|EditorUndoRedoManager|EditorVCSInterface|EncodedObjectAsID|Engine|EngineDebugger|EngineProfiler|Environment|Expression|ExternalTexture|FABRIK3D|FileAccess|FileDialog|FileSystemDock|FlowContainer|FogMaterial|FogVolume|FoldableContainer|FoldableGroup|Font|FontFile|FontVariation|FramebufferCacheRD|GDExtension|GDExtensionManager|GPUParticles2D|GPUParticles3D|GPUParticlesAttractor3D|GPUParticlesAttractorBox3D|GPUParticlesAttractorSphere3D|GPUParticlesAttractorVectorField3D|GPUParticlesCollision3D|GPUParticlesCollisionBox3D|GPUParticlesCollisionHeightField3D|GPUParticlesCollisionSDF3D|GPUParticlesCollisionSphere3D|Generic6DOFJoint3D|Geometry2D|Geometry3D|GeometryInstance3D|GodotInstance|Gradient|GradientTexture1D|GradientTexture2D|GraphEdit|GraphElement|GraphFrame|GraphNode|GridContainer|GrooveJoint2D|HBoxContainer|HFlowContainer|HMACContext|HScrollBar|HSeparator|HSlider|HSplitContainer|HTTPClient|HTTPRequest|HashingContext|HeightMapShape3D|HingeJoint3D|IKModifier3D|IP|Image|ImageFormatLoader|ImageFormatLoaderExtension|ImageTexture|ImageTexture3D|ImageTextureLayered|ImmediateMesh|ImporterMesh|ImporterMeshInstance3D|Input|InputEvent|InputEventAction|InputEventFromWindow|InputEventGesture|InputEventJoypadButton|InputEventJoypadMotion|InputEventKey|InputEventMIDI|InputEventMagnifyGesture|InputEventMouse|InputEventMouseButton|InputEventMouseMotion|InputEventPanGesture|InputEventScreenDrag|InputEventScreenTouch|InputEventShortcut|InputEventWithModifiers|InputMap|InstancePlaceholder|IntervalTweener|ItemList|IterateIK3D|JNISingleton|JSON|JSONRPC|JacobianIK3D|JavaClass|JavaClassWrapper|JavaObject|JavaScriptBridge|JavaScriptObject|Joint2D|Joint3D|JointLimitation3D|JointLimitationCone3D|KinematicCollision2D|KinematicCollision3D|Label|Label3D|LabelSettings|Light2D|Light3D|LightOccluder2D|LightmapGI|LightmapGIData|LightmapProbe|Lightmapper|LightmapperRD|LimitAngularVelocityModifier3D|Line2D|LineEdit|LinkButton|Logger|LookAtModifier3D|MainLoop|MarginContainer|Marker2D|Marker3D|Marshalls|Material|MenuBar|MenuButton|Mesh|MeshConvexDecompositionSettings|MeshDataTool|MeshInstance2D|MeshInstance3D|MeshLibrary|MeshTexture|MethodTweener|MissingNode|MissingResource|ModifierBoneTarget3D|MovieWriter|MultiMesh|MultiMeshInstance2D|MultiMeshInstance3D|MultiplayerAPI|MultiplayerAPIExtension|MultiplayerPeer|MultiplayerPeerExtension|Mutex|NativeMenu|NavigationAgent2D|NavigationAgent3D|NavigationLink2D|NavigationLink3D|NavigationMesh|NavigationMeshGenerator|NavigationMeshSourceGeometryData2D|NavigationMeshSourceGeometryData3D|NavigationObstacle2D|NavigationObstacle3D|NavigationPathQueryParameters2D|NavigationPathQueryParameters3D|NavigationPathQueryResult2D|NavigationPathQueryResult3D|NavigationPolygon|NavigationRegion2D|NavigationRegion3D|NavigationServer2D|NavigationServer2DManager|NavigationServer3D|NavigationServer3DManager|NinePatchRect|Node|Node2D|Node3D|Node3DGizmo|NodePath|ORMMaterial3D|OS|Object|Occluder3D|OccluderInstance3D|OccluderPolygon2D|OmniLight3D|OptimizedTranslation|OptionButton|PCKPacker|PackedByteArray|PackedColorArray|PackedDataContainer|PackedDataContainerRef|PackedFloat32Array|PackedFloat64Array|PackedInt32Array|PackedInt64Array|PackedScene|PackedStringArray|PackedVector2Array|PackedVector3Array|PackedVector4Array|PacketPeer|PacketPeerDTLS|PacketPeerExtension|PacketPeerStream|PacketPeerUDP|Panel|PanelContainer|PanoramaSkyMaterial|Parallax2D|ParallaxBackground|ParallaxLayer|ParticleProcessMaterial|Path2D|Path3D|PathFollow2D|PathFollow3D|Performance|PhysicalBone2D|PhysicalBone3D|PhysicalBoneSimulator3D|PhysicalSkyMaterial|PhysicsBody2D|PhysicsBody3D|PhysicsDirectBodyState2D|PhysicsDirectBodyState2DExtension|PhysicsDirectBodyState3D|PhysicsDirectBodyState3DExtension|PhysicsDirectSpaceState2D|PhysicsDirectSpaceState2DExtension|PhysicsDirectSpaceState3D|PhysicsDirectSpaceState3DExtension|PhysicsMaterial|PhysicsPointQueryParameters2D|PhysicsPointQueryParameters3D|PhysicsRayQueryParameters2D|PhysicsRayQueryParameters3D|PhysicsServer2D|PhysicsServer2DExtension|PhysicsServer2DManager|PhysicsServer3D|PhysicsServer3DExtension|PhysicsServer3DManager|PhysicsServer3DRenderingServerHandler|PhysicsShapeQueryParameters2D|PhysicsShapeQueryParameters3D|PhysicsTestMotionParameters2D|PhysicsTestMotionParameters3D|PhysicsTestMotionResult2D|PhysicsTestMotionResult3D|PinJoint2D|PinJoint3D|PlaceholderCubemap|PlaceholderCubemapArray|PlaceholderMaterial|PlaceholderMesh|PlaceholderTexture2D|PlaceholderTexture2DArray|PlaceholderTexture3D|PlaceholderTextureLayered|Plane|PlaneMesh|PointLight2D|PointMesh|Polygon2D|PolygonOccluder3D|PolygonPathFinder|Popup|PopupMenu|PopupPanel|PortableCompressedTexture2D|PrimitiveMesh|PrismMesh|ProceduralSkyMaterial|ProgressBar|ProjectSettings|Projection|PropertyTweener|QuadMesh|QuadOccluder3D|Quaternion|RDAttachmentFormat|RDFramebufferPass|RDPipelineColorBlendState|RDPipelineColorBlendStateAttachment|RDPipelineDepthStencilState|RDPipelineMultisampleState|RDPipelineRasterizationState|RDPipelineSpecializationConstant|RDSamplerState|RDShaderFile|RDShaderSPIRV|RDShaderSource|RDTextureFormat|RDTextureView|RDUniform|RDVertexAttribute|RID|RandomNumberGenerator|Range|RayCast2D|RayCast3D|Rect2|Rect2i|RectangleShape2D|RefCounted|ReferenceRect|ReflectionProbe|RemoteTransform2D|RemoteTransform3D|RenderData|RenderDataExtension|RenderDataRD|RenderSceneBuffers|RenderSceneBuffersConfiguration|RenderSceneBuffersExtension|RenderSceneBuffersRD|RenderSceneData|RenderSceneDataExtension|RenderSceneDataRD|RenderingDevice|RenderingServer|Resource|ResourceFormatLoader|ResourceFormatSaver|ResourceImporter|ResourceImporterBMFont|ResourceImporterBitMap|ResourceImporterCSVTranslation|ResourceImporterDynamicFont|ResourceImporterImage|ResourceImporterImageFont|ResourceImporterLayeredTexture|ResourceImporterOBJ|ResourceImporterSVG|ResourceImporterScene|ResourceImporterShaderFile|ResourceImporterTexture|ResourceImporterTextureAtlas|ResourceImporterWAV|ResourceLoader|ResourcePreloader|ResourceSaver|ResourceUID|RetargetModifier3D|RibbonTrailMesh|RichTextEffect|RichTextLabel|RigidBody2D|RigidBody3D|RootMotionView|SceneState|SceneTree|SceneTreeTimer|Script|ScriptBacktrace|ScriptCreateDialog|ScriptEditor|ScriptEditorBase|ScriptExtension|ScriptLanguage|ScriptLanguageExtension|ScrollBar|ScrollContainer|SegmentShape2D|Semaphore|SeparationRayShape2D|SeparationRayShape3D|Separator|Shader|ShaderGlobalsOverride|ShaderInclude|ShaderIncludeDB|ShaderMaterial|Shape2D|Shape3D|ShapeCast2D|ShapeCast3D|Shortcut|Signal|Skeleton2D|Skeleton3D|SkeletonIK3D|SkeletonModification2D|SkeletonModification2DCCDIK|SkeletonModification2DFABRIK|SkeletonModification2DJiggle|SkeletonModification2DLookAt|SkeletonModification2DPhysicalBones|SkeletonModification2DStackHolder|SkeletonModification2DTwoBoneIK|SkeletonModificationStack2D|SkeletonModifier3D|SkeletonProfile|SkeletonProfileHumanoid|Skin|SkinReference|Sky|Slider|SliderJoint3D|SocketServer|SoftBody3D|SphereMesh|SphereOccluder3D|SphereShape3D|SpinBox|SplineIK3D|SplitContainer|SpotLight3D|SpringArm3D|SpringBoneCollision3D|SpringBoneCollisionCapsule3D|SpringBoneCollisionPlane3D|SpringBoneCollisionSphere3D|SpringBoneSimulator3D|Sprite2D|Sprite3D|SpriteBase3D|SpriteFrames|StandardMaterial3D|StaticBody2D|StaticBody3D|StatusIndicator|StreamPeer|StreamPeerBuffer|StreamPeerExtension|StreamPeerGZIP|StreamPeerSocket|StreamPeerTCP|StreamPeerTLS|StreamPeerUDS|String|StringName|StyleBox|StyleBoxEmpty|StyleBoxFlat|StyleBoxLine|StyleBoxTexture|SubViewport|SubViewportContainer|SubtweenTweener|SurfaceTool|SyntaxHighlighter|SystemFont|TCPServer|TLSOptions|TabBar|TabContainer|TextEdit|TextLine|TextMesh|TextParagraph|TextServer|TextServerDummy|TextServerExtension|TextServerManager|Texture|Texture2D|Texture2DArray|Texture2DArrayRD|Texture2DRD|Texture3D|Texture3DRD|TextureButton|TextureCubemapArrayRD|TextureCubemapRD|TextureLayered|TextureLayeredRD|TextureProgressBar|TextureRect|Theme|ThemeDB|Thread|TileData|TileMap|TileMapLayer|TileMapPattern|TileSet|TileSetAtlasSource|TileSetScenesCollectionSource|TileSetSource|Time|Timer|TorusMesh|TouchScreenButton|Transform2D|Transform3D|Translation|TranslationDomain|TranslationServer|Tree|TreeItem|TriangleMesh|TubeTrailMesh|Tween|Tweener|TwoBoneIK3D|UDPServer|UDSServer|UndoRedo|UniformSetCacheRD|VBoxContainer|VFlowContainer|VScrollBar|VSeparator|VSlider|VSplitContainer|Variant|Vector2|Vector2i|Vector3|Vector3i|Vector4|Vector4i|VehicleBody3D|VehicleWheel3D|VideoStream|VideoStreamPlayback|VideoStreamPlayer|Viewport|ViewportTexture|VisibleOnScreenEnabler2D|VisibleOnScreenEnabler3D|VisibleOnScreenNotifier2D|VisibleOnScreenNotifier3D|VisualInstance3D|VisualShader|VisualShaderNode|VisualShaderNodeBillboard|VisualShaderNodeBooleanConstant|VisualShaderNodeBooleanParameter|VisualShaderNodeClamp|VisualShaderNodeColorConstant|VisualShaderNodeColorFunc|VisualShaderNodeColorOp|VisualShaderNodeColorParameter|VisualShaderNodeComment|VisualShaderNodeCompare|VisualShaderNodeConstant|VisualShaderNodeCubemap|VisualShaderNodeCubemapParameter|VisualShaderNodeCurveTexture|VisualShaderNodeCurveXYZTexture|VisualShaderNodeCustom|VisualShaderNodeDerivativeFunc|VisualShaderNodeDeterminant|VisualShaderNodeDistanceFade|VisualShaderNodeDotProduct|VisualShaderNodeExpression|VisualShaderNodeFaceForward|VisualShaderNodeFloatConstant|VisualShaderNodeFloatFunc|VisualShaderNodeFloatOp|VisualShaderNodeFloatParameter|VisualShaderNodeFrame|VisualShaderNodeFresnel|VisualShaderNodeGlobalExpression|VisualShaderNodeGroupBase|VisualShaderNodeIf|VisualShaderNodeInput|VisualShaderNodeIntConstant|VisualShaderNodeIntFunc|VisualShaderNodeIntOp|VisualShaderNodeIntParameter|VisualShaderNodeIs|VisualShaderNodeLinearSceneDepth|VisualShaderNodeMix|VisualShaderNodeMultiplyAdd|VisualShaderNodeOuterProduct|VisualShaderNodeOutput|VisualShaderNodeParameter|VisualShaderNodeParameterRef|VisualShaderNodeParticleAccelerator|VisualShaderNodeParticleBoxEmitter|VisualShaderNodeParticleConeVelocity|VisualShaderNodeParticleEmit|VisualShaderNodeParticleEmitter|VisualShaderNodeParticleMeshEmitter|VisualShaderNodeParticleMultiplyByAxisAngle|VisualShaderNodeParticleOutput|VisualShaderNodeParticleRandomness|VisualShaderNodeParticleRingEmitter|VisualShaderNodeParticleSphereEmitter|VisualShaderNodeProximityFade|VisualShaderNodeRandomRange|VisualShaderNodeRemap|VisualShaderNodeReroute|VisualShaderNodeResizableBase|VisualShaderNodeRotationByAxis|VisualShaderNodeSDFRaymarch|VisualShaderNodeSDFToScreenUV|VisualShaderNodeSample3D|VisualShaderNodeScreenNormalWorldSpace|VisualShaderNodeScreenUVToSDF|VisualShaderNodeSmoothStep|VisualShaderNodeStep|VisualShaderNodeSwitch|VisualShaderNodeTexture|VisualShaderNodeTexture2DArray|VisualShaderNodeTexture2DArrayParameter|VisualShaderNodeTexture2DParameter|VisualShaderNodeTexture3D|VisualShaderNodeTexture3DParameter|VisualShaderNodeTextureParameter|VisualShaderNodeTextureParameterTriplanar|VisualShaderNodeTextureSDF|VisualShaderNodeTextureSDFNormal|VisualShaderNodeTransformCompose|VisualShaderNodeTransformConstant|VisualShaderNodeTransformDecompose|VisualShaderNodeTransformFunc|VisualShaderNodeTransformOp|VisualShaderNodeTransformParameter|VisualShaderNodeTransformVecMult|VisualShaderNodeUIntConstant|VisualShaderNodeUIntFunc|VisualShaderNodeUIntOp|VisualShaderNodeUIntParameter|VisualShaderNodeUVFunc|VisualShaderNodeUVPolarCoord|VisualShaderNodeVarying|VisualShaderNodeVaryingGetter|VisualShaderNodeVaryingSetter|VisualShaderNodeVec2Constant|VisualShaderNodeVec2Parameter|VisualShaderNodeVec3Constant|VisualShaderNodeVec3Parameter|VisualShaderNodeVec4Constant|VisualShaderNodeVec4Parameter|VisualShaderNodeVectorBase|VisualShaderNodeVectorCompose|VisualShaderNodeVectorDecompose|VisualShaderNodeVectorDistance|VisualShaderNodeVectorFunc|VisualShaderNodeVectorLen|VisualShaderNodeVectorOp|VisualShaderNodeVectorRefract|VisualShaderNodeWorldPositionFromDepth|VoxelGI|VoxelGIData|WeakRef|Window|WorkerThreadPool|World2D|World3D|WorldBoundaryShape2D|WorldBoundaryShape3D|WorldEnvironment|X509Certificate|XMLParser|XRAnchor3D|XRBodyModifier3D|XRBodyTracker|XRCamera3D|XRController3D|XRControllerTracker|XRFaceModifier3D|XRFaceTracker|XRHandModifier3D|XRHandTracker|XRInterface|XRInterfaceExtension|XRNode3D|XROrigin3D|XRPose|XRPositionalTracker|XRServer|XRTracker|XRVRS|bool|float|int|AudioServer|CameraServer|ClassDB|DisplayServer|EditorInterface|Engine|EngineDebugger|GDExtensionManager|Geometry2D|Geometry3D|GodotSharp|IP|Input|InputMap|JavaClassWrapper|JavaScriptBridge|Marshalls|NavigationMeshGenerator|NavigationServer2D|NavigationServer3D|OS|Performance|PhysicsServer2D|PhysicsServer2DManager|PhysicsServer3D|PhysicsServer3DManager|ProjectSettings|RenderingServer|ResourceLoader|ResourceSaver|ResourceUID|TextServerManager|ThemeDB|Time|TranslationServer|WorkerThreadPool|XRServer)$")) ; Builtin Funcs -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (call (identifier) @function.builtin (#match? @function.builtin "^(abs|absf|absi|acos|acosh|angle_difference|asin|asinh|atan|atan2|atanh|bezier_derivative|bezier_interpolate|bytes_to_var|bytes_to_var_with_objects|ceil|ceilf|ceili|clamp|clampf|clampi|cos|cosh|cubic_interpolate|cubic_interpolate_angle|cubic_interpolate_angle_in_time|cubic_interpolate_in_time|db_to_linear|deg_to_rad|ease|error_string|exp|floor|floorf|floori|fmod|fposmod|hash|instance_from_id|inverse_lerp|is_equal_approx|is_finite|is_inf|is_instance_id_valid|is_instance_valid|is_nan|is_same|is_zero_approx|lerp|lerp_angle|lerpf|linear_to_db|log|max|maxf|maxi|min|minf|mini|move_toward|nearest_po2|pingpong|posmod|pow|print|print_rich|print_verbose|printerr|printraw|prints|printt|push_error|push_warning|rad_to_deg|rand_from_seed|randf|randf_range|randfn|randi|randi_range|randomize|remap|rid_allocate_id|rid_from_int64|rotate_toward|round|roundf|roundi|seed|sign|signf|signi|sin|sinh|smoothstep|snapped|snappedf|snappedi|sqrt|step_decimals|str|str_to_var|tan|tanh|type_convert|type_string|typeof|var_to_bytes|var_to_bytes_with_objects|var_to_str|weakref|wrap|wrapf|wrapi|Color8|assert|char|convert|dict_to_inst|get_stack|inst_to_dict|is_instance_of|len|load|ord|preload|print_debug|print_stack|range|type_exists)$")) -;; #7DCFFF #000000 0 0 0 2 +;; #7DCFFF #000000 0 0 0 0 2 ; Builtin Constants ((identifier) @constant.builtin (#match? @constant.builtin "^(INF|NAN|PI|TAU|CLOCKWISE|CORNER_BOTTOM_LEFT|CORNER_BOTTOM_RIGHT|CORNER_TOP_LEFT|CORNER_TOP_RIGHT|COUNTERCLOCKWISE|ERR_ALREADY_EXISTS|ERR_ALREADY_IN_USE|ERR_BUG|ERR_BUSY|ERR_CANT_ACQUIRE_RESOURCE|ERR_CANT_CONNECT|ERR_CANT_CREATE|ERR_CANT_FORK|ERR_CANT_OPEN|ERR_CANT_RESOLVE|ERR_COMPILATION_FAILED|ERR_CONNECTION_ERROR|ERR_CYCLIC_LINK|ERR_DATABASE_CANT_READ|ERR_DATABASE_CANT_WRITE|ERR_DOES_NOT_EXIST|ERR_DUPLICATE_SYMBOL|ERR_FILE_ALREADY_IN_USE|ERR_FILE_BAD_DRIVE|ERR_FILE_BAD_PATH|ERR_FILE_CANT_OPEN|ERR_FILE_CANT_READ|ERR_FILE_CANT_WRITE|ERR_FILE_CORRUPT|ERR_FILE_EOF|ERR_FILE_MISSING_DEPENDENCIES|ERR_FILE_NO_PERMISSION|ERR_FILE_NOT_FOUND|ERR_FILE_UNRECOGNIZED|ERR_HELP|ERR_INVALID_DATA|ERR_INVALID_DECLARATION|ERR_INVALID_PARAMETER|ERR_LINK_FAILED|ERR_LOCKED|ERR_METHOD_NOT_FOUND|ERR_OUT_OF_MEMORY|ERR_PARAMETER_RANGE_ERROR|ERR_PARSE_ERROR|ERR_PRINTER_ON_FIRE|ERR_QUERY_FAILED|ERR_SCRIPT_FAILED|ERR_SKIP|ERR_TIMEOUT|ERR_UNAUTHORIZED|ERR_UNAVAILABLE|ERR_UNCONFIGURED|EULER_ORDER_XYZ|EULER_ORDER_XZY|EULER_ORDER_YXZ|EULER_ORDER_YZX|EULER_ORDER_ZXY|EULER_ORDER_ZYX|FAILED|HORIZONTAL|HORIZONTAL_ALIGNMENT_CENTER|HORIZONTAL_ALIGNMENT_FILL|HORIZONTAL_ALIGNMENT_LEFT|HORIZONTAL_ALIGNMENT_RIGHT|INLINE_ALIGNMENT_BASELINE_TO|INLINE_ALIGNMENT_BOTTOM|INLINE_ALIGNMENT_BOTTOM_TO|INLINE_ALIGNMENT_CENTER|INLINE_ALIGNMENT_CENTER_TO|INLINE_ALIGNMENT_IMAGE_MASK|INLINE_ALIGNMENT_TEXT_MASK|INLINE_ALIGNMENT_TO_BASELINE|INLINE_ALIGNMENT_TO_BOTTOM|INLINE_ALIGNMENT_TO_CENTER|INLINE_ALIGNMENT_TOP|INLINE_ALIGNMENT_TOP_TO|INLINE_ALIGNMENT_TO_TOP|JOY_AXIS_INVALID|JOY_AXIS_LEFT_X|JOY_AXIS_LEFT_Y|JOY_AXIS_MAX|JOY_AXIS_RIGHT_X|JOY_AXIS_RIGHT_Y|JOY_AXIS_SDL_MAX|JOY_AXIS_TRIGGER_LEFT|JOY_AXIS_TRIGGER_RIGHT|JOY_BUTTON_A|JOY_BUTTON_B|JOY_BUTTON_BACK|JOY_BUTTON_DPAD_DOWN|JOY_BUTTON_DPAD_LEFT|JOY_BUTTON_DPAD_RIGHT|JOY_BUTTON_DPAD_UP|JOY_BUTTON_GUIDE|JOY_BUTTON_INVALID|JOY_BUTTON_LEFT_SHOULDER|JOY_BUTTON_LEFT_STICK|JOY_BUTTON_MAX|JOY_BUTTON_MISC1|JOY_BUTTON_PADDLE1|JOY_BUTTON_PADDLE2|JOY_BUTTON_PADDLE3|JOY_BUTTON_PADDLE4|JOY_BUTTON_RIGHT_SHOULDER|JOY_BUTTON_RIGHT_STICK|JOY_BUTTON_SDL_MAX|JOY_BUTTON_START|JOY_BUTTON_TOUCHPAD|JOY_BUTTON_X|JOY_BUTTON_Y|KEY_0|KEY_1|KEY_2|KEY_3|KEY_4|KEY_5|KEY_6|KEY_7|KEY_8|KEY_9|KEY_A|KEY_ALT|KEY_AMPERSAND|KEY_APOSTROPHE|KEY_ASCIICIRCUM|KEY_ASCIITILDE|KEY_ASTERISK|KEY_AT|KEY_B|KEY_BACK|KEY_BACKSLASH|KEY_BACKSPACE|KEY_BACKTAB|KEY_BAR|KEY_BRACELEFT|KEY_BRACERIGHT|KEY_BRACKETLEFT|KEY_BRACKETRIGHT|KEY_C|KEY_CAPSLOCK|KEY_CLEAR|KEY_CODE_MASK|KEY_COLON|KEY_COMMA|KEY_CTRL|KEY_D|KEY_DELETE|KEY_DOLLAR|KEY_DOWN|KEY_E|KEY_END|KEY_ENTER|KEY_EQUAL|KEY_ESCAPE|KEY_EXCLAM|KEY_F|KEY_F1|KEY_F10|KEY_F11|KEY_F12|KEY_F13|KEY_F14|KEY_F15|KEY_F16|KEY_F17|KEY_F18|KEY_F19|KEY_F2|KEY_F20|KEY_F21|KEY_F22|KEY_F23|KEY_F24|KEY_F25|KEY_F26|KEY_F27|KEY_F28|KEY_F29|KEY_F3|KEY_F30|KEY_F31|KEY_F32|KEY_F33|KEY_F34|KEY_F35|KEY_F4|KEY_F5|KEY_F6|KEY_F7|KEY_F8|KEY_F9|KEY_FAVORITES|KEY_FORWARD|KEY_G|KEY_GLOBE|KEY_GREATER|KEY_H|KEY_HELP|KEY_HOME|KEY_HOMEPAGE|KEY_HYPER|KEY_I|KEY_INSERT|KEY_J|KEY_JIS_EISU|KEY_JIS_KANA|KEY_K|KEY_KEYBOARD|KEY_KP_0|KEY_KP_1|KEY_KP_2|KEY_KP_3|KEY_KP_4|KEY_KP_5|KEY_KP_6|KEY_KP_7|KEY_KP_8|KEY_KP_9|KEY_KP_ADD|KEY_KP_DIVIDE|KEY_KP_ENTER|KEY_KP_MULTIPLY|KEY_KP_PERIOD|KEY_KP_SUBTRACT|KEY_L|KEY_LAUNCH0|KEY_LAUNCH1|KEY_LAUNCH2|KEY_LAUNCH3|KEY_LAUNCH4|KEY_LAUNCH5|KEY_LAUNCH6|KEY_LAUNCH7|KEY_LAUNCH8|KEY_LAUNCH9|KEY_LAUNCHA|KEY_LAUNCHB|KEY_LAUNCHC|KEY_LAUNCHD|KEY_LAUNCHE|KEY_LAUNCHF|KEY_LAUNCHMAIL|KEY_LAUNCHMEDIA|KEY_LEFT|KEY_LESS|KEY_LOCATION_LEFT|KEY_LOCATION_RIGHT|KEY_LOCATION_UNSPECIFIED|KEY_M|KEY_MASK_ALT|KEY_MASK_CMD_OR_CTRL|KEY_MASK_CTRL|KEY_MASK_GROUP_SWITCH|KEY_MASK_KPAD|KEY_MASK_META|KEY_MASK_SHIFT|KEY_MEDIANEXT|KEY_MEDIAPLAY|KEY_MEDIAPREVIOUS|KEY_MEDIARECORD|KEY_MEDIASTOP|KEY_MENU|KEY_META|KEY_MINUS|KEY_MODIFIER_MASK|KEY_N|KEY_NONE|KEY_NUMBERSIGN|KEY_NUMLOCK|KEY_O|KEY_OPENURL|KEY_P|KEY_PAGEDOWN|KEY_PAGEUP|KEY_PARENLEFT|KEY_PARENRIGHT|KEY_PAUSE|KEY_PERCENT|KEY_PERIOD|KEY_PLUS|KEY_PRINT|KEY_Q|KEY_QUESTION|KEY_QUOTEDBL|KEY_QUOTELEFT|KEY_R|KEY_REFRESH|KEY_RIGHT|KEY_S|KEY_SCROLLLOCK|KEY_SEARCH|KEY_SECTION|KEY_SEMICOLON|KEY_SHIFT|KEY_SLASH|KEY_SPACE|KEY_SPECIAL|KEY_STANDBY|KEY_STOP|KEY_SYSREQ|KEY_T|KEY_TAB|KEY_U|KEY_UNDERSCORE|KEY_UNKNOWN|KEY_UP|KEY_V|KEY_VOLUMEDOWN|KEY_VOLUMEMUTE|KEY_VOLUMEUP|KEY_W|KEY_X|KEY_Y|KEY_YEN|KEY_Z|METHOD_FLAG_CONST|METHOD_FLAG_EDITOR|METHOD_FLAG_NORMAL|METHOD_FLAG_OBJECT_CORE|METHOD_FLAGS_DEFAULT|METHOD_FLAG_STATIC|METHOD_FLAG_VARARG|METHOD_FLAG_VIRTUAL|METHOD_FLAG_VIRTUAL_REQUIRED|MIDI_MESSAGE_ACTIVE_SENSING|MIDI_MESSAGE_AFTERTOUCH|MIDI_MESSAGE_CHANNEL_PRESSURE|MIDI_MESSAGE_CONTINUE|MIDI_MESSAGE_CONTROL_CHANGE|MIDI_MESSAGE_NONE|MIDI_MESSAGE_NOTE_OFF|MIDI_MESSAGE_NOTE_ON|MIDI_MESSAGE_PITCH_BEND|MIDI_MESSAGE_PROGRAM_CHANGE|MIDI_MESSAGE_QUARTER_FRAME|MIDI_MESSAGE_SONG_POSITION_POINTER|MIDI_MESSAGE_SONG_SELECT|MIDI_MESSAGE_START|MIDI_MESSAGE_STOP|MIDI_MESSAGE_SYSTEM_EXCLUSIVE|MIDI_MESSAGE_SYSTEM_RESET|MIDI_MESSAGE_TIMING_CLOCK|MIDI_MESSAGE_TUNE_REQUEST|MOUSE_BUTTON_LEFT|MOUSE_BUTTON_MASK_LEFT|MOUSE_BUTTON_MASK_MB_XBUTTON1|MOUSE_BUTTON_MASK_MB_XBUTTON2|MOUSE_BUTTON_MASK_MIDDLE|MOUSE_BUTTON_MASK_RIGHT|MOUSE_BUTTON_MIDDLE|MOUSE_BUTTON_NONE|MOUSE_BUTTON_RIGHT|MOUSE_BUTTON_WHEEL_DOWN|MOUSE_BUTTON_WHEEL_LEFT|MOUSE_BUTTON_WHEEL_RIGHT|MOUSE_BUTTON_WHEEL_UP|MOUSE_BUTTON_XBUTTON1|MOUSE_BUTTON_XBUTTON2|OK|OP_ADD|OP_AND|OP_BIT_AND|OP_BIT_NEGATE|OP_BIT_OR|OP_BIT_XOR|OP_DIVIDE|OP_EQUAL|OP_GREATER|OP_GREATER_EQUAL|OP_IN|OP_LESS|OP_LESS_EQUAL|OP_MAX|OP_MODULE|OP_MULTIPLY|OP_NEGATE|OP_NOT|OP_NOT_EQUAL|OP_OR|OP_POSITIVE|OP_POWER|OP_SHIFT_LEFT|OP_SHIFT_RIGHT|OP_SUBTRACT|OP_XOR|PROPERTY_HINT_ARRAY_TYPE|PROPERTY_HINT_COLOR_NO_ALPHA|PROPERTY_HINT_DICTIONARY_TYPE|PROPERTY_HINT_DIR|PROPERTY_HINT_ENUM|PROPERTY_HINT_ENUM_SUGGESTION|PROPERTY_HINT_EXP_EASING|PROPERTY_HINT_EXPRESSION|PROPERTY_HINT_FILE|PROPERTY_HINT_FILE_PATH|PROPERTY_HINT_FLAGS|PROPERTY_HINT_GLOBAL_DIR|PROPERTY_HINT_GLOBAL_FILE|PROPERTY_HINT_GLOBAL_SAVE_FILE|PROPERTY_HINT_GROUP_ENABLE|PROPERTY_HINT_HIDE_QUATERNION_EDIT|PROPERTY_HINT_INPUT_NAME|PROPERTY_HINT_INT_IS_OBJECTID|PROPERTY_HINT_INT_IS_POINTER|PROPERTY_HINT_LAYERS_2D_NAVIGATION|PROPERTY_HINT_LAYERS_2D_PHYSICS|PROPERTY_HINT_LAYERS_2D_RENDER|PROPERTY_HINT_LAYERS_3D_NAVIGATION|PROPERTY_HINT_LAYERS_3D_PHYSICS|PROPERTY_HINT_LAYERS_3D_RENDER|PROPERTY_HINT_LAYERS_AVOIDANCE|PROPERTY_HINT_LINK|PROPERTY_HINT_LOCALE_ID|PROPERTY_HINT_LOCALIZABLE_STRING|PROPERTY_HINT_MAX|PROPERTY_HINT_MULTILINE_TEXT|PROPERTY_HINT_NODE_PATH_TO_EDITED_NODE|PROPERTY_HINT_NODE_PATH_VALID_TYPES|PROPERTY_HINT_NODE_TYPE|PROPERTY_HINT_NONE|PROPERTY_HINT_OBJECT_ID|PROPERTY_HINT_OBJECT_TOO_BIG|PROPERTY_HINT_ONESHOT|PROPERTY_HINT_PASSWORD|PROPERTY_HINT_PLACEHOLDER_TEXT|PROPERTY_HINT_RANGE|PROPERTY_HINT_RESOURCE_TYPE|PROPERTY_HINT_SAVE_FILE|PROPERTY_HINT_TOOL_BUTTON|PROPERTY_HINT_TYPE_STRING|PROPERTY_USAGE_ALWAYS_DUPLICATE|PROPERTY_USAGE_ARRAY|PROPERTY_USAGE_CATEGORY|PROPERTY_USAGE_CHECKABLE|PROPERTY_USAGE_CHECKED|PROPERTY_USAGE_CLASS_IS_BITFIELD|PROPERTY_USAGE_CLASS_IS_ENUM|PROPERTY_USAGE_DEFAULT|PROPERTY_USAGE_DEFERRED_SET_RESOURCE|PROPERTY_USAGE_EDITOR|PROPERTY_USAGE_EDITOR_BASIC_SETTING|PROPERTY_USAGE_EDITOR_INSTANTIATE_OBJECT|PROPERTY_USAGE_GROUP|PROPERTY_USAGE_HIGH_END_GFX|PROPERTY_USAGE_INTERNAL|PROPERTY_USAGE_KEYING_INCREMENTS|PROPERTY_USAGE_NEVER_DUPLICATE|PROPERTY_USAGE_NIL_IS_VARIANT|PROPERTY_USAGE_NODE_PATH_FROM_SCENE_ROOT|PROPERTY_USAGE_NO_EDITOR|PROPERTY_USAGE_NO_INSTANCE_STATE|PROPERTY_USAGE_NONE|PROPERTY_USAGE_READ_ONLY|PROPERTY_USAGE_RESOURCE_NOT_PERSISTENT|PROPERTY_USAGE_RESTART_IF_CHANGED|PROPERTY_USAGE_SCRIPT_DEFAULT_VALUE|PROPERTY_USAGE_SCRIPT_VARIABLE|PROPERTY_USAGE_SECRET|PROPERTY_USAGE_STORAGE|PROPERTY_USAGE_STORE_IF_NULL|PROPERTY_USAGE_SUBGROUP|PROPERTY_USAGE_UPDATE_ALL_IF_MODIFIED|SIDE_BOTTOM|SIDE_LEFT|SIDE_RIGHT|SIDE_TOP|TYPE_AABB|TYPE_ARRAY|TYPE_BASIS|TYPE_BOOL|TYPE_CALLABLE|TYPE_COLOR|TYPE_DICTIONARY|TYPE_FLOAT|TYPE_INT|TYPE_MAX|TYPE_NIL|TYPE_NODE_PATH|TYPE_OBJECT|TYPE_PACKED_BYTE_ARRAY|TYPE_PACKED_COLOR_ARRAY|TYPE_PACKED_FLOAT32_ARRAY|TYPE_PACKED_FLOAT64_ARRAY|TYPE_PACKED_INT32_ARRAY|TYPE_PACKED_INT64_ARRAY|TYPE_PACKED_STRING_ARRAY|TYPE_PACKED_VECTOR2_ARRAY|TYPE_PACKED_VECTOR3_ARRAY|TYPE_PACKED_VECTOR4_ARRAY|TYPE_PLANE|TYPE_PROJECTION|TYPE_QUATERNION|TYPE_RECT2|TYPE_RECT2I|TYPE_RID|TYPE_SIGNAL|TYPE_STRING|TYPE_STRING_NAME|TYPE_TRANSFORM2D|TYPE_TRANSFORM3D|TYPE_VECTOR2|TYPE_VECTOR2I|TYPE_VECTOR3|TYPE_VECTOR3I|TYPE_VECTOR4|TYPE_VECTOR4I|VERTICAL|VERTICAL_ALIGNMENT_BOTTOM|VERTICAL_ALIGNMENT_CENTER|VERTICAL_ALIGNMENT_FILL|VERTICAL_ALIGNMENT_TOP)$")) diff --git a/grammar/gitattributes.scm b/grammar/gitattributes.scm index 46d3b99..2436071 100644 --- a/grammar/gitattributes.scm +++ b/grammar/gitattributes.scm @@ -1,64 +1,64 @@ -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 (dir_sep) @punctuation.delimiter -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 (quoted_pattern "\"" @punctuation.special) -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 (range_notation) @string.special -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 (range_notation [ "[" "]" ] @punctuation.bracket) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (wildcard) @string.regexp -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (range_negation) @operator -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (character_class) @constant -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (class_range "-" @operator) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ (ansi_c_escape) (escaped_char) ] @escape -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 (attribute (attr_name) @variable.parameter) -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (attribute (builtin_attr) @variable.builtin) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 [ (attr_reset) (attr_unset) (attr_set) ] @operator -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (boolean_value) @boolean -;; #AAD94C #000000 0 0 0 2 +;; #AAD94C #000000 0 0 0 0 2 (string_value) @string -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (macro_tag) @keyword -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (macro_def macro_name: (_) @property) -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ (pattern_negation) (redundant_escape) @@ -66,5 +66,5 @@ (ignored_value) ] @error -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment diff --git a/grammar/gitignore.scm b/grammar/gitignore.scm index 93bb1bc..d1e2f69 100644 --- a/grammar/gitignore.scm +++ b/grammar/gitignore.scm @@ -1,46 +1,46 @@ -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (pattern_char) @string.special.path -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 [ (directory_separator) (directory_separator_escaped) ] @punctuation.delimiter -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 [ (wildcard_char_single) (wildcard_chars) (wildcard_chars_allow_slash) ] @character.special -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ (pattern_char_escaped) (bracket_char_escaped) ] @string.escape -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 (negation) @punctuation.special -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (bracket_negation) @operator -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 [ "[" "]" ] @punctuation.bracket -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (bracket_char) @constant -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (bracket_range "-" @operator) -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (bracket_char_class) @constant.builtin diff --git a/grammar/go.scm b/grammar/go.scm index fdc66a3..001e22f 100644 --- a/grammar/go.scm +++ b/grammar/go.scm @@ -1,66 +1,66 @@ -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (type_identifier) @type -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (type_spec name: (type_identifier) @type.definition) -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (field_identifier) @property -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (identifier) @variable -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (package_identifier) @module -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (parameter_declaration (identifier) @variable.parameter) -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (variadic_parameter_declaration (identifier) @variable.parameter) -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (label_name) @label -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (const_spec name: (identifier) @constant) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (call_expression function: (identifier) @function.call) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (call_expression function: (selector_expression field: (field_identifier) @function.method.call)) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (function_declaration name: (identifier) @function) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (method_declaration name: (field_identifier) @function.method) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (method_elem name: (field_identifier) @function.method) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 ((call_expression (identifier) @constructor) (#match? @constructor "^[nN]ew.+$")) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 ((call_expression (identifier) @constructor) (#match? @constructor "^[mM]ake.+$")) -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "--" "-" @@ -102,7 +102,7 @@ "~" ] @operator -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "break" "const" @@ -116,32 +116,32 @@ "fallthrough" ] @keyword -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "type" "struct" "interface" ] @keyword.type -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "func" @keyword.function -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "return" @keyword.return -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "go" @keyword.coroutine -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "for" @keyword.repeat -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "import" "package" ] @keyword.import -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "else" "case" @@ -149,128 +149,128 @@ "if" ] @keyword.conditional -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ "chan" "map" ] @type.builtin -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 ((type_identifier) @type.builtin (#match? @type.builtin "^(any|bool|byte|comparable|complex128|complex64|error|float32|float64|int|int16|int32|int64|int8|rune|string|uint|uint16|uint32|uint64|uint8|uintptr)$")) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 ((identifier) @function.builtin (#match? @function.builtin "^(append|cap|clear|close|complex|copy|delete|imag|len|make|max|min|new|panic|print|println|real|recover)$")) -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 "." @punctuation.delimiter -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 "," @punctuation.delimiter -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 ":" @punctuation.delimiter -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 ";" @punctuation.delimiter -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 "(" @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 ")" @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 "{" @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 "}" @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 "[" @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 "]" @punctuation.bracket -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (interpreted_string_literal) @string -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (raw_string_literal) @string -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (rune_literal) @string -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (escape_sequence) @string.escape -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (int_literal) @number -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (float_literal) @number.float -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (imaginary_literal) @number -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 [ (true) (false) ] @boolean -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 [ (nil) (iota) ] @constant.builtin -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (keyed_element . (literal_element (identifier) @variable.member)) -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (field_declaration name: (field_identifier) @variable.member) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (source_file . (comment)+ @comment.documentation) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (source_file (comment)+ @comment.documentation . (const_declaration)) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (source_file (comment)+ @comment.documentation . (function_declaration)) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (source_file (comment)+ @comment.documentation . (type_declaration)) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (source_file (comment)+ @comment.documentation . (var_declaration)) -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (call_expression (selector_expression) @_function (#match? @_function diff --git a/grammar/gomod.scm b/grammar/gomod.scm index 77be44e..6839419 100644 --- a/grammar/gomod.scm +++ b/grammar/gomod.scm @@ -1,4 +1,4 @@ -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 [ "require" "replace" @@ -7,34 +7,34 @@ "retract" ] @keyword -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ "go" "module" ] @keyword.directive -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 "=>" @operator -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell -;; #7dcfff #000000 0 0 0 1 +;; #7dcfff #000000 0 0 0 0 1 (module_path) @string.special.url -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (tool_directive) @keyword.directive (tool) @string.special.url -;; #F29668 #000000 0 0 0 2 +;; #F29668 #000000 0 0 0 0 2 [ (version) (go_version) (toolchain_name) ] @string.special -;; #888888 #000000 0 0 0 3 +;; #888888 #000000 0 0 0 0 3 [ "(" ")" @@ -42,5 +42,5 @@ "]" ] @punctuation.bracket -;; #888888 #000000 0 1 0 3 +;; #888888 #000000 0 1 0 0 3 "," @punctuation.delimiter diff --git a/grammar/h.scm b/grammar/h.scm index 7f3842e..306a7a0 100644 --- a/grammar/h.scm +++ b/grammar/h.scm @@ -2,45 +2,45 @@ ; Identifiers ; ============================================================ -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 ((identifier) @variable) -;; #FFB870 #000000 0 0 0 9 +;; #FFB870 #000000 0 0 0 0 9 (function_declarator declarator: (identifier) @function) -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 ((identifier) @constant (#match? @constant "^[A-Z][A-Z0-9_]+$")) -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (preproc_def (preproc_arg) @constant (#match? @constant "^[A-Z][A-Z0-9_]+$")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((identifier) @constant.builtin (#match? @constant.builtin "^(stderr|stdin|stdout|__FILE__|__LINE__|__DATE__|__TIME__|__STDC__|__STDC_VERSION__|__STDC_HOSTED__|__cplusplus|__OBJC__|__ASSEMBLER__|__BASE_FILE__|__FILE_NAME__|__INCLUDE_LEVEL__|__TIMESTAMP__|__clang__|__clang_major__|__clang_minor__|__clang_patchlevel__|__clang_version__|__clang_literal_encoding__|__clang_wide_literal_encoding__|__FUNCTION__|__func__|__PRETTY_FUNCTION__|__VA_ARGS__|__VA_OPT__)$")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_def (preproc_arg) @constant.builtin (#match? @constant.builtin "^(stderr|stdin|stdout|__FILE__|__LINE__|__DATE__|__TIME__|__STDC__|__STDC_VERSION__|__STDC_HOSTED__|__cplusplus|__OBJC__|__ASSEMBLER__|__BASE_FILE__|__FILE_NAME__|__INCLUDE_LEVEL__|__TIMESTAMP__|__clang__|__clang_major__|__clang_minor__|__clang_patchlevel__|__clang_version__|__clang_literal_encoding__|__clang_wide_literal_encoding__|__FUNCTION__|__func__|__PRETTY_FUNCTION__|__VA_ARGS__|__VA_OPT__)$")) -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 (preproc_def (preproc_arg) @variable) -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 (statement_identifier) @label -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 (declaration type: (type_identifier) @_type declarator: (identifier) @label (#match? @_type "^__label__$")) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 ((identifier) @variable.member (#match? @variable.member "^m_.*$")) @@ -48,7 +48,7 @@ ; Keywords ; ============================================================ -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "default" "goto" @@ -56,7 +56,7 @@ "__asm__" ] @keyword -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "enum" "struct" @@ -64,21 +64,21 @@ "typedef" ] @keyword.type -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 [ "sizeof" "offsetof" ] @keyword.operator -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (alignof_expression . _ @keyword.operator) -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 "return" @keyword.return -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "while" "for" @@ -87,7 +87,7 @@ "break" ] @keyword.repeat -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 [ "if" "else" @@ -95,14 +95,14 @@ "switch" ] @keyword.conditional -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (conditional_expression [ "?" ":" ] @keyword.conditional.ternary) -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 [ "#if" "#ifdef" @@ -115,13 +115,13 @@ (preproc_directive) ] @keyword.directive -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 "#define" @keyword.directive.define -;; #8AD5FF #000000 0 0 0 2 +;; #8AD5FF #000000 0 0 0 0 2 "#include" @keyword.import -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "try" "catch" @@ -129,7 +129,7 @@ "throw" ] @keyword.exception -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "decltype" "explicit" @@ -140,7 +140,7 @@ "constexpr" ] @keyword -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "class" "namespace" @@ -149,14 +149,14 @@ "concept" ] @keyword.type -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 [ "co_await" "co_yield" "co_return" ] @keyword.coroutine -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 [ "public" "private" @@ -165,21 +165,21 @@ "virtual" ] @keyword.modifier -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (storage_class_specifier) @keyword.modifier -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 [ (type_qualifier) (gnu_asm_qualifier) "__extension__" ] @keyword.modifier -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (linkage_specification "extern" @keyword.modifier) -;; #F29668 #000000 0 0 0 2 +;; #F29668 #000000 0 0 0 0 2 [ "new" "delete" @@ -196,39 +196,39 @@ "or" ] @keyword.operator -;; #F29668 #000000 0 1 0 2 +;; #F29668 #000000 0 1 0 0 2 "<=>" @operator ; ============================================================ ; Types & modules ; ============================================================ -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 [ (type_identifier) (type_descriptor) ] @type -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (type_definition declarator: (type_identifier) @type.definition) -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (primitive_type) @type.builtin -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (sized_type_specifier _ @type.builtin type: _?) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (namespace_identifier) @module -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 ((namespace_identifier) @type (#match? @type "^[A-Z]")) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (using_declaration . "using" @@ -244,22 +244,22 @@ ; Functions & calls ; ============================================================ -;; #FFB870 #000000 0 0 0 1 +;; #FFB870 #000000 0 0 0 0 1 (operator_name) @function -;; #FFB870 #000000 0 0 0 3 +;; #FFB870 #000000 0 0 0 0 3 "operator" @function -;; #78C2FF #000000 0 0 0 2 +;; #78C2FF #000000 0 0 0 0 2 (call_expression function: (identifier) @function.call) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((call_expression function: (identifier) @function.builtin) (#match? @function.builtin "^__builtin_")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((call_expression function: (identifier) @function.builtin)) @@ -267,30 +267,30 @@ ; Constructors & methods ; ============================================================ -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((call_expression function: (identifier) @constructor) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((call_expression function: (qualified_identifier name: (identifier) @constructor)) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((call_expression function: (field_expression field: (field_identifier) @constructor)) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 ((field_initializer (field_identifier) @constructor (argument_list)) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 4 +;; #59C2FF #000000 0 0 0 0 4 (destructor_name (identifier) @function.method) @@ -298,7 +298,7 @@ ; Properties & members ; ============================================================ -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((field_expression (field_identifier) @property) @_parent) @@ -309,7 +309,7 @@ (field_initializer (field_identifier) @property) -;; #F29CC3 #000000 0 0 1 2 +;; #F29CC3 #000000 0 0 1 0 2 (field_declaration (field_identifier) @variable.member) @@ -317,32 +317,32 @@ ; Parameters ; ============================================================ -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (identifier) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (array_declarator) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (pointer_declarator) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (preproc_params (identifier) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (parameter_declaration declarator: (reference_declarator) @variable.parameter) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (variadic_parameter_declaration declarator: (variadic_declarator (_) @variable.parameter)) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (optional_parameter_declaration declarator: (_) @variable.parameter) @@ -350,7 +350,7 @@ ; Attributes & specifiers ; ============================================================ -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 [ "__attribute__" "__declspec" @@ -365,12 +365,12 @@ (attribute_declaration) ] @attribute -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (attribute_specifier (argument_list (identifier) @variable.builtin)) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (attribute_specifier (argument_list (call_expression @@ -380,7 +380,7 @@ ; Operators & punctuation ; ============================================================ -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "=" "-" @@ -418,11 +418,11 @@ "++" ] @operator -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 (comma_expression "," @operator) -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 [ ";" ":" @@ -431,13 +431,13 @@ "::" ] @punctuation.delimiter -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 "::" @punctuation.delimiter -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 "..." @punctuation.special -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 [ "(" ")" @@ -447,14 +447,14 @@ "}" ] @punctuation.bracket -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 (template_argument_list [ "<" ">" ] @punctuation.bracket) -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 (template_parameter_list [ "<" @@ -465,40 +465,40 @@ ; Literals ; ============================================================ -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 [ (true) (false) ] @boolean -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 (true) @boolean_true -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 (false) @boolean_false -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (string_literal) @string -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (system_lib_string) @string -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (raw_string_literal) @string -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 (escape_sequence) @string.escape -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 (number_literal) @number -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 (char_literal) @character -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (null) @constant.builtin -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (null "nullptr" @constant.builtin) @@ -506,59 +506,59 @@ ; Macros & directives ; ============================================================ -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_def name: (_) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_call directive: (preproc_directive) @_u argument: (_) @constant.macro (#match? @_u "^#undef$")) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_ifdef name: (identifier) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_elifdef name: (identifier) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_defined (identifier) @constant.macro) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (preproc_defined) @function.macro ; ============================================================ ; Builtins & special identifiers ; ============================================================ -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (attribute_specifier (argument_list (identifier) @variable.builtin)) -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (attribute_specifier (argument_list (call_expression function: (identifier) @variable.builtin))) -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (this) @variable.builtin ; ============================================================ ; Exceptions & control helpers ; ============================================================ -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 "static_assert" @function.builtin ; ============================================================ ; Comments ; ============================================================ -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell diff --git a/grammar/haskell.scm b/grammar/haskell.scm index 521f451..b5e2f82 100644 --- a/grammar/haskell.scm +++ b/grammar/haskell.scm @@ -1,82 +1,82 @@ -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (variable) @variable ;; Lambdas / patterns keep params white -;; #FFFFFF #000000 0 1 0 5 +;; #FFFFFF #000000 0 1 0 0 5 (expression/lambda (_)+ @variable.parameter "->") -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (decl/function patterns: (patterns (_) @variable.parameter)) -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (decl/function (infix (pattern) @variable.parameter)) ;; Types / builtins -;; #F07178 #000000 0 0 0 6 +;; #F07178 #000000 0 0 0 0 6 ((name) @type.builtin (#match? @type.builtin "^(Int|Integer|Bool|Char|String|Float|Double|Word)$")) ;; Strings / chars -;; #9ADE7A #000000 0 0 0 1 +;; #9ADE7A #000000 0 0 0 0 1 (char) @literal.char -;; #9ADE7A #000000 0 0 0 1 +;; #9ADE7A #000000 0 0 0 0 1 (string) @literal.string ;; Comments -;; #99ADBF #000000 0 1 0 5 +;; #99ADBF #000000 0 1 0 0 5 (comment) @comment.general -;; #99ADBF #000000 0 1 0 5 +;; #99ADBF #000000 0 1 0 0 5 (haddock) @comment.documentation -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @spell ;; Punctuation -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "(" ")" "{" "}" "[" "]" ] @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "," ";" ] @punctuation.delimiter ;; Keywords (orange) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "forall" ] @keyword.quantifier -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (pragma) @keyword.directive -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "if" "then" "else" "case" "of" ] @keyword.conditional -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "import" "qualified" "module" ] @keyword.import -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "where" "let" "in" "class" "instance" "pattern" "data" "newtype" "family" "type" "as" "hiding" "deriving" "via" "stock" "anyclass" "do" "mdo" "rec" "infix" "infixl" "infixr" ] @keyword.definition -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "forall" ] @keyword.repeat ;; Operators (italic white, high priority) -;; #FFFFFF #000000 0 1 0 6 +;; #FFFFFF #000000 0 1 0 0 6 [ (operator) (constructor_operator) (all_names) "." ".." "=" "|" "::" "=>" "->" "<-" "\\" "`" "@" ] @operator.general -;; #FFFFFF #000000 0 1 0 6 +;; #FFFFFF #000000 0 1 0 0 6 (infix_id [ (variable) @operator.infix (qualified (variable) @operator.infix) ]) -;; #FFFFFF #000000 0 1 0 6 +;; #FFFFFF #000000 0 1 0 0 6 [ (operator) (constructor_operator) @@ -86,39 +86,39 @@ ] @operator ;; Modules -;; #7dcfff #000000 0 0 0 1 +;; #7dcfff #000000 0 0 0 0 1 (module (module_id) @module.name) -;; #7dcfff #000000 0 0 0 1 +;; #7dcfff #000000 0 0 0 0 1 (module (module_id) @module) ;; Functions / calls (leave blue for function identifiers, but vars stay white due to higher priority var rules) -;; #82AAFF #000000 0 0 0 3 +;; #82AAFF #000000 0 0 0 0 3 (decl/signature [ name: (variable) @function.name names: (binding_list (variable) @function.name) ]) -;; #82AAFF #000000 0 0 0 3 +;; #82AAFF #000000 0 0 0 0 3 (decl/function [ name: (variable) @function.name names: (binding_list (variable) @function.name) ]) -;; #82AAFF #000000 0 0 0 3 +;; #82AAFF #000000 0 0 0 0 3 (decl/bind [ name: (variable) @function.name names: (binding_list (variable) @function.name) ]) -;; #82AAFF #000000 0 0 0 2 +;; #82AAFF #000000 0 0 0 0 2 (decl [ name: (variable) @function names: (binding_list (variable) @function) ]) -;; #82AAFF #000000 0 0 0 3 +;; #82AAFF #000000 0 0 0 0 3 (decl/signature name: (variable) @function.io type: (type/apply @@ -126,7 +126,7 @@ (#match? @_io "^IO$")) ;; Function calls kept white via var priority; ensure explicit call rule stays neutral/white -;; #FFFFFF #000000 0 0 0 3 +;; #FFFFFF #000000 0 0 0 0 3 (apply [ (expression/variable) @function.call @@ -134,23 +134,23 @@ ]) ;; Types / constructors -;; #82AAFF #000000 0 0 0 3 +;; #82AAFF #000000 0 0 0 0 3 (name) @type -;; #82AAFF #000000 0 0 0 3 +;; #82AAFF #000000 0 0 0 0 3 (type/star) @type -;; #C6B5FF #000000 0 0 0 1 +;; #C6B5FF #000000 0 0 0 0 1 (constructor) @constructor.general -;; #9ADE7A #000000 0 0 0 2 +;; #9ADE7A #000000 0 0 0 0 2 ((constructor) @boolean (#match? @boolean "^(True|False)$")) -;; #9ADE7A #000000 0 0 0 1 +;; #9ADE7A #000000 0 0 0 0 1 ((variable) @boolean (#match? @boolean "^otherwise$")) ;; Quoters / quasiquotes -;; #82AAFF #000000 0 0 0 3 +;; #82AAFF #000000 0 0 0 0 3 (quoter) @function.call -;; #9ADE7A #000000 0 0 0 1 +;; #9ADE7A #000000 0 0 0 0 1 (quasiquote [ (quoter) @_name @@ -159,13 +159,13 @@ ] (#match? @_name "^qq$") (quasiquote_body) @string) -;; #9ADE7A #000000 0 0 0 1 +;; #9ADE7A #000000 0 0 0 0 1 (quasiquote (_ (variable) @_name) (#match? @_name "^qq$") (quasiquote_body) @string) -;; #82AAFF #000000 0 0 0 3 +;; #82AAFF #000000 0 0 0 0 3 (quasiquote (_ (module) @module @@ -173,35 +173,35 @@ (variable) @function.call)) ;; Exceptions / Debug -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 ((variable) @keyword.exception (#match? @keyword.exception "^(error|undefined|try|tryJust|tryAny|catch|catches|catchJust|handle|handleJust|throw|throwIO|throwTo|throwError|ioError|mask|mask_|uninterruptibleMask|uninterruptibleMask_|bracket|bracket_|bracketOnErrorSource|finally|fail|onException|expectationFailure)$")) -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 ((variable) @keyword.debug (#match? @keyword.debug "^(trace|traceId|traceShow|traceShowId|traceWith|traceShowWith|traceStack|traceIO|traceM|traceShowM|traceEvent|traceEventWith|traceEventIO|flushEventLog|traceMarker|traceMarkerIO)$")) ;; Misc remaining structural -;; #C6B5FF #000000 0 0 0 1 +;; #C6B5FF #000000 0 0 0 0 1 (wildcard) @literal.special -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "," ";" ] @punctuation.delimiter -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "(" ")" "{" "}" "[" "]" ] @punctuation.bracket -;; #7dcfff #000000 0 0 0 1 +;; #7dcfff #000000 0 0 0 0 1 (type/unit) @type.unit (type/list) @type.list (type/star) @type.star -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (field_name (variable) @variable.member) (import_name (name) . (children (variable) @variable.member)) ;; Numbers (bright yellow-green) -;; #DFFFA0 #000000 0 0 0 2 +;; #DFFFA0 #000000 0 0 0 0 2 (integer) @number.integer -;; #DFFFA0 #000000 0 0 0 2 +;; #DFFFA0 #000000 0 0 0 0 2 (negation) @number.integer -;; #DFFFA0 #000000 0 0 0 2 +;; #DFFFA0 #000000 0 0 0 0 2 (expression/literal (float) @number.float) diff --git a/grammar/hover.scm b/grammar/hover.scm index de49c50..bc32830 100644 --- a/grammar/hover.scm +++ b/grammar/hover.scm @@ -1,9 +1,9 @@ -;; #82AAFF #000000 1 0 1 4 +;; #82AAFF #000000 1 0 1 0 4 (setext_heading (paragraph) @markup.heading.1 (setext_h1_underline) @markup.heading.1) -;; #82AAFF #000000 1 0 1 4 +;; #82AAFF #000000 1 0 1 0 4 (setext_heading (paragraph) @markup.heading.2 (setext_h2_underline) @markup.heading.2) @@ -14,30 +14,30 @@ (atx_heading (atx_h2_marker)) @markup.heading.2 -;; #82AAFF #000000 1 0 0 4 +;; #82AAFF #000000 1 0 0 0 4 (atx_heading (atx_h3_marker)) @markup.heading.3 -;; #82AAFF #000000 1 0 0 4 +;; #82AAFF #000000 1 0 0 0 4 (atx_heading (atx_h4_marker)) @markup.heading.4 -;; #82AAFF #000000 1 0 0 4 +;; #82AAFF #000000 1 0 0 0 4 (atx_heading (atx_h5_marker)) @markup.heading.5 -;; #82AAFF #000000 1 0 0 4 +;; #82AAFF #000000 1 0 0 0 4 (atx_heading (atx_h6_marker)) @markup.heading.6 -;; #82AAFF #000000 0 0 0 4 +;; #82AAFF #000000 0 0 0 0 4 (info_string) @label -;; #FF6347 #000000 0 0 0 4 +;; #FF6347 #000000 0 0 0 0 4 (pipe_table_header (pipe_table_cell) @markup.heading) -;; #FF8F40 #000000 0 0 0 4 +;; #FF8F40 #000000 0 0 0 0 4 (pipe_table_header "|" @punctuation.special) @@ -49,7 +49,7 @@ (pipe_table_delimiter_cell) @punctuation.special -;; #AAD94C #000000 0 0 0 2 +;; #AAD94C #000000 0 0 0 0 2 (indented_code_block) @markup.raw.block (fenced_code_block) @markup.raw.block @@ -61,21 +61,21 @@ (info_string (language) @label)) -;; #7dcfff #000000 0 0 1 6 +;; #7dcfff #000000 0 0 1 0 6 (link_destination) @markup.link.url -;; #7dcfff #000000 0 0 1 6 +;; #7dcfff #000000 0 0 1 0 6 [ (link_title) (link_label) ] @markup.link.label -;; #FF8F40 #000000 0 0 0 4 +;; #FF8F40 #000000 0 0 0 0 4 ((link_label) . ":" @punctuation.delimiter) -;; #9ADE7A #000000 0 0 0 4 +;; #9ADE7A #000000 0 0 0 0 4 [ (list_marker_plus) (list_marker_minus) @@ -86,10 +86,10 @@ (thematic_break) @punctuation.special -;; #FF8F40 #000000 0 0 0 4 +;; #FF8F40 #000000 0 0 0 0 4 (task_list_marker_unchecked) @markup.list.unchecked -;; #AAD94C #000000 0 0 0 4 +;; #AAD94C #000000 0 0 0 0 4 (task_list_marker_checked) @markup.list.checked [ @@ -102,7 +102,7 @@ (block_quote_marker) ] @punctuation.special -;; #AAD94C #000000 0 0 0 6 +;; #AAD94C #000000 0 0 0 0 6 (backslash_escape) @string.escape (fenced_code_block diff --git a/grammar/html.scm b/grammar/html.scm index e0bea5f..349ca7d 100644 --- a/grammar/html.scm +++ b/grammar/html.scm @@ -1,10 +1,10 @@ -;; #99ADBF #000000 0 1 0 5 +;; #99ADBF #000000 0 1 0 0 5 (comment) @comment @spell -;; #9ADE7A #000000 0 0 0 1 +;; #9ADE7A #000000 0 0 0 0 1 (attribute_name) @tag.attribute -;; #FF8F40 #000000 0 0 0 0 +;; #FF8F40 #000000 0 0 0 0 0 ((attribute (quoted_attribute_value) @string)) @@ -15,56 +15,56 @@ "\"" ] @string -;; #82AAFF #000000 1 0 0 3 +;; #82AAFF #000000 1 0 0 0 3 ((element (start_tag (tag_name) @_tag) (text) @markup.heading) (#match? @_tag "^title$")) -;; #82AAFF #000000 1 0 1 3 +;; #82AAFF #000000 1 0 1 0 3 ((element (start_tag (tag_name) @_tag) (text) @markup.heading.1) (#match? @_tag "^h[1-6]$")) -;; #FFD700 #000000 1 0 0 2 +;; #FFD700 #000000 1 0 0 0 2 ((element (start_tag (tag_name) @_tag) (text) @markup.strong) (#match? @_tag "^(strong|b)$")) -;; #FF8F40 #000000 0 1 0 2 +;; #FF8F40 #000000 0 1 0 0 2 ((element (start_tag (tag_name) @_tag) (text) @markup.italic) (#match? @_tag "^(em|i)$")) -;; #FF6347 #000000 0 0 1 2 +;; #FF6347 #000000 0 0 0 1 2 ((element (start_tag (tag_name) @_tag) (text) @markup.strikethrough) (#match? @_tag "^(s|del)$")) -;; #82AAFF #000000 0 0 1 2 +;; #82AAFF #000000 0 0 1 0 2 ((element (start_tag (tag_name) @_tag) (text) @markup.underline) (#match? @_tag "^u$")) -;; #9ADE7A #000000 0 0 0 2 +;; #9ADE7A #000000 0 0 0 0 2 ((element (start_tag (tag_name) @_tag) (text) @markup.raw) (#match? @_tag "^(code|kbd)$")) -;; #7dcfff #000000 0 0 1 2 +;; #7dcfff #000000 0 0 1 0 2 ((element (start_tag (tag_name) @_tag) @@ -74,12 +74,12 @@ ((attribute (attribute_name) @_attr (quoted_attribute_value -;; #7dcfff #000000 0 0 1 5 +;; #7dcfff #000000 0 0 1 0 5 (attribute_value) @string.special.url)) (#match? @_attr "^(href|src)$")) ;; Punctuation -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "<" ">" @@ -87,19 +87,19 @@ "/>" ] @tag.delimiter -;; #FFFFFF #000000 0 1 0 1 +;; #FFFFFF #000000 0 1 0 0 1 "=" @operator -;; #7dcfff #000000 0 0 0 1 +;; #7dcfff #000000 0 0 0 0 1 (tag_name) @tag -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (erroneous_end_tag_name) @tag.error -;; #FFD700 #000000 0 0 0 1 +;; #FFD700 #000000 0 0 0 0 1 (doctype) @constant -;; #9ADE7A #000000 0 0 0 1 +;; #9ADE7A #000000 0 0 0 0 1 (attribute_name) @attribute ; Injections diff --git a/grammar/ini.scm b/grammar/ini.scm index 66c709e..82211c6 100644 --- a/grammar/ini.scm +++ b/grammar/ini.scm @@ -1,34 +1,34 @@ -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (section_name (text) @type) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell -;; #888888 #000000 0 0 0 3 +;; #888888 #000000 0 0 0 0 3 [ "[" "]" ] @punctuation.bracket -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 "=" @operator -;; #F0F8FF #000000 0 0 0 2 +;; #F0F8FF #000000 0 0 0 0 2 (setting (setting_name) @property) -;; #F29668 #000000 0 0 0 2 +;; #F29668 #000000 0 0 0 0 2 ((setting_value) @boolean (#match? @boolean "^\\s*(true|false|True|False|yes|no|Yes|No|on|off|On|Off|)\\s*$")) -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 ((setting_value) @number (#match? @number "^\\s*[-+0-9]+\\s*$")) -;; #A6E3A1 #000000 0 0 0 2 +;; #A6E3A1 #000000 0 0 0 0 2 ((setting_value) @float (#match? @float "^\\s*[-+0-9\\.]+\\s*$")) -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (setting_value) @string diff --git a/grammar/javascript.scm b/grammar/javascript.scm index de3bd29..76e7076 100644 --- a/grammar/javascript.scm +++ b/grammar/javascript.scm @@ -2,19 +2,19 @@ ; Identifiers ; ============================================================ -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (identifier) @variable -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @constant (#match? @constant "^[A-Z_][A-Z0-9_]*$")) -;; #F07178 #000000 0 0 0 3 +;; #F07178 #000000 0 0 0 0 3 ((identifier) @variable.builtin (#match? @variable.builtin "^(arguments|console|window|document|globalThis|process|module|exports)$")) -;; #59C2FF #000000 0 0 0 1 +;; #59C2FF #000000 0 0 0 0 1 ((identifier) @constructor (#match? @constructor "^[A-Z][a-zA-Z0-9]*$")) @@ -22,21 +22,21 @@ ; Properties ; ============================================================ -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (property_identifier) @property ; ============================================================ ; Functions ; ============================================================ -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (function_declaration name: (identifier) @function) (function_expression name: (identifier) @function) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (method_definition name: (property_identifier) @function.method) @@ -56,11 +56,11 @@ ; Function calls ; ------------------------------------------------------------ -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call_expression function: (identifier) @function.call) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call_expression function: (member_expression property: (property_identifier) @function.method)) @@ -69,7 +69,7 @@ ; Highlighted definitions & references ; ============================================================ -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (assignment_expression left: [ (identifier) @name @@ -79,21 +79,21 @@ right: [(arrow_function) (function_expression)] ) @definition.function -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (pair key: (property_identifier) @name value: [(arrow_function) (function_expression)]) @definition.function -;; #59C2FF #000000 0 0 0 0 +;; #59C2FF #000000 0 0 0 0 0 ((call_expression function: (identifier) @name) @reference.call (#not-match? @name "^(require)$")) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (new_expression constructor: (_) @name) @reference.class -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (export_statement value: (assignment_expression left: (identifier) @name right: ([ (number) (string) @@ -109,7 +109,7 @@ ; Parameters ; ============================================================ -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (formal_parameters [ (identifier) @variable.parameter @@ -126,7 +126,7 @@ ; Keywords (split into semantic groups) ; ============================================================ -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 ; Declarations [ "var" @@ -136,7 +136,7 @@ "class" ] @keyword.declaration -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 ; Control flow [ "if" @@ -157,7 +157,7 @@ "extends" ] @keyword.control -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 ; Imports / exports [ "import" @@ -166,7 +166,7 @@ "as" ] @keyword.import -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 ; Operators-as-keywords [ "in" @@ -179,7 +179,7 @@ "yield" ] @keyword.operator -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 ; Modifiers [ "async" @@ -192,11 +192,11 @@ ; Literals ; ============================================================ -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (this) @variable.builtin (super) @variable.builtin -;; #D2A6FF #000000 0 0 0 4 +;; #D2A6FF #000000 0 0 0 0 4 [ (true) (false) @@ -204,27 +204,27 @@ (undefined) ] @constant.builtin -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (number) @number -;; #D2A6FF #000000 0 1 0 2 +;; #D2A6FF #000000 0 1 0 0 2 ((string) @use_strict (#match? @use_strict "^['\"]use strict['\"]$")) -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (string) @string -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (template_string) @string.special -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment ; ============================================================ ; Operators & punctuation ; ============================================================ -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "+" "-" @@ -271,14 +271,14 @@ "=>" ] @operator -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "." "," ";" ] @punctuation.delimiter -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "(" ")" @@ -288,7 +288,7 @@ "}" ] @punctuation.bracket -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (template_substitution "${" @punctuation.special "}" @punctuation.special) @@ -297,15 +297,15 @@ ; JSX ; ============================================================ -;; #59C2FF #000000 0 0 0 4 +;; #59C2FF #000000 0 0 0 0 4 (jsx_opening_element (identifier) @tag2) (jsx_closing_element (identifier) @tag2) (jsx_self_closing_element (identifier) @tag2) -;; #F07178 #000000 0 0 0 3 +;; #F07178 #000000 0 0 0 0 3 (jsx_attribute (property_identifier) @attribute2) -;; #BFBDB6 #000000 0 0 0 3 +;; #BFBDB6 #000000 0 0 0 0 3 (jsx_opening_element (["<" ">"]) @punctuation.bracket2) (jsx_closing_element ([""]) @punctuation.bracket2) (jsx_self_closing_element (["<" "/>"]) @punctuation.bracket2) diff --git a/grammar/json.scm b/grammar/json.scm index 0eaf81d..b21f6a0 100644 --- a/grammar/json.scm +++ b/grammar/json.scm @@ -1,22 +1,22 @@ -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (pair key: (_) @string.special.key) -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (string) @string -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (number) @number -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ (null) (true) (false) ] @constant.builtin -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (escape_sequence) @escape -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment diff --git a/grammar/jsonc.scm b/grammar/jsonc.scm index 0eaf81d..b21f6a0 100644 --- a/grammar/jsonc.scm +++ b/grammar/jsonc.scm @@ -1,22 +1,22 @@ -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (pair key: (_) @string.special.key) -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (string) @string -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (number) @number -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ (null) (true) (false) ] @constant.builtin -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (escape_sequence) @escape -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment diff --git a/grammar/lua.scm b/grammar/lua.scm index 56ddcaf..e5e8d2a 100644 --- a/grammar/lua.scm +++ b/grammar/lua.scm @@ -2,19 +2,19 @@ ; Identifiers ; ============================================================ -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (identifier) @variable -;; #C9B4FF #000000 0 0 0 2 +;; #C9B4FF #000000 0 0 0 0 2 ((identifier) @constant (#match? @constant "^[A-Z][A-Z_0-9]*$")) -;; #F28FAD #000000 0 0 0 3 +;; #F28FAD #000000 0 0 0 0 3 ((identifier) @variable.builtin (#match? @variable.builtin "^self$")) ; Attributes (generic parameters) -;; #7CD5CF #000000 0 0 0 2 +;; #7CD5CF #000000 0 0 0 0 2 (variable_list (attribute "<" @punctuation.bracket @@ -25,30 +25,30 @@ ; Control flow & keywords ; ============================================================ -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 "return" @keyword.return -;; #FF9E64 #000000 0 0 0 2 +;; #FF9E64 #000000 0 0 0 0 2 [ "goto" "in" "local" ] @keyword -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (label_statement) @label -;; #FF9E64 #000000 0 0 0 2 +;; #FF9E64 #000000 0 0 0 0 2 (break_statement) @keyword -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (do_statement [ "do" "end" ] @keyword) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (while_statement [ "while" @@ -56,14 +56,14 @@ "end" ] @repeat) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (repeat_statement [ "repeat" "until" ] @repeat) -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 (if_statement [ "if" @@ -73,7 +73,7 @@ "end" ] @conditional) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (elseif_statement [ "elseif" @@ -81,14 +81,14 @@ "end" ] @conditional) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (else_statement [ "else" "end" ] @conditional) -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (for_statement [ "for" @@ -96,14 +96,14 @@ "end" ] @repeat) -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 (function_declaration [ "function" "end" ] @keyword.function) -;; #FFB870 #000000 0 0 0 2 +;; #FFB870 #000000 0 0 0 0 2 (function_definition [ "function" @@ -114,13 +114,13 @@ ; Operators ; ============================================================ -;; #6BD9DF #000000 0 1 0 1 +;; #6BD9DF #000000 0 1 0 0 1 (binary_expression operator: _ @operator) -;; #6BD9DF #000000 0 1 0 1 +;; #6BD9DF #000000 0 1 0 0 1 (unary_expression operator: _ @operator) -;; #F29CC3 #000000 0 0 0 1 +;; #F29CC3 #000000 0 0 0 0 1 [ "and" "not" @@ -131,7 +131,7 @@ ; Punctuation ; ============================================================ -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 [ ";" ":" @@ -140,7 +140,7 @@ ] @punctuation.delimiter ; Brackets -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 [ "(" ")" @@ -154,13 +154,13 @@ ; Tables & fields ; ============================================================ -;; #9AD4FF #000000 0 0 0 1 +;; #9AD4FF #000000 0 0 0 0 1 (field name: (identifier) @field) -;; #9AD4FF #000000 0 0 0 1 +;; #9AD4FF #000000 0 0 0 0 1 (dot_index_expression field: (identifier) @field) -;; #7CD5CF #000000 0 0 0 1 +;; #7CD5CF #000000 0 0 0 0 1 (table_constructor [ "{" @@ -171,10 +171,10 @@ ; Functions ; ============================================================ -;; #FFC877 #000000 0 0 0 3 +;; #FFC877 #000000 0 0 0 0 3 (parameters (identifier) @parameter) -;; #FFC877 #000000 0 0 0 3 +;; #FFC877 #000000 0 0 0 0 3 (function_declaration name: [ (identifier) @function @@ -182,12 +182,12 @@ field: (identifier) @function) ]) -;; #FFC877 #000000 0 0 0 3 +;; #FFC877 #000000 0 0 0 0 3 (function_declaration name: (method_index_expression method: (identifier) @method)) -;; #FFC877 #000000 0 0 0 3 +;; #FFC877 #000000 0 0 0 0 3 (assignment_statement (variable_list . name: [ @@ -198,14 +198,14 @@ (expression_list . value: (function_definition))) -;; #FFC877 #000000 0 0 0 3 +;; #FFC877 #000000 0 0 0 0 3 (table_constructor (field name: (identifier) @function value: (function_definition))) ; Function calls -;; #78C2FF #000000 0 0 0 2 +;; #78C2FF #000000 0 0 0 0 2 (function_call name: [ (identifier) @function.call @@ -216,7 +216,7 @@ ]) ; Highlighted definitions & references -;; #FFC877 #000000 0 0 0 3 +;; #FFC877 #000000 0 0 0 0 3 (function_declaration name: [ (identifier) @name @@ -224,12 +224,12 @@ field: (identifier) @name) ]) @definition.function -;; #FFC877 #000000 0 0 0 3 +;; #FFC877 #000000 0 0 0 0 3 (function_declaration name: (method_index_expression method: (identifier) @name)) @definition.method -;; #FFC877 #000000 0 0 0 3 +;; #FFC877 #000000 0 0 0 0 3 (assignment_statement (variable_list . name: [ @@ -240,13 +240,13 @@ (expression_list . value: (function_definition))) @definition.function -;; #FFC877 #000000 0 0 0 3 +;; #FFC877 #000000 0 0 0 0 3 (table_constructor (field name: (identifier) @name value: (function_definition))) @definition.function -;; #78C2FF #000000 0 0 0 2 +;; #78C2FF #000000 0 0 0 0 2 (function_call name: [ (identifier) @name @@ -257,7 +257,7 @@ ]) @reference.call ; Builtins -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 (function_call (identifier) @function.builtin (#match? @function.builtin "^(assert|collectgarbage|dofile|error|getfenv|getmetatable|ipairs|load|loadfile|loadstring|module|next|pairs|pcall|print|rawequal|rawget|rawset|required|select|setfenv|setmetatable|tonumber|tostring|type|unpack|xpcall)$")) @@ -266,22 +266,22 @@ ; Literals & constants ; ============================================================ -;; #B8E986 #000000 0 0 0 5 +;; #B8E986 #000000 0 0 0 0 5 (number) @number -;; #A6E3A1 #000000 0 0 0 5 +;; #A6E3A1 #000000 0 0 0 0 5 (string) @string -;; #A6E3A1 #000000 0 0 0 6 +;; #A6E3A1 #000000 0 0 0 0 6 (escape_sequence) @string.escape -;; #C9B4FF #000000 0 0 0 2 +;; #C9B4FF #000000 0 0 0 0 2 (vararg_expression) @constant -;; #C9B4FF #000000 0 0 0 2 +;; #C9B4FF #000000 0 0 0 0 2 (nil) @constant.builtin -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 [ (false) (true) @@ -291,17 +291,17 @@ ; Comments & directives ; ============================================================ -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment -;; #7CD5CF #000000 0 0 0 1 +;; #7CD5CF #000000 0 0 0 0 1 (hash_bang_line) @preproc ; ============================================================ ; Injections ; ============================================================ -;; #7CD5CF #000000 0 1 0 2 +;; #7CD5CF #000000 0 1 0 0 2 ((function_call name: [ (identifier) @_cdef_identifier diff --git a/grammar/make.scm b/grammar/make.scm index 1ccaa55..6ff11a2 100644 --- a/grammar/make.scm +++ b/grammar/make.scm @@ -1,4 +1,4 @@ -;; #9CDCFE #000000 0 0 0 3 +;; #9CDCFE #000000 0 0 0 0 3 [ "(" ")" @@ -6,7 +6,7 @@ "}" ] @punctuation.bracket -;; #C2E8FF #000000 0 1 0 2 +;; #C2E8FF #000000 0 1 0 0 2 [ ":" "&:" @@ -18,21 +18,21 @@ "," ] @punctuation.delimiter -;; #FFD700 #000000 0 0 0 2 +;; #FFD700 #000000 0 0 0 0 2 [ "$" "$$" ] @punctuation.special -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (automatic_variable [ "@" "%" "<" "?" "^" "+" "/" "*" "D" "F"] @punctuation.special) -;; #FF6347 #000000 0 0 0 2 +;; #FF6347 #000000 0 0 0 0 2 (automatic_variable "/" @error . ["D" "F"]) -;; #F29668 #000000 0 1 0 2 +;; #F29668 #000000 0 1 0 0 2 [ "=" ":=" @@ -45,17 +45,17 @@ "+" ] @operator -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 [ (text) (string) (raw_text) ] @string -;; #9AD4FF #000000 0 0 0 2 +;; #9AD4FF #000000 0 0 0 0 2 (variable_assignment (word) @string) -;; #7AA2F7 #000000 0 0 0 1 +;; #7AA2F7 #000000 0 0 0 0 1 [ "ifeq" "ifneq" @@ -68,10 +68,10 @@ "and" ] @conditional -;; #9ADE7A #000000 0 0 0 2 +;; #9ADE7A #000000 0 0 0 0 2 "foreach" @repeat -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 [ "define" "endef" @@ -84,14 +84,14 @@ ; "load" ] @keyword -;; #C6B5FF #000000 0 0 0 2 +;; #C6B5FF #000000 0 0 0 0 2 [ "include" "sinclude" "-include" ] @include -;; #82AAFF #000000 0 0 0 2 +;; #82AAFF #000000 0 0 0 0 2 [ "subst" "patsubst" @@ -122,70 +122,70 @@ "shell" ] @keyword.function -;; #FF9D5C #000000 0 0 0 2 +;; #FF9D5C #000000 0 0 0 0 2 [ "error" "warning" "info" ] @exception -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 (variable_assignment name: (word) @constant) -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 (variable_reference (word) @constant) -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment -;; #F28FAD #000000 0 0 0 2 +;; #F28FAD #000000 0 0 0 0 2 ((word) @clean @string.regex (#match? @clean "[%\*\?]")) -;; #F07178 #000000 0 0 0 2 +;; #F07178 #000000 0 0 0 0 2 (function_call function: "error" (arguments (text) @text.danger)) -;; #FFC877 #000000 0 0 0 2 +;; #FFC877 #000000 0 0 0 0 2 (function_call function: "warning" (arguments (text) @text.warning)) -;; #61AFEF #000000 0 0 0 2 +;; #61AFEF #000000 0 0 0 0 2 (function_call function: "info" (arguments (text) @text.note)) -;; #95E6CB #000000 0 0 0 2 +;; #95E6CB #000000 0 0 0 0 2 [ "VPATH" ".RECIPEPREFIX" ] @constant.builtin -;; #95E6CB #000000 0 0 0 2 +;; #95E6CB #000000 0 0 0 0 2 (variable_assignment name: (word) @clean @constant.builtin (#match? @clean "^(AR|AS|CC|CXX|CPP|FC|M2C|PC|CO|GET|LEX|YACC|LINT|MAKEINFO|TEX|TEXI2DVI|WEAVE|CWEAVE|TANGLE|CTANGLE|RM|ARFLAGS|ASFLAGS|CFLAGS|CXXFLAGS|COFLAGS|CPPFLAGS|FFLAGS|GFLAGS|LDFLAGS|LDLIBS|LFLAGS|YFLAGS|PFLAGS|RFLAGS|LINTFLAGS|PRE_INSTALL|POST_INSTALL|NORMAL_INSTALL|PRE_UNINSTALL|POST_UNINSTALL|NORMAL_UNINSTALL|MAKEFILE_LIST|MAKE_RESTARTS|MAKE_TERMOUT|MAKE_TERMERR|\\.DEFAULT_GOAL|\\.RECIPEPREFIX|\\.EXTRA_PREREQS)$")) -;; #95E6CB #000000 0 0 0 2 +;; #95E6CB #000000 0 0 0 0 2 (variable_reference (word) @clean @constant.builtin (#match? @clean "^(AR|AS|CC|CXX|CPP|FC|M2C|PC|CO|GET|LEX|YACC|LINT|MAKEINFO|TEX|TEXI2DVI|WEAVE|CWEAVE|TANGLE|CTANGLE|RM|ARFLAGS|ASFLAGS|CFLAGS|CXXFLAGS|COFLAGS|CPPFLAGS|FFLAGS|GFLAGS|LDFLAGS|LDLIBS|LFLAGS|YFLAGS|PFLAGS|RFLAGS|LINTFLAGS|PRE_INSTALL|POST_INSTALL|NORMAL_INSTALL|PRE_UNINSTALL|POST_UNINSTALL|NORMAL_UNINSTALL|MAKEFILE_LIST|MAKE_RESTARTS|MAKE_TERMOUT|MAKE_TERMERR|\\.DEFAULT_GOAL|\\.RECIPEPREFIX|\\.EXTRA_PREREQS\\.VARIABLES|\\.FEATURES|\\.INCLUDE_DIRS|\\.LOADED)$")) -;; #C792EA #000000 0 0 0 2 +;; #C792EA #000000 0 0 0 0 2 (targets (word) @constant.macro (#match? @constant.macro "^(all|install|install-html|install-dvi|install-pdf|install-ps|uninstall|install-strip|clean|distclean|mostlyclean|maintainer-clean|TAGS|info|dvi|html|pdf|ps|dist|check|installcheck|installdirs)$")) -;; #C792EA #000000 0 0 0 2 +;; #C792EA #000000 0 0 0 0 2 (targets (word) @constant.macro (#match? @constant.macro "^(all|install|install-html|install-dvi|install-pdf|install-ps|uninstall|install-strip|clean|distclean|mostlyclean|maintainer-clean|TAGS|info|dvi|html|pdf|ps|dist|check|installcheck|installdirs)$")) -;; #C792EA #000000 0 0 0 2 +;; #C792EA #000000 0 0 0 0 2 (targets (word) @constant.macro (#match? @constant.macro "^\\.(PHONY|SUFFIXES|DEFAULT|PRECIOUS|INTERMEDIATE|SECONDARY|SECONDEXPANSION|DELETE_ON_ERROR|IGNORE|LOW_RESOLUTION_TIME|SILENT|EXPORT_ALL_VARIABLES|NOTPARALLEL|ONESHELL|POSIX)$")) diff --git a/grammar/man.scm b/grammar/man.scm index 68ed5b0..16d8a3b 100644 --- a/grammar/man.scm +++ b/grammar/man.scm @@ -1,23 +1,23 @@ -;; #82AAFF #000000 1 0 1 2 +;; #82AAFF #000000 1 0 1 0 2 (title) @markup.heading.1 -;; #ccefc9 #000000 0 0 0 0 +;; #ccefc9 #000000 0 0 0 0 0 (section_title) @markup.heading.2 -;; #FF8F40 #000000 1 0 0 2 +;; #FF8F40 #000000 1 0 0 0 2 (subsection_title) @markup.heading.3 -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 (option) @variable.parameter -;; #FFD700 #000000 1 0 0 3 +;; #FFD700 #000000 1 0 0 0 3 (reference) @markup.link.label -;; #C792EA #000000 0 0 0 3 +;; #C792EA #000000 0 0 0 0 3 (footer) @markup.heading (section_heading (section_title) @_title -;; #FFD700 #000000 1 0 0 1 +;; #FFD700 #000000 1 0 0 0 1 (block) @injection.content (#match? @_title "SYNOPSIS")) diff --git a/grammar/markdown.scm b/grammar/markdown.scm index e757c02..b66dce9 100644 --- a/grammar/markdown.scm +++ b/grammar/markdown.scm @@ -1,9 +1,9 @@ -;; #82AAFF #000000 1 0 1 4 +;; #82AAFF #000000 1 0 1 0 4 (setext_heading (paragraph) @markup.heading.1 (setext_h1_underline) @markup.heading.1) -;; #82AAFF #000000 1 0 1 4 +;; #82AAFF #000000 1 0 1 0 4 (setext_heading (paragraph) @markup.heading.2 (setext_h2_underline) @markup.heading.2) @@ -14,30 +14,30 @@ (atx_heading (atx_h2_marker)) @markup.heading.2 -;; #82AAFF #000000 1 0 0 4 +;; #82AAFF #000000 1 0 0 0 4 (atx_heading (atx_h3_marker)) @markup.heading.3 -;; #82AAFF #000000 1 0 0 4 +;; #82AAFF #000000 1 0 0 0 4 (atx_heading (atx_h4_marker)) @markup.heading.4 -;; #82AAFF #000000 1 0 0 4 +;; #82AAFF #000000 1 0 0 0 4 (atx_heading (atx_h5_marker)) @markup.heading.5 -;; #82AAFF #000000 1 0 0 4 +;; #82AAFF #000000 1 0 0 0 4 (atx_heading (atx_h6_marker)) @markup.heading.6 -;; #82AAFF #000000 0 0 0 4 +;; #82AAFF #000000 0 0 0 0 4 (info_string) @label -;; #FF6347 #000000 0 0 0 4 +;; #FF6347 #000000 0 0 0 0 4 (pipe_table_header (pipe_table_cell) @markup.heading) -;; #FF8F40 #000000 0 0 0 4 +;; #FF8F40 #000000 0 0 0 0 4 (pipe_table_header "|" @punctuation.special) @@ -49,7 +49,7 @@ (pipe_table_delimiter_cell) @punctuation.special -;; #AAD94C #000000 0 0 0 2 +;; #AAD94C #000000 0 0 0 0 2 (indented_code_block) @markup.raw.block (fenced_code_block) @markup.raw.block @@ -61,21 +61,21 @@ (info_string (language) @label)) -;; #7dcfff #000000 0 0 1 6 +;; #7dcfff #000000 0 0 1 0 6 (link_destination) @markup.link.url -;; #7dcfff #000000 0 0 1 6 +;; #7dcfff #000000 0 0 1 0 6 [ (link_title) (link_label) ] @markup.link.label -;; #FF8F40 #000000 0 0 0 4 +;; #FF8F40 #000000 0 0 0 0 4 ((link_label) . ":" @punctuation.delimiter) -;; #9ADE7A #000000 0 0 0 4 +;; #9ADE7A #000000 0 0 0 0 4 [ (list_marker_plus) (list_marker_minus) @@ -86,10 +86,10 @@ (thematic_break) @punctuation.special -;; #FF8F40 #000000 0 0 0 4 +;; #FF8F40 #000000 0 0 0 0 4 (task_list_marker_unchecked) @markup.list.unchecked -;; #AAD94C #000000 0 0 0 4 +;; #AAD94C #000000 0 0 0 0 4 (task_list_marker_checked) @markup.list.checked [ @@ -102,7 +102,7 @@ (block_quote_marker) ] @punctuation.special -;; #AAD94C #000000 0 0 0 6 +;; #AAD94C #000000 0 0 0 0 6 (backslash_escape) @string.escape (fenced_code_block diff --git a/grammar/markdown_inline.scm b/grammar/markdown_inline.scm index 0096aec..906ee2d 100644 --- a/grammar/markdown_inline.scm +++ b/grammar/markdown_inline.scm @@ -1,22 +1,22 @@ -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (code_span) @markup.raw -;; #FF8F40 #000000 0 1 0 1 +;; #FF8F40 #000000 0 1 0 0 1 (emphasis) @markup.italic -;; #FFD700 #000000 1 0 0 1 +;; #FFD700 #000000 1 0 0 0 1 (strong_emphasis) @markup.strong -;; #FF6347 #000000 0 0 1 1 +;; #FF6347 #000000 0 0 0 1 1 (strikethrough) @markup.strikethrough -;; #7dcfff #000000 0 0 0 1 +;; #7dcfff #000000 0 0 0 0 1 [ (backslash_escape) (hard_line_break) ] @string.escape -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 (inline_link [ "[" @@ -26,7 +26,7 @@ ")" ] @markup.link) -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 [ (link_label) (link_text) @@ -34,15 +34,15 @@ (image_description) ] @markup.link.label -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 ((inline_link (link_destination) @_url) @_label) -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 ((image (link_destination) @_url) @_label) -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 (image [ "!" @@ -53,7 +53,7 @@ ")" ] @markup.link) -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 (full_reference_link [ "[" @@ -61,30 +61,30 @@ (link_label) ] @markup.link) -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 (collapsed_reference_link [ "[" "]" ] @markup.link) -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 (shortcut_link [ "[" "]" ] @markup.link) -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 [ (link_destination) (uri_autolink) (email_autolink) ] @markup.link.url @nospell -;; #7dcfff #000000 0 0 1 1 +;; #7dcfff #000000 0 0 1 0 1 (uri_autolink) @_url -;; #FF8F40 #000000 0 0 0 0 +;; #FF8F40 #000000 0 0 0 0 0 ;; !html (html_tag) @injection.html diff --git a/grammar/nginx.scm b/grammar/nginx.scm index 2e7d24b..dd9d942 100644 --- a/grammar/nginx.scm +++ b/grammar/nginx.scm @@ -1,49 +1,49 @@ -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (number) @number (metric) @number ;; !regex (regex) @regex -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (variable) @variable -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (modifier) @operator -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (simple_directive name: (directive) @function) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (block_directive name: (directive) @function) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (lua_block_directive "access_by_lua_block" @function) -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 ((generic) @constant.builtin (#match? @constant.builtin "^(off|on)$")) -;; #AAD94C #000000 0 0 0 2 +;; #AAD94C #000000 0 0 0 0 2 (generic) @string (string) @string -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (scheme) @string (ipv4) @number -;; #888888 #000000 0 1 0 3 +;; #888888 #000000 0 1 0 0 3 [ ";" ] @delimiter -;; #888888 #000000 0 0 0 3 +;; #888888 #000000 0 0 0 0 3 [ "{" "}" diff --git a/grammar/php.scm b/grammar/php.scm index 39238be..5b226a3 100644 --- a/grammar/php.scm +++ b/grammar/php.scm @@ -3,7 +3,7 @@ ;; Cool–warm balanced palette (blue / teal / purple / orange) ;; ========================================================= -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 ;; Keywords (logic / flow) [ "and" @@ -13,13 +13,13 @@ "xor" ] @keyword.operator -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 [ "fn" "function" ] @keyword.function -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 [ "clone" "declare" @@ -36,7 +36,7 @@ "unset" ] @keyword -;; #6FB3FF #000000 0 0 0 1 +;; #6FB3FF #000000 0 0 0 0 1 [ "enum" "class" @@ -45,7 +45,7 @@ "trait" ] @keyword.type -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 [ "abstract" "const" @@ -57,7 +57,7 @@ "static" ] @keyword.modifier -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 [ "return" "exit" @@ -65,7 +65,7 @@ "yield from" ] @keyword.return -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 [ "case" "else" @@ -78,7 +78,7 @@ "??" ] @keyword.conditional -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 [ "break" "continue" @@ -91,7 +91,7 @@ "while" ] @keyword.repeat -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 [ "catch" "finally" @@ -99,7 +99,7 @@ "try" ] @keyword.exception -;; #8BD5CA #000000 0 0 0 1 +;; #8BD5CA #000000 0 0 0 0 1 [ "include_once" "include" @@ -108,7 +108,7 @@ "use" ] @keyword.import -;; #B0BEC5 #000000 0 0 0 1 +;; #B0BEC5 #000000 0 0 0 0 1 [ "," ";" @@ -116,7 +116,7 @@ "\\" ] @punctuation.delimiter -;; #B0BEC5 #000000 0 0 0 1 +;; #B0BEC5 #000000 0 0 0 0 1 [ (php_tag) (php_end_tag) @@ -129,7 +129,7 @@ "#[" ] @punctuation.bracket -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "=" "." @@ -181,30 +181,30 @@ "::" ] @operator -;; #7DCFFF #000000 0 0 0 1 +;; #7DCFFF #000000 0 0 0 0 1 (variable_name) @variable -;; #C792EA #000000 0 0 0 1 +;; #C792EA #000000 0 0 0 0 1 ((name) @constant (#lua-match? @constant "^_?[A-Z][A-Z%d_]*$")) -;; #C792EA #000000 0 0 0 1 +;; #C792EA #000000 0 0 0 0 1 ((name) @constant.builtin (#lua-match? @constant.builtin "^__[A-Z][A-Z%d_]+__$")) -;; #6FB3FF #000000 0 0 0 1 +;; #6FB3FF #000000 0 0 0 0 1 (const_declaration (const_element (name) @constant)) -;; #82AAFF #000000 0 0 0 1 +;; #82AAFF #000000 0 0 0 0 1 [ (primitive_type) (cast_type) (bottom_type) ] @type.builtin -;; #82AAFF #000000 0 0 0 1 +;; #82AAFF #000000 0 0 0 0 1 (named_type [ (name) @type @@ -212,24 +212,24 @@ (relative_name (name) @type) ]) -;; #82AAFF #000000 0 0 0 1 +;; #82AAFF #000000 0 0 0 0 1 (named_type (name) @type.builtin (#any-of? @type.builtin "static" "self")) -;; #82AAFF #000000 0 0 0 1 +;; #82AAFF #000000 0 0 0 0 1 (class_declaration name: (name) @type) -;; #82AAFF #000000 0 0 0 1 +;; #82AAFF #000000 0 0 0 0 1 (enum_declaration name: (name) @type) -;; #82AAFF #000000 0 0 0 1 +;; #82AAFF #000000 0 0 0 0 1 (interface_declaration name: (name) @type) -;; #7DCFFF #000000 0 0 0 1 +;; #7DCFFF #000000 0 0 0 0 1 (namespace_use_clause [ (name) @type @@ -237,7 +237,7 @@ alias: (name) @type.definition ]) -;; #7DCFFF #000000 0 0 0 1 +;; #7DCFFF #000000 0 0 0 0 1 (namespace_use_clause type: "function" [ @@ -246,7 +246,7 @@ alias: (name) @function ]) -;; #7DCFFF #000000 0 0 0 1 +;; #7DCFFF #000000 0 0 0 0 1 (namespace_use_clause type: "const" [ @@ -255,7 +255,7 @@ alias: (name) @constant ]) -;; #7DCFFF #000000 0 0 0 1 +;; #7DCFFF #000000 0 0 0 0 1 (scoped_call_expression scope: [ (name) @type @@ -263,7 +263,7 @@ (relative_name (name) @type) ]) -;; #7DCFFF #000000 0 0 0 1 +;; #7DCFFF #000000 0 0 0 0 1 (class_constant_access_expression . [ @@ -273,19 +273,19 @@ ] (name) @constant) -;; #A6E3A1 #000000 0 0 0 1 +;; #A6E3A1 #000000 0 0 0 0 1 (scoped_property_access_expression name: (variable_name) @variable.member) -;; #A6E3A1 #000000 0 0 0 1 +;; #A6E3A1 #000000 0 0 0 0 1 (trait_declaration name: (name) @type) -;; #A6E3A1 #000000 0 0 0 1 +;; #A6E3A1 #000000 0 0 0 0 1 (use_declaration (name) @type) -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 (binary_expression operator: "instanceof" right: [ @@ -294,24 +294,24 @@ (relative_name (name) @type) ]) -;; #FFD580 #000000 0 0 0 1 +;; #FFD580 #000000 0 0 0 0 1 (array_creation_expression "array" @function.builtin) -;; #FFD580 #000000 0 0 0 1 +;; #FFD580 #000000 0 0 0 0 1 (list_literal "list" @function.builtin) -;; #FFD580 #000000 0 0 0 1 +;; #FFD580 #000000 0 0 0 0 1 (exit_statement "exit" @function.builtin "(") -;; #89DDFF #000000 0 0 0 1 +;; #89DDFF #000000 0 0 0 0 1 (method_declaration name: (name) @function.method) -;; #89DDFF #000000 0 0 0 1 +;; #89DDFF #000000 0 0 0 0 1 (function_call_expression function: [ (name) @function.call @@ -319,24 +319,24 @@ (relative_name (name) @function.call) ]) -;; #89DDFF #000000 0 0 0 1 +;; #89DDFF #000000 0 0 0 0 1 (scoped_call_expression name: (name) @function.call) -;; #89DDFF #000000 0 0 0 1 +;; #89DDFF #000000 0 0 0 0 1 (member_call_expression name: (name) @function.method) -;; #89DDFF #000000 0 0 0 1 +;; #89DDFF #000000 0 0 0 0 1 (nullsafe_member_call_expression name: (name) @function.method) -;; #FFD580 #000000 0 0 0 1 +;; #FFD580 #000000 0 0 0 0 1 (method_declaration name: (name) @constructor (#eq? @constructor "__construct")) -;; #FFD580 #000000 0 0 0 1 +;; #FFD580 #000000 0 0 0 0 1 (object_creation_expression [ (name) @constructor @@ -344,55 +344,55 @@ (relative_name (name) @constructor) ]) -;; #9CDCFE #000000 0 0 0 1 +;; #9CDCFE #000000 0 0 0 0 1 (variadic_parameter "..." @operator name: (variable_name) @variable.parameter) -;; #9CDCFE #000000 0 0 0 1 +;; #9CDCFE #000000 0 0 0 0 1 (simple_parameter name: (variable_name) @variable.parameter) -;; #9CDCFE #000000 0 0 0 1 +;; #9CDCFE #000000 0 0 0 0 1 (argument (name) @variable.parameter) -;; #9CDCFE #000000 0 0 0 1 +;; #9CDCFE #000000 0 0 0 0 1 (property_element (variable_name) @property) -;; #9CDCFE #000000 0 0 0 1 +;; #9CDCFE #000000 0 0 0 0 1 (member_access_expression name: (variable_name (name)) @variable.member) -;; #9CDCFE #000000 0 0 0 1 +;; #9CDCFE #000000 0 0 0 0 1 (relative_scope) @variable.builtin -;; #7AA2F7 #000000 0 0 0 1 +;; #7AA2F7 #000000 0 0 0 0 1 ((variable_name) @variable.builtin (#eq? @variable.builtin "$this")) -;; #C792EA #000000 0 0 0 1 +;; #C792EA #000000 0 0 0 0 1 (namespace_definition name: (namespace_name (name) @module)) -;; #C792EA #000000 0 0 0 1 +;; #C792EA #000000 0 0 0 0 1 (namespace_name (name) @module) -;; #7AA2F7 #000000 0 0 0 1 +;; #7AA2F7 #000000 0 0 0 0 1 (relative_name "namespace" @module.builtin) -;; #89DDFF #000000 0 0 0 1 +;; #89DDFF #000000 0 0 0 0 1 (attribute_list) @attribute -;; #FF9D5C #000000 0 0 0 1 +;; #FF9D5C #000000 0 0 0 0 1 (conditional_expression "?" @keyword.conditional.ternary ":" @keyword.conditional.ternary) -;; #9CDCFE #000000 0 0 0 1 +;; #9CDCFE #000000 0 0 0 0 1 (declare_directive [ "strict_types" @@ -400,7 +400,7 @@ "encoding" ] @variable.parameter) -;; #A6E3A1 #000000 0 0 0 1 +;; #A6E3A1 #000000 0 0 0 0 1 [ (string) (encapsed_string) @@ -409,45 +409,45 @@ (shell_command_expression) ] @string -;; #A6E3A1 #000000 0 0 0 1 +;; #A6E3A1 #000000 0 0 0 0 1 (escape_sequence) @string.escape -;; #A6E3A1 #000000 0 0 0 1 +;; #A6E3A1 #000000 0 0 0 0 1 [ (heredoc_start) (heredoc_end) ] @label -;; #DDB6F2 #000000 0 0 0 1 +;; #DDB6F2 #000000 0 0 0 0 1 (nowdoc "'" @label) -;; #F38BA8 #000000 0 0 0 1 +;; #F38BA8 #000000 0 0 0 0 1 (boolean) @boolean -;; #F38BA8 #000000 0 0 0 1 +;; #F38BA8 #000000 0 0 0 0 1 (null) @constant.builtin -;; #F38BA8 #000000 0 0 0 1 +;; #F38BA8 #000000 0 0 0 0 1 (integer) @number -;; #F38BA8 #000000 0 0 0 1 +;; #F38BA8 #000000 0 0 0 0 1 (float) @number.float -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell -;; #A6E3A1 #000000 0 0 0 1 +;; #A6E3A1 #000000 0 0 0 0 1 (named_label_statement) @label -;; #7AA2F7 #000000 0 0 0 1 +;; #7AA2F7 #000000 0 0 0 0 1 (property_hook (name) @label) -;; #7AA2F7 #000000 0 0 0 1 +;; #7AA2F7 #000000 0 0 0 0 1 (visibility_modifier (operation) @label) -;; #89DDFF #000000 0 0 0 1 +;; #89DDFF #000000 0 0 0 0 1 ;; !html (text) @injection.html diff --git a/grammar/python.scm b/grammar/python.scm index e63ed8a..fc9ab61 100644 --- a/grammar/python.scm +++ b/grammar/python.scm @@ -2,33 +2,33 @@ ; Identifiers ; ============================================================ -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (identifier) @variable -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @type (#match? @type "^[A-Z].*[a-z]")) -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @constant (#match? @constant "^[A-Z][A-Z_0-9]*$")) -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @constant.builtin (#match? @constant.builtin "^__[a-zA-Z0-9_]*__$")) -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @constant.builtin (#match? @constant.builtin "^(NotImplemented|Ellipsis|quit|exit|copyright|credits|license)$")) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 ((assignment left: (identifier) @type.definition (type (identifier) @_annotation)) (#match? @_annotation "^TypeAlias$")) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 ((assignment left: (identifier) @type.definition right: (call @@ -39,20 +39,20 @@ ; Function definitions ; ============================================================ -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (function_definition name: (identifier) @function) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (type (identifier) @type) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (type (subscript (identifier) @type)) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 ((call function: (identifier) @_isinstance arguments: (argument_list @@ -64,40 +64,40 @@ ; Literals ; ============================================================ -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (none) @constant.builtin -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 [ (true) (false) ] @boolean -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (integer) @number -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (float) @number.float -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 ((module . (comment) @keyword.directive @nospell) (#match? @keyword.directive "^#!/")) -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (string) @string -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 [ (escape_sequence) (escape_interpolation) ] @string.escape -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (expression_statement (string (string_content) @spell) @string.documentation) @@ -106,37 +106,37 @@ ; Operators ; ============================================================ -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "if" "elif" "else" "for" "while" "break" "continue" ] @keyword.control_flow_loops -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "def" "return" "lambda" "yield" "async" "await" ] @keyword.functions_coroutines -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 [ "class" ] @keyword.class -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ "try" "except" "finally" "raise" ] @keyword.exceptions -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 [ "with" ] @keyword.context_management -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 [ "import" "from" "exec" ] @keyword.imports_execution -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 [ "match" "case" ] @keyword.pattern_matching -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ "global" "nonlocal" ] @keyword.scope_bindings -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "del" ] @keyword.deletion -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "pass" "assert" "as" "print" ] @keyword.utility -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "-" "-=" @@ -183,7 +183,7 @@ "not in" ] @operatoroperator -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "," "." @@ -192,7 +192,7 @@ (ellipsis) ] @punctuation.delimiter -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "(" ")" @@ -202,27 +202,27 @@ "}" ] @punctuation.bracket -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (interpolation "{" @punctuation.special "}" @punctuation.special) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (format_expression "{" @punctuation.special "}" @punctuation.special) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (line_continuation) @punctuation.special -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (type_conversion) @function.macro ; ============================================================ ; Builtins / Exception types ; ============================================================ -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @type.builtin (#match? @type.builtin "^(BaseException|Exception|ArithmeticError|BufferError|LookupError|AssertionError|AttributeError|EOFError|FloatingPointError|GeneratorExit|ImportError|ModuleNotFoundError|IndexError|KeyError|KeyboardInterrupt|MemoryError|NameError|NotImplementedError|OSError|OverflowError|RecursionError|ReferenceError|RuntimeError|StopIteration|StopAsyncIteration|SyntaxError|IndentationError|TabError|SystemError|SystemExit|TypeError|UnboundLocalError|UnicodeError|UnicodeEncodeError|UnicodeDecodeError|UnicodeTranslateError|ValueError|ZeroDivisionError|EnvironmentError|IOError|WindowsError|BlockingIOError|ChildProcessError|ConnectionError|BrokenPipeError|ConnectionAbortedError|ConnectionRefusedError|ConnectionResetError|FileExistsError|FileNotFoundError|InterruptedError|IsADirectoryError|NotADirectoryError|PermissionError|ProcessLookupError|TimeoutError|Warning|UserWarning|DeprecationWarning|PendingDeprecationWarning|SyntaxWarning|RuntimeWarning|FutureWarning|ImportWarning|UnicodeWarning|BytesWarning|ResourceWarning)$")) @@ -231,56 +231,56 @@ ; Function / Lambda parameters ; ============================================================ -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (parameters (identifier) @variable.parameter) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (lambda_parameters (identifier) @variable.parameter) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (lambda_parameters (tuple_pattern (identifier) @variable.parameter)) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (keyword_argument name: (identifier) @variable.parameter) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (default_parameter name: (identifier) @variable.parameter) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (typed_parameter (identifier) @variable.parameter) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (typed_default_parameter name: (identifier) @variable.parameter) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (parameters (list_splat_pattern (identifier) @variable.parameter)) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (parameters (dictionary_splat_pattern (identifier) @variable.parameter)) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (lambda_parameters (list_splat_pattern (identifier) @variable.parameter)) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (lambda_parameters (dictionary_splat_pattern (identifier) @variable.parameter)) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 ((identifier) @variable.builtin (#match? @variable.builtin "^(self|cls)$")) @@ -288,7 +288,7 @@ ; Attributes / Class members ; ============================================================ -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 ((attribute attribute: (identifier) @variable.member) (#match? @variable.member "^[%l_].*$")) @@ -297,22 +297,22 @@ ; Class definitions ; ============================================================ -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 (class_definition name: (identifier) @type) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (class_definition body: (block (function_definition name: (identifier) @function.method))) -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (class_definition superclasses: (argument_list (identifier) @type)) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 ((class_definition body: (block (expression_statement @@ -320,7 +320,7 @@ left: (identifier) @variable.member)))) (#match? @variable.member "^[%l_].*$")) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 ((class_definition body: (block (expression_statement @@ -329,7 +329,7 @@ (identifier) @variable.member))))) (#match? @variable.member "^[%l_].*$")) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 ((class_definition (block (function_definition @@ -340,27 +340,27 @@ ; Function calls ; ============================================================ -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call function: (identifier) @function.call) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call function: (attribute attribute: (identifier) @function.method.call)) -;; #59C2FF #000000 0 0 0 3 +;; #59C2FF #000000 0 0 0 0 3 ((call function: (identifier) @constructor) (#match? @constructor "^[A-Z]")) -;; #59C2FF #000000 0 0 0 3 +;; #59C2FF #000000 0 0 0 0 3 ((call function: (attribute attribute: (identifier) @constructor)) (#match? @constructor "^[A-Z]")) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 ((call function: (identifier) @function.builtin) (#match? @function.builtin @@ -382,31 +382,31 @@ ; Decorators ; ============================================================ -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (decorator "@" @attribute) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (decorator (identifier) @attribute) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (decorator (attribute attribute: (identifier) @attribute)) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (decorator (call (identifier) @attribute)) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (decorator (call (attribute attribute: (identifier) @attribute))) -;; #59C2FF #000000 0 0 0 3 +;; #59C2FF #000000 0 0 0 0 3 ((decorator (identifier) @attribute.builtin) (#match? @attribute.builtin "^(classmethod|property|staticmethod)$")) diff --git a/grammar/query.scm b/grammar/query.scm index 916df72..d7e7b80 100644 --- a/grammar/query.scm +++ b/grammar/query.scm @@ -2,37 +2,37 @@ ;; Strings & escapes ;; ============================================================ -;; #AAD94C #000000 0 0 0 2 +;; #AAD94C #000000 0 0 0 0 2 (string) @string -;; #95E6CB #000000 0 0 0 2 +;; #95E6CB #000000 0 0 0 0 2 (escape_sequence) @string.escape ;; ============================================================ ;; Identifiers ;; ============================================================ -;; #C4B5FF #000000 0 0 0 2 +;; #C4B5FF #000000 0 0 0 0 2 (capture (identifier) @type) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (predicate name: (identifier) @function.call) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (named_node name: (identifier) @variable) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (missing_node name: (identifier) @variable) -;; #F07178 #000000 0 0 0 2 +;; #F07178 #000000 0 0 0 0 2 (field_definition name: (identifier) @variable.member) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (negated_field "!" @operator (identifier) @property) @@ -41,23 +41,23 @@ ;; Comments ;; ============================================================ -;; #99ADBF #000000 0 1 0 2 +;; #99ADBF #000000 0 1 0 0 2 (comment) @comment @spell ;; ============================================================ ;; Operators & punctuation ;; ============================================================ -;; #F29668 #000000 0 0 0 2 +;; #F29668 #000000 0 0 0 0 2 (quantifier) @operator -;; #BFBDB6 #000000 0 0 0 2 +;; #BFBDB6 #000000 0 0 0 0 2 (predicate_type) @punctuation.special -;; #F29668 #000000 0 0 0 2 +;; #F29668 #000000 0 0 0 0 2 "." @operator -;; #BFBDB6 #000000 0 0 0 2 +;; #BFBDB6 #000000 0 0 0 0 2 [ "[" "]" @@ -65,33 +65,33 @@ ")" ] @punctuation.bracket -;; #BFBDB6 #000000 0 0 0 2 +;; #BFBDB6 #000000 0 0 0 0 2 [ ":" "/" ] @punctuation.delimiter -;; #BFBDB6 #000000 0 0 0 2 +;; #BFBDB6 #000000 0 0 0 0 2 [ "@" "#" ] @punctuation.special -;; #BFBDB6 #000000 0 0 0 2 +;; #BFBDB6 #000000 0 0 0 0 2 (predicate "." @punctuation.special) -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 "_" @character.special -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 "MISSING" @keyword ;; ============================================================ ;; Numbers ;; ============================================================ -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 ((parameters (identifier) @number) (#match? @number "^[-+]?[0-9]+(.[0-9]+)?$")) @@ -100,7 +100,7 @@ ;; Predicate parameters ;; ============================================================ -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 ((predicate name: (identifier) @_name parameters: (parameters @@ -110,7 +110,7 @@ (identifier) @property)) (#match? @_name "^set$")) -;; #AAD94C #000000 0 0 0 2 +;; #AAD94C #000000 0 0 0 0 2 ((predicate name: (identifier) @_name parameters: (parameters diff --git a/grammar/regex.scm b/grammar/regex.scm index b97a14e..ff9272b 100644 --- a/grammar/regex.scm +++ b/grammar/regex.scm @@ -2,7 +2,7 @@ ;; Punctuation / brackets ;; ============================================================ -;; #B6BEC8 #000000 0 0 0 1 +;; #B6BEC8 #000000 0 0 0 0 1 [ "(" ")" @@ -20,10 +20,10 @@ ":]" ] @punctuation.bracket -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (group_name) @property -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 [ "*" "+" @@ -33,38 +33,38 @@ "!" ] @operator -;; #B8E986 #000000 0 0 0 2 +;; #B8E986 #000000 0 0 0 0 2 (count_quantifier [ (decimal_digits) @number "," @punctuation.delimiter ]) -;; #F29668 #000000 0 0 0 2 +;; #F29668 #000000 0 0 0 0 2 (inline_flags_group "-"? @operator ":"? @punctuation.delimiter) -;; #F29CC3 #000000 0 0 0 2 +;; #F29CC3 #000000 0 0 0 0 2 (flags) @character.special -;; #C2E8FF #000000 0 0 0 2 +;; #C2E8FF #000000 0 0 0 0 2 (character_class [ "^" @operator (class_range "-" @operator) ]) -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 [ (class_character) (posix_class_name) ] @constant.character -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (pattern_character) @string -;; #95E6CB #000000 0 0 0 2 +;; #95E6CB #000000 0 0 0 0 2 [ (identity_escape) (control_letter_escape) diff --git a/grammar/ruby.scm b/grammar/ruby.scm index e2f4ed2..bba6457 100644 --- a/grammar/ruby.scm +++ b/grammar/ruby.scm @@ -1,10 +1,10 @@ -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 [ (identifier) (global_variable) ] @variable -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "alias" "begin" @@ -16,17 +16,17 @@ "then" ] @keyword -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "class" @keyword.type -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "return" "yield" ] @keyword.return -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 [ "and" "or" @@ -34,7 +34,7 @@ "not" ] @keyword.operator -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "def" "undef" @@ -44,7 +44,7 @@ "end" @keyword.function) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "case" "else" @@ -58,7 +58,7 @@ (if "end" @keyword.conditional) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "for" "until" @@ -69,28 +69,28 @@ "next" ] @keyword.repeat -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (constant) @constant -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "rescue" "ensure" ] @keyword.exception -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 "defined?" @function -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (call receiver: (constant)? @type method: [ (identifier) (constant) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 ] @function.call) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (alias (identifier) @function) @@ -109,7 +109,7 @@ (constant) @type ]) -;; #59C2FF #000000 0 0 0 2 +;; #59C2FF #000000 0 0 0 0 2 (class name: (constant) @type) @@ -119,27 +119,27 @@ (superclass (constant) @type) -;; #F07178 #000000 0 0 0 2 +;; #F07178 #000000 0 0 0 0 2 [ (class_variable) (instance_variable) ] @variable.member -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 ((identifier) @keyword.modifier (#match? @keyword.modifier "^(private|protected|public)$" )) -;; #FF8F40 #000000 0 0 0 3 +;; #FF8F40 #000000 0 0 0 0 3 (program (call (identifier) @keyword.import) (#match? @keyword.import "^(require|require_relative|load)$")) -;; #D2A6FF #000000 0 0 0 4 +;; #D2A6FF #000000 0 0 0 0 4 ((identifier) @constant.builtin (#match? @constant.builtin "^(__callee__|__dir__|__id__|__method__|__send__|__ENCODING__|__FILE__|__LINE__)$" )) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 ((identifier) @function.builtin (#match? @function.builtin "^(attr_reader|attr_writer|attr_accessor|module_function)$" )) @@ -148,17 +148,17 @@ method: (identifier) @function.builtin) (#match? @function.builtin "^(include|extend|prepend|refine|using)$")) -;; #FF8F40 #000000 0 0 0 3 +;; #FF8F40 #000000 0 0 0 0 3 ((identifier) @keyword.exception (#match? @keyword.exception "^(raise|fail|catch|throw)$" )) -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ (self) (super) ] @variable.builtin -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (method_parameters (identifier) @variable.parameter) @@ -186,7 +186,7 @@ (keyword_parameter (identifier) @variable.parameter) -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 [ (string_content) (heredoc_content) @@ -194,13 +194,13 @@ "`" ] @string -;; #E6C08A #000000 0 0 0 1 +;; #E6C08A #000000 0 0 0 0 1 [ (heredoc_beginning) (heredoc_end) ] @label -;; #39BAE6 #000000 0 0 0 2 +;; #39BAE6 #000000 0 0 0 0 2 [ (bare_symbol) (simple_symbol) @@ -208,34 +208,34 @@ (hash_key_symbol) ] @string.special.symbol -;; #95E6CB #000000 0 0 0 2 +;; #95E6CB #000000 0 0 0 0 2 (escape_sequence) @string.escape -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (integer) @number -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (float) @number.float -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (true) @boolean.true -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (false) @boolean.false -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (nil) @constant.nil -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment -;; #AAD94C #000000 0 0 0 3 +;; #AAD94C #000000 0 0 0 0 3 ((program . (comment) @shebang @nospell) (#match? @shebang "^#!/")) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 [ "!" "=" @@ -263,7 +263,7 @@ ":" ] @operator -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "==" "===" @@ -281,7 +281,7 @@ "..." ] @operator.ligature -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "," ";" @@ -293,7 +293,7 @@ (pair ":" @punctuation.delimiter) -;; #BFBDB6 #000000 0 0 0 3 +;; #BFBDB6 #000000 0 0 0 0 3 [ "(" ")" @@ -311,7 +311,7 @@ (block_parameters "|" @punctuation.bracket) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (interpolation "#{" @punctuation.special "}" @punctuation.special) diff --git a/grammar/rust.scm b/grammar/rust.scm index 57c544b..0758e58 100644 --- a/grammar/rust.scm +++ b/grammar/rust.scm @@ -2,51 +2,51 @@ ; Identifiers & Modules ; ============================================================ -;; #82AAFF #000000 0 0 0 1 +;; #82AAFF #000000 0 0 0 0 1 (shebang) @keyword.directive1 -;; #E5C07B #000000 0 0 0 1 +;; #E5C07B #000000 0 0 0 0 1 (identifier) @variable1 -;; #A6E22E #000000 0 0 0 2 +;; #A6E22E #000000 0 0 0 0 2 ((identifier) @type1 (#match? @type1 "^[A-Z]")) -;; #FFD700 #000000 0 0 0 2 +;; #FFD700 #000000 0 0 0 0 2 (const_item name: (identifier) @constant1) -;; #FF9E64 #000000 0 0 0 3 +;; #FF9E64 #000000 0 0 0 0 3 ((identifier) @constant2 (#match? @constant2 "^[A-Z][A-Z%d_]*$")) -;; #7DCFFF #000000 0 0 0 4 +;; #7DCFFF #000000 0 0 0 0 4 (type_identifier) @type2 -;; #7DCFFF #000000 0 0 0 2 +;; #7DCFFF #000000 0 0 0 0 2 (primitive_type) @type.builtin1 -;; #C678DD #000000 0 0 0 2 +;; #C678DD #000000 0 0 0 0 2 (field_identifier) @variable.member1 -;; #C678DD #000000 0 0 0 2 +;; #C678DD #000000 0 0 0 0 2 (shorthand_field_identifier) @variable.member2 -;; #C678DD #000000 0 0 0 2 +;; #C678DD #000000 0 0 0 0 2 (shorthand_field_initializer (identifier) @variable.member3) -;; #61AFEF #000000 0 0 0 2 +;; #61AFEF #000000 0 0 0 0 2 (mod_item name: (identifier) @module1) -;; #D19A66 #000000 0 0 0 2 +;; #D19A66 #000000 0 0 0 0 2 (self) @variable.builtin1 -;; #5C6370 #000000 0 0 0 1 +;; #5C6370 #000000 0 0 0 0 1 "_" @character.special1 -;; #61AFEF #000000 0 0 1 2 +;; #61AFEF #000000 0 0 1 0 2 (label [ "'" @@ -57,22 +57,22 @@ ; Functions & Parameters ; ============================================================ -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (function_item (identifier) @function1) -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (function_signature_item (identifier) @function2) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (parameter [ (identifier) "_" ] @variable.parameter1) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (parameter (ref_pattern [ @@ -81,7 +81,7 @@ (identifier) @variable.parameter3 ])) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (closure_parameters (_) @variable.parameter4) @@ -89,39 +89,39 @@ ; Function Calls & Constructors ; ============================================================ -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call_expression function: (identifier) @function.call1) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call_expression function: (scoped_identifier (identifier) @function.call2 .)) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call_expression function: (field_expression field: (field_identifier) @function.call3)) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (generic_function function: (identifier) @function.call4) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (generic_function function: (scoped_identifier name: (identifier) @function.call5)) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (generic_function function: (field_expression field: (field_identifier) @function.call6)) -;; #9ADE7A #000000 0 0 0 32 +;; #9ADE7A #000000 0 0 0 0 32 ((field_identifier) @constant3 (#match? @constant3 "^[A-Z]")) -;; #9ADE7A #000000 0 0 0 32 +;; #9ADE7A #000000 0 0 0 0 32 (enum_variant name: (identifier) @constant4) @@ -129,86 +129,86 @@ ; Scoped Identifiers & Paths ; ============================================================ -;; #82AAFF #000000 0 0 0 9 +;; #82AAFF #000000 0 0 0 0 9 (scoped_identifier path: (identifier) @module2) -;; #82AAFF #000000 0 0 0 9 +;; #82AAFF #000000 0 0 0 0 9 (scoped_identifier (scoped_identifier name: (identifier) @module3)) -;; #7DCFFF #000000 0 0 0 9 +;; #7DCFFF #000000 0 0 0 0 9 (scoped_type_identifier path: (identifier) @module4) -;; #7DCFFF #000000 0 0 0 9 +;; #7DCFFF #000000 0 0 0 0 9 (scoped_type_identifier path: (identifier) @type3 (#match? @type3 "^[A-Z]")) -;; #7DCFFF #000000 0 0 0 9 +;; #7DCFFF #000000 0 0 0 0 9 (scoped_type_identifier (scoped_identifier name: (identifier) @module5)) -;; #7DCFFF #000000 0 0 0 9 +;; #7DCFFF #000000 0 0 0 0 9 ((scoped_identifier path: (identifier) @type4) (#match? @type4 "^[A-Z]")) -;; #7DCFFF #000000 0 0 0 9 +;; #7DCFFF #000000 0 0 0 0 9 ((scoped_identifier name: (identifier) @type5) (#match? @type5 "^[A-Z]")) -;; #FFD700 #000000 0 0 0 7 +;; #FFD700 #000000 0 0 0 0 7 ((scoped_identifier name: (identifier) @constant5) (#match? @constant5 "^[A-Z][A-Z%d_]*$")) -;; #FFD700 #000000 0 0 0 7 +;; #FFD700 #000000 0 0 0 0 7 ((scoped_identifier path: (identifier) @type6 name: (identifier) @constant6) (#match? @type6 "^[A-Z]") (#match? @constant6 "^[A-Z]")) -;; #FFD700 #000000 0 0 0 7 +;; #FFD700 #000000 0 0 0 0 7 ((scoped_type_identifier path: (identifier) @type7 name: (type_identifier) @constant7) (#match? @type7 "^[A-Z]") (#match? @constant7 "^[A-Z]")) -;; #61AFEF #000000 0 0 0 0 +;; #61AFEF #000000 0 0 0 0 0 [ (crate) (super) ] @module6 -;; #61AFEF #000000 0 0 0 0 +;; #61AFEF #000000 0 0 0 0 0 (scoped_use_list path: (identifier) @module7) -;; #61AFEF #000000 0 0 0 0 +;; #61AFEF #000000 0 0 0 0 0 (scoped_use_list path: (scoped_identifier (identifier) @module8)) -;; #7DCFFF #000000 0 0 0 0 +;; #7DCFFF #000000 0 0 0 0 0 (use_list (scoped_identifier (identifier) @module9 . (_))) -;; #7DCFFF #000000 0 0 0 0 +;; #7DCFFF #000000 0 0 0 0 0 (use_list (identifier) @type8 (#match? @type8 "^[A-Z]")) -;; #7DCFFF #000000 0 0 0 0 +;; #7DCFFF #000000 0 0 0 0 0 (use_as_clause alias: (identifier) @type9 (#match? @type9 "^[A-Z]")) @@ -217,7 +217,7 @@ ; Enum Constructors & Match Arms ; ============================================================ -;; #9ADE7A #000000 0 0 0 9 +;; #9ADE7A #000000 0 0 0 0 9 ; Correct enum constructors (call_expression function: (scoped_identifier @@ -225,21 +225,21 @@ name: (identifier) @constant8) (#match? @constant8 "^[A-Z]")) -;; #FFD700 #000000 0 0 0 2 +;; #FFD700 #000000 0 0 0 0 2 ; Assume uppercase names in a match arm are constants. ((match_arm pattern: (match_pattern (identifier) @constant9)) (#match? @constant9 "^[A-Z]")) -;; #FFD700 #000000 0 0 0 2 +;; #FFD700 #000000 0 0 0 0 2 ((match_arm pattern: (match_pattern (scoped_identifier name: (identifier) @constant10))) (#match? @constant10 "^[A-Z]")) -;; #D2A6FF #000000 0 0 0 3 +;; #D2A6FF #000000 0 0 0 0 3 ((identifier) @constant.builtin1 (#match? @constant.builtin1 "^(Some|None|Ok|Err)$")) @@ -247,36 +247,36 @@ ; Macros ; ============================================================ -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 "$" @function.macro1 -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (metavariable) @function.macro2 -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (macro_definition "macro_rules!" @function.macro3) -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (attribute_item (attribute (identifier) @function.macro4)) -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (inner_attribute_item (attribute (identifier) @function.macro5)) -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (attribute (scoped_identifier (identifier) @function.macro6 .)) -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (macro_invocation macro: (identifier) @function.macro7) -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (macro_invocation macro: (scoped_identifier (identifier) @function.macro8 .)) @@ -285,42 +285,42 @@ ; Literals ; ============================================================ -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (boolean_literal) @boolean1 -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (integer_literal) @number1 -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (float_literal) @number.float1 -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 [ (raw_string_literal) (string_literal) ] @string1 -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (escape_sequence) @string.escape1 -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (char_literal) @character1 ; ============================================================ ; Keywords ; ============================================================ -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "use" "mod" ] @keyword.import1 -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (use_as_clause "as" @keyword.import2) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "default" "impl" @@ -330,7 +330,7 @@ "where" ] @keyword1 -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "enum" "struct" @@ -339,17 +339,17 @@ "type" ] @keyword.type1 -;; #82AAFF #000000 0 0 0 1 +;; #82AAFF #000000 0 0 0 0 1 [ "async" "await" "gen" ] @keyword.coroutine1 -;; #FF6347 #000000 0 0 0 1 +;; #FF6347 #000000 0 0 0 0 1 "try" @keyword.exception1 -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "ref" "pub" @@ -361,45 +361,45 @@ "extern" ] @keyword.modifier1 -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (lifetime "'" @keyword.modifier2) -;; #9ADE7A #000000 0 0 0 5 +;; #9ADE7A #000000 0 0 0 0 5 (lifetime (identifier) @attribute1) -;; #9ADE7A #000000 0 0 0 5 +;; #9ADE7A #000000 0 0 0 0 5 (lifetime (identifier) @attribute.builtin1 (#match? @attribute.builtin1 "^(static|_)$")) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "fn" @keyword.function1 -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "return" "yield" ] @keyword.return1 -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (type_cast_expression "as" @keyword.operator1) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (qualified_type "as" @keyword.operator2) -;; #61AFEF #000000 0 0 0 9 +;; #61AFEF #000000 0 0 0 0 9 (use_list (self) @module10) -;; #61AFEF #000000 0 0 0 9 +;; #61AFEF #000000 0 0 0 0 9 (scoped_use_list (self) @module11) -;; #61AFEF #000000 0 0 0 9 +;; #61AFEF #000000 0 0 0 0 9 (scoped_identifier [ (crate) @@ -407,7 +407,7 @@ (self) ] @module12) -;; #61AFEF #000000 0 0 0 9 +;; #61AFEF #000000 0 0 0 0 9 (visibility_modifier [ (crate) @@ -415,14 +415,14 @@ (self) ] @module13) -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "if" "else" "match" ] @keyword.conditional1 -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 [ "break" "continue" @@ -431,10 +431,10 @@ "while" ] @keyword.repeat1 -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 "for" @keyword2 -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 (for_expression "for" @keyword.repeat2) @@ -442,7 +442,7 @@ ; Operators ; ============================================================ -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "!" "!=" @@ -481,15 +481,15 @@ "||" ] @operator1 -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (use_wildcard "*" @character.special2) -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (remaining_field_pattern ".." @character.special3) -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (range_pattern [ ".." @@ -501,7 +501,7 @@ ; Punctuation ; ============================================================ -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "(" ")" @@ -511,39 +511,39 @@ "}" ] @punctuation.bracket1 -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (closure_parameters "|" @punctuation.bracket2) -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (type_arguments [ "<" ">" ] @punctuation.bracket3) -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (type_parameters [ "<" ">" ] @punctuation.bracket4) -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (bracketed_type [ "<" ">" ] @punctuation.bracket5) -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (for_lifetimes [ "<" ">" ] @punctuation.bracket6) -;; #BFBDB6 #000000 0 1 0 1 +;; #BFBDB6 #000000 0 1 0 0 1 [ "," "." @@ -554,22 +554,22 @@ "=>" ] @punctuation.delimiter1 -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (attribute_item "#" @punctuation.special1) -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 (inner_attribute_item [ "!" "#" ] @punctuation.special2) -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (macro_invocation "!" @function.macro9) -;; #7DCFFF #000000 0 0 0 1 +;; #7DCFFF #000000 0 0 0 0 1 (never_type "!" @type.builtin2) @@ -577,19 +577,19 @@ ; Panic / Assert / Debug Macros ; ============================================================ -;; #FF6347 #000000 0 0 0 2 +;; #FF6347 #000000 0 0 0 0 2 (macro_invocation macro: (identifier) @_identifier1 @keyword.exception2 "!" @keyword.exception2 (#match? @_identifier1 "^panic$")) -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 (macro_invocation macro: (identifier) @_identifier2 @keyword.exception3 "!" @keyword.exception3 (#match? @_identifier2 "assert")) -;; #7DCFFF #000000 0 0 0 2 +;; #7DCFFF #000000 0 0 0 0 2 (macro_invocation macro: (identifier) @_identifier3 @keyword.debug1 "!" @keyword.debug1 @@ -599,7 +599,7 @@ ; Comments ; ============================================================ -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 [ (line_comment) (block_comment) diff --git a/grammar/sql.scm b/grammar/sql.scm index 9b3e6bc..370839c 100644 --- a/grammar/sql.scm +++ b/grammar/sql.scm @@ -1,8 +1,8 @@ -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (object_reference name: (identifier) @type) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (invocation (object_reference name: (identifier) @function.call)) @@ -23,41 +23,41 @@ (keyword_object_id) ] @function.call -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (relation alias: (identifier) @variable) (term alias: (identifier) @variable) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (field name: (identifier) @field) -;; #FF8F40 #000000 0 0 0 2 +;; #FF8F40 #000000 0 0 0 0 2 ((literal) @number (#match? @number "^[-+0-9]+$")) -;; #F29668 #000000 0 0 0 2 +;; #F29668 #000000 0 0 0 0 2 ((literal) @float (#match? @float "^[-+0-9]+\\.[0-9]+$")) -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (literal) @string -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment @spell (marginalia) @comment (parameter) @parameter -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 [ (keyword_true) (keyword_false) ] @boolean -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ (keyword_asc) (keyword_desc) @@ -88,7 +88,7 @@ (keyword_strict) ] @attribute -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 [ (keyword_materialized) (keyword_recursive) @@ -107,7 +107,7 @@ (keyword_volatile) ] @storageclass -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 [ (keyword_case) (keyword_when) @@ -115,7 +115,7 @@ (keyword_else) ] @conditional -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 [ (keyword_select) (keyword_from) @@ -340,7 +340,7 @@ (keyword_while) ] @keyword -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ (keyword_restrict) (keyword_unbounded) @@ -367,7 +367,7 @@ (keyword_minvalue) ] @type.qualifier -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 [ (keyword_int) (keyword_null) @@ -421,7 +421,7 @@ (keyword_interval) ] @type.builtin -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 [ (keyword_in) (keyword_and) @@ -435,7 +435,7 @@ (keyword_intersect) ] @keyword.operator -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "+" "-" @@ -455,13 +455,13 @@ (op_unary_other) ] @operator -;; #888888 #000000 0 0 0 1 +;; #888888 #000000 0 0 0 0 1 [ "(" ")" ] @punctuation.bracket -;; #888888 #000000 0 1 0 1 +;; #888888 #000000 0 1 0 0 1 [ ";" "," diff --git a/grammar/toml.scm b/grammar/toml.scm index f5eb52a..255b0da 100644 --- a/grammar/toml.scm +++ b/grammar/toml.scm @@ -1,34 +1,34 @@ -;; #F0F8FF #000000 0 0 0 2 +;; #F0F8FF #000000 0 0 0 0 2 (bare_key) @type -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (quoted_key) @string.quoted -;; #D2A6FF #000000 0 0 0 0 +;; #D2A6FF #000000 0 0 0 0 0 (pair (bare_key)) @property -;; #D2A6FF #000000 0 0 0 0 +;; #D2A6FF #000000 0 0 0 0 0 (pair (dotted_key (bare_key) @property)) -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (boolean) @boolean -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment -;; #AAD94C #000000 0 0 0 1 +;; #AAD94C #000000 0 0 0 0 1 (string) @string -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 [ (integer) (float) ] @number -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 [ (offset_date_time) (local_date_time) @@ -36,16 +36,16 @@ (local_time) ] @string.special -;; #888888 #000000 0 1 0 3 +;; #888888 #000000 0 1 0 0 3 [ "." "," ] @punctuation.delimiter -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 "=" @operator -;; #888888 #000000 0 0 0 3 +;; #888888 #000000 0 0 0 0 3 [ "[" "]" diff --git a/grammar/typescript.scm b/grammar/typescript.scm index de3bd29..76e7076 100644 --- a/grammar/typescript.scm +++ b/grammar/typescript.scm @@ -2,19 +2,19 @@ ; Identifiers ; ============================================================ -;; #FFFFFF #000000 0 0 0 1 +;; #FFFFFF #000000 0 0 0 0 1 (identifier) @variable -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 ((identifier) @constant (#match? @constant "^[A-Z_][A-Z0-9_]*$")) -;; #F07178 #000000 0 0 0 3 +;; #F07178 #000000 0 0 0 0 3 ((identifier) @variable.builtin (#match? @variable.builtin "^(arguments|console|window|document|globalThis|process|module|exports)$")) -;; #59C2FF #000000 0 0 0 1 +;; #59C2FF #000000 0 0 0 0 1 ((identifier) @constructor (#match? @constructor "^[A-Z][a-zA-Z0-9]*$")) @@ -22,21 +22,21 @@ ; Properties ; ============================================================ -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (property_identifier) @property ; ============================================================ ; Functions ; ============================================================ -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (function_declaration name: (identifier) @function) (function_expression name: (identifier) @function) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (method_definition name: (property_identifier) @function.method) @@ -56,11 +56,11 @@ ; Function calls ; ------------------------------------------------------------ -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call_expression function: (identifier) @function.call) -;; #FFB454 #000000 0 0 0 2 +;; #FFB454 #000000 0 0 0 0 2 (call_expression function: (member_expression property: (property_identifier) @function.method)) @@ -69,7 +69,7 @@ ; Highlighted definitions & references ; ============================================================ -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (assignment_expression left: [ (identifier) @name @@ -79,21 +79,21 @@ right: [(arrow_function) (function_expression)] ) @definition.function -;; #FFB454 #000000 0 0 0 3 +;; #FFB454 #000000 0 0 0 0 3 (pair key: (property_identifier) @name value: [(arrow_function) (function_expression)]) @definition.function -;; #59C2FF #000000 0 0 0 0 +;; #59C2FF #000000 0 0 0 0 0 ((call_expression function: (identifier) @name) @reference.call (#not-match? @name "^(require)$")) -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (new_expression constructor: (_) @name) @reference.class -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (export_statement value: (assignment_expression left: (identifier) @name right: ([ (number) (string) @@ -109,7 +109,7 @@ ; Parameters ; ============================================================ -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (formal_parameters [ (identifier) @variable.parameter @@ -126,7 +126,7 @@ ; Keywords (split into semantic groups) ; ============================================================ -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 ; Declarations [ "var" @@ -136,7 +136,7 @@ "class" ] @keyword.declaration -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 ; Control flow [ "if" @@ -157,7 +157,7 @@ "extends" ] @keyword.control -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 ; Imports / exports [ "import" @@ -166,7 +166,7 @@ "as" ] @keyword.import -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 ; Operators-as-keywords [ "in" @@ -179,7 +179,7 @@ "yield" ] @keyword.operator -;; #FF8F40 #000000 0 0 0 1 +;; #FF8F40 #000000 0 0 0 0 1 ; Modifiers [ "async" @@ -192,11 +192,11 @@ ; Literals ; ============================================================ -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (this) @variable.builtin (super) @variable.builtin -;; #D2A6FF #000000 0 0 0 4 +;; #D2A6FF #000000 0 0 0 0 4 [ (true) (false) @@ -204,27 +204,27 @@ (undefined) ] @constant.builtin -;; #D2A6FF #000000 0 0 0 2 +;; #D2A6FF #000000 0 0 0 0 2 (number) @number -;; #D2A6FF #000000 0 1 0 2 +;; #D2A6FF #000000 0 1 0 0 2 ((string) @use_strict (#match? @use_strict "^['\"]use strict['\"]$")) -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (string) @string -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 (template_string) @string.special -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment ; ============================================================ ; Operators & punctuation ; ============================================================ -;; #F29668 #000000 0 1 0 1 +;; #F29668 #000000 0 1 0 0 1 [ "+" "-" @@ -271,14 +271,14 @@ "=>" ] @operator -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "." "," ";" ] @punctuation.delimiter -;; #BFBDB6 #000000 0 0 0 1 +;; #BFBDB6 #000000 0 0 0 0 1 [ "(" ")" @@ -288,7 +288,7 @@ "}" ] @punctuation.bracket -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (template_substitution "${" @punctuation.special "}" @punctuation.special) @@ -297,15 +297,15 @@ ; JSX ; ============================================================ -;; #59C2FF #000000 0 0 0 4 +;; #59C2FF #000000 0 0 0 0 4 (jsx_opening_element (identifier) @tag2) (jsx_closing_element (identifier) @tag2) (jsx_self_closing_element (identifier) @tag2) -;; #F07178 #000000 0 0 0 3 +;; #F07178 #000000 0 0 0 0 3 (jsx_attribute (property_identifier) @attribute2) -;; #BFBDB6 #000000 0 0 0 3 +;; #BFBDB6 #000000 0 0 0 0 3 (jsx_opening_element (["<" ">"]) @punctuation.bracket2) (jsx_closing_element ([""]) @punctuation.bracket2) (jsx_self_closing_element (["<" "/>"]) @punctuation.bracket2) diff --git a/grammar/yaml.scm b/grammar/yaml.scm index c7b02e5..a401251 100644 --- a/grammar/yaml.scm +++ b/grammar/yaml.scm @@ -1,47 +1,47 @@ -;; #F29668 #000000 0 0 0 1 +;; #F29668 #000000 0 0 0 0 1 (boolean_scalar) @boolean -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 (null_scalar) @constant.builtin -;; #AAD94C #000000 0 0 0 0 +;; #AAD94C #000000 0 0 0 0 0 [ (double_quote_scalar) (single_quote_scalar) ] @string -;; #FFFFFF #000000 0 0 0 0 +;; #FFFFFF #000000 0 0 0 0 0 [ (block_scalar) (string_scalar) ] @string.abs -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 [ (integer_scalar) (float_scalar) ] @number -;; #99ADBF #000000 0 1 0 1 +;; #99ADBF #000000 0 1 0 0 1 (comment) @comment -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 [ (anchor_name) (alias_name) ] @label -;; #7dcfff #000000 0 0 0 2 +;; #7dcfff #000000 0 0 0 0 2 (tag) @type -;; #F07178 #000000 0 0 0 1 +;; #F07178 #000000 0 0 0 0 1 [ (yaml_directive) (tag_directive) (reserved_directive) ] @attribute -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (block_mapping_pair key: (flow_node [ @@ -49,13 +49,13 @@ (single_quote_scalar) ] @property)) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (block_mapping_pair key: (flow_node (plain_scalar (string_scalar) @property))) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (flow_mapping (_ key: (flow_node @@ -64,14 +64,14 @@ (single_quote_scalar) ] @property))) -;; #D2A6FF #000000 0 0 0 1 +;; #D2A6FF #000000 0 0 0 0 1 (flow_mapping (_ key: (flow_node (plain_scalar (string_scalar) @property)))) -;; #F38BA8 #000000 0 1 0 3 +;; #F38BA8 #000000 0 1 0 0 3 [ "," "-" @@ -81,7 +81,7 @@ "|" ] @punctuation.delimiter -;; #888888 #000000 0 0 0 3 +;; #888888 #000000 0 0 0 0 3 [ "[" "]" @@ -89,7 +89,7 @@ "}" ] @punctuation.bracket -;; #AAD94C #000000 0 1 0 3 +;; #AAD94C #000000 0 1 0 0 3 [ "*" "&" diff --git a/include/io/ui.h b/include/io/ui.h index 35e6338..ca61e1c 100644 --- a/include/io/ui.h +++ b/include/io/ui.h @@ -48,7 +48,8 @@ enum CellFlags : uint8_t { CF_NONE = 0, CF_ITALIC = 1 << 0, CF_BOLD = 1 << 1, - CF_UNDERLINE = 1 << 2 + CF_UNDERLINE = 1 << 2, + CF_STRIKETHROUGH = 1 << 3 }; struct ScreenCell { diff --git a/samples/markdown.md b/samples/markdown.md index c9282ec..64b4047 100644 --- a/samples/markdown.md +++ b/samples/markdown.md @@ -1,6 +1,9 @@ # Heading 1 -## Heading 2 + ones + content + +# Heading 2 ### Heading 3 @@ -39,4 +42,4 @@ string]] ![Image](https://example.com/image.jpg) -> "This is a quote with a link to [OpenAI](https://openai.com)." +> "This is a quote with a link to [Top](#Heading%202)." diff --git a/src/io/renderer.cc b/src/io/renderer.cc index 29076a8..425ab51 100644 --- a/src/io/renderer.cc +++ b/src/io/renderer.cc @@ -123,6 +123,7 @@ void render() { uint32_t current_ul_color = 0; bool current_italic = false; bool current_bold = false; + bool current_strikethrough = false; bool current_underline = false; std::lock_guard lock(screen_mutex); std::string out; @@ -218,6 +219,11 @@ void render() { out += bold ? "\x1b[1m" : "\x1b[22m"; current_bold = bold; } + bool strikethrough = (new_cell.flags & CF_STRIKETHROUGH) != 0; + if (strikethrough != current_strikethrough) { + out += strikethrough ? "\x1b[9m" : "\x1b[29m"; + current_strikethrough = strikethrough; + } bool underline = (new_cell.flags & CF_UNDERLINE) != 0; if (underline) { if (new_cell.ul_color != current_ul_color) { diff --git a/src/ts/utils.cc b/src/ts/utils.cc index ef368b7..0ea2d6a 100644 --- a/src/ts/utils.cc +++ b/src/ts/utils.cc @@ -1,4 +1,5 @@ #include "config.h" +#include "io/ui.h" #include "ts/ts.h" std::unordered_map regex_cache; @@ -40,7 +41,7 @@ TSQuery *load_query(const char *query_path, TSSetBase *set) { int errornumber = 0; PCRE2_SIZE erroroffset = 0; pcre2_code *re = pcre2_compile( - (PCRE2_SPTR) R"((@[A-Za-z0-9_.]+)|(;; \#[0-9a-fA-F]{6} \#[0-9a-fA-F]{6} [01] [01] [01] \d+)|(;; !(\w+)))", + (PCRE2_SPTR) R"((@[A-Za-z0-9_.]+)|(;; \#[0-9a-fA-F]{6} \#[0-9a-fA-F]{6} [01] [01] [01] [01] \d+)|(;; !(\w+)))", PCRE2_ZERO_TERMINATED, 0, &errornumber, &erroroffset, nullptr); if (!re) return nullptr; @@ -84,9 +85,11 @@ TSQuery *load_query(const char *query_path, TSSetBase *set) { int bold = std::stoi(mct.substr(19, 1)); int italic = std::stoi(mct.substr(21, 1)); int underline = std::stoi(mct.substr(23, 1)); - c_hl->priority = std::stoi(mct.substr(25)); + int strike = std::stoi(mct.substr(25, 1)); + c_hl->priority = std::stoi(mct.substr(27)); c_hl->flags = (bold ? CF_BOLD : 0) | (italic ? CF_ITALIC : 0) | - (underline ? CF_UNDERLINE : 0); + (underline ? CF_UNDERLINE : 0) | + (strike ? CF_STRIKETHROUGH : 0); } else if (mct.substr(0, 4) == ";; !") { auto it = kLanguages.find(mct.substr(4)); if (it != kLanguages.end())