summaryrefslogtreecommitdiffstats
path: root/modules/setting/i18n.go
diff options
context:
space:
mode:
authorwxiaoguang <wxiaoguang@gmail.com>2021-12-01 15:50:01 +0800
committerGitHub <noreply@github.com>2021-12-01 15:50:01 +0800
commit042cac5fedeec8af53080b9666fe043072f3a6be (patch)
treeb13d57faa71ba8bc9f8b3d40f5be7e3735ac66a4 /modules/setting/i18n.go
parenta3517d8668482b58cb80ba10a956fe4e27e1a429 (diff)
downloadgitea-042cac5fedeec8af53080b9666fe043072f3a6be.tar.gz
gitea-042cac5fedeec8af53080b9666fe043072f3a6be.zip
Improve install code to avoid low-level mistakes. (#17779)
* Improve install code to avoid low-level mistakes. If a user tries to do a re-install in a Gitea database, they gets a warning and double check. When Gitea runs, it never create empty app.ini automatically. Also some small (related) refactoring: * Refactor db.InitEngine related logic make it more clean (especially for the install code) * Move some i18n strings out from setting.go to make the setting.go can be easily maintained. * Show errors in CLI code if an incorrect app.ini is used. * APP_DATA_PATH is created when installing, and checked when starting (no empty directory is created any more).
Diffstat (limited to 'modules/setting/i18n.go')
-rw-r--r--modules/setting/i18n.go51
1 files changed, 51 insertions, 0 deletions
diff --git a/modules/setting/i18n.go b/modules/setting/i18n.go
new file mode 100644
index 0000000000..113e1b5585
--- /dev/null
+++ b/modules/setting/i18n.go
@@ -0,0 +1,51 @@
+// Copyright 2021 The Gitea Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package setting
+
+// defaultI18nLangNames must be a slice, we need the order
+var defaultI18nLangNames = []string{
+ "en-US", "English",
+ "zh-CN", "简体中文",
+ "zh-HK", "繁體中文(香港)",
+ "zh-TW", "繁體中文(台灣)",
+ "de-DE", "Deutsch",
+ "fr-FR", "français",
+ "nl-NL", "Nederlands",
+ "lv-LV", "latviešu",
+ "ru-RU", "русский",
+ "uk-UA", "Українська",
+ "ja-JP", "日本語",
+ "es-ES", "español",
+ "pt-BR", "português do Brasil",
+ "pt-PT", "Português de Portugal",
+ "pl-PL", "polski",
+ "bg-BG", "български",
+ "it-IT", "italiano",
+ "fi-FI", "suomi",
+ "tr-TR", "Türkçe",
+ "cs-CZ", "čeština",
+ "sr-SP", "српски",
+ "sv-SE", "svenska",
+ "ko-KR", "한국어",
+ "el-GR", "ελληνικά",
+ "fa-IR", "فارسی",
+ "hu-HU", "magyar nyelv",
+ "id-ID", "bahasa Indonesia",
+ "ml-IN", "മലയാളം",
+}
+
+func defaultI18nLangs() (res []string) {
+ for i := 0; i < len(defaultI18nLangNames); i += 2 {
+ res = append(res, defaultI18nLangNames[i])
+ }
+ return
+}
+
+func defaultI18nNames() (res []string) {
+ for i := 0; i < len(defaultI18nLangNames); i += 2 {
+ res = append(res, defaultI18nLangNames[i+1])
+ }
+ return
+}