add translation for buttons: global menu

This commit is contained in:
Nriver 2024-08-01 13:54:59 +08:00
parent d84f4387c5
commit 8a0fec0a63
3 changed files with 85 additions and 32 deletions

View File

@ -1,3 +1,4 @@
import { t } from "../../services/i18n.js";
import BasicWidget from "../basic_widget.js"; import BasicWidget from "../basic_widget.js";
import utils from "../../services/utils.js"; import utils from "../../services/utils.js";
import UpdateAvailableWidget from "./update_available.js"; import UpdateAvailableWidget from "./update_available.js";
@ -92,119 +93,119 @@ const TPL = `
<button type="button" data-toggle="dropdown" data-placement="right" <button type="button" data-toggle="dropdown" data-placement="right"
aria-haspopup="true" aria-expanded="false" aria-haspopup="true" aria-expanded="false"
class="icon-action global-menu-button" title="Menu"> class="icon-action global-menu-button" title="${t('global_menu.menu')}">
<div class="global-menu-button-update-available"></div> <div class="global-menu-button-update-available"></div>
</button> </button>
<ul class="dropdown-menu dropdown-menu-right"> <ul class="dropdown-menu dropdown-menu-right">
<li class="dropdown-item" data-trigger-command="showOptions"> <li class="dropdown-item" data-trigger-command="showOptions">
<span class="bx bx-slider"></span> <span class="bx bx-slider"></span>
Options ${t('global_menu.options')}
</li> </li>
<li class="dropdown-item" data-trigger-command="openNewWindow"> <li class="dropdown-item" data-trigger-command="openNewWindow">
<span class="bx bx-window-open"></span> <span class="bx bx-window-open"></span>
Open New Window ${t('global_menu.open_new_window')}
<kbd data-command="openNewWindow"></kbd> <kbd data-command="openNewWindow"></kbd>
</li> </li>
<li class="dropdown-item switch-to-mobile-version-button" data-trigger-command="switchToMobileVersion"> <li class="dropdown-item switch-to-mobile-version-button" data-trigger-command="switchToMobileVersion">
<span class="bx bx-mobile"></span> <span class="bx bx-mobile"></span>
Switch to Mobile Version ${t('global_menu.switch_to_mobile_version')}
</li> </li>
<li class="dropdown-item switch-to-desktop-version-button" data-trigger-command="switchToDesktopVersion"> <li class="dropdown-item switch-to-desktop-version-button" data-trigger-command="switchToDesktopVersion">
<span class="bx bx-desktop"></span> <span class="bx bx-desktop"></span>
Switch to Desktop Version ${t('global_menu.switch_to_desktop_version')}
</li> </li>
<span class="zoom-container dropdown-item"> <span class="zoom-container dropdown-item">
<div> <div>
<span class="bx bx-empty"></span> <span class="bx bx-empty"></span>
Zoom ${t('global_menu.zoom')}
</div> </div>
<div class="zoom-buttons"> <div class="zoom-buttons">
<a data-trigger-command="toggleFullscreen" title="Toggle Fullscreen" class="bx bx-expand-alt"></a> <a data-trigger-command="toggleFullscreen" title="${t('global_menu.toggle_fullscreen')}" class="bx bx-expand-alt"></a>
&nbsp; &nbsp;
<a data-trigger-command="zoomOut" title="Zoom Out" class="bx bx-minus"></a> <a data-trigger-command="zoomOut" title="${t('global_menu.zoom_out')}" class="bx bx-minus"></a>
<span data-trigger-command="zoomReset" title="Reset Zoom Level" class="zoom-state"></span> <span data-trigger-command="zoomReset" title="${t('global_menu.reset_zoom_level')}" class="zoom-state"></span>
<a data-trigger-command="zoomIn" title="Zoom In" class="bx bx-plus"></a> <a data-trigger-command="zoomIn" title="${t('global_menu.zoom_in')}" class="bx bx-plus"></a>
</div> </div>
</span> </span>
<li class="dropdown-item" data-trigger-command="showLaunchBarSubtree"> <li class="dropdown-item" data-trigger-command="showLaunchBarSubtree">
<span class="bx bx-sidebar"></span> <span class="bx bx-sidebar"></span>
Configure Launchbar ${t('global_menu.configure_launchbar')}
</li> </li>
<li class="dropdown-item" data-trigger-command="showShareSubtree"> <li class="dropdown-item" data-trigger-command="showShareSubtree">
<span class="bx bx-share-alt"></span> <span class="bx bx-share-alt"></span>
Show Shared Notes Subtree ${t('global_menu.show_shared_notes_subtree')}
</li> </li>
<li class="dropdown-item dropdown-submenu"> <li class="dropdown-item dropdown-submenu">
<span class="dropdown-toggle"> <span class="dropdown-toggle">
<span class="bx bx-empty"></span> <span class="bx bx-empty"></span>
Advanced ${t('global_menu.advanced')}
</span> </span>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
<li class="dropdown-item open-dev-tools-button" data-trigger-command="openDevTools"> <li class="dropdown-item open-dev-tools-button" data-trigger-command="openDevTools">
<span class="bx bx-bug-alt"></span> <span class="bx bx-bug-alt"></span>
Open Dev Tools ${t('global_menu.open_dev_tools')}
<kbd data-command="openDevTools"></kbd> <kbd data-command="openDevTools"></kbd>
</li> </li>
<li class="dropdown-item" data-trigger-command="showSQLConsole"> <li class="dropdown-item" data-trigger-command="showSQLConsole">
<span class="bx bx-data"></span> <span class="bx bx-data"></span>
Open SQL Console ${t('global_menu.open_sql_console')}
<kbd data-command="showSQLConsole"></kbd> <kbd data-command="showSQLConsole"></kbd>
</li> </li>
<li class="dropdown-item" data-trigger-command="showSQLConsoleHistory"> <li class="dropdown-item" data-trigger-command="showSQLConsoleHistory">
<span class="bx bx-empty"></span> <span class="bx bx-empty"></span>
Open SQL Console History ${t('global_menu.open_sql_console_history')}
</li> </li>
<li class="dropdown-item" data-trigger-command="showSearchHistory"> <li class="dropdown-item" data-trigger-command="showSearchHistory">
<span class="bx bx-empty"></span> <span class="bx bx-empty"></span>
Open Search History ${t('global_menu.open_search_history')}
</li> </li>
<li class="dropdown-item" data-trigger-command="showBackendLog"> <li class="dropdown-item" data-trigger-command="showBackendLog">
<span class="bx bx-empty"></span> <span class="bx bx-empty"></span>
Show Backend Log ${t('global_menu.show_backend_log')}
<kbd data-command="showBackendLog"></kbd> <kbd data-command="showBackendLog"></kbd>
</li> </li>
<li class="dropdown-item" data-trigger-command="reloadFrontendApp" <li class="dropdown-item" data-trigger-command="reloadFrontendApp"
title="Reload can help with some visual glitches without restarting the whole app."> title="${t('global_menu.reload_hint')}">
<span class="bx bx-empty"></span> <span class="bx bx-empty"></span>
Reload Frontend ${t('global_menu.reload_frontend')}
<kbd data-command="reloadFrontendApp"></kbd> <kbd data-command="reloadFrontendApp"></kbd>
</li> </li>
<li class="dropdown-item" data-trigger-command="showHiddenSubtree"> <li class="dropdown-item" data-trigger-command="showHiddenSubtree">
<span class="bx bx-empty"></span> <span class="bx bx-empty"></span>
Show Hidden Subtree ${t('global_menu.show_hidden_subtree')}
</li> </li>
</ul> </ul>
</li> </li>
<li class="dropdown-item show-help-button" data-trigger-command="showHelp"> <li class="dropdown-item show-help-button" data-trigger-command="showHelp">
<span class="bx bx-info-circle"></span> <span class="bx bx-info-circle"></span>
Show Help ${t('global_menu.show_help')}
<kbd data-command="showHelp"></kbd> <kbd data-command="showHelp"></kbd>
</li> </li>
<li class="dropdown-item show-about-dialog-button"> <li class="dropdown-item show-about-dialog-button">
<span class="bx bx-empty"></span> <span class="bx bx-empty"></span>
About TriliumNext Notes ${t('global_menu.about')}
</li> </li>
<li class="dropdown-item update-to-latest-version-button" data-trigger-command="downloadLatestVersion"> <li class="dropdown-item update-to-latest-version-button" data-trigger-command="downloadLatestVersion">
@ -215,7 +216,7 @@ const TPL = `
<li class="dropdown-item logout-button" data-trigger-command="logout"> <li class="dropdown-item logout-button" data-trigger-command="logout">
<span class="bx bx-log-out"></span> <span class="bx bx-log-out"></span>
Logout ${t('global_menu.logout')}
</li> </li>
</ul> </ul>
</div> </div>

View File

@ -346,15 +346,15 @@
"sql_console_home": "SQL控制台笔记的默认位置", "sql_console_home": "SQL控制台笔记的默认位置",
"bookmark_folder": "含有此标签的笔记将作为文件夹出现在书签中(允许访问其子笔记)", "bookmark_folder": "含有此标签的笔记将作为文件夹出现在书签中(允许访问其子笔记)",
"share_hidden_from_tree": "此笔记从左侧导航树中隐藏但仍可通过其URL访问", "share_hidden_from_tree": "此笔记从左侧导航树中隐藏但仍可通过其URL访问",
"share_external_link": "笔记将在享树中作为指向外部网站的链接", "share_external_link": "笔记将在享树中作为指向外部网站的链接",
"share_alias": "使用此别名定义将在 https://你的trilium域名/share/[别名] 下可用的笔记", "share_alias": "使用此别名定义将在 https://你的trilium域名/share/[别名] 下可用的笔记",
"share_omit_default_css": "将省略默认的享页面CSS。当您进行广泛的样式修改时使用。", "share_omit_default_css": "将省略默认的享页面CSS。当您进行广泛的样式修改时使用。",
"share_root": "标记作为在 /share 地址分享的根节点笔记。", "share_root": "标记作为在 /share 地址分享的根节点笔记。",
"share_description": "定义要添加到HTML meta标签以供描述的文本", "share_description": "定义要添加到HTML meta标签以供描述的文本",
"share_raw": "笔记将以其原始格式提供不带HTML包装器", "share_raw": "笔记将以其原始格式提供不带HTML包装器",
"share_disallow_robot_indexing": "将通过<code>X-Robots-Tag: noindex</code>标头禁止爬虫机器人索引此笔记", "share_disallow_robot_indexing": "将通过<code>X-Robots-Tag: noindex</code>标头禁止爬虫机器人索引此笔记",
"share_credentials": "需要凭据才能访问此享笔记。值应以'username:password'格式提供。请勿忘记使其可继承以应用于子笔记/图像。", "share_credentials": "需要凭据才能访问此享笔记。值应以'username:password'格式提供。请勿忘记使其可继承以应用于子笔记/图像。",
"share_index": "含有此标签的笔记将列出所有享笔记的根", "share_index": "含有此标签的笔记将列出所有享笔记的根",
"display_relations": "应显示的逗号分隔关系名称。将隐藏所有其他关系。", "display_relations": "应显示的逗号分隔关系名称。将隐藏所有其他关系。",
"hide_relations": "应隐藏的逗号分隔关系名称。将显示所有其他关系。", "hide_relations": "应隐藏的逗号分隔关系名称。将显示所有其他关系。",
"title_template": "创建为此笔记的子笔记时的默认标题。该值将作为JavaScript字符串评估\n 并因此可以通过注入的<code>now</code>和<code>parentNote</code>变量丰富动态内容。示例:\n \n <ul>\n <li><code>${parentNote.getLabelValue('authorName')}的文学作品</code></li>\n <li><code>Log for ${now.format('YYYY-MM-DD HH:mm:ss')}</code></li>\n </ul>\n \n 有关详细信息,请参见<a href=\"https://github.com/zadam/trilium/wiki/Default-note-title\">详细信息wiki</a>API文档<a href=\"https://zadam.github.io/trilium/backend_api/Note.html\">parentNote</a>和<a href=\"https://day.js.org/docs/en/display/format\">now</a>。", "title_template": "创建为此笔记的子笔记时的默认标题。该值将作为JavaScript字符串评估\n 并因此可以通过注入的<code>now</code>和<code>parentNote</code>变量丰富动态内容。示例:\n \n <ul>\n <li><code>${parentNote.getLabelValue('authorName')}的文学作品</code></li>\n <li><code>Log for ${now.format('YYYY-MM-DD HH:mm:ss')}</code></li>\n </ul>\n \n 有关详细信息,请参见<a href=\"https://github.com/zadam/trilium/wiki/Default-note-title\">详细信息wiki</a>API文档<a href=\"https://zadam.github.io/trilium/backend_api/Note.html\">parentNote</a>和<a href=\"https://day.js.org/docs/en/display/format\">now</a>。",
@ -383,10 +383,10 @@
"inherit": "即使没有父子关系,笔记的属性也将继承。有关类似概念的模板关系,请参见模板关系。请参阅文档中的属性继承。", "inherit": "即使没有父子关系,笔记的属性也将继承。有关类似概念的模板关系,请参见模板关系。请参阅文档中的属性继承。",
"render_note": "“渲染HTML笔记”类型的笔记将使用代码笔记HTML或脚本进行呈现因此需要指定要渲染的笔记", "render_note": "“渲染HTML笔记”类型的笔记将使用代码笔记HTML或脚本进行呈现因此需要指定要渲染的笔记",
"widget_relation": "此关系的目标将作为侧边栏中的小部件执行和呈现", "widget_relation": "此关系的目标将作为侧边栏中的小部件执行和呈现",
"share_css": "将注入共享页面的CSS笔记。CSS笔记也必须位于共享子树中。可以考虑一并使用'share_hidden_from_tree'和'share_omit_default_css'。", "share_css": "将注入分享页面的CSS笔记。CSS笔记也必须位于分享子树中。可以考虑一并使用'share_hidden_from_tree'和'share_omit_default_css'。",
"share_js": "将注入共享页面的JavaScript笔记。JS笔记也必须位于共享子树中。可以考虑一并使用'share_hidden_from_tree'。", "share_js": "将注入分享页面的JavaScript笔记。JS笔记也必须位于分享子树中。可以考虑一并使用'share_hidden_from_tree'。",
"share_template": "用作显示享笔记的模板的嵌入式JavaScript笔记。如果没有将回退到默认模板。可以考虑一并使用'share_hidden_from_tree'。", "share_template": "用作显示享笔记的模板的嵌入式JavaScript笔记。如果没有将回退到默认模板。可以考虑一并使用'share_hidden_from_tree'。",
"share_favicon": "在共享页面中设置的favicon笔记。一般需要将它设置为共享和可继承。Favicon笔记也必须位于共享子树中。可以考虑一并使用'share_hidden_from_tree'。", "share_favicon": "在分享页面中设置的favicon笔记。一般需要将它设置为分享和可继承。Favicon笔记也必须位于分享子树中。可以考虑一并使用'share_hidden_from_tree'。",
"is_owned_by_note": "由此笔记所有", "is_owned_by_note": "由此笔记所有",
"other_notes_with_name": "其它含有 {{attributeType}} 名为 \"{{attributeName}}\" 的的笔记", "other_notes_with_name": "其它含有 {{attributeType}} 名为 \"{{attributeName}}\" 的的笔记",
"and_more": "... 以及另外 {{count}} 个" "and_more": "... 以及另外 {{count}} 个"
@ -558,5 +558,31 @@
}, },
"edit_button": { "edit_button": {
"edit_this_note": "编辑此笔记" "edit_this_note": "编辑此笔记"
},
"global_menu": {
"menu": "菜单",
"options": "选项",
"open_new_window": "打开新窗口",
"switch_to_mobile_version": "切换到移动版",
"switch_to_desktop_version": "切换到桌面版",
"zoom": "缩放",
"toggle_fullscreen": "切换全屏",
"zoom_out": "缩小",
"reset_zoom_level": "重置缩放级别",
"zoom_in": "放大",
"configure_launchbar": "配置启动栏",
"show_shared_notes_subtree": "显示分享笔记子树",
"advanced": "高级",
"open_dev_tools": "打开开发工具",
"open_sql_console": "打开SQL控制台",
"open_sql_console_history": "打开SQL控制台历史记录",
"open_search_history": "打开搜索历史",
"show_backend_log": "显示后台日志",
"reload_hint": "重新加载可以帮助解决一些视觉故障,而无需重新启动整个应用程序。",
"reload_frontend": "重新加载前端",
"show_hidden_subtree": "显示隐藏子树",
"show_help": "显示帮助",
"about": "关于 TriliumNext 笔记",
"logout": "登出"
} }
} }

View File

@ -559,5 +559,31 @@
}, },
"edit_button": { "edit_button": {
"edit_this_note": "Edit this note" "edit_this_note": "Edit this note"
},
"global_menu": {
"menu": "Menu",
"options": "Options",
"open_new_window": "Open New Window",
"switch_to_mobile_version": "Switch to Mobile Version",
"switch_to_desktop_version": "Switch to Desktop Version",
"zoom": "Zoom",
"toggle_fullscreen": "Toggle Fullscreen",
"zoom_out": "Zoom Out",
"reset_zoom_level": "Reset Zoom Level",
"zoom_in": "Zoom In",
"configure_launchbar": "Configure Launchbar",
"show_shared_notes_subtree": "Show Shared Notes Subtree",
"advanced": "Advanced",
"open_dev_tools": "Open Dev Tools",
"open_sql_console": "Open SQL Console",
"open_sql_console_history": "Open SQL Console History",
"open_search_history": "Open Search History",
"show_backend_log": "Show Backend Log",
"reload_hint": "Reload can help with some visual glitches without restarting the whole app.",
"reload_frontend": "Reload Frontend",
"show_hidden_subtree": "Show Hidden Subtree",
"show_help": "Show Help",
"about": "About TriliumNext Notes",
"logout": "Logout"
} }
} }