Cargo.lock 🔗
@@ -3157,6 +3157,7 @@ dependencies = [
"tree-sitter-ruby",
"tree-sitter-rust",
"tree-sitter-typescript",
+ "unicase",
"unindent",
"util",
]
Antonio Scandurra created
Cargo.lock | 1 +
crates/language/Cargo.toml | 1 +
crates/language/src/language.rs | 4 +++-
3 files changed, 5 insertions(+), 1 deletion(-)
@@ -3157,6 +3157,7 @@ dependencies = [
"tree-sitter-ruby",
"tree-sitter-rust",
"tree-sitter-typescript",
+ "unicase",
"unindent",
"util",
]
@@ -53,6 +53,7 @@ smol = "1.2"
tree-sitter = "0.20"
tree-sitter-rust = { version = "*", optional = true }
tree-sitter-typescript = { version = "*", optional = true }
+unicase = "2.6"
[dev-dependencies]
client = { path = "../client", features = ["test-support"] }
@@ -41,6 +41,7 @@ use std::{
use syntax_map::SyntaxSnapshot;
use theme::{SyntaxTheme, Theme};
use tree_sitter::{self, Query};
+use unicase::UniCase;
use util::ResultExt;
#[cfg(any(test, feature = "test-support"))]
@@ -467,10 +468,11 @@ impl LanguageRegistry {
}
pub fn language_for_name(&self, name: &str) -> Option<Arc<Language>> {
+ let name = UniCase::new(name);
self.languages
.read()
.iter()
- .find(|language| language.name().to_lowercase() == name.to_lowercase())
+ .find(|language| UniCase::new(language.name()) == name)
.cloned()
}