add toml syntax support

This commit is contained in:
Dongdong Zhou 2022-03-21 14:38:55 +00:00
parent bf2e4959fd
commit f273476a09
3 changed files with 16 additions and 0 deletions

11
Cargo.lock generated
View File

@ -2010,6 +2010,7 @@ dependencies = [
"tree-sitter-javascript",
"tree-sitter-python",
"tree-sitter-rust",
"tree-sitter-toml",
"tree-sitter-typescript",
"xi-rope",
]
@ -4508,6 +4509,16 @@ dependencies = [
"tree-sitter",
]
[[package]]
name = "tree-sitter-toml"
version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ca517f578a98b23d20780247cc2688407fa81effad5b627a5a364ec3339b53e8"
dependencies = [
"cc",
"tree-sitter",
]
[[package]]
name = "tree-sitter-typescript"
version = "0.20.0"

View File

@ -16,4 +16,5 @@ tree-sitter-go = "0.19.1"
tree-sitter-javascript = "0.20.0"
tree-sitter-typescript = "0.20.0"
tree-sitter-python = "0.19.1"
tree-sitter-toml = "0.20.0"
xi-rope = { git = "https://github.com/lapce/xi-editor", features = ["serde"] }

View File

@ -29,6 +29,7 @@ pub enum LapceLanguage {
Typescript,
Tsx,
Python,
Toml,
}
impl LapceLanguage {
@ -42,6 +43,7 @@ pub fn from_path(path: &Path) -> Option<LapceLanguage> {
"tsx" => LapceLanguage::Tsx,
"go" => LapceLanguage::Go,
"py" => LapceLanguage::Python,
"toml" => LapceLanguage::Toml,
_ => return None,
})
}
@ -57,6 +59,7 @@ fn tree_sitter_language(&self) -> tree_sitter::Language {
}
LapceLanguage::Tsx => tree_sitter_typescript::language_tsx(),
LapceLanguage::Python => tree_sitter_python::language(),
LapceLanguage::Toml => tree_sitter_toml::language(),
}
}
@ -77,6 +80,7 @@ pub(crate) fn new_highlight_config(&self) -> HighlightConfiguration {
LapceLanguage::Typescript => tree_sitter_typescript::HIGHLIGHT_QUERY,
LapceLanguage::Tsx => tree_sitter_typescript::HIGHLIGHT_QUERY,
LapceLanguage::Python => tree_sitter_python::HIGHLIGHT_QUERY,
LapceLanguage::Toml => tree_sitter_toml::HIGHLIGHT_QUERY,
};
HighlightConfiguration::new(language, query, "", "").unwrap()