| 1234567891011121314151617181920212223242526272829303132 |
- using System;
- namespace TeamAAS.Localization
- {
- /// <summary>
- /// C# 代码侧的翻译入口(非 XAML)。
- /// 界面文案用 <see cref="T"/> / <see cref="F"/>,会被构建扫描器收集进语言包;
- /// 日志/通知等文案一律用 <see cref="LogText"/>,不进语言包。
- /// </summary>
- public static class L10n
- {
- /// <summary>翻译一条界面文案(原文即语言包 key)。</summary>
- public static string T(string originalText) => GlobalLocalizationManager.Instance.Translate(originalText);
- /// <summary>
- /// 翻译带变量的模板文案。模板里用 {0} {1} 占位,
- /// 例如 F("执行完成: {0},耗时 {1}ms", result, ms)。
- /// 英文语序与中文不同,必须整句做模板,禁止"前缀文本 + 变量"拼接。
- /// </summary>
- public static string F(string formatText, params object[] args)
- => string.Format(GlobalLocalizationManager.Instance.Translate(formatText), args);
- }
- /// <summary>
- /// 日志/通知文本专用入口:刻意不做翻译、不进语言包(key 不随界面翻译维护)。
- /// 写日志时用 LogText.Raw("请先选择供料器") 标记意图,扫描器不会收集。
- /// </summary>
- public static class LogText
- {
- public static string Raw(string text) => text;
- }
- }
|