From f3e09c3a4b8d7e3709d792cddca258a8d2afaacc Mon Sep 17 00:00:00 2001 From: Nriver <6752679+Nriver@users.noreply.github.com> Date: Fri, 26 Jul 2024 17:00:28 +0800 Subject: [PATCH] add translation for attribute detail --- .../attribute_widgets/attribute_detail.js | 239 +++++++++--------- src/public/translations/cn/translation.json | 122 ++++++++- src/public/translations/en/translation.json | 120 +++++++++ 3 files changed, 354 insertions(+), 127 deletions(-) diff --git a/src/public/app/widgets/attribute_widgets/attribute_detail.js b/src/public/app/widgets/attribute_widgets/attribute_detail.js index e12d592fc..ce84cd4a3 100644 --- a/src/public/app/widgets/attribute_widgets/attribute_detail.js +++ b/src/public/app/widgets/attribute_widgets/attribute_detail.js @@ -1,3 +1,4 @@ +import { t } from "../../services/i18n.js"; import server from "../../services/server.js"; import froca from "../../services/froca.js"; import linkService from "../../services/link.js"; @@ -68,25 +69,25 @@ const TPL = `
Name: | +||
---|---|---|
${t('attribute_detail.name')} | ||
Value: | +${t('attribute_detail.value')} | |
Target note: | +${t('attribute_detail.target_note')} |
@@ -94,12 +95,12 @@ const TPL = `
|
Promoted: | + title="${t('attribute_detail.promoted_title')}"> +${t('attribute_detail.promoted')} | |
Alias: | +${t('attribute_detail.promoted_alias')} |
@@ -107,48 +108,48 @@ const TPL = `
|
Multiplicity: | +${t('attribute_detail.multiplicity')} | |
Type: | +${t('attribute_detail.label_type')} | |
Precision: | +${t('attribute_detail.precision')} |
- digits
+ ${t('attribute_detail.digits')}
|
Inverse relation: | +${t('attribute_detail.inverse_relation')} |
|
Inheritable: | +||
${t('attribute_detail.inheritable')} |
runAtHour
to specify at which hour.#run=hourly
. Can be defined multiple times for more runs during the day.",
- "disableInclusion": "scripts with this label won't be included into parent script execution.",
- "sorted": "keeps child notes sorted by title alphabetically",
- "sortDirection": "ASC (the default) or DESC",
- "sortFoldersFirst": "Folders (notes with children) should be sorted on top",
- "top": "keep given note on top in its parent (applies only on sorted parents)",
- "hidePromotedAttributes": "Hide promoted attributes on this note",
- "readOnly": "editor is in read only mode. Works only for text and code notes.",
- "autoReadOnlyDisabled": "text/code notes can be set automatically into read mode when they are too large. You can disable this behavior on per-note basis by adding this label to the note",
- "appCss": "marks CSS notes which are loaded into the Trilium application and can thus be used to modify Trilium's looks.",
- "appTheme": "marks CSS notes which are full Trilium themes and are thus available in Trilium options.",
- "cssClass": "value of this label is then added as CSS class to the node representing given note in the tree. This can be useful for advanced theming. Can be used in template notes.",
- "iconClass": "value of this label is added as a CSS class to the icon on the tree which can help visually distinguish the notes in the tree. Example might be bx bx-home - icons are taken from boxicons. Can be used in template notes.",
- "pageSize": "number of items per page in note listing",
- "customRequestHandler": 'see Custom request handler',
- "customResourceProvider": 'see Custom request handler',
- "widget": "marks this note as a custom widget which will be added to the Trilium component tree",
- "workspace": "marks this note as a workspace which allows easy hoisting",
- "workspaceIconClass": "defines box icon CSS class which will be used in tab when hoisted to this note",
- "workspaceTabBackgroundColor": "CSS color used in the note tab when hoisted to this note",
- "workspaceCalendarRoot": "Defines per-workspace calendar root",
- "workspaceTemplate": "This note will appear in the selection of available template when creating new note, but only when hoisted into a workspace containing this template",
- "searchHome": "new search notes will be created as children of this note",
- "workspaceSearchHome": "new search notes will be created as children of this note when hoisted to some ancestor of this workspace note",
- "inbox": "default inbox location for new notes - when you create a note using \"new note\" button in the sidebar, notes will be created as child notes in the note marked as with #inbox
label.",
- "workspaceInbox": "default inbox location for new notes when hoisted to some ancestor of this workspace note",
- "sqlConsoleHome": "default location of SQL console notes",
- "bookmarkFolder": "note with this label will appear in bookmarks as folder (allowing access to its children)",
- "shareHiddenFromTree": "this note is hidden from left navigation tree, but still accessible with its URL",
- "shareExternalLink": "note will act as a link to an external website in the share tree",
- "shareAlias": "define an alias using which the note will be available under https://your_trilium_host/share/[your_alias]",
- "shareOmitDefaultCss": "default share page CSS will be omitted. Use when you make extensive styling changes.",
- "shareRoot": "marks note which is served on /share root.",
- "shareDescription": "define text to be added to the HTML meta tag for description",
- "shareRaw": "note will be served in its raw format, without HTML wrapper",
- "shareDisallowRobotIndexing": `will forbid robot indexing of this note via X-Robots-Tag: noindex
header`,
- "shareCredentials": "require credentials to access this shared note. Value is expected to be in format 'username:password'. Don't forget to make this inheritable to apply to child-notes/images.",
- "shareIndex": "note with this this label will list all roots of shared notes",
- "displayRelations": "comma delimited names of relations which should be displayed. All other ones will be hidden.",
- "hideRelations": "comma delimited names of relations which should be hidden. All other ones will be displayed.",
- "titleTemplate": `default title of notes created as children of this note. The value is evaluated as JavaScript string
- and thus can be enriched with dynamic content via the injected now
and parentNote
variables. Examples:
-
- \${parentNote.getLabelValue('authorName')}'s literary works
Log for \${now.format('YYYY-MM-DD HH:mm:ss')}
#toc
or #toc=show
will force the Table of Contents to be shown, #toc=hide
will force hiding it. If the label doesn't exist, the global setting is observed",
- "color": "defines color of the note in note tree, links etc. Use any valid CSS color value like 'red' or #a13d5f",
- "keyboardShortcut": "Defines a keyboard shortcut which will immediately jump to this note. Example: 'ctrl+alt+e'. Requires frontend reload for the change to take effect.",
- "keepCurrentHoisting": "Opening this link won't change hoisting even if the note is not displayable in the current hoisted subtree.",
- "executeButton": "Title of the button which will execute the current code note",
- "executeDescription": "Longer description of the current code note displayed together with the execute button",
- "excludeFromNoteMap": "Notes with this label will be hidden from the Note Map",
- "newNotesOnTop": "New notes will be created at the top of the parent note, not on the bottom.",
- "hideHighlightWidget": "Hide Hightlight List widget"
+ "disableVersioning": t('attribute_detail.disable_versioning'),
+ "calendarRoot": t('attribute_detail.calendar_root'),
+ "archived": t('attribute_detail.archived'),
+ "excludeFromExport": t('attribute_detail.exclude_from_export'),
+ "run": t('attribute_detail.run'),
+ "runOnInstance": t('attribute_detail.run_on_instance'),
+ "runAtHour": t('attribute_detail.run_at_hour'),
+ "disableInclusion": t('attribute_detail.disable_inclusion'),
+ "sorted": t('attribute_detail.sorted'),
+ "sortDirection": t('attribute_detail.sort_direction'),
+ "sortFoldersFirst": t('attribute_detail.sort_folders_first'),
+ "top": t('attribute_detail.top'),
+ "hidePromotedAttributes": t('attribute_detail.hide_promoted_attributes'),
+ "readOnly": t('attribute_detail.read_only'),
+ "autoReadOnlyDisabled": t('attribute_detail.auto_read_only_disabled'),
+ "appCss": t('attribute_detail.app_css'),
+ "appTheme": t('attribute_detail.app_theme'),
+ "cssClass": t('attribute_detail.css_class'),
+ "iconClass": t('attribute_detail.icon_class'),
+ "pageSize": t('attribute_detail.page_size'),
+ "customRequestHandler": t('attribute_detail.custom_request_handler'),
+ "customResourceProvider": t('attribute_detail.custom_resource_provider'),
+ "widget": t('attribute_detail.widget'),
+ "workspace": t('attribute_detail.workspace'),
+ "workspaceIconClass": t('attribute_detail.workspace_icon_class'),
+ "workspaceTabBackgroundColor": t('attribute_detail.workspace_tab_background_color'),
+ "workspaceCalendarRoot": t('attribute_detail.workspace_calendar_root'),
+ "workspaceTemplate": t('attribute_detail.workspace_template'),
+ "searchHome": t('attribute_detail.search_home'),
+ "workspaceSearchHome": t('attribute_detail.workspace_search_home'),
+ "inbox": t('attribute_detail.inbox'),
+ "workspaceInbox": t('attribute_detail.workspace_inbox'),
+ "sqlConsoleHome": t('attribute_detail.sql_console_home'),
+ "bookmarkFolder": t('attribute_detail.bookmark_folder'),
+ "shareHiddenFromTree": t('attribute_detail.share_hidden_from_tree'),
+ "shareExternalLink": t('attribute_detail.share_external_link'),
+ "shareAlias": t('attribute_detail.share_alias'),
+ "shareOmitDefaultCss": t('attribute_detail.share_omit_default_css'),
+ "shareRoot": t('attribute_detail.share_root'),
+ "shareDescription": t('attribute_detail.share_description'),
+ "shareRaw": t('attribute_detail.share_raw'),
+ "shareDisallowRobotIndexing": t('attribute_detail.share_disallow_robot_indexing'),
+ "shareCredentials": t('attribute_detail.share_credentials'),
+ "shareIndex": t('attribute_detail.share_index'),
+ "displayRelations": t('attribute_detail.display_relations'),
+ "hideRelations": t('attribute_detail.hide_relations'),
+ "titleTemplate": t('attribute_detail.title_template'),
+ "template": t('attribute_detail.template'),
+ "toc": t('attribute_detail.toc'),
+ "color": t('attribute_detail.color'),
+ "keyboardShortcut": t('attribute_detail.keyboard_shortcut'),
+ "keepCurrentHoisting": t('attribute_detail.keep_current_hoisting'),
+ "executeButton": t('attribute_detail.execute_button'),
+ "executeDescription": t('attribute_detail.execute_description'),
+ "excludeFromNoteMap": t('attribute_detail.exclude_from_note_map'),
+ "newNotesOnTop": t('attribute_detail.new_notes_on_top'),
+ "hideHighlightWidget": t('attribute_detail.hide_highlight_widget')
},
"relation": {
- "runOnNoteCreation": "executes when note is created on backend. Use this relation if you want to run the script for all notes created under a specific subtree. In that case, create it on the subtree root note and make it inheritable. A new note created within the subtree (any depth) will trigger the script.",
- "runOnChildNoteCreation": "executes when new note is created under the note where this relation is defined",
- "runOnNoteTitleChange": "executes when note title is changed (includes note creation as well)",
- "runOnNoteContentChange": "executes when note content is changed (includes note creation as well).",
- "runOnNoteChange": "executes when note is changed (includes note creation as well). Does not include content changes",
- "runOnNoteDeletion": "executes when note is being deleted",
- "runOnBranchCreation": "executes when a branch is created. Branch is a link between parent note and child note and is created e.g. when cloning or moving note.",
- "runOnBranchChange": "executes when a branch is updated.",
- "runOnBranchDeletion": "executes when a branch is deleted. Branch is a link between parent note and child note and is deleted e.g. when moving note (old branch/link is deleted).",
- "runOnAttributeCreation": "executes when new attribute is created for the note which defines this relation",
- "runOnAttributeChange": " executes when the attribute is changed of a note which defines this relation. This is triggered also when the attribute is deleted",
- "template": "note's attributes will be inherited even without a parent-child relationship, note's content and subtree will be added to instance notes if empty. See documentation for details.",
- "inherit": "note's attributes will be inherited even without a parent-child relationship. See template relation for a similar concept. See attribute inheritance in the documentation.",
- "renderNote": 'notes of type "render HTML note" will be rendered using a code note (HTML or script) and it is necessary to point using this relation to which note should be rendered',
- "widget": "target of this relation will be executed and rendered as a widget in the sidebar",
- "shareCss": "CSS note which will be injected into the share page. CSS note must be in the shared sub-tree as well. Consider using 'shareHiddenFromTree' and 'shareOmitDefaultCss' as well.",
- "shareJs": "JavaScript note which will be injected into the share page. JS note must be in the shared sub-tree as well. Consider using 'shareHiddenFromTree'.",
- "shareTemplate": "Embedded JavaScript note that will be used as the template for displaying the shared note. Falls back to the default template. Consider using 'shareHiddenFromTree'.",
- "shareFavicon": "Favicon note to be set in the shared page. Typically you want to set it to share root and make it inheritable. Favicon note must be in the shared sub-tree as well. Consider using 'shareHiddenFromTree'.",
+ "runOnNoteCreation": t('attribute_detail.run_on_note_creation'),
+ "runOnChildNoteCreation": t('attribute_detail.run_on_child_note_creation'),
+ "runOnNoteTitleChange": t('attribute_detail.run_on_note_title_change'),
+ "runOnNoteContentChange": t('attribute_detail.run_on_note_content_change'),
+ "runOnNoteChange": t('attribute_detail.run_on_note_change'),
+ "runOnNoteDeletion": t('attribute_detail.run_on_note_deletion'),
+ "runOnBranchCreation": t('attribute_detail.run_on_branch_creation'),
+ "runOnBranchChange": t('attribute_detail.run_on_branch_change'),
+ "runOnBranchDeletion": t('attribute_detail.run_on_branch_deletion'),
+ "runOnAttributeCreation": t('attribute_detail.run_on_attribute_creation'),
+ "runOnAttributeChange": t('attribute_detail.run_on_attribute_change'),
+ "template": t('attribute_detail.relation_template'),
+ "inherit": t('attribute_detail.inherit'),
+ "renderNote": t('attribute_detail.render_note'),
+ "widget": t('attribute_detail.widget_relation'),
+ "shareCss": t('attribute_detail.share_css'),
+ "shareJs": t('attribute_detail.share_js'),
+ "shareTemplate": t('attribute_detail.share_template'),
+ "shareFavicon": t('attribute_detail.share_favicon')
}
};
@@ -453,7 +440,7 @@ export default class AttributeDetailWidget extends NoteContextAwareWidget {
.show()
.empty()
.append(attribute.type === 'label' ? 'Label' : 'Relation')
- .append(' is owned by note ')
+ .append(` ${t("attribute_detail.is_owned_by_note")} `)
.append(await linkService.createLink(attribute.noteId))
}
@@ -614,7 +601,7 @@ export default class AttributeDetailWidget extends NoteContextAwareWidget {
this.$relatedNotesContainer.hide();
} else {
this.$relatedNotesContainer.show();
- this.$relatedNotesTitle.text(`Other notes with ${this.attribute.type} name "${this.attribute.name}"`);
+ this.$relatedNotesTitle.text(t("attribute_detail.other_notes_with_name", {attributeType: this.attribute.type, attributeName: this.attribute.name}));
this.$relatedNotesList.empty();
@@ -632,7 +619,7 @@ export default class AttributeDetailWidget extends NoteContextAwareWidget {
}
if (results.length > DISPLAYED_NOTES) {
- this.$relatedNotesMoreNotes.show().text(`... and ${count - DISPLAYED_NOTES} more.`);
+ this.$relatedNotesMoreNotes.show().text(t("attribute_detail.and_more", {count: count - DISPLAYED_NOTES}));
} else {
this.$relatedNotesMoreNotes.hide();
}
diff --git a/src/public/translations/cn/translation.json b/src/public/translations/cn/translation.json
index d3da9ecde..186bb6fad 100644
--- a/src/public/translations/cn/translation.json
+++ b/src/public/translations/cn/translation.json
@@ -269,6 +269,126 @@
"options": "选项",
"shrink_images": "缩小图片",
"upload": "上传",
- "tooltip": "如果您勾选此选项,Trilium 将尝试通过缩放和优化来缩小上传的图像,这可能会影响感知的图像质量。如果未选中,则将以不进行更改的方式上传图像。"
+ "tooltip": "如果您勾选此选项,Trilium 将尝试通过缩放和优化来缩小上传的图像,这可能会影响感知的图像质量。如果未选中,则将以不进行修改的方式上传图像。"
+ },
+ "attribute_detail": {
+ "attr_detail_title": "属性详情标题",
+ "close_button_title": "取消修改并关闭",
+ "attr_is_owned_by": "属性所有者",
+ "attr_name_title": "属性名称只能由字母数字字符、冒号和下划线组成",
+ "name": "名称",
+ "value": "值",
+ "target_note_title": "关系是源笔记和目标笔记之间的命名连接。",
+ "target_note": "目标笔记",
+ "promoted_title": "升级属性在笔记上突出显示。",
+ "promoted": "升级",
+ "promoted_alias_title": "在升级属性界面中显示的名称。",
+ "promoted_alias": "别名",
+ "multiplicity_title": "多重性定义了可以创建的含有相同名称的属性的数量 - 最多为1或多于1。",
+ "multiplicity": "多重性",
+ "single_value": "单值",
+ "multi_value": "多值",
+ "label_type_title": "标签类型将帮助 Trilium 选择适合的界面来输入标签值。",
+ "label_type": "类型",
+ "text": "文本",
+ "number": "数字",
+ "boolean": "布尔值",
+ "date": "日期",
+ "date_time": "日期和时间",
+ "url": "网址",
+ "precision_title": "值设置界面中浮点数后的位数。",
+ "precision": "精度",
+ "digits": "位数",
+ "inverse_relation_title": "可选设置,定义此关系与哪个关系相反。例如:父 - 子是彼此的反向关系。",
+ "inverse_relation": "反向关系",
+ "inheritable_title": "可继承属性将被继承到此树下的所有后代。",
+ "inheritable": "可继承",
+ "save_and_close": "保存并关闭 Ctrl+回车",
+ "delete": "删除",
+ "related_notes_title": "含有此标签的其他笔记",
+ "more_notes": "更多笔记",
+ "label": "标签详情",
+ "label_definition": "标签定义详情",
+ "relation": "关系详情",
+ "relation_definition": "关系定义详情",
+ "disable_versioning": "禁用自动版本控制。适用于例如大型但不重要的笔记 - 例如用于脚本编写的大型JS库",
+ "calendar_root": "标记应用作为每日笔记的根。只应标记一个笔记。",
+ "archived": "含有此标签的笔记默认在搜索结果中不可见(也适用于跳转到、添加链接对话框等)。",
+ "exclude_from_export": "笔记(及其子树)不会包含在任何笔记导出中",
+ "run": "定义脚本应运行的事件。可能的值包括:\nrunAtHour
指定小时。#run=hourly
一起使用。可以多次定义,以便一天内运行多次。",
+ "disable_inclusion": "含有此标签的脚本不会包含在父脚本执行中。",
+ "sorted": "按标题字母顺序保持子笔记排序",
+ "sort_direction": "ASC(默认)或DESC",
+ "sort_folders_first": "文件夹(含有子笔记的笔记)应排在顶部",
+ "top": "在其父级中保留给定笔记在顶部(仅适用于排序的父级)",
+ "hide_promoted_attributes": "隐藏此笔记上的升级属性",
+ "read_only": "编辑器处于只读模式。仅适用于文本和代码笔记。",
+ "auto_read_only_disabled": "文本/代码笔记可以在太大时自动设置为只读模式。您可以通过向笔记添加此标签来对单个笔记单独设置禁用只读。",
+ "app_css": "标记加载到Trilium应用程序中的CSS笔记,因此可以用于修改Trilium的外观。",
+ "app_theme": "标记为完整的Trilium主题的CSS笔记,因此可以在Trilium选项中使用。",
+ "css_class": "该标签的值将作为CSS类添加到树中表示给定笔记的节点。这对于高级主题设置非常有用。可用于模板笔记。",
+ "icon_class": "该标签的值将作为CSS类添加到树中图标上,有助于从视觉上区分笔记树里的笔记。比如可以是 bx bx-home - 图标来自boxicons。可用于模板笔记。",
+ "page_size": "笔记列表中每页的项目数",
+ "custom_request_handler": "请参阅自定义请求处理程序 ",
+ "custom_resource_provider": "请参阅自定义请求处理程序",
+ "widget": "将此笔记标记为将添加到Trilium组件树中的自定义小部件",
+ "workspace": "将此笔记标记为允许轻松提升的工作区",
+ "workspace_icon_class": "定义在选项卡中提升到此笔记时将使用的框图图标CSS类",
+ "workspace_tab_background_color": "提升到此笔记时在笔记选项卡中使用的CSS颜色",
+ "workspace_calendar_root": "定义每个工作区的日历根",
+ "workspace_template": "在创建新笔记时,此笔记将出现在可用模板的选择中,但仅当提升到包含此模板的工作区时",
+ "search_home": "新的搜索笔记将作为此笔记的子笔记创建",
+ "workspace_search_home": "当提升到此工作区笔记的某个祖先时,新的搜索笔记将作为此笔记的子笔记创建",
+ "inbox": "使用侧边栏中的\"新建笔记\"按钮创建笔记时,默认收件箱位置。笔记将作为标有#inbox
标签的笔记的子笔记创建。",
+ "workspace_inbox": "当提升到此工作区笔记的某个祖先时,新的笔记的默认收件箱位置",
+ "sql_console_home": "SQL控制台笔记的默认位置",
+ "bookmark_folder": "含有此标签的笔记将作为文件夹出现在书签中(允许访问其子笔记)",
+ "share_hidden_from_tree": "此笔记从左侧导航树中隐藏,但仍可通过其URL访问",
+ "share_external_link": "笔记将在共享树中作为指向外部网站的链接",
+ "share_alias": "使用此别名定义将在 https://你的trilium域名/share/[别名] 下可用的笔记",
+ "share_omit_default_css": "将省略默认的共享页面CSS。当您进行广泛的样式修改时使用。",
+ "share_root": "标记作为在 /share 地址分享的根节点笔记。",
+ "share_description": "定义要添加到HTML meta标签以供描述的文本",
+ "share_raw": "笔记将以其原始格式提供,不带HTML包装器",
+ "share_disallow_robot_indexing": "将通过X-Robots-Tag: noindex
标头禁止爬虫机器人索引此笔记",
+ "share_credentials": "需要凭据才能访问此共享笔记。值应以'username:password'格式提供。请勿忘记使其可继承以应用于子笔记/图像。",
+ "share_index": "含有此标签的笔记将列出所有共享笔记的根",
+ "display_relations": "应显示的逗号分隔关系名称。将隐藏所有其他关系。",
+ "hide_relations": "应隐藏的逗号分隔关系名称。将显示所有其他关系。",
+ "title_template": "创建为此笔记的子笔记时的默认标题。该值将作为JavaScript字符串评估\n 并因此可以通过注入的now
和parentNote
变量丰富动态内容。示例:\n \n ${parentNote.getLabelValue('authorName')}的文学作品
Log for ${now.format('YYYY-MM-DD HH:mm:ss')}
#toc
或#toc=show
将强制显示目录。 #toc=hide
将强制隐藏它。如果标签不存在,则观察全局设置",
+ "color": "定义笔记树、链接等中笔记的颜色。使用任何有效的CSS颜色值,如'red'或#a13d5f",
+ "keyboard_shortcut": "定义立即跳转到此笔记的键盘快捷键。示例:'ctrl+alt+e'。需要前端重新加载才能生效。",
+ "keep_current_hoisting": "即使笔记不在当前提升的子树中显示,打开此链接也不会修改提升。",
+ "execute_button": "将执行当前代码笔记的按钮标题",
+ "execute_description": "显示与执行按钮一起显示的当前代码笔记的更长描述",
+ "exclude_from_note_map": "含有此标签的笔记将从笔记地图中隐藏",
+ "new_notes_on_top": "新笔记将创建在父笔记的顶部,而不是底部。",
+ "hide_highlight_widget": "隐藏高亮列表小部件",
+ "run_on_note_creation": "在后端创建笔记时执行。如果要为在特定子树下创建的所有笔记运行脚本,请使用此关系。在这种情况下,在子树根笔记上创建它并使其可继承。在子树中的任何深度创建新笔记都会触发脚本。",
+ "run_on_child_note_creation": "当创建新的子笔记时执行",
+ "run_on_note_title_change": "当笔记标题修改时执行(包括笔记创建)",
+ "run_on_note_content_change": "当笔记内容修改时执行(包括笔记创建)。",
+ "run_on_note_change": "当笔记修改时执行(包括笔记创建)。不包括内容修改",
+ "run_on_note_deletion": "在删除笔记时执行",
+ "run_on_branch_creation": "在创建分支时执行。分支是父笔记和子笔记之间的链接,并且在克隆或移动笔记时创建。",
+ "run_on_branch_change": "在分支更新时执行。",
+ "run_on_branch_deletion": "在删除分支时执行。分支是父笔记和子笔记之间的链接,例如在移动笔记时删除(删除旧的分支/链接)。",
+ "run_on_attribute_creation": "在为定义此关系的笔记创建新属性时执行",
+ "run_on_attribute_change": "当修改定义此关系的笔记的属性时执行。删除属性时也会触发此操作。",
+ "relation_template": "即使没有父子关系,笔记的属性也将继承。如果空,则笔记的内容和子树将添加到实例笔记中。有关详细信息,请参见文档。",
+ "inherit": "即使没有父子关系,笔记的属性也将继承。有关类似概念的模板关系,请参见模板关系。请参阅文档中的属性继承。",
+ "render_note": "“渲染HTML笔记”类型的笔记将使用代码笔记(HTML或脚本)进行呈现,因此需要指定要渲染的笔记",
+ "widget_relation": "此关系的目标将作为侧边栏中的小部件执行和呈现",
+ "share_css": "将注入共享页面的CSS笔记。CSS笔记也必须位于共享子树中。可以考虑一并使用'share_hidden_from_tree'和'share_omit_default_css'。",
+ "share_js": "将注入共享页面的JavaScript笔记。JS笔记也必须位于共享子树中。可以考虑一并使用'share_hidden_from_tree'。",
+ "share_template": "用作显示共享笔记的模板的嵌入式JavaScript笔记。如果没有,将回退到默认模板。可以考虑一并使用'share_hidden_from_tree'。",
+ "share_favicon": "在共享页面中设置的favicon笔记。一般需要将它设置为共享和可继承。Favicon笔记也必须位于共享子树中。可以考虑一并使用'share_hidden_from_tree'。",
+ "is_owned_by_note": "由此笔记所有",
+ "other_notes_with_name": "其它含有 {{attributeType}} 名为 \"{{attributeName}}\" 的的笔记",
+ "and_more": "... 以及另外 {{count}} 个"
}
}
diff --git a/src/public/translations/en/translation.json b/src/public/translations/en/translation.json
index 5f8df467e..f6f37c7e4 100644
--- a/src/public/translations/en/translation.json
+++ b/src/public/translations/en/translation.json
@@ -270,5 +270,125 @@
"shrink_images": "Shrink images",
"upload": "Upload",
"tooltip": "If you check this option, Trilium will attempt to shrink the uploaded images by scaling and optimization which may affect the perceived image quality. If unchecked, images will be uploaded without changes."
+ },
+ "attribute_detail": {
+ "attr_detail_title": "Attribute Detail Title",
+ "close_button_title": "Cancel changes and close",
+ "attr_is_owned_by": "Attribute is owned by",
+ "attr_name_title": "Attribute name can be composed of alphanumeric characters, colon and underscore only",
+ "name": "Name",
+ "value": "Value",
+ "target_note_title": "Relation is a named connection between source note and target note.",
+ "target_note": "Target note",
+ "promoted_title": "Promoted attribute is displayed prominently on the note.",
+ "promoted": "Promoted",
+ "promoted_alias_title": "The name to be displayed in the promoted attributes UI.",
+ "promoted_alias": "Alias",
+ "multiplicity_title": "Multiplicity defines how many attributes of the same name can be created - at max 1 or more than 1.",
+ "multiplicity": "Multiplicity",
+ "single_value": "Single value",
+ "multi_value": "Multi value",
+ "label_type_title": "Type of the label will help Trilium to choose suitable interface to enter the label value.",
+ "label_type": "Type",
+ "text": "Text",
+ "number": "Number",
+ "boolean": "Boolean",
+ "date": "Date",
+ "date_time": "Date & Time",
+ "url": "URL",
+ "precision_title": "What number of digits after floating point should be available in the value setting interface.",
+ "precision": "Precision",
+ "digits": "digits",
+ "inverse_relation_title": "Optional setting to define to which relation is this one opposite. Example: Father - Son are inverse relations to each other.",
+ "inverse_relation": "Inverse relation",
+ "inheritable_title": "Inheritable attribute will be inherited to all descendants under this tree.",
+ "inheritable": "Inheritable",
+ "save_and_close": "Save & close Ctrl+Enter",
+ "delete": "Delete",
+ "related_notes_title": "Other notes with this label",
+ "more_notes": "More notes",
+ "label": "Label detail",
+ "label_definition": "Label definition detail",
+ "relation": "Relation detail",
+ "relation_definition": "Relation definition detail",
+ "disable_versioning": "disables auto-versioning. Useful for e.g. large, but unimportant notes - e.g. large JS libraries used for scripting",
+ "calendar_root": "marks note which should be used as root for day notes. Only one should be marked as such.",
+ "archived": "notes with this label won't be visible by default in search results (also in Jump To, Add Link dialogs etc).",
+ "exclude_from_export": "notes (with their sub-tree) won't be included in any note export",
+ "run": "defines on which events script should run. Possible values are:\nrunAtHour
to specify at which hour.#run=hourly
. Can be defined multiple times for more runs during the day.",
+ "disable_inclusion": "scripts with this label won't be included into parent script execution.",
+ "sorted": "keeps child notes sorted by title alphabetically",
+ "sort_direction": "ASC (the default) or DESC",
+ "sort_folders_first": "Folders (notes with children) should be sorted on top",
+ "top": "keep given note on top in its parent (applies only on sorted parents)",
+ "hide_promoted_attributes": "Hide promoted attributes on this note",
+ "read_only": "editor is in read only mode. Works only for text and code notes.",
+ "auto_read_only_disabled": "text/code notes can be set automatically into read mode when they are too large. You can disable this behavior on per-note basis by adding this label to the note",
+ "app_css": "marks CSS notes which are loaded into the Trilium application and can thus be used to modify Trilium's looks.",
+ "app_theme": "marks CSS notes which are full Trilium themes and are thus available in Trilium options.",
+ "css_class": "value of this label is then added as CSS class to the node representing given note in the tree. This can be useful for advanced theming. Can be used in template notes.",
+ "icon_class": "value of this label is added as a CSS class to the icon on the tree which can help visually distinguish the notes in the tree. Example might be bx bx-home - icons are taken from boxicons. Can be used in template notes.",
+ "page_size": "number of items per page in note listing",
+ "custom_request_handler": "see Custom request handler",
+ "custom_resource_provider": "see Custom request handler",
+ "widget": "marks this note as a custom widget which will be added to the Trilium component tree",
+ "workspace": "marks this note as a workspace which allows easy hoisting",
+ "workspace_icon_class": "defines box icon CSS class which will be used in tab when hoisted to this note",
+ "workspace_tab_background_color": "CSS color used in the note tab when hoisted to this note",
+ "workspace_calendar_root": "Defines per-workspace calendar root",
+ "workspace_template": "This note will appear in the selection of available template when creating new note, but only when hoisted into a workspace containing this template",
+ "search_home": "new search notes will be created as children of this note",
+ "workspace_search_home": "new search notes will be created as children of this note when hoisted to some ancestor of this workspace note",
+ "inbox": "default inbox location for new notes - when you create a note using \"new note\" button in the sidebar, notes will be created as child notes in the note marked as with #inbox
label.",
+ "workspace_inbox": "default inbox location for new notes when hoisted to some ancestor of this workspace note",
+ "sql_console_home": "default location of SQL console notes",
+ "bookmark_folder": "note with this label will appear in bookmarks as folder (allowing access to its children)",
+ "share_hidden_from_tree": "this note is hidden from left navigation tree, but still accessible with its URL",
+ "share_external_link": "note will act as a link to an external website in the share tree",
+ "share_alias": "define an alias using which the note will be available under https://your_trilium_host/share/[your_alias]",
+ "share_omit_default_css": "default share page CSS will be omitted. Use when you make extensive styling changes.",
+ "share_root": "marks note which is served on /share root.",
+ "share_description": "define text to be added to the HTML meta tag for description",
+ "share_raw": "note will be served in its raw format, without HTML wrapper",
+ "share_disallow_robot_indexing": "will forbid robot indexing of this note via X-Robots-Tag: noindex
header",
+ "share_credentials": "require credentials to access this shared note. Value is expected to be in format 'username:password'. Don't forget to make this inheritable to apply to child-notes/images.",
+ "share_index": "note with this this label will list all roots of shared notes",
+ "display_relations": "comma delimited names of relations which should be displayed. All other ones will be hidden.",
+ "hide_relations": "comma delimited names of relations which should be hidden. All other ones will be displayed.",
+ "title_template": "default title of notes created as children of this note. The value is evaluated as JavaScript string \n and thus can be enriched with dynamic content via the injected now
and parentNote
variables. Examples:\n \n ${parentNote.getLabelValue('authorName')}'s literary works
Log for ${now.format('YYYY-MM-DD HH:mm:ss')}
#toc
or #toc=show
will force the Table of Contents to be shown, #toc=hide
will force hiding it. If the label doesn't exist, the global setting is observed",
+ "color": "defines color of the note in note tree, links etc. Use any valid CSS color value like 'red' or #a13d5f",
+ "keyboard_shortcut": "Defines a keyboard shortcut which will immediately jump to this note. Example: 'ctrl+alt+e'. Requires frontend reload for the change to take effect.",
+ "keep_current_hoisting": "Opening this link won't change hoisting even if the note is not displayable in the current hoisted subtree.",
+ "execute_button": "Title of the button which will execute the current code note",
+ "execute_description": "Longer description of the current code note displayed together with the execute button",
+ "exclude_from_note_map": "Notes with this label will be hidden from the Note Map",
+ "new_notes_on_top": "New notes will be created at the top of the parent note, not on the bottom.",
+ "hide_highlight_widget": "Hide Hightlight List widget",
+ "run_on_note_creation": "executes when note is created on backend. Use this relation if you want to run the script for all notes created under a specific subtree. In that case, create it on the subtree root note and make it inheritable. A new note created within the subtree (any depth) will trigger the script.",
+ "run_on_child_note_creation": "executes when new note is created under the note where this relation is defined",
+ "run_on_note_title_change": "executes when note title is changed (includes note creation as well)",
+ "run_on_note_content_change": "executes when note content is changed (includes note creation as well).",
+ "run_on_note_change": "executes when note is changed (includes note creation as well). Does not include content changes",
+ "run_on_note_deletion": "executes when note is being deleted",
+ "run_on_branch_creation": "executes when a branch is created. Branch is a link between parent note and child note and is created e.g. when cloning or moving note.",
+ "run_on_branch_change": "executes when a branch is updated.",
+ "run_on_branch_deletion": "executes when a branch is deleted. Branch is a link between parent note and child note and is deleted e.g. when moving note (old branch/link is deleted).",
+ "run_on_attribute_creation": "executes when new attribute is created for the note which defines this relation",
+ "run_on_attribute_change": " executes when the attribute is changed of a note which defines this relation. This is triggered also when the attribute is deleted",
+ "relation_template": "note's attributes will be inherited even without a parent-child relationship, note's content and subtree will be added to instance notes if empty. See documentation for details.",
+ "inherit": "note's attributes will be inherited even without a parent-child relationship. See template relation for a similar concept. See attribute inheritance in the documentation.",
+ "render_note": "notes of type \"render HTML note\" will be rendered using a code note (HTML or script) and it is necessary to point using this relation to which note should be rendered",
+ "widget_relation": "target of this relation will be executed and rendered as a widget in the sidebar",
+ "share_css": "CSS note which will be injected into the share page. CSS note must be in the shared sub-tree as well. Consider using 'share_hidden_from_tree' and 'share_omit_default_css' as well.",
+ "share_js": "JavaScript note which will be injected into the share page. JS note must be in the shared sub-tree as well. Consider using 'share_hidden_from_tree'.",
+ "share_template": "Embedded JavaScript note that will be used as the template for displaying the shared note. Falls back to the default template. Consider using 'share_hidden_from_tree'.",
+ "share_favicon": "Favicon note to be set in the shared page. Typically you want to set it to share root and make it inheritable. Favicon note must be in the shared sub-tree as well. Consider using 'share_hidden_from_tree'.",
+ "is_owned_by_note": "is owned by note",
+ "other_notes_with_name": "Other notes with {{attributeType}} name \"{{attributeName}}\"",
+ "and_more": "... and {{count}} more."
}
}