diff --git a/Common/i18n/manager.go b/Common/i18n/manager.go index 40b8440..db91db7 100644 --- a/Common/i18n/manager.go +++ b/Common/i18n/manager.go @@ -24,7 +24,7 @@ const ( // 默认配置 const ( - DefaultLanguage = LangZH // 默认语言 + DefaultLanguage = LangZH // 默认语言 FallbackLanguage = LangEN // 回退语言 ) @@ -65,13 +65,6 @@ func (m *Manager) SetLanguage(lang string) { m.currentLanguage = lang } -// GetLanguage 获取当前语言 -func (m *Manager) GetLanguage() string { - m.mu.RLock() - defer m.mu.RUnlock() - return m.currentLanguage -} - // SetFallbackLanguage 设置回退语言 func (m *Manager) SetFallbackLanguage(lang string) { m.mu.Lock() @@ -86,12 +79,9 @@ func (m *Manager) Enable() { m.enabled = true } -// Disable 禁用国际化 -func (m *Manager) Disable() { - m.mu.Lock() - defer m.mu.Unlock() - m.enabled = false -} +// ============================================================================================= +// 已删除的死代码函数(未使用):GetLanguage, Disable +// ============================================================================================= // IsEnabled 检查是否启用国际化 func (m *Manager) IsEnabled() bool { @@ -104,13 +94,6 @@ func (m *Manager) IsEnabled() bool { // 消息管理方法 // ============================================================================= -// AddMessage 添加单个消息 -func (m *Manager) AddMessage(key string, translations map[string]string) { - m.mu.Lock() - defer m.mu.Unlock() - m.messages[key] = translations -} - // AddMessages 批量添加消息 func (m *Manager) AddMessages(messages map[string]map[string]string) { m.mu.Lock() @@ -124,7 +107,7 @@ func (m *Manager) AddMessages(messages map[string]map[string]string) { func (m *Manager) GetMessage(key, lang string) (string, bool) { m.mu.RLock() defer m.mu.RUnlock() - + if translations, exists := m.messages[key]; exists { if message, exists := translations[lang]; exists { return message, true @@ -133,55 +116,10 @@ func (m *Manager) GetMessage(key, lang string) (string, bool) { return "", false } -// HasMessage 检查是否存在指定键的消息 -func (m *Manager) HasMessage(key string) bool { - m.mu.RLock() - defer m.mu.RUnlock() - _, exists := m.messages[key] - return exists -} - -// GetAllMessages 获取所有消息 -func (m *Manager) GetAllMessages() map[string]map[string]string { - m.mu.RLock() - defer m.mu.RUnlock() - - // 创建深拷贝 - result := make(map[string]map[string]string) - for key, translations := range m.messages { - result[key] = make(map[string]string) - for lang, message := range translations { - result[key][lang] = message - } - } - return result -} - -// GetMessageCount 获取消息总数 -func (m *Manager) GetMessageCount() int { - m.mu.RLock() - defer m.mu.RUnlock() - return len(m.messages) -} - -// GetSupportedLanguages 获取支持的语言列表 -func (m *Manager) GetSupportedLanguages() []string { - m.mu.RLock() - defer m.mu.RUnlock() - - languageSet := make(map[string]bool) - for _, translations := range m.messages { - for lang := range translations { - languageSet[lang] = true - } - } - - languages := make([]string, 0, len(languageSet)) - for lang := range languageSet { - languages = append(languages, lang) - } - return languages -} +// ============================================================================================= +// 已删除的死代码函数(未使用): +// AddMessage, HasMessage, GetAllMessages, GetMessageCount, GetSupportedLanguages +// ============================================================================================= // ============================================================================= // 文本获取方法 @@ -227,67 +165,19 @@ func (m *Manager) GetText(key string, args ...interface{}) string { return key } -// GetTextWithLanguage 获取指定语言的文本 -func (m *Manager) GetTextWithLanguage(key, lang string, args ...interface{}) string { - if !m.IsEnabled() { - if len(args) > 0 { - return fmt.Sprintf(key, args...) - } - return key - } - - if message, exists := m.GetMessage(key, lang); exists { - if len(args) > 0 { - return fmt.Sprintf(message, args...) - } - return message - } - - // 如果指定语言没找到,使用回退语言 - m.mu.RLock() - fallbackLang := m.fallbackLanguage - m.mu.RUnlock() - - if lang != fallbackLang { - if message, exists := m.GetMessage(key, fallbackLang); exists { - if len(args) > 0 { - return fmt.Sprintf(message, args...) - } - return message - } - } - - // 兜底返回键名 - if len(args) > 0 { - return fmt.Sprintf(key, args...) - } - return key -} +// ============================================================================================= +// 已删除的死代码函数(未使用):GetTextWithLanguage +// ============================================================================================= // ============================================================================= // 全局访问函数 // ============================================================================= -// GetGlobalManager 获取全局国际化管理器 -func GetGlobalManager() *Manager { - return globalManager -} - // SetLanguage 设置全局语言 func SetLanguage(lang string) { globalManager.SetLanguage(lang) } -// GetLanguage 获取全局当前语言 -func GetLanguage() string { - return globalManager.GetLanguage() -} - -// AddMessage 添加消息到全局管理器 -func AddMessage(key string, translations map[string]string) { - globalManager.AddMessage(key, translations) -} - // AddMessages 批量添加消息到全局管理器 func AddMessages(messages map[string]map[string]string) { globalManager.AddMessages(messages) @@ -298,40 +188,11 @@ func GetText(key string, args ...interface{}) string { return globalManager.GetText(key, args...) } -// GetTextWithLanguage 从全局管理器获取指定语言文本 -func GetTextWithLanguage(key, lang string, args ...interface{}) string { - return globalManager.GetTextWithLanguage(key, lang, args...) -} - -// Enable 启用全局国际化 -func Enable() { - globalManager.Enable() -} - -// Disable 禁用全局国际化 -func Disable() { - globalManager.Disable() -} - -// IsEnabled 检查全局国际化是否启用 -func IsEnabled() bool { - return globalManager.IsEnabled() -} - -// HasMessage 检查全局管理器是否存在指定消息 -func HasMessage(key string) bool { - return globalManager.HasMessage(key) -} - -// GetMessageCount 获取全局消息总数 -func GetMessageCount() int { - return globalManager.GetMessageCount() -} - -// GetSupportedLanguages 获取全局支持的语言列表 -func GetSupportedLanguages() []string { - return globalManager.GetSupportedLanguages() -} +// ============================================================================================= +// 已删除的死代码函数(未使用): +// GetGlobalManager, GetLanguage, AddMessage, GetTextWithLanguage, +// Enable, Disable, IsEnabled, HasMessage, GetMessageCount, GetSupportedLanguages +// ============================================================================================= // ============================================================================= // 初始化函数 @@ -343,4 +204,4 @@ func init() { globalManager.SetLanguage(DefaultLanguage) globalManager.SetFallbackLanguage(FallbackLanguage) globalManager.Enable() -} \ No newline at end of file +}