/kak-tree-sitter

tree-sitter meets Kakoune

Primary LanguageRustOtherNOASSERTION

kak-tree-sitter

This is a binary server that interfaces tree-sitter with kakoune.

Important note: by default, no colorscheme supporting tree-sitter is set for you. You have to pick one or write your own. See this section from the man for further information.

asciicast

Features

  • Semantic highlighting.
    • Automatically detects whether a buffer language type can be highlighted.
    • Removes any default highlighter and replaces them with a tree-sitter based.
  • Semantic selections (types, functions, parameters, comments, tests, etc.)
    • Similar features to f, ?, <a-/>, etc.
    • Full object mode support (i.e. <a-i>, {, <a-]>, etc.)
  • Indents
  • Indent guidelines
  • Incremental parsing
  • Fetch, compile and install grammars / queries with ease (via the use of the ktsctl controller companion)
  • Ships with no mappings, defined options, but allows to use well-crafted values, user-modes, mappings and commands by picking them by hand.
  • Transformation-oriented; actual data (i.e. grammars, queries, etc.) can be used from any sources.
  • Shell completions.

User manual

See the User manual to know how to install, use, configure and get runtime resources.

Contributing

Whether you want to fix a bug, make a feature request, help improving something or add support for a new language by changing the default configuration, you should read the CONTRIBUTING.md file.

Credits

This program was inspired by: