diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..2c7eee3 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "tree-sitter-rust"] + path = tree-sitter-rust + url = git@github.com:sclu1034/tree-sitter-rust.git diff --git a/Cargo.lock b/Cargo.lock index 9198b08..48e2da0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1086,8 +1086,6 @@ dependencies = [ [[package]] name = "tree-sitter-rust" version = "0.20.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "797842733e252dc11ae5d403a18060bf337b822fc2ae5ddfaa6ff4d9cc20bda6" dependencies = [ "cc", "tree-sitter", diff --git a/Cargo.toml b/Cargo.toml index 83df516..5b5e67a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,5 @@ [package] name = "kak-highlight" -author = "Lucas Schwiderski" description = "Tree-sitter-based highlighting for Kakoune" version = "1.0.0" edition = "2021" @@ -19,7 +18,7 @@ tracing-error = "0.2.0" tracing-subscriber = { version = "0.3.16", features = ["env-filter"] } tree-sitter = "0.20.10" tree-sitter-highlight = "0.20.1" -tree-sitter-rust = "0.20.3" +tree-sitter-rust = { path = "./tree-sitter-rust", version = "*" } [dev-dependencies] criterion = "0.4.0" diff --git a/src/daemon/worker.rs b/src/daemon/worker.rs index 62bcfae..7b69bdf 100644 --- a/src/daemon/worker.rs +++ b/src/daemon/worker.rs @@ -241,7 +241,13 @@ pub fn highlight_content( } let highlights = highlighter - .highlight(highlight_config, content, None, |_| None) + .highlight(highlight_config, content, None, |lang| { + if lang == "rust" { + Some(highlight_config) + } else { + None + } + }) .wrap_err("Failed to highlight content")?; let mut stack = VecDeque::with_capacity(64); diff --git a/tree-sitter-rust b/tree-sitter-rust new file mode 160000 index 0000000..5dcc1e3 --- /dev/null +++ b/tree-sitter-rust @@ -0,0 +1 @@ +Subproject commit 5dcc1e3df8cdce5365b65dac4692e350a2c396e5