QML grammar for tree-sitter
Project description
tree-sitter-qmljs
QML grammar for the tree-sitter parsing library.
References
Pitfalls
Since grouped binding notation is syntactically ambiguous, it is parsed as an object definition.
// (ui_object_definition type_name: (identifier "Button") ...)
Button {
// (ui_object_definition type_name: (identifier "icon") ...)
icon { source: "foo.png"; color: "transparent" }
}
Building
Use the master branch, which contains all generated files.
$ git checkout master
$ npm install
$ cargo build --release
Hacking
Use the dev branch, but you'll first need to run npm install in the
master branch.
$ git checkout master
$ npm install
$ git checkout dev
Generate code and run tests:
$ make generate tests
Make sure example QML files can be parsed:
$ make fetch-examples parse-examples
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
tree_sitter_qmljs-0.3.1.tar.gz
(440.1 kB
view details)
File details
Details for the file tree_sitter_qmljs-0.3.1.tar.gz.
File metadata
- Download URL: tree_sitter_qmljs-0.3.1.tar.gz
- Upload date:
- Size: 440.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8cf59d0a94fb4d593db2cfe5b66eb90e1accb98f47d10abe4b10ff78438716b0
|
|
| MD5 |
38520b45b876111dac6a419cf0cb7efb
|
|
| BLAKE2b-256 |
1b7a6299e4da0a02b6a792c28caaf03c128f42349a0c154cf77ab16fd5627ffc
|