Skip to content

1c-syntax/tree-sitter-onescript

Repository files navigation

crates.io build

tree-sitter-onescript

tree-sitter-onescript — полноценная грамматика Tree-sitter, для языка OneScript.


Быстрый старт

# 0. Требования # ─────────── # • Rust ≥ 1.77 (edition 2024) • tree-sitter-cli ≥ 0.25 • Node.js — по желанию # 1. Подключаем зависимость cargo add tree-sitter-onescript # или path-зависимость, пока не выложено на crates.io # 2. Мини-пример на Rust use tree_sitter::{Parser}; use tree_sitter_onescript::language; let mut parser = Parser::new(); parser.set_language(language()).unwrap(); let tree = parser.parse("Перем x; x = 1;", None).unwrap(); println!("{}", tree.root_node().to_sexp());

Сборка из исходников

git clone https://github.com/tree-sitter-onescript cd tree-sitter-onescript tree-sitter generate # генерирует src/parser.c cargo build # собирает rlib + cdylib 

Структура проекта

├── grammar.js # грамматика ├── src/ │ ├── parser.c # автогенерируемый C-парсер │ └── lib.rs # безопасная обёртка (pub fn language()) └── test/corpus # corpus-тесты (tree-sitter test …) 

TODO

  • highlights.scm

  • Автоматическое тестирование на популярных библиотеках OneScript

About

OneScript language grammar for Tree-Sitter

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published