mirror of
https://github.com/shadow1ng/fscan.git
synced 2025-09-14 14:06:44 +08:00

- 新建Common/i18n/子包,提供专业的国际化管理 - i18n/manager.go: 线程安全的国际化管理器,支持动态语言切换 - i18n/messages.go: 完整的消息库,200+条国际化文本 - 重构Common/i18n.go为向后兼容层,引用新i18n包 - 支持多语言回退机制和消息格式化功能 - 提供统一的国际化接口,便于维护和扩展 架构优势: - 模块化设计: 独立的i18n包,职责单一 - 线程安全: 支持并发访问的国际化管理器 - 灵活配置: 支持动态语言切换和消息管理 - 向后兼容: 100%兼容现有GetText()调用 - 易于扩展: 支持新语言和消息的动态添加 使项目国际化架构更加整洁和专业化
71 lines
2.1 KiB
Go
71 lines
2.1 KiB
Go
package Common
|
||
|
||
import "github.com/shadow1ng/fscan/Common/i18n"
|
||
|
||
/*
|
||
i18n.go - 国际化支持(向后兼容层)
|
||
|
||
此文件保持向后兼容,实际国际化功能已迁移到Common/i18n包
|
||
建议新代码使用i18n.GetText()获取国际化文本
|
||
*/
|
||
|
||
// =============================================================================
|
||
// 向后兼容的语言常量
|
||
// =============================================================================
|
||
|
||
const (
|
||
LangZH = i18n.LangZH // 中文
|
||
LangEN = i18n.LangEN // 英文
|
||
)
|
||
|
||
// =============================================================================
|
||
// 向后兼容的全局函数
|
||
// =============================================================================
|
||
|
||
// GetText 获取国际化文本 - 引用i18n包的实现
|
||
func GetText(key string, args ...interface{}) string {
|
||
return i18n.GetText(key, args...)
|
||
}
|
||
|
||
// SetLanguage 设置语言 - 引用i18n包的实现
|
||
func SetLanguage(lang string) {
|
||
i18n.SetLanguage(lang)
|
||
}
|
||
|
||
// GetLanguage 获取当前语言 - 引用i18n包的实现
|
||
func GetLanguage() string {
|
||
return i18n.GetLanguage()
|
||
}
|
||
|
||
// AddMessage 添加消息 - 引用i18n包的实现
|
||
func AddMessage(key string, translations map[string]string) {
|
||
i18n.AddMessage(key, translations)
|
||
}
|
||
|
||
// AddMessages 批量添加消息 - 引用i18n包的实现
|
||
func AddMessages(messages map[string]map[string]string) {
|
||
i18n.AddMessages(messages)
|
||
}
|
||
|
||
// HasMessage 检查消息是否存在 - 引用i18n包的实现
|
||
func HasMessage(key string) bool {
|
||
return i18n.HasMessage(key)
|
||
}
|
||
|
||
// GetMessageCount 获取消息总数 - 引用i18n包的实现
|
||
func GetMessageCount() int {
|
||
return i18n.GetMessageCount()
|
||
}
|
||
|
||
// GetSupportedLanguages 获取支持的语言列表 - 引用i18n包的实现
|
||
func GetSupportedLanguages() []string {
|
||
return i18n.GetSupportedLanguages()
|
||
}
|
||
|
||
// =============================================================================
|
||
// 废弃的变量和函数 (保持向后兼容)
|
||
// =============================================================================
|
||
|
||
// coreMessages 已废弃,消息定义已迁移到i18n包
|
||
// 保留空映射以防止编译错误
|
||
var coreMessages = map[string]map[string]string{} |