diff options
| author | Mouinul Hossain <122956967+OXY2DEV@users.noreply.github.com> | 2025-09-29 07:04:09 +0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-09-28 18:04:09 -0700 |
| commit | db50897909bfd77d816ef3958e392a2f7fccd057 (patch) | |
| tree | 5d517c5b45e2a8df0c776b34174f57fc350fadc2 | |
| parent | feat(inko)!: update parser and queries (diff) | |
| download | nvim-treesitter-db50897909bfd77d816ef3958e392a2f7fccd057.tar nvim-treesitter-db50897909bfd77d816ef3958e392a2f7fccd057.tar.gz nvim-treesitter-db50897909bfd77d816ef3958e392a2f7fccd057.tar.bz2 nvim-treesitter-db50897909bfd77d816ef3958e392a2f7fccd057.tar.lz nvim-treesitter-db50897909bfd77d816ef3958e392a2f7fccd057.tar.xz nvim-treesitter-db50897909bfd77d816ef3958e392a2f7fccd057.tar.zst nvim-treesitter-db50897909bfd77d816ef3958e392a2f7fccd057.zip | |
feat(parsers): add kitty (#8129)
| -rw-r--r-- | SUPPORTED_LANGUAGES.md | 1 | ||||
| -rw-r--r-- | lua/nvim-treesitter/parsers.lua | 8 | ||||
| -rw-r--r-- | runtime/queries/kitty/highlights.scm | 175 | ||||
| -rw-r--r-- | runtime/queries/kitty/injections.scm | 31 |
4 files changed, 215 insertions, 0 deletions
diff --git a/SUPPORTED_LANGUAGES.md b/SUPPORTED_LANGUAGES.md index 2cc4bd6a9..3386e6bf2 100644 --- a/SUPPORTED_LANGUAGES.md +++ b/SUPPORTED_LANGUAGES.md @@ -160,6 +160,7 @@ jsx (queries only)[^jsx] | unstable | `HFIJ ` | | @steelsojka [kcl](https://github.com/kcl-lang/tree-sitter-kcl) | unstable | `HF J ` | | @bertbaron [kconfig](https://github.com/tree-sitter-grammars/tree-sitter-kconfig) | unstable | `HFIJL` | | @amaanq [kdl](https://github.com/tree-sitter-grammars/tree-sitter-kdl) | unstable | `HFIJL` | | @amaanq +[kitty](https://github.com/OXY2DEV/tree-sitter-kitty) | unstable | `H J ` | | @OXY2DEV [kotlin](https://github.com/fwcd/tree-sitter-kotlin) | unstable | `HF JL` | | @SalBakraa [koto](https://github.com/koto-lang/tree-sitter-koto) | unstable | `HF JL` | | @irh [kusto](https://github.com/Willem-J-an/tree-sitter-kusto) | unstable | `H J ` | | @Willem-J-an diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua index 67a492baa..34a5aa04e 100644 --- a/lua/nvim-treesitter/parsers.lua +++ b/lua/nvim-treesitter/parsers.lua @@ -1205,6 +1205,14 @@ return { maintainers = { '@amaanq' }, tier = 2, }, + kitty = { + install_info = { + revision = '49f877cff80ab613808b34bde170ea477ec182fe', + url = 'https://github.com/OXY2DEV/tree-sitter-kitty', + }, + maintainers = { '@OXY2DEV' }, + tier = 2, + }, kotlin = { install_info = { revision = '57fb4560ba8641865bc0baa6b3f413b236112c4c', diff --git a/runtime/queries/kitty/highlights.scm b/runtime/queries/kitty/highlights.scm new file mode 100644 index 000000000..c6b5a5dfd --- /dev/null +++ b/runtime/queries/kitty/highlights.scm @@ -0,0 +1,175 @@ +(line_continuation) @comment + +(comment + (comment_content) @spell) @comment + +[ + (pixel) + (percentage) + (number) +] @number + +[ + "steps" + "cubic-bezier" +] @function.call + +(boolean) @boolean + +(color) @constant + +(string) @string + +[ + (ctrl) + (alt) + (shift) + (function) + (super) + (mouse_button) + (up) + (left) + (right) + (middle) + (down) +] @constant.builtin + +[ + "+" + ">" + ":" + "-" + (separator) + "=" + "," + "'" + ":" +] @punctuation.delimiter + +[ + "(" + ")" +] @punctuation.bracket + +(special) @variable.builtin + +(key) @character + +(path) @string.special.path + +(label) @label + +(constant) @constant + +(direction) @constant + +(pattern) @string.regexp + +(flag) @constant + +((string) @constant + (#lua-match? @constant "^-")) + +(generic_action) @function.call + +(action_name) @function.call + +[ + "pt" + "px" + "%" + "ratio" + (signal_name) + (clear_target) + (ligature_target) + (window_location) + (stdin_source) + (marker_type) + (window_state) + (logo_position) + (mouse_selection_type) + (window_layout) + (os_window) + "ignore-shell" + (detach_into) + "@selection" + (kitty_shell_open_as) + (mouse_event) + (font_modification_type) + (ease_step_position) + "c" + (filter_element_type) + "all" + (ligature_disabled) + (clipboard_action) + (shell_feature) + (source_strategy) + (notification_time) + (paste_action) + (pointer) + (layout) + (launch_type_value) + (os_window_class) + (layout_type) + (time_suffix) + (cursor) + (spacing_type) + (remote_action) + (font_feature) +] @type + +(kitten + target: (string) @type) + +[ + (color_option_name) + "map" + "mouse_map" + (option_name) +] @keyword + +(open_url + value: (string) @string.special.url) + +(handle_click_actions + _ @type) + +(title) @string.special + +(font_change_amount + sign: (font_change_sign) @operator) + +(aliased_action + name: (string) @function.call) + +(set_colors + "set_colors" @function.call) + +(include + environment_variable: (string) @variable.builtin) + +(key_focus_on + condition: (string) @string.special) + +(mouse_mode + [ + "grabbed" + "ungrabbed" + ] @variable.parameter) + +(font_property + name: (string) @variable.parameter) + +(url_excluded_characters + value: (string) @character) + +(transparent_color + "@" @punctuation.special + (alpha) @number) + +(env + variable: (string) @variable.builtin) + +(boolean_operator) @keyword.operator + +(notification_action) @function.call diff --git a/runtime/queries/kitty/injections.scm b/runtime/queries/kitty/injections.scm new file mode 100644 index 000000000..74fde7b76 --- /dev/null +++ b/runtime/queries/kitty/injections.scm @@ -0,0 +1,31 @@ +(launch_source_window + value: (string) @injection.content + (#set! injection.language "regex")) + +(launch_next_to + value: (string) @injection.content + (#set! injection.language "regex")) + +(marker_entry + (pattern) @injection.content + (#set! injection.language "regex")) + +(color_match + (pattern) @injection.content + (#set! injection.language "regex")) + +(color_match_tab + (pattern) @injection.content + (#set! injection.language "regex")) + +(include + glob: (pattern) @injection.content + (#set! injection.language "regex")) + +(filter_element + (pattern) @injection.content + (#set! injection.language "regex")) + +(comment + (comment_content) @injection.content + (#set! injection.language "comment")) |
