From 09a8c12bcc324473196fc2151ff9bb133dee498e Mon Sep 17 00:00:00 2001 From: RivoLink Date: Tue, 12 May 2026 20:42:55 +0300 Subject: [PATCH] fix: syntax alias fallbacks --- src/markdown/syntax.rs | 10 +++++----- src/tests/markdown_links.rs | 20 ++++++++++++++++++++ 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/src/markdown/syntax.rs b/src/markdown/syntax.rs index 369af71..ea1d807 100644 --- a/src/markdown/syntax.rs +++ b/src/markdown/syntax.rs @@ -37,17 +37,17 @@ pub(crate) fn resolve_syntax<'a>( ], "tsx" => &["JSX", "jsx", "JavaScript", "js", "typescriptreact", "tsx"], "js" | "javascript" => &["JavaScript", "js", "javascript"], - "jsx" => &["JSX", "jsx", "JavaScript React"], + "jsx" => &["JSX", "jsx", "JavaScript React", "JavaScript", "js"], "shell" | "bash" | "sh" | "zsh" => &["Bourne Again Shell (bash)", "bash", "sh"], "py" | "python" => &["Python", "py", "python"], "c" => &["C", "c"], "cpp" | "cxx" | "cc" | "c++" => &["C++", "cpp", "cxx", "cc"], "json" => &["JSON", "json"], - "toml" => &["TOML", "toml"], + "toml" => &["TOML", "toml", "YAML", "yml", "yaml"], "java" => &["Java", "java"], - "kt" | "kotlin" => &["Kotlin", "kt", "kotlin"], - "ps1" | "powershell" | "pwsh" => &["PowerShell", "ps1", "powershell"], - "docker" | "dockerfile" => &["Dockerfile", "dockerfile"], + "kt" | "kotlin" => &["Kotlin", "kt", "kotlin", "Java", "java"], + "ps1" | "powershell" | "pwsh" => &["PowerShell", "ps1", "powershell", "bash", "sh"], + "docker" | "dockerfile" => &["Dockerfile", "dockerfile", "bash", "sh"], "yml" | "yaml" => &["YAML", "yml", "yaml"], "rs" | "rust" => &["Rust", "rs", "rust"], _ if normalized.is_empty() => &[], diff --git a/src/tests/markdown_links.rs b/src/tests/markdown_links.rs index 06d1fef..e7e341f 100644 --- a/src/tests/markdown_links.rs +++ b/src/tests/markdown_links.rs @@ -223,4 +223,24 @@ fn resolve_syntax_supports_common_language_aliases() { resolve_syntax("ps1", &ss).name, resolve_syntax("powershell", &ss).name ); + + for tag in &["kotlin", "toml", "jsx", "dockerfile"] { + assert_ne!( + resolve_syntax(tag, &ss).name, + "Plain Text", + "{tag} should not fall back to Plain Text" + ); + } + assert_eq!( + resolve_syntax("kt", &ss).name, + resolve_syntax("kotlin", &ss).name + ); + assert_eq!( + resolve_syntax("docker", &ss).name, + resolve_syntax("dockerfile", &ss).name + ); + assert_eq!( + resolve_syntax("pwsh", &ss).name, + resolve_syntax("ps1", &ss).name + ); }