From c75bfa9cda240792657579ba1d0b7ce5c2ddd88c Mon Sep 17 00:00:00 2001 From: Karol Kosek Date: Tue, 6 Dec 2022 19:32:17 +0100 Subject: [PATCH] LibSyntax: Add `common_language_extension()` function The main motivation for this is to prefill an extension for user when saving a new file. --- Userland/Libraries/LibSyntax/Highlighter.cpp | 27 ++++++++++++++++++++ Userland/Libraries/LibSyntax/Highlighter.h | 1 + 2 files changed, 28 insertions(+) diff --git a/Userland/Libraries/LibSyntax/Highlighter.cpp b/Userland/Libraries/LibSyntax/Highlighter.cpp index ba3daa3fd2..e4b8189f10 100644 --- a/Userland/Libraries/LibSyntax/Highlighter.cpp +++ b/Userland/Libraries/LibSyntax/Highlighter.cpp @@ -165,4 +165,31 @@ StringView language_to_string(Language language) VERIFY_NOT_REACHED(); } +StringView common_language_extension(Language language) +{ + switch (language) { + case Language::Cpp: + return "cpp"sv; + case Language::CSS: + return "css"sv; + case Language::GitCommit: + return {}; + case Language::GML: + return "gml"sv; + case Language::HTML: + return "html"sv; + case Language::INI: + return "ini"sv; + case Language::JavaScript: + return "js"sv; + case Language::PlainText: + return "txt"sv; + case Language::Shell: + return "sh"sv; + case Language::SQL: + return "sql"sv; + } + VERIFY_NOT_REACHED(); +} + } diff --git a/Userland/Libraries/LibSyntax/Highlighter.h b/Userland/Libraries/LibSyntax/Highlighter.h index 21952ec6a6..9903f08379 100644 --- a/Userland/Libraries/LibSyntax/Highlighter.h +++ b/Userland/Libraries/LibSyntax/Highlighter.h @@ -33,6 +33,7 @@ struct TextStyle { }; StringView language_to_string(Language); +StringView common_language_extension(Language); class Highlighter { AK_MAKE_NONCOPYABLE(Highlighter);