数据库客户端桌面应用数据分析【免费下载链接】azuredatastudioAzure Data Studio is a data management and development tool with connectivity to popular cloud and on-premises databases. Azure Data Studio supports Windows, macOS, and Linux, with immediate capability to connect to Azure SQL and SQL Server. Browse the extension library for more database support options including MySQL, PostgreSQL, and MongoDB.项目地址https://gitcode.com/gh_mirrors/az/azuredatastudio点击查看免费下载本篇技术指南以 Azure Data Studio 仓库中官方语言包扩展的快速入门文档i18n/ads-language-pack-zh-hant/vsc-extension-quickstart.md为核心骨架结合仓库内真实的package.json清单、translations翻译数据与 build/npm/update-localization-extension.js 底层脚本完整讲解语言包Language Pack扩展的目录结构、localizations贡献点声明方式以及如何从 Transifex 拉取并更新翻译的完整流程。读完本文你将掌握基于 VS Code 扩展模型的语言包到底由什么组成、翻译数据如何被清单引用、同步脚本背后的执行逻辑并能独立完成语言包的搭建、同步与在 Azure Data Studio 中的启用。语言包扩展的本质一份清单 一个翻译目录Azure Data Studio 基于 VS Code 扩展体系构建其多语言支持通过语言包扩展Language Pack Extension实现。以本仓库的 i18n/ads-language-pack-zh-hant 为例整个扩展本质上只有两个核心组成部分package.json扩展的清单文件manifest定义扩展的名称、描述并通过localizations贡献点声明它所支持的语言 IDtranslations/存放翻译字符串的目录每个 JSON 文件对应一组 UI 模块或子扩展的本地化文本。官方快速入门文档明确给出了localizations贡献点的最小声明结构contributes: { localization: [{ languageId: zh-tw, languageName: Chinese Traditional, localizedLanguageName: 中文(繁體) }] }其中字段含义本仓库实际值languageId语言标识符localezh-twlanguageName语言英文名称Chinese TraditionallocalizedLanguageName以该语言自述的显示名称中文(繁體)这三项属性是语言包扩展的身份证缺一不可。真实清单剖析ads-language-pack-zh-hant 的 package.json对照仓库中实际生效的 i18n/ads-language-pack-zh-hant/package.json可以看到完整清单远不止三行声明它同时约束了扩展的运行环境与翻译资源映射{ name: ads-language-pack-zh-hant, displayName: Chinese (Traditional) Language Pack for Azure Data Studio, description: Language pack extension for Chinese (Traditional), version: 1.49.0, publisher: Microsoft, engines: { vscode: *, azdata: ^1.49.0 }, icon: languagepack.png, categories: [ Language Packs ], contributes: { localizations: [ { languageId: zh-tw, languageName: Chinese Traditional, localizedLanguageName: 中文(繁體), translations: [ { id: vscode, path: ./translations/main.i18n.json }, { id: vscode.sql, path: ./translations/extensions/vscode.sql.i18n.json }, { id: Microsoft.mssql, path: ./translations/extensions/Microsoft.mssql.i18n.json }, { id: Microsoft.arc, path: ./translations/extensions/Microsoft.arc.i18n.json } ] } ] }, scripts: { update: cd ../vscode npm run update-localization-extension zh-hant } }值得注意的几点实现细节engines双约束同时声明vscode: *与azdata: ^1.49.0说明该语言包既遵循 VS Code 的扩展模型又对 Azure Data Studio 主版本≥ 1.49.0有兼容性要求防止与宿主版本不匹配导致加载失败。translations数组即资源索引localizations贡献点内的每个translations条目将模块 ID如vscode、Microsoft.mssql映射到相对./translations/目录的具体 JSON 文件。宿主启动时据此按 ID 装载对应模块的本地化字符串。覆盖范围广仓库中translations数组实际包含 60 余个条目既覆盖vscode.sql、vscode.git、vscode.notebook等内置模块也覆盖Microsoft.mssql、Microsoft.arc、Microsoft.azurecore、Microsoft.sql-migration等 Azure Data Studio 专属扩展确保整个工作台的 UI 体验是完整的繁体中文。translations 目录翻译数据的存放与格式translations/目录由翻译 JSON 文件组成从仓库目录树可以看到其组织方式translations/main.i18n.json主翻译文件对应宿主核心 UI约 1.5 万行translations/extensions/*.i18n.json按扩展逐一存放例如Microsoft.mssql.i18n.json、vscode.sql.i18n.json。打开 translations/main.i18n.json 可以看到其内部格式以模块路径 → 键值对嵌套组织{ version: 1.0.0, contents: { vs/base/browser/ui/dialog/dialog: { dialogClose: 關閉對話方塊, dialogErrorMessage: 錯誤, ok: 確定 }, vs/base/browser/ui/findinput/findInputToggles: { caseDescription: 大小寫須相符, regexDescription: 使用規則運算式, wordsDescription: 全字拼寫須相符 } } }格式要点文件头部以: [...]数组形式保留版权声明与本文件由机器生成、请勿手工编辑的警示contents的键对应源码中的模块路径如vs/base/browser/ui/dialog/dialog值是该模块内原始字符串键到繁体中文翻译的映射这类文件由同步脚本自动生成不建议手工修改否则下次同步会被覆盖。从 Transifex 同步最新翻译官方完整流程官方快速入门文档给出了标准化的翻译同步工作流其目标是用 Transifex 上最新的翻译字符串重新生成并填充translations目录同时更新package.json中的translations属性。完整步骤如下第一步准备 VS Code 仓库与依赖检出 VS Code 仓库的master分支Azure Data Studio 的语言包同步脚本直接复用 VS Code 的构建基础设施建议将 VS Code 仓库放在语言包扩展的同级目录即两者拥有共同的父目录以便后续命令使用相对路径进入vscode目录执行yarn完成仓库依赖初始化。第二步配置 Transifex API Token登录 Transifex在用户设置的 API 页面生成 API Token将该 Token 写入环境变量export TRANSIFEX_API_TOKENyour_transifex_api_token同步脚本会在运行时读取该环境变量用于向 Transifex 拉取翻译文件。第三步执行同步命令进入 VS Code 仓库目录按语言包扩展的位置选择命令# 情况一语言包扩展与 VS Code 仓库同级放置 npm run update-localization-extension zh-hant # 情况二语言包扩展位于其他路径 npm run update-localization-extension {path_to_lang_pack_ext}执行完成后翻译文件会被下载到translations目录同时脚本会把新生成的翻译文件路径回填到localizations贡献点的translations属性中实现清单与数据自动对齐。在本仓库中i18n/ads-language-pack-zh-hant/package.json 的scripts.update正是上述情况的封装scripts: { update: cd ../vscode npm run update-localization-extension zh-hant }即从语言包目录跳到同级vscode目录再调用其更新脚本为zh-hant语言生成翻译数据。底层原理update-localization-extension 脚本的执行逻辑仓库根目录 package.json 中注册了对应的 npm 脚本update-localization-extension: node build/npm/update-localization-extension.js深入 build/npm/update-localization-extension.js 源码可以还原整个同步流程的真实执行顺序解析目标参数脚本通过minimist解析location翻译源文件位置与externalExtensionsLocation外部扩展翻译位置两个可选参数并校验路径是否存在源码第 22-29 行定位语言包目录如果参数形如zh-hant这类语言短码脚本会按约定拼接出../vscode-loc/i18n/vscode-language-pack-zh-hant目录如果传入的是显式路径则直接使用源码第 30-37 行读取并校验清单解析语言包package.json强制校验contributes.localizations数组存在且每个条目都定义languageId、languageName、localizedLanguageName三属性源码第 38-51 行语言 ID 规范化将zh-tw映射为zh-Hant、zh-cn映射为zh-Hans、pt-br映射为pt-BR用于匹配 Transifex 侧的真实目录命名源码第 55-65 行清理旧数据若translations/main.i18n.json已存在先用rimraf清空整个translations目录保证每次同步都是全量重建源码第 67-70 行导入并转换通过gulp.src通配**/languageId/*.xlf含外部扩展的*-new.xlf经i18n.prepareI18nPackFiles将 XLF 翻译文件转换为扩展所需的 i18n JSON 包并写入translations目录源码第 74-90 行回写清单转换完成后把生成的每个翻译文件以{ id, path: ./translations/资源名 }形式回填到package.json的translations数组并落盘源码第 93-97 行。这解释了为什么文档说同步会同时更新translations目录和package.json的translations属性——清单回写正是由脚本第 97 行的fs.writeFileSync完成的。在 Azure Data Studio 中启用繁体中文界面翻译数据就绪后普通用户无需接触命令行即可切换界面语言。仓库内 i18n/ads-language-pack-zh-hant/README.md 给出了官方操作路径在 Azure Data Studio 中安装Chinese (Traditional) Language Pack扩展按CtrlShiftP打开命令面板Command Palette输入display过滤命令选择Configure Display Language設定顯示語言按Enter后宿主会列出所有已安装语言按 locale 标识当前语言高亮显示选择中文(繁體)即可切换 UI 语言并覆盖默认的系统语言设置。该命令实际上是在告诉宿主读取各已安装语言包的localizations贡献点以localizedLanguageName作为菜单中的显示名——这也是package.json中该字段必须使用目标语言自述的原因。常见问题与注意事项不要在translations里手工改翻译文件头部明确标注machine generated机器生成任何手工修改都会在下次同步时被整体重建覆盖如需修正翻译应回到 Transifex 平台操作后重新同步。engines版本匹配语言包与 Azure Data Studio 主版本存在对应关系本仓库为^1.49.0升级宿主大版本后应及时更新语言包版本避免兼容性告警。路径参数二选一同步脚本既接受语言短码zh-hant也接受语言包扩展的显式路径使用短码时请确保语言包位于约定位置../vscode-loc/i18n/vscode-language-pack-id。环境变量必须就位TRANSIFEX_API_TOKEN未设置或失效时同步将无法从 Transifex 拉取翻译命令会以错误结束。本地化范围取决于清单条目最终界面中哪些模块显示为繁体中文完全由package.json中translations数组列出的条目决定新增或移除某个扩展的本地化需要同步更新该数组。小结一份语言包扩展 一份声明localizations贡献点的package.json 一组按模块组织的 i18n JSON 翻译文件。通过 Transifex 拉取 XLF 翻译、由 build/npm/update-localization-extension.js 脚本完成格式转换与清单回写再借助 Azure Data Studio 的設定顯示語言命令切换生效——这就是完整闭环。本文涉及的清单文件i18n/ads-language-pack-zh-hant/package.json、翻译数据i18n/ads-language-pack-zh-hant/translations/main.i18n.json与同步脚本build/npm/update-localization-extension.js均可在当前仓库中直接查阅作为搭建其他语言包扩展时的参照模板。赞分享数据库客户端桌面应用数据分析【免费下载链接】azuredatastudioAzure Data Studio is a data management and development tool with connectivity to popular cloud and on-premises databases. Azure Data Studio supports Windows, macOS, and Linux, with immediate capability to connect to Azure SQL and SQL Server. Browse the extension library for more database support options including MySQL, PostgreSQL, and MongoDB.项目地址https://gitcode.com/gh_mirrors/az/azuredatastudio点击查看免费下载相关推荐Azure Data Studio 西班牙语语言包扩展开发指南从 localizations 贡献点到 Transifex 翻译同步Azure Data Studio 西班牙语语言包扩展开发指南从 localizations 贡献点到 Transifex 翻译同步 本文以 Azure Da数据库客户端桌面应用数据分析Azure Data Studio 德语语言包扩展localizations 贡献点解析与 Transifex 翻译同步流水线Azure Data Studio 德语语言包扩展localizations 贡献点解析与 Transifex 翻译同步流水线 本文以 Azure Data数据库客户端桌面应用数据分析Yank Note 元素属性Element Attributes语法完全指南用 {.class} 与 {style...} 精确控制 Markdown 渲染Yank Note 元素属性Element Attributes语法完全指南用 {.class} 与 {style...} 精确控制 Markdow数据库客户端桌面应用数据分析上一篇DeepSearcher企业级内容安全终极指南5大敏感信息过滤与合规处理机制下一篇vLLM-Omni Dynin-Omni 离线推理实战一站式端到端全模态生成入门创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考