Introduce a new Grammar struct and allow it to be optional

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
This commit is contained in:
Antonio Scandurra 2021-11-29 17:38:59 +01:00
parent b9edde7b26
commit 2c17ae9aa6
11 changed files with 91 additions and 67 deletions

View file

@ -17,7 +17,7 @@ pub fn build_language_registry() -> LanguageRegistry {
fn rust() -> Language {
let grammar = tree_sitter_rust::language();
let config = toml::from_slice(&LanguageDir::get("rust/config.toml").unwrap().data).unwrap();
Language::new(config, grammar)
Language::new(config, Some(grammar))
.with_highlights_query(load_query("rust/highlights.scm").as_ref())
.unwrap()
.with_brackets_query(load_query("rust/brackets.scm").as_ref())
@ -27,9 +27,8 @@ fn rust() -> Language {
}
fn markdown() -> Language {
let grammar = tree_sitter_markdown::language();
let config = toml::from_slice(&LanguageDir::get("markdown/config.toml").unwrap().data).unwrap();
Language::new(config, grammar)
Language::new(config, None)
}
fn load_query(path: &str) -> Cow<'static, str> {