func Add(key string, lang map[string]string) {
	Lang[key] = lang
}
Add add a language package to the Lang.
package language
import (
	"html/template"
	"strings"
	"github.com/GoAdminGroup/go-admin/modules/config"
	"golang.org/x/text/language"
)
var (
	EN = language.English.String()
	CN = language.Chinese.String()
	JP = language.Japanese.String()
	TC = language.TraditionalChinese.String()
)
func FixedLanguageKey(key string) string {
	if key == "en" {
		return EN
	}
	if key == "cn" {
		return CN
	}
	if key == "jp" {
		return JP
	}
	if key == "tc" {
		return TC
	}
	return key
}
var Langs = [...]string{EN, CN, JP, TC}
func Get(value string) string {
	return GetWithScope(value)
}
func GetWithScope(value string, scopes ...string) string {
	if config.GetLanguage() == "" {
		return value
	}
	return GetWithScopeAndLanguageSet(value, config.GetLanguage(), scopes...)
}
func GetWithLang(value, lang string) string {
	if lang == "" {
		lang = config.GetLanguage()
	}
	return GetWithScopeAndLanguageSet(value, lang)
}
func GetWithScopeAndLanguageSet(value, lang string, scopes ...string) string {
	if locale, ok := Lang[lang][JoinScopes(scopes)+strings.ToLower(value)]; ok {
		return locale
	}
	return value
}
func GetFromHtml(value template.HTML, scopes ...string) template.HTML {
	if config.GetLanguage() == "" {
		return value
	}
	if locale, ok := Lang[config.GetLanguage()][JoinScopes(scopes)+strings.ToLower(string(value))]; ok {
		return template.HTML(locale)
	}
	return value
}
func WithScopes(value string, scopes ...string) string {
	return JoinScopes(scopes) + strings.ToLower(value)
}
type LangSet map[string]string
func (l LangSet) Add(key, value string) {
	l[key] = value
}
func (l LangSet) Combine(set LangSet) LangSet {
	for k, s := range set {
		l[k] = s
	}
	return l
}
type LangMap map[string]LangSet
var Lang = LangMap{
	language.Chinese.String():            cn,
	language.English.String():            en,
	language.Japanese.String():           jp,
	language.TraditionalChinese.String(): tc,
	"cn": cn,
	"en": en,
	"jp": jp,
	"tc": tc,
}
func (lang LangMap) Get(value string) string {
	return lang.GetWithScope(value)
}
func (lang LangMap) GetWithScope(value string, scopes ...string) string {
	if config.GetLanguage() == "" {
		return value
	}
	if locale, ok := lang[config.GetLanguage()][JoinScopes(scopes)+strings.ToLower(value)]; ok {
		return locale
	}
	return value
}