tree-sitter-kotlin
                                
                                 tree-sitter-kotlin copied to clipboard
                                
                                    tree-sitter-kotlin copied to clipboard
                            
                            
                            
                        Kotlin grammar for Tree-sitter
Kotlin Grammar for Tree-Sitter
Kotlin language grammar for Tree-Sitter. You can try it out directly on the web.

The grammar is based on the official language grammar.
Project Structure
| File | Description | 
|---|---|
| grammar.js | The Tree-Sitter grammar | 
| grammar-reference.js | A direct translation of the Kotlin language grammar that is, however, ambiguous to Tree-Sitter | 
| src | The generated parser | 
Setup
npm install
Development
Compilation
To (re-)compile the grammar, run:
npm run generate
Note that the grammar is written completely in JavaScript (grammar.js), the other source files are generated by tree-sitter.
Testing
To run the unit tests, run:
npm run test
WebAssembly
Compilation
First make sure to have Emscripten installed. If you use Homebrew, you can brew install emscripten. Then run:
npm run build-wasm
Playground
After compiling the grammar to WebAssembly, you can invoke
npm run playground
to launch an interactive editing environment that displays the parsed syntax tree on-the-fly in the browser. You can also view a deployed version of this playground on the web.

Documentation
More documentation on how to create Tree-Sitter grammars can be found here.
See also
- Kotlin Language Server for code completion, diagnostics and more
- Kotlin Debug Adapter for JVM debugging support