// Adapted from XFEStudioWebSite; see Assets/Website/SourceManifest.json.
namespace XFESystem.Documents;
public static class CodeHighlightLanguage
{
public static string FromPath(string path) =>
Path.GetExtension(path).ToLowerInvariant() switch
{
".cs" => "csharp",
".js" or ".jsx" => "javascript",
".ts" or ".tsx" => "typescript",
".html" or ".htm" or ".cshtml" => "html",
".css" => "css",
".json" => "json",
".xaml" => "xaml",
".xml" or ".csproj" or ".props" or ".targets" or ".config" => "xml",
".sh" => "bash",
".ps1" => "powershell",
".py" => "python",
".java" => "java",
".cpp" or ".cc" or ".cxx" or ".h" or ".hpp" => "cpp",
".sql" => "sql",
".md" or ".markdown" or ".mdown" or ".mkd" or ".mkdn" => "markdown",
".yaml" or ".yml" => "yaml",
".toml" => "toml",
_ => "plaintext"
};
}
// Adapted from XFEStudioWebSite; see Assets/Website/SourceManifest.json.
namespace XFESystem.Documents;
public static class CodeHighlightLanguage
{
public static string FromPath(string path) =>
Path.GetExtension(path).ToLowerInvariant() switch
{
".cs" => "csharp",
".js" or ".jsx" => "javascript",
".ts" or ".tsx" => "typescript",
".html" or ".htm" or ".cshtml" => "html",
".css" => "css",
".json" => "json",
".xaml" => "xaml",
".xml" or ".csproj" or ".props" or ".targets" or ".config" => "xml",
".sh" => "bash",
".ps1" => "powershell",
".py" => "python",
".java" => "java",
".cpp" or ".cc" or ".cxx" or ".h" or ".hpp" => "cpp",
".sql" => "sql",
".md" or ".markdown" or ".mdown" or ".mkd" or ".mkdn" => "markdown",
".yaml" or ".yml" => "yaml",
".toml" => "toml",
_ => "plaintext"
};
}