1
0
mirror of https://github.com/node-red/node-red.git synced 2023-10-10 13:36:53 +02:00

Merge pull request #3952 from cliyr/translation-zhcn

Translation zhcn (!!请懂中文的帮忙review)
This commit is contained in:
Nick O'Leary 2023-03-03 15:22:46 +00:00 committed by GitHub
commit ee1e12eca3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 2300 additions and 2005 deletions

View File

@ -1,7 +1,7 @@
{ {
"common": { "common": {
"label": { "label": {
"name": "名", "name": "",
"ok": "确认", "ok": "确认",
"done": "完成", "done": "完成",
"cancel": "取消", "cancel": "取消",
@ -15,7 +15,7 @@
"next": "下一个", "next": "下一个",
"clone": "克隆项目", "clone": "克隆项目",
"cont": "继续", "cont": "继续",
"style": "风格", "style": "样式",
"line": "大纲", "line": "大纲",
"fill": "填充", "fill": "填充",
"label": "标签", "label": "标签",
@ -38,11 +38,14 @@
} }
}, },
"event": { "event": {
"loadPlugins": "加载插件",
"loadPalette": "加载控制板", "loadPalette": "加载控制板",
"loadNodeCatalogs": "加载节点目录", "loadNodeCatalogs": "加载节点目录",
"loadNodes": "加载 __count__ 个节点", "loadNodes": "加载 __count__ 个节点",
"loadFlows": "加载流程", "loadFlows": "加载流程",
"importFlows": "往工作区中加载流程" "importFlows": "往工作区中加载流程",
"importError": "<p>加载流程错误</p><p>__message__</p>",
"loadingProject": "加载项目"
}, },
"workspace": { "workspace": {
"defaultName": "流程 __number__", "defaultName": "流程 __number__",
@ -51,7 +54,16 @@
"delete": "你确定要删除 __label__ ?", "delete": "你确定要删除 __label__ ?",
"dropFlowHere": "把流程放到这里", "dropFlowHere": "把流程放到这里",
"addFlow": "添加流程", "addFlow": "添加流程",
"addFlowToRight": "在右侧新增流程",
"hideFlow": "隐藏流程",
"hideOtherFlows": "隐藏其它流程",
"showAllFlows": "显示所有流程",
"hideAllFlows": "隐藏所有流程",
"hiddenFlows": "列出 __count__ 个隐藏流程",
"hiddenFlows_plural": "列出 __count__ 个隐藏流程",
"showLastHiddenFlow": "显示最后一个隐藏流程",
"listFlows": "流程一览", "listFlows": "流程一览",
"listSubflows": "列出子流程",
"status": "状态", "status": "状态",
"enabled": "有效", "enabled": "有效",
"disabled": "无效", "disabled": "无效",
@ -63,6 +75,8 @@
"view": { "view": {
"view": "显示", "view": "显示",
"grid": "网格", "grid": "网格",
"storeZoom": "加载时还原缩放尺寸",
"storePosition": "加载时还原滚动位置",
"showGrid": "显示网格", "showGrid": "显示网格",
"snapGrid": "对齐网格", "snapGrid": "对齐网格",
"gridSize": "网格尺寸", "gridSize": "网格尺寸",
@ -80,6 +94,7 @@
"palette": { "palette": {
"show": "显示控制板" "show": "显示控制板"
}, },
"edit": "编辑",
"settings": "设置", "settings": "设置",
"userSettings": "用户设置", "userSettings": "用户设置",
"nodes": "节点", "nodes": "节点",
@ -102,24 +117,43 @@
"editPalette": "节点管理", "editPalette": "节点管理",
"other": "其他", "other": "其他",
"showTips": "显示小提示", "showTips": "显示小提示",
"help": "Node-RED网页", "showWelcomeTours": "显示新版本向导",
"help": "Node-RED 文档主页",
"projects": "项目", "projects": "项目",
"projects-new": "新建", "projects-new": "新建",
"projects-open": "打开", "projects-open": "打开",
"projects-settings": "项目设定", "projects-settings": "项目设定",
"showNodeLabelDefault": "显示新添加的节点的标签", "showNodeLabelDefault": "显示新添加的节点的标签",
"codeEditor": "代码编辑器",
"groups": "组", "groups": "组",
"groupSelection": "选择组", "groupSelection": "选择组",
"ungroupSelection": "取消选择组", "ungroupSelection": "取消选择组",
"groupMergeSelection": "合并选择", "groupMergeSelection": "合并选择",
"groupRemoveSelection": "从组中移除" "groupRemoveSelection": "从组中移除",
"arrange": "布局",
"alignLeft": "左对齐",
"alignCenter": "居中对齐",
"alignRight": "右对齐",
"alignTop": "顶部对齐",
"alignMiddle": "垂直居中对齐",
"alignBottom": "底部对齐",
"distributeHorizontally": "横向分布",
"distributeVertically": "垂直分布",
"moveToBack": "置于底层",
"moveToFront": "置于顶层",
"moveBackwards": "向后移动",
"moveForwards": "向前移动"
} }
}, },
"actions": { "actions": {
"toggle-navigator": "切换导航器", "toggle-navigator": "切换导航器",
"zoom-out": "缩小", "zoom-out": "缩小",
"zoom-reset": "重设缩放", "zoom-reset": "重设缩放",
"zoom-in": "放大" "zoom-in": "放大",
"search-flows": "搜索流程",
"search-prev": "上一个",
"search-next": "下一个",
"search-counter": "\"__term__\" __result__ of __count__"
}, },
"user": { "user": {
"loggedInAs": "作为 __name__ 登录", "loggedInAs": "作为 __name__ 登录",
@ -135,12 +169,17 @@
} }
}, },
"notification": { "notification": {
"state": {
"flowsStopped": "流程已停止",
"flowsStarted": "流程已启动"
},
"warning": "<strong>警告</strong>: __message__", "warning": "<strong>警告</strong>: __message__",
"warnings": { "warnings": {
"undeployedChanges": "节点中存在未部署的更改", "undeployedChanges": "节点中存在未部署的更改",
"nodeActionDisabled": "节点操作已禁用", "nodeActionDisabled": "节点操作已禁用",
"nodeActionDisabledSubflow": "节点动作在子流程中被禁用", "nodeActionDisabledSubflow": "节点动作在子流程中被禁用",
"missing-types": "流程由于缺少节点类型而停止。请检查日志的详细信息", "missing-types": "流程由于缺少节点类型而停止。请检查日志的详细信息",
"missing-modules": "<p>流程因缺少模块而停止。</p>",
"safe-mode": "<p>流程以安全模式停止。</p><p>您可以修改流程并部署更改以重新启动。</p>", "safe-mode": "<p>流程以安全模式停止。</p><p>您可以修改流程并部署更改以重新启动。</p>",
"restartRequired": "Node-RED必须重新启动以启用升级的模块", "restartRequired": "Node-RED必须重新启动以启用升级的模块",
"credentials_load_failed": "<p>由于无法解密凭据,因此流程停止。</p><p>流程凭据文件已加密,但是项目的加密密钥丢失或无效。</p>", "credentials_load_failed": "<p>由于无法解密凭据,因此流程停止。</p><p>流程凭据文件已加密,但是项目的加密密钥丢失或无效。</p>",
@ -201,13 +240,15 @@
"subflow_plural": "__count__ 子流程", "subflow_plural": "__count__ 子流程",
"replacedNodes": "__count__ 个节点被置换", "replacedNodes": "__count__ 个节点被置换",
"replacedNodes_plural": "__count__ 个节点被置换", "replacedNodes_plural": "__count__ 个节点被置换",
"pasteNodes": "在这里粘贴节点", "pasteNodes": "在下方粘贴节点 ",
"selectFile": "选择要导入的文件", "selectFile": "导入节点文件",
"importNodes": "导入节点", "importNodes": "导入节点",
"exportNodes": "导出节点至剪贴板", "exportNodes": "导出节点至剪贴板",
"download": "下载", "download": "下载",
"importUnrecognised": "导入了无法识别的类型:", "importUnrecognised": "导入了无法识别的类型:",
"importUnrecognised_plural": "导入了无法识别的类型:", "importUnrecognised_plural": "导入了无法识别的类型:",
"importDuplicate": "导入了重复节点:",
"importDuplicate_plural": "导入了重复节点:",
"nodesExported": "节点导出到了剪贴板", "nodesExported": "节点导出到了剪贴板",
"nodesImported": "导入:", "nodesImported": "导入:",
"nodeCopied": "已复制 __count__ 个节点", "nodeCopied": "已复制 __count__ 个节点",
@ -221,7 +262,7 @@
"recoveredNodesNotification": "<p>导入的节点缺少有效的流ID</p><p>已将它们添加到名为 '__flowName__'的新流中。</p>", "recoveredNodesNotification": "<p>导入的节点缺少有效的流ID</p><p>已将它们添加到名为 '__flowName__'的新流中。</p>",
"export": { "export": {
"selected": "已选择的节点", "selected": "已选择的节点",
"current": "现在的节点", "current": "当前节点",
"all": "所有流程", "all": "所有流程",
"compact": "紧凑", "compact": "紧凑",
"formatted": "已格式化", "formatted": "已格式化",
@ -253,21 +294,25 @@
}, },
"deploy": { "deploy": {
"deploy": "部署", "deploy": "部署",
"full": "全面", "full": "全部",
"fullDesc": "在工作区中部署所有内容", "fullDesc": "在工作区中部署所有内容",
"modifiedFlows": "已修改的流程", "modifiedFlows": "已修改的流程",
"modifiedFlowsDesc": "只部署包含已更改节点的流", "modifiedFlowsDesc": "只部署包含已更改节点的流",
"modifiedNodes": "已更改的节点", "modifiedNodes": "已更改的节点",
"modifiedNodesDesc": "只部署已经更改的节点", "modifiedNodesDesc": "只部署已经更改的节点",
"startFlows": "启动",
"startFlowsDesc": "启动流程",
"stopFlows": "停止",
"stopFlowsDesc": "停止流程",
"restartFlows": "重启流程", "restartFlows": "重启流程",
"restartFlowsDesc": "重新启动当前部署的流程", "restartFlowsDesc": "重新启动当前部署的流程",
"successfulDeploy": "部署成功", "successfulDeploy": "部署成功",
"successfulRestart": "成功重启流程", "successfulRestart": "成功重启流程",
"deployFailed": "部署失败: __message__", "deployFailed": "部署失败: __message__",
"unusedConfigNodes": "您有一些未使用的配置节点", "unusedConfigNodes": "您有一些未使用的配置节点",
"unusedConfigNodesButton":"搜索未使用的配置节点", "unusedConfigNodesButton": "搜索未使用的配置节点",
"unknownNodesButton":"搜索未知节点", "unknownNodesButton": "查找未知节点",
"invalidNodesButton":"搜索无效节点", "invalidNodesButton": "查找无效节点",
"errors": { "errors": {
"noResponse": "服务器没有响应" "noResponse": "服务器没有响应"
}, },
@ -337,8 +382,21 @@
"output": "输出:", "output": "输出:",
"status": "状态节点", "status": "状态节点",
"deleteSubflow": "删除子流程", "deleteSubflow": "删除子流程",
"confirmDelete": "您确定要删除此子流程?",
"info": "详细描述", "info": "详细描述",
"category": "类别", "category": "类别",
"module": "模块",
"license": "许可",
"licenseNone": "无",
"licenseOther": "其它",
"type": "节点类型",
"version": "版本",
"versionPlaceholder": "x.y.z",
"keys": "关键字",
"keysPlaceholder": "使用英文逗号分隔关键字",
"author": "作者",
"authorPlaceholder": "名字 <email@example.com>",
"desc": "描述",
"env": { "env": {
"restore": "恢复为默认子流", "restore": "恢复为默认子流",
"remove": "删除环境变量" "remove": "删除环境变量"
@ -385,6 +443,7 @@
"icon": "图标", "icon": "图标",
"inputType": "输入类型", "inputType": "输入类型",
"selectType": "选择类型...", "selectType": "选择类型...",
"loadCredentials": "加载节点凭证",
"inputs": { "inputs": {
"input": "输入", "input": "输入",
"select": "选择", "select": "选择",
@ -419,7 +478,8 @@
}, },
"errors": { "errors": {
"scopeChange": "更改范围将使其他流中的节点无法使用", "scopeChange": "更改范围将使其他流中的节点无法使用",
"invalidProperties": "无效的属性:" "invalidProperties": "无效的属性:",
"credentialLoadFailed": "无法加载节点凭据"
} }
}, },
"keyboard": { "keyboard": {
@ -432,6 +492,7 @@
"global": "全局", "global": "全局",
"workspace": "工作区", "workspace": "工作区",
"selectAll": "选择所有节点", "selectAll": "选择所有节点",
"selectNone": "取消所有选择",
"selectAllConnected": "选择所有连接的节点", "selectAllConnected": "选择所有连接的节点",
"addRemoveNode": "从选择中添加/删除节点", "addRemoveNode": "从选择中添加/删除节点",
"editSelected": "编辑选定节点", "editSelected": "编辑选定节点",
@ -445,10 +506,14 @@
"copyNode": "复制所选节点", "copyNode": "复制所选节点",
"cutNode": "剪切所选节点", "cutNode": "剪切所选节点",
"pasteNode": "粘贴节点", "pasteNode": "粘贴节点",
"undoChange": "撤消上次执行的更改", "copyGroupStyle": "复制组样式",
"pasteGroupStyle": "粘贴组样式",
"undoChange": "撤消",
"redoChange": "重做",
"searchBox": "打开搜索框", "searchBox": "打开搜索框",
"managePalette": "管理面板", "managePalette": "管理面板",
"actionList": "动作列表" "actionList": "动作列表",
"splitWireWithLinks": "使用Link节点拆分已选项"
}, },
"library": { "library": {
"library": "库", "library": "库",
@ -464,24 +529,23 @@
"saveFailed": "保存失败: __message__", "saveFailed": "保存失败: __message__",
"newFolder": "新文件夹", "newFolder": "新文件夹",
"types": { "types": {
"local": "本地的", "local": "本地存储",
"examples": "例子" "examples": "示例"
}, }
"exportToLibrary": "将节点导出到库"
}, },
"palette": { "palette": {
"noInfo": "无可用信息", "noInfo": "无可用信息",
"filter": "过滤节点", "filter": "过滤已安装模块",
"search": "搜索模块", "search": "搜索模块",
"addCategory": "添加新的...", "addCategory": "添加新的...",
"label": { "label": {
"subflows": "子流程", "subflows": "子流程",
"network": "网络", "network": "网络",
"common": "通", "common": "",
"input": "输入", "input": "输入",
"output": "输出", "output": "输出",
"function": "功能", "function": "功能",
"sequence": "序列", "sequence": "序列",
"parser": "解析", "parser": "解析",
"social": "社交", "social": "社交",
"storage": "存储", "storage": "存储",
@ -501,7 +565,8 @@
"nodeEnabled_plural": "启用多个节点:", "nodeEnabled_plural": "启用多个节点:",
"nodeDisabled": "禁用节点:", "nodeDisabled": "禁用节点:",
"nodeDisabled_plural": "禁用多个节点:", "nodeDisabled_plural": "禁用多个节点:",
"nodeUpgraded": "节点模块__module__升级到__version__版本" "nodeUpgraded": "节点模块__module__升级到__version__版本",
"unknownNodeRegistered": "加载节点错误: <ul><li>__type__<br>__error__</li></ul>"
}, },
"editor": { "editor": {
"title": "面板管理", "title": "面板管理",
@ -549,6 +614,7 @@
"sortRecent": "日期顺序", "sortRecent": "日期顺序",
"more": "增加 __count__ 个", "more": "增加 __count__ 个",
"upload": "上传模块tgz文件", "upload": "上传模块tgz文件",
"refresh": "更新模块列表",
"errors": { "errors": {
"catalogLoadFailed": "无法加载节点目录。<br>查看浏览器控制台了解更多信息", "catalogLoadFailed": "无法加载节点目录。<br>查看浏览器控制台了解更多信息",
"installFailed": "无法安装: __module__<br>__message__<br>查看日志了解更多信息", "installFailed": "无法安装: __module__<br>__message__<br>查看日志了解更多信息",
@ -627,7 +693,8 @@
"showHelp": "显示帮助", "showHelp": "显示帮助",
"showInOutline": "在大纲中显示", "showInOutline": "在大纲中显示",
"showTopics": "显示主题", "showTopics": "显示主题",
"noHelp": "未选择帮助主题" "noHelp": "未选择帮助主题",
"changeLog": "更新日志"
}, },
"config": { "config": {
"name": "配置节点", "name": "配置节点",
@ -651,14 +718,14 @@
"node": "节点", "node": "节点",
"flow": "流程", "flow": "流程",
"global": "全局", "global": "全局",
"deleteConfirm": "确定要删除这个项目吗?", "deleteConfirm": "确定要删除这个项目吗?",
"autoRefresh": "刷新选择更改", "autoRefresh": "刷新选择更改",
"refrsh": "刷新", "refrsh": "刷新",
"delete": "删除" "delete": "删除"
}, },
"palette": { "palette": {
"name": "节点管理", "name": "模块管理",
"label": "节点" "label": "模块"
}, },
"project": { "project": {
"label": "项目", "label": "项目",
@ -694,7 +761,7 @@
"changeTheEncryptionKey": "更改加密密钥", "changeTheEncryptionKey": "更改加密密钥",
"currentKey": "当前密钥", "currentKey": "当前密钥",
"newKey": "新密钥", "newKey": "新密钥",
"credentialsAlert": "将删除所有现有证书", "credentialsAlert": "将删除所有现有证书",
"versionControl": "版本控制", "versionControl": "版本控制",
"branches": "分支", "branches": "分支",
"noBranches": "没有分支", "noBranches": "没有分支",
@ -707,7 +774,7 @@
"remoteName": "远程仓库名", "remoteName": "远程仓库名",
"nameRule": "只能包含A-Z 0-9 _ -", "nameRule": "只能包含A-Z 0-9 _ -",
"url": "URL", "url": "URL",
"urlRule": "https://, ssh:// or file://", "urlRule": "https://, ssh:// file://",
"urlRule2": "网址中不能包含用户名/密码", "urlRule2": "网址中不能包含用户名/密码",
"noRemotes": "没有远程仓库", "noRemotes": "没有远程仓库",
"deleteRemoteConfrim": "您确定要删除远程仓库'__name__'吗?", "deleteRemoteConfrim": "您确定要删除远程仓库'__name__'吗?",
@ -821,7 +888,7 @@
}, },
"typedInput": { "typedInput": {
"type": { "type": {
"str": "文字列", "str": "文本",
"num": "数字", "num": "数字",
"re": "正则表达式", "re": "正则表达式",
"bool": "布尔值", "bool": "布尔值",
@ -834,28 +901,34 @@
} }
}, },
"editableList": { "editableList": {
"add": "添加" "add": "添加",
"addTitle": "添加项"
}, },
"search": { "search": {
"empty": "找不到匹配", "history": "搜索历史",
"addNode": "添加一个节点...", "clear": "清除所有",
"empty": "找不到匹配项",
"addNode": "添加节点...",
"options": { "options": {
"configNodes": "配置节点", "configNodes": "配置节点",
"unusedConfigNodes": "未使用的配置节点", "unusedConfigNodes": "未使用的配置节点",
"invalidNodes": "无效的节点", "invalidNodes": "无效的节点",
"uknownNodes": "未知的节点", "uknownNodes": "未知的节点",
"unusedSubflows": "未使用的子流程" "unusedSubflows": "未使用的子流程",
"hiddenFlows": "隐藏的流程",
"modifiedNodes": "已修改的节点或流程",
"thisFlow": "当前流程"
} }
}, },
"expressionEditor": { "expressionEditor": {
"functions": "功能", "functions": "函数",
"functionReference": "功能reference", "functionReference": "函数引用",
"insert": "插入", "insert": "插入",
"title": "JSONata表达式编辑器", "title": "JSONata 表达式编辑器",
"test": "测试", "test": "测试",
"data": "示例消息", "data": "示例消息",
"result": "结果", "result": "结果",
"format": "格式表达方法", "format": "格式表达",
"compatMode": "兼容模式启用", "compatMode": "兼容模式启用",
"compatModeDesc": "<h3>JSONata的兼容模式</h3><p> 目前的表达式仍然参考<code>msg</code>,所以将以兼容性模式进行评估。请更新表达式,使其不使用<code>msg</code>,因为此模式将在将来删除。</p><p> 当JSONata支持首次添加到Node-RED时它需要表达式引用<code>msg</code>对象。例如<code>msg.payload</code>将用于访问有效负载。</p><p> 这样便不再需要表达式直接针对消息进行评估。要访问有效负载,表达式应该只是<code>payload</code>.</p>", "compatModeDesc": "<h3>JSONata的兼容模式</h3><p> 目前的表达式仍然参考<code>msg</code>,所以将以兼容性模式进行评估。请更新表达式,使其不使用<code>msg</code>,因为此模式将在将来删除。</p><p> 当JSONata支持首次添加到Node-RED时它需要表达式引用<code>msg</code>对象。例如<code>msg.payload</code>将用于访问有效负载。</p><p> 这样便不再需要表达式直接针对消息进行评估。要访问有效负载,表达式应该只是<code>payload</code>.</p>",
"noMatch": "无匹配结果", "noMatch": "无匹配结果",
@ -863,33 +936,41 @@
"invalid-expr": "无效的JSONata表达式:\n __message__", "invalid-expr": "无效的JSONata表达式:\n __message__",
"invalid-msg": "无效的示例JSON消息:\n __message__", "invalid-msg": "无效的示例JSON消息:\n __message__",
"context-unsupported": "无法测试上下文函数\n $flowContext 或 $globalContext", "context-unsupported": "无法测试上下文函数\n $flowContext 或 $globalContext",
"eval": "评估表达式错误:\n __message__" "env-unsupported": "无法测试 $env 函数",
"moment-unsupported": "无法测试 $moment 函数",
"clone-unsupported": "无法测试 $clone 函数",
"eval": "计算表达式错误:\n __message__"
} }
}, },
"monaco": {
"setTheme": "设置主题"
},
"jsEditor": { "jsEditor": {
"title": "JavaScript编辑器" "title": "JavaScript 编辑器"
}, },
"textEditor": { "textEditor": {
"title": "文本编辑器" "title": "文本编辑器"
}, },
"jsonEditor": { "jsonEditor": {
"title": "JSON编辑器", "title": "JSON 编辑器",
"format": "格式化JSON", "format": "格式化JSON",
"rawMode": "编辑 JSON", "rawMode": "编辑 JSON",
"uiMode": "Visual编辑器", "uiMode": "可视化编辑器",
"rawMode-readonly": "原始JSON",
"uiMode-readonly": "可视化",
"insertAbove": "在上方插入", "insertAbove": "在上方插入",
"insertBelow": "在下方插入", "insertBelow": "在下方插入",
"addItem": "添加项目", "addItem": "添加项目",
"copyPath": "复制路径到项目", "copyPath": "复制路径到项目",
"expandItems": "展开项目", "expandItems": "展开项目",
"collapseItems": "收合项目", "collapseItems": "折叠项目",
"duplicate": "重复", "duplicate": "重复",
"error": { "error": {
"invalidJSON": "无效的JSON: " "invalidJSON": "无效的JSON: "
} }
}, },
"markdownEditor": { "markdownEditor": {
"title": "Markdown编辑器", "title": "Markdown 编辑器",
"expand": "展开", "expand": "展开",
"format": "格式化为markdown", "format": "格式化为markdown",
"heading1": "标题 1", "heading1": "标题 1",
@ -906,10 +987,10 @@
"toggle-preview": "切换预览" "toggle-preview": "切换预览"
}, },
"bufferEditor": { "bufferEditor": {
"title": "缓冲区编辑器", "title": "Buffer 编辑器",
"modeString": "作为UTF-8字符串处理", "modeString": "作为UTF-8字符串处理",
"modeArray": "作为JSON数组处理", "modeArray": "作为JSON数组处理",
"modeDesc": "<h3>缓冲区编辑器</h3><p>缓冲区类型被存储为字节值的JSON数组。编辑器将尝试将输入的数值解析为JSON数组。如果它不是有效的JSON它将被视为UTF-8字符串并被转换为单个字符代码点的数组。</p><p>例如,<code>Hello World</code>的值会被转换为JSON数组<pre>[72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100]</pre></p>" "modeDesc": "<h3>Buffer 编辑器</h3><p>Buffer类型被存储为字节值的JSON数组。编辑器将尝试将输入的数值解析为JSON数组。如果它不是有效的JSON它将被视为UTF-8字符串并被转换为单个字符代码点的数组。</p><p>例如,<code>Hello World</code>的值会被转换为JSON数组<pre>[72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100]</pre></p>"
}, },
"projects": { "projects": {
"config-git": "配置Git客户端", "config-git": "配置Git客户端",
@ -921,7 +1002,7 @@
"create": "建立专案", "create": "建立专案",
"clone": "克隆仓库", "clone": "克隆仓库",
"openExistingProject": "打开现有项目", "openExistingProject": "打开现有项目",
"not-right-now": "不是现在" "not-right-now": "稍后"
}, },
"git-config": { "git-config": {
"setup": "设置您的版本控制客户端", "setup": "设置您的版本控制客户端",
@ -1023,7 +1104,7 @@
"desc0": "用来保护您的凭证的短语", "desc0": "用来保护您的凭证的短语",
"desc1": "凭证文件不会被加密,其内容很容易阅读", "desc1": "凭证文件不会被加密,其内容很容易阅读",
"git-url": "Git存储库URL", "git-url": "Git存储库URL",
"protocols": "https://, ssh:// or file://", "protocols": "https://, ssh:// file://",
"auth-failed": "验证失败", "auth-failed": "验证失败",
"username": "用户名", "username": "用户名",
"password": "密码", "password": "密码",
@ -1038,7 +1119,8 @@
"not-git": "不是git仓库", "not-git": "不是git仓库",
"no-resource": "找不到存储库", "no-resource": "找不到存储库",
"cant-get-ssh-key-path": "错误无法获取所选的SSH密钥路径。", "cant-get-ssh-key-path": "错误无法获取所选的SSH密钥路径。",
"unexpected_error": "意外的错误" "unexpected_error": "意外的错误",
"clearContext": "更改项目时清除上下文"
}, },
"delete": { "delete": {
"confirm": "您确定要删除此项目吗?" "confirm": "您确定要删除此项目吗?"
@ -1065,6 +1147,17 @@
"create": "创建分支", "create": "创建分支",
"current": "当前的" "current": "当前的"
}, },
"languages": {
"de": "德语",
"en-US": "英文",
"fr": "法语",
"ja": "日语",
"ko": "韩文",
"pt-BR":"葡萄牙语",
"ru":"俄語",
"zh-CN": "简体中文",
"zh-TW": "繁体中文"
},
"create-default-file-set": { "create-default-file-set": {
"no-active": "没有活动项目就无法创建默认文件集", "no-active": "没有活动项目就无法创建默认文件集",
"no-empty": "无法在非空项目上创建默认文件集", "no-empty": "无法在非空项目上创建默认文件集",
@ -1079,20 +1172,50 @@
"editor-tab": { "editor-tab": {
"properties": "属性", "properties": "属性",
"envProperties": "环境变量", "envProperties": "环境变量",
"module": "模块属性",
"description": "描述", "description": "描述",
"appearance": "外观", "appearance": "外观",
"preview": "UI预览", "preview": "UI预览",
"defaultValue": "默认值" "defaultValue": "默认值"
}, },
"tourGuide": {
"takeATour": "查看更新内容",
"start": "开始",
"next": "下一个",
"welcomeTours": "欢迎使用 Node-RED"
},
"diagnostics": {
"title": "系统信息"
},
"languages": { "languages": {
"de": "德语", "de": "德语-Deutsch",
"en-US": "英文", "en-US": "英文-English",
"fr": "法语", "ja": "日语-日本",
"ja": "日语", "ko": "韩文-한국인",
"ko": "韩文", "ru": "俄语-Русский",
"pt-BR":"葡萄牙语",
"ru":"俄語",
"zh-CN": "简体中文", "zh-CN": "简体中文",
"zh-TW": "繁体中文" "zh-TW": "繁體中文"
},
"validator": {
"errors": {
"invalid-json": "无效的 JSON 数据: __error__",
"invalid-json-prop": "__prop__: 无效的 JSON 数据: __error__",
"invalid-prop": "无效的属性表达式",
"invalid-prop-prop": "__prop__: 无效的属性表达式",
"invalid-num": "无效的数字",
"invalid-num-prop": "__prop__: 无效的数字",
"invalid-regexp": "输入格式无效",
"invalid-regex-prop": "__prop__: 输入格式无效",
"missing-required-prop": "__prop__: 缺少属性值",
"invalid-config": "__prop__: 无效的配置节点",
"missing-config": "__prop__: 缺少配置节点",
"validation-error": "__prop__: 验证错误: __node__, __id__: __error__"
}
},
"contextMenu": {
"insert": "插入",
"node": "节点",
"junction": "连接点",
"linkNodes": "链接节点"
} }
} }

View File

@ -27,11 +27,12 @@
} }
}, },
"errors": { "errors": {
"nooverride": "警告: 信息的属性已经不可以改写节点的属性. 详情参考 bit.ly/nr-override-msg-props" "nooverride": "警告: 信息的属性已经不可以改写节点的属性详情参考 bit.ly/nr-override-msg-props"
} }
}, },
"inject": { "inject": {
"inject": "注入", "inject": "注入",
"injectNow": "立即注入",
"repeat": "重复 = __repeat__", "repeat": "重复 = __repeat__",
"crontab": "crontab = __crontab__", "crontab": "crontab = __crontab__",
"stopped": "停止", "stopped": "停止",
@ -84,9 +85,12 @@
"errors": { "errors": {
"failed": "注入失败, 请查看日志", "failed": "注入失败, 请查看日志",
"toolong": "周期过长", "toolong": "周期过长",
"invalid-expr": "无效的JSONata表达式 __error__" "invalid-expr": "无效的JSONata表达式 __error__",
}, "invalid-jsonata": "__prop__: 无效的属性表达式: __error__",
"tip": "<b>注意:</b> \"指定时间段周期性执行\" 和 \"指定时间\" 会使用cron系统.<br/> 详情查看信息页." "invalid-prop": "__prop__: 无效的属性表达式: __error__",
"invalid-json": "__prop__: 无效的 JSON 数据: __error__",
"invalid-repeat": "重复值无效"
}
}, },
"catch": { "catch": {
"catch": "捕获:所有节点", "catch": "捕获:所有节点",
@ -125,6 +129,7 @@
"msgprop": "信息属性", "msgprop": "信息属性",
"msgobj": "与调试输出相同", "msgobj": "与调试输出相同",
"autostatus": "自动的", "autostatus": "自动的",
"messageCount": "消息数量",
"to": "目标", "to": "目标",
"debtab": "调试窗口", "debtab": "调试窗口",
"tabcon": "调试窗口及控制台", "tabcon": "调试窗口及控制台",
@ -132,6 +137,7 @@
"toConsole": "控制台", "toConsole": "控制台",
"toStatus": "节点状态 (32位字符)", "toStatus": "节点状态 (32位字符)",
"severity": "级别", "severity": "级别",
"node": "节点",
"notification": { "notification": {
"activated": "成功激活: __label__", "activated": "成功激活: __label__",
"deactivated": "成功取消: __label__" "deactivated": "成功取消: __label__"
@ -144,11 +150,16 @@
"filterCurrent": "当前流程", "filterCurrent": "当前流程",
"debugNodes": "调试节点", "debugNodes": "调试节点",
"clearLog": "清空日志", "clearLog": "清空日志",
"clearFilteredLog": "清空已过滤的日志",
"filterLog": "过滤日志", "filterLog": "过滤日志",
"openWindow": "在新窗口打开", "openWindow": "在新窗口打开",
"copyPath": "复制路径", "copyPath": "复制路径",
"copyPayload": "复制值", "copyPayload": "复制值",
"pinPath": "固定展开" "pinPath": "固定展开",
"selectAll": "选择所有",
"selectNone": "取消选择所有节点",
"all": "所有",
"filtered": "已过滤"
}, },
"messageMenu": { "messageMenu": {
"collapseAll": "折叠所有路径", "collapseAll": "折叠所有路径",
@ -158,8 +169,21 @@
} }
}, },
"link": { "link": {
"linkIn": "输入", "linkIn": "链接输入",
"linkOut": "输出" "linkOut": "链接输出",
"linkCall": "链接调用",
"linkOutReturn": "链接返回",
"outMode": "模式",
"sendToAll": "发送到所有连接的链接节点",
"returnToCaller": "返回调用链接节点",
"timeout": "超时",
"linkCallType": "链接类型",
"staticLinkCall": "固定目标",
"dynamicLinkCall": "动态目标 (msg.target)",
"dynamicLinkLabel": "动态",
"error": {
"missingReturn": "缺少返回节点信息"
}
}, },
"tls": { "tls": {
"tls": "TLS设置", "tls": "TLS设置",
@ -171,17 +195,21 @@
"passphrase": "密码", "passphrase": "密码",
"ca": "CA证书", "ca": "CA证书",
"verify-server-cert": "验证服务器证书", "verify-server-cert": "验证服务器证书",
"servername": "服务器名" "servername": "服务器名",
"alpnprotocol": "ALPN协议"
}, },
"placeholder": { "placeholder": {
"cert": "证书路径 (PEM 格式)", "cert": "证书路径 (PEM 格式)",
"key": "私钥路径 (PEM 格式)", "key": "私钥路径 (PEM 格式)",
"ca": "CA证书路径 (PEM 格式)", "ca": "CA证书路径 (PEM 格式)",
"passphrase": "私钥密码 (可选)", "passphrase": "私钥密码 (可选)",
"servername": "用于SNI" "servername": "用于SNI",
"alpnprotocol": "用于ALPN"
}, },
"error": { "error": {
"missing-file": "未提供证书/密钥文件" "missing-file": "未提供证书/密钥文件",
"invalid-cert": "未指定证书",
"invalid-key": "未指定私钥"
} }
}, },
"exec": { "exec": {
@ -191,12 +219,13 @@
"command": "命令", "command": "命令",
"append": "追加", "append": "追加",
"timeout": "超时", "timeout": "超时",
"timeoutplace": "可选", "timeoutplace": "可选",
"return": "输出", "return": "输出",
"seconds": "秒", "seconds": "秒",
"stdout": "标准输出", "stdout": "标准输出",
"stderr": "标准错误输出", "stderr": "标准错误输出",
"retcode": "返回码" "retcode": "返回码",
"winHide": "隐藏控制台"
}, },
"placeholder": { "placeholder": {
"extraparams": "额外的输入参数" "extraparams": "额外的输入参数"
@ -210,18 +239,34 @@
"function": { "function": {
"function": "函数", "function": "函数",
"label": { "label": {
"function": "函数", "setup": "设置",
"initialize": "设置", "function": "运行函数",
"finalize": "关闭", "initialize": "初始化函数",
"outputs": "输出" "finalize": "终止函数",
"outputs": "输出",
"modules": "模块"
}, },
"text": { "text": {
"initialize": "// 部署节点后,此处添加的代码将运行一次。 \n", "initialize": "// 部署节点后,此处添加的代码将运行一次。 \n",
"finalize": "// 节点正在停止或重新部署时,将运行此处添加的代码。 \n" "finalize": "// 此处添加的代码,将在停止或重新部署节点时运行。 \n"
},
"require": {
"var": "变量",
"module": "模块",
"moduleName": "模块名称",
"importAs": "导入为"
}, },
"error": { "error": {
"externalModuleNotAllowed": "不允许加载外部模块",
"moduleNotAllowed": "不允许 __module__ 模块",
"externalModuleLoadError": "加载外部模块失败",
"moduleLoadError": "__module__ 加载失败: __error__",
"moduleNameError": "无效的模块变量名: __name__",
"moduleNameReserved": "保留的变量名: __name__",
"inputListener": "无法在函数中监听对'注入'事件", "inputListener": "无法在函数中监听对'注入'事件",
"non-message-returned": "函数节点尝试返回类型为 __type__ 的信息" "non-message-returned": "函数节点尝试返回类型为 __type__ 的信息",
"invalid-js": "JavaScript 代码错误",
"missing-module": "模块 __module__ 缺少"
} }
}, },
"template": { "template": {
@ -238,7 +283,7 @@
"yaml": "YAML", "yaml": "YAML",
"none": "无" "none": "无"
}, },
"templatevalue": "这是有效载荷: {{payload}} !" "templatevalue": "这是一个默认的payload调用示例: {{payload}} !"
}, },
"delay": { "delay": {
"action": "行为设置", "action": "行为设置",
@ -264,14 +309,20 @@
"between": "介于", "between": "介于",
"and": "至", "and": "至",
"rate": "速度", "rate": "速度",
"msgper": "信息 每", "msgper": "条信息 每",
"queuemsg": "将中间消息排队",
"dropmsg": "不传输中间信息", "dropmsg": "不传输中间信息",
"sendmsg": "在第2个输出端发送中间消息",
"allowrate": "允许msg.rate (毫秒) 重写速率",
"label": { "label": {
"delay": "延迟", "delay": "延迟",
"variable": "变量", "variable": "变量",
"limit": "限制", "limit": "限制",
"limitTopic": "限制主题", "limitTopic": "限制速率",
"random": "随机", "random": "随机",
"rate": "速率",
"random-first": "最小随机值",
"random-last": "最大随机值",
"units": { "units": {
"second": { "second": {
"plural": "秒", "plural": "秒",
@ -290,17 +341,25 @@
"singular": "天" "singular": "天"
} }
} }
},
"errors": {
"too-many": "delay节点中的待处理消息过多",
"invalid-timeout": "延迟时间无效",
"invalid-rate": "无效的速率值",
"invalid-rate-unit": "速率值单位无效",
"invalid-random-first": "最小随机值无效",
"invalid-random-last": "最大随机值无效"
} }
}, },
"trigger": { "trigger": {
"send": "发送", "send": "发送",
"then": "然后", "then": "然后",
"then-send": "然后发送", "then-send": "然后发送",
"output": { "output": {
"string": "字符串", "string": "字符串",
"number": "数字", "number": "数字",
"existing": "现有信息对象", "existing": "现有信息对象",
"original": "原信息对象", "original": "原信息对象",
"latest": "最新信息对象", "latest": "最新信息对象",
"nothing": "无" "nothing": "无"
}, },
@ -317,16 +376,18 @@
"h": "小时" "h": "小时"
}, },
"extend": " 如有新信息,延长延迟", "extend": " 如有新信息,延长延迟",
"override": "使用msg.delay覆盖延迟时间", "override": "使用 msg.delay 重写延迟时间",
"second": " 发送第二条消息到单独的输出", "second": " 发送第二条消息到单独的输出",
"label": { "label": {
"trigger": "触发", "trigger": "触发",
"trigger-block": "触发并阻止", "trigger-block": "触发并阻止",
"trigger-loop": "周期性重发", "trigger-loop": "周期性重发",
"reset": "重置触发节点条件 如果:", "reset": "满足以下要求则重置trigger节点:",
"resetMessage": "msg.reset已设置", "resetMessage": "已设置 msg.reset",
"resetPayload": "msg.payload等于", "resetPayload": "msg.payload 等于 ",
"resetprompt": "可选填" "resetprompt": "可选项",
"duration": "持续",
"topic": "主题"
} }
}, },
"comment": { "comment": {
@ -336,7 +397,7 @@
"label": { "label": {
"unknown": "未知" "unknown": "未知"
}, },
"tip": "<p>此节点是您安装,但Node-RED所不知道的类型。</p><p><i>如果在此状态下部署节点,那么它的配置将被保留,但是流程将不会启动,直到安装缺少的类型。</i></p><p>有关更多帮助,请参阅信息侧栏</p>" "tip": "<p>此节点是您安装,但该节点是Node-RED所不知道的类型。</p><p><i>如果在此状态下部署节点,它的配置将被保留,但是流程将不会启动,直到安装缺少的类型。</i></p><p>有关更多帮助,请参阅信息侧栏</p>"
}, },
"mqtt": { "mqtt": {
"label": { "label": {
@ -347,43 +408,79 @@
"retain": "保持", "retain": "保持",
"clientid": "客户端ID", "clientid": "客户端ID",
"port": "端口", "port": "端口",
"keepalive": "Keepalive计时(秒)", "keepalive": "KeepAlive计时(秒)",
"cleansession": "使用新的会话", "cleansession": "使用新的会话",
"use-tls": "使用 TLS", "cleanstart": "全新创建",
"use-tls": "启用 TLS",
"tls-config": "TLS 设置", "tls-config": "TLS 设置",
"verify-server-cert": "验证服务器证书", "verify-server-cert": "验证服务器证书",
"compatmode": "使用旧式MQTT 3.1支持" "compatmode": "使用旧式MQTT 3.1支持",
"userProperties": "自定义属性",
"subscriptionIdentifier": "订阅ID",
"flags": "Flags",
"nl": "不接收此客户端发布的消息",
"rap": "保留原始发布的保留标志",
"rh": "保留消息处理 ",
"rh0": "发送保留消息",
"rh1": "仅发送新订阅",
"rh2": "请勿发送",
"responseTopic": "Response 主题",
"contentType": "Content 类型",
"correlationData": "关联数据",
"expiry": "过期时间 (秒)",
"sessionExpiry": "会话过期时间 (秒)",
"topicAlias": "别名",
"payloadFormatIndicator": "格式",
"payloadFormatIndicatorFalse": "未指定的bytes (默认)",
"payloadFormatIndicatorTrue": "UTF-8 编码payload",
"protocolVersion": "协议",
"protocolVersion3": "MQTT V3.1 (legacy)",
"protocolVersion4": "MQTT V3.1.1",
"protocolVersion5": "MQTT V5",
"topicAliasMaximum": "Alias Max",
"maximumPacketSize": "最大数据包大小",
"receiveMaximum": "Receive Max",
"session": "会话",
"delay": "延迟",
"action": "Action",
"staticTopic": "订阅单个主题",
"dynamicTopic": "动态订阅",
"auto-connect": "自动连接",
"auto-mode-depreciated": "此选项已弃用,请使用新的自动检测模式。",
"none": "无",
"other": "其它"
}, },
"sections-label": { "sections-label": {
"birth-message": "连接时发送的消息(出生消息)", "birth-message": "连接时发送的消息(初始消息)",
"will-message": "意外断开连接时的发送消息Will消息", "will-message": "意外断开连接时的发送消息Will消息",
"close-message": "断开连接前发送的消息(关闭消息)" "close-message": "断开连接前发送的消息(关闭消息)"
}, },
"tabs-label": { "tabs-label": {
"connection": "连接", "connection": "连接参数",
"security": "安全", "security": "安全",
"messages": "消息" "messages": "消息"
}, },
"placeholder": { "placeholder": {
"clientid": "留白则自动生成", "clientid": "留自动生成",
"clientid-nonclean": "如非新会话必须设置客户端ID", "clientid-nonclean": "如非新会话必须设置客户端ID",
"will-topic": "留白将禁止Will信息", "will-topic": "输入主题内容以启用Will信息",
"birth-topic": "留白将禁止Birth信息", "birth-topic": "输入主题内容以启用初始信息",
"close-topic": "留白以禁用关闭消息" "close-topic": "输入主题内容以启用关闭消息"
}, },
"state": { "state": {
"connected": "已连接到服务端: __broker__", "connected": "已连接到服务端: __broker__",
"disconnected": "已断开与服务端 __broker__ 的链接", "disconnected": "已断开与服务端 __broker__ 的链接",
"connect-failed": "与服务端 __broker__ 的连接失败" "connect-failed": "与服务端 __broker__ 的连接失败",
"broker-disconnected": "客户端连接被 __broker__ 断开: __reasonCode__ __reasonString__"
}, },
"retain": "保留", "retain": "保留",
"output": { "output": {
"buffer": "Buffer", "buffer": "buffer",
"string": "字符串", "string": "字符串",
"base64": "Base64编码字符串", "base64": "Base64编码字符串",
"auto": "自动检测 (字符串或buffer)", "auto": "自动检测 (字符串或buffer)",
"auto-detect": "自动检测 (已解析的JSON对象、字符串或buffer)", "auto-detect": "自动检测 (JSON对象、字符串或buffer)",
"json": "解析的JSON对象" "json": "JSON对象"
}, },
"true": "是", "true": "是",
"false": "否", "false": "否",
@ -394,20 +491,28 @@
"invalid-topic": "主题无效", "invalid-topic": "主题无效",
"nonclean-missingclientid": "客户端ID未设定使用新会话", "nonclean-missingclientid": "客户端ID未设定使用新会话",
"invalid-json-string": "无效的JSON字符串", "invalid-json-string": "无效的JSON字符串",
"invalid-json-parse": "无法解析JSON字符串" "invalid-json-parse": "无法解析JSON字符串",
"invalid-action-action": "指定的操作无效",
"invalid-action-alreadyconnected": "连接之前,请先断开已有的连接",
"invalid-action-badsubscription": "msg.topic 丢失或无效",
"invalid-client-id": "缺少客户端 ID"
} }
}, },
"httpin": { "httpin": {
"label": { "label": {
"method": "请求方式", "method": "请求方式",
"url": "URL", "url": "URL 地址",
"doc": "文档", "doc": "文档",
"return": "返回", "return": "返回",
"upload": "接受文件上传?", "upload": "接受文件上传",
"status": "状态码", "status": "状态码",
"headers": "头", "headers": "头",
"other": "其他", "other": "其他",
"paytoqs": "将msg.payload附加为查询字符串参数", "paytoqs": {
"ignore": "忽略",
"query": "附加到查询字符串参数",
"body": "作为请求正文发送"
},
"utf8String": "UTF8格式的字符串", "utf8String": "UTF8格式的字符串",
"binaryBuffer": "二进制buffer", "binaryBuffer": "二进制buffer",
"jsonObject": "解析的JSON对象", "jsonObject": "解析的JSON对象",
@ -426,6 +531,7 @@
"proxy-config": "代理服务器设置", "proxy-config": "代理服务器设置",
"use-proxyauth": "使用代理身份验证", "use-proxyauth": "使用代理身份验证",
"noproxy-hosts": "代理例外", "noproxy-hosts": "代理例外",
"senderr": "仅向 Catch 节点发送非 2xx 响应",
"utf8": "UTF-8 字符串", "utf8": "UTF-8 字符串",
"binary": "二进制数据", "binary": "二进制数据",
"json": "JSON对象", "json": "JSON对象",
@ -440,29 +546,32 @@
"missing-path": "无路径", "missing-path": "无路径",
"no-response": "无响应对象", "no-response": "无响应对象",
"json-error": "JSON 解析错误", "json-error": "JSON 解析错误",
"no-url": "未设定 URL", "no-url": "未指定URL地址",
"deprecated-call": "__method__ 方法已弃用", "deprecated-call": "__method__ 方法已弃用",
"invalid-transport": "非HTTP传输请求", "invalid-transport": "非HTTP传输请求",
"timeout-isnan": "超时值不是有效数字,忽略", "timeout-isnan": "超时值不是有效数字,忽略",
"timeout-isnegative": "超时值为负,忽略", "timeout-isnegative": "超时值为负,忽略",
"invalid-payload": "无效的有效载荷" "invalid-payload": "无效的有效载荷",
"invalid-url": "无效的url地址"
}, },
"status": { "status": {
"requesting": "请求中" "requesting": "请求中"
} },
"insecureHTTPParser": "禁用严格的 HTTP 解析"
}, },
"websocket": { "websocket": {
"label": { "label": {
"type": "类型", "type": "类型",
"path": "路径", "path": "路径",
"url": "URL", "url": "URL 地址",
"subprotocol": "子协议" "subprotocol": "子协议"
}, },
"listenon": "监听", "listenon": "监听",
"connectto": "连接", "connectto": "连接",
"sendrec": "发送/接", "sendrec": "发送/接",
"payload": "有效载荷", "payload": "payload",
"message": "完整信息", "message": "完整信息",
"sendheartbeat": "发送心跳消息",
"tip": { "tip": {
"path1": "默认情况下,<code>payload</code>将包含要发送或从Websocket接收的数据。侦听器可以配置为以JSON格式的字符串发送或接收整个消息对象.", "path1": "默认情况下,<code>payload</code>将包含要发送或从Websocket接收的数据。侦听器可以配置为以JSON格式的字符串发送或接收整个消息对象.",
"path2": "这条路径将相对于 <code>__path__</code>.", "path2": "这条路径将相对于 <code>__path__</code>.",
@ -470,24 +579,26 @@
"url2": "默认情况下,<code>payload</code> 将包含要发送或从Websocket接收的数据。可以将客户端配置为以JSON格式的字符串发送或接收整个消息对象." "url2": "默认情况下,<code>payload</code> 将包含要发送或从Websocket接收的数据。可以将客户端配置为以JSON格式的字符串发送或接收整个消息对象."
}, },
"status": { "status": {
"connected": "连接数 __count__", "connected": "连接数 __count__",
"connected_plural": "连接数 __count__" "connected_plural": "连接数 __count__"
}, },
"errors": { "errors": {
"connect-error": "ws连接发生了错误: ", "connect-error": "ws连接发生了错误: ",
"send-error": "发送时发生了错误: ", "send-error": "发送时发生了错误: ",
"missing-conf": "未设置服务器", "missing-conf": "未设置服务器",
"duplicate-path": "同一路径上不能有两个WebSocket侦听器: __path__" "duplicate-path": "同一路径上不能有两个WebSocket侦听器: __path__",
"missing-server": "服务器配置缺失",
"missing-client": "客户端配置缺失"
} }
}, },
"watch": { "watch": {
"watch": "watch", "watch": "watch",
"label": { "label": {
"files": "文件", "files": "文件",
"recursive": "递归所有子文件夹" "recursive": "查找所有子文件夹"
}, },
"placeholder": { "placeholder": {
"files": "逗号分开文件或文件夹" "files": "用英文逗号分开文件或文件夹"
}, },
"tip": "在Windows上请务必使用双斜杠 \\\\ 来隔开文件夹名字" "tip": "在Windows上请务必使用双斜杠 \\\\ 来隔开文件夹名字"
}, },
@ -495,25 +606,28 @@
"label": { "label": {
"type": "类型", "type": "类型",
"output": "输出", "output": "输出",
"port": "端口", "port": "端口 ",
"host": "主机地址", "host": "主机地址 ",
"payload": "有效载荷", "payload": "payload(s)",
"delimited": "分隔符号", "delimited": "分隔符号 ",
"close-connection": "是否在成功发送每条信息后断开连接?", "close-connection": "成功发送信息后断开连接",
"decode-base64": "用 Base64 解码信息?", "decode-base64": "使用 Base64 解码信息",
"server": "服务器", "server": "服务器",
"return": "返回", "return": "返回",
"ms": "毫秒", "ms": "毫秒",
"chars": "字符" "chars": "字符",
"close": "关闭",
"optional": "(可选)",
"reattach": "重新添加分隔符"
}, },
"type": { "type": {
"listen": "监听", "listen": "监听客户端连接",
"connect": "连接", "connect": "连接到服务器",
"reply": "响应 TCP" "reply": "响应 TCP"
}, },
"output": { "output": {
"stream": "字串流", "stream": "字串流",
"single": "单一", "single": "单个数据",
"buffer": "Buffer", "buffer": "Buffer",
"string": "字符串", "string": "字符串",
"base64": "Base64 字符串" "base64": "Base64 字符串"
@ -527,7 +641,7 @@
}, },
"status": { "status": {
"connecting": "正在连接到 __host__:__port__", "connecting": "正在连接到 __host__:__port__",
"connected": "已连接到 __host__:__port__", "connected": "已连接到 __host__:__port__",
"listening-port": "监听端口 __port__", "listening-port": "监听端口 __port__",
"stopped-listening": "已停止监听端口", "stopped-listening": "已停止监听端口",
"connection-from": "连接来自 __host__:__port__", "connection-from": "连接来自 __host__:__port__",
@ -543,7 +657,10 @@
"socket-error": "套接字连接错误来自 __host__:__port__", "socket-error": "套接字连接错误来自 __host__:__port__",
"no-host": "主机地址或端口未设定", "no-host": "主机地址或端口未设定",
"connect-timeout": "连接超时", "connect-timeout": "连接超时",
"connect-fail": "连接失败" "connect-fail": "连接失败",
"bad-string": "无法转换为字符串",
"invalid-host": "服务器地址无效",
"invalid-port": "端口号无效"
} }
}, },
"udp": { "udp": {
@ -554,10 +671,11 @@
"output": "输出", "output": "输出",
"group": "组", "group": "组",
"interface": "本地IP", "interface": "本地IP",
"send": "发送一个", "send": "发送",
"toport": "到端口", "toport": " 到端口",
"address": "地址", "address": "地址",
"decode-base64": "是否解码Base64编码的信息?" "decode-base64": "使用Base64解码信息",
"port": "端口"
}, },
"placeholder": { "placeholder": {
"interface": "可选eth0的IP地址", "interface": "可选eth0的IP地址",
@ -580,8 +698,8 @@
"target": "绑定到目标端口" "target": "绑定到目标端口"
}, },
"tip": { "tip": {
"in": "提示:确保您的防火墙将允许数据进入", "in": "提示:请确保数据能够通过您的防火墙。",
"out": "提示:如果要使用<code>msg.ip</code>和<code>msg.port</code>设置,请将地址和端口留空", "out": "提示:如果要使用<code>msg.ip</code>和<code>msg.port</code>设置,请将地址和端口留空",
"port": "正在使用端口: " "port": "正在使用端口: "
}, },
"status": { "status": {
@ -589,10 +707,10 @@
"mc-group": "udp 组播到 __group__", "mc-group": "udp 组播到 __group__",
"listener-stopped": "udp 监听器已停止", "listener-stopped": "udp 监听器已停止",
"output-stopped": "udp 输出已停止", "output-stopped": "udp 输出已停止",
"mc-ready": "udp 组播已准备好: __outport__ -> __host__:__port__", "mc-ready": "udp 组播已就绪: __outport__ -> __host__:__port__",
"bc-ready": "udp 广播已准备好: __outport__ -> __host__:__port__", "bc-ready": "udp 广播已就绪: __outport__ -> __host__:__port__",
"ready": "udp 已准备好: __outport__ -> __host__:__port__", "ready": "udp 已就绪: __outport__ -> __host__:__port__",
"ready-nolocal": "udp 已准备好: __host__:__port__", "ready-nolocal": "udp 已就绪: __host__:__port__",
"re-use": "udp 重用套接字: __outport__ -> __host__:__port__" "re-use": "udp 重用套接字: __outport__ -> __host__:__port__"
}, },
"errors": { "errors": {
@ -604,7 +722,8 @@
"port-notset": "udp: 端口未设定", "port-notset": "udp: 端口未设定",
"port-invalid": "udp: 无效端口号码", "port-invalid": "udp: 无效端口号码",
"alreadyused": "udp: 端口已被占用", "alreadyused": "udp: 端口已被占用",
"ifnotfound": "udp: 接口 __iface__ 未发现" "ifnotfound": "udp: 接口 __iface__ 未发现",
"invalid-group": "无效的多播组"
} }
}, },
"switch": { "switch": {
@ -612,7 +731,9 @@
"label": { "label": {
"property": "属性", "property": "属性",
"rule": "规则", "rule": "规则",
"repair": "重建信息队列" "repair": "重建信息队列",
"value-rules": "输入值匹配",
"sequence-rules": "顺序匹配"
}, },
"previous": "先前值", "previous": "先前值",
"and": "与", "and": "与",
@ -620,9 +741,9 @@
"stopfirst": "接受第一条匹配信息后停止", "stopfirst": "接受第一条匹配信息后停止",
"ignorecase": "忽略大小写", "ignorecase": "忽略大小写",
"rules": { "rules": {
"btwn": "在之间", "btwn": "在..之间",
"cont": "包含", "cont": "包含",
"regex": "匹配正则表达式", "regex": "正则表达式",
"true": "为真", "true": "为真",
"false": "为假", "false": "为假",
"null": "为空", "null": "为空",
@ -630,9 +751,9 @@
"istype": "类型是", "istype": "类型是",
"empty": "为空", "empty": "为空",
"nempty": "非空", "nempty": "非空",
"head": "头", "head": "",
"tail": "尾", "tail": "",
"index": "索引在..间", "index": "索引在..间",
"exp": "JSONata表达式", "exp": "JSONata表达式",
"else": "除此以外", "else": "除此以外",
"hask": "拥有键" "hask": "拥有键"
@ -650,23 +771,27 @@
"change": "修改 __property__", "change": "修改 __property__",
"delete": "删除 __property__", "delete": "删除 __property__",
"move": "移动 __property__", "move": "移动 __property__",
"changeCount": "修改: __count__ 条规矩", "changeCount": "修改: __count__ 条规则",
"regex": "使用正则表达式" "regex": "使用正则表达式",
"deepCopy": "对值进行深拷贝"
}, },
"action": { "action": {
"set": "设定", "set": "设定",
"change": "修改", "change": "替换值",
"delete": "删除", "delete": "删除",
"move": "转移", "move": "转移",
"toValue": "值为",
"to": "到", "to": "到",
"search": "搜索", "search": "查找",
"replace": "替为" "replace": "替为"
}, },
"errors": { "errors": {
"invalid-from": "无效的'from'属性: __error__", "invalid-from": "无效的'from'属性: __error__",
"invalid-json": "无效的'to'JSON 属性", "invalid-json": "无效的'to'JSON 属性",
"invalid-expr": "无效的JSONata表达式: __error__", "invalid-expr": "无效的JSONata表达式: __error__",
"no-override": "无法设置非对象类型的属性: __property__" "no-override": "无法设置非对象类型的属性: __property__",
"invalid-prop": "无效的属性表达式: __property__",
"invalid-json-data": "无效的 JSON 数据: __error__"
} }
}, },
"range": { "range": {
@ -675,21 +800,25 @@
"action": "操作", "action": "操作",
"inputrange": "映射输入数据", "inputrange": "映射输入数据",
"resultrange": "至目标范围", "resultrange": "至目标范围",
"from": "从", "from": "从 ",
"to": "到", "to": "到 ",
"roundresult": "取最接近整数?" "roundresult": "取最接近整数",
"minin": "输入值从",
"maxin": "输入值到",
"minout": "目标值从",
"maxout": "目标值到"
}, },
"placeholder": { "placeholder": {
"min": "比如: 0", "min": "例如: 0",
"maxin": "比如: 99", "maxin": "例如: 99",
"maxout": "比如: 255" "maxout": "例如: 255"
}, },
"scale": { "scale": {
"payload": "按比例msg.payload", "payload": "按比例msg.payload",
"limit": "按比例并设定界限至目标范围", "limit": "按比例并设定界限至目标范围",
"wrap": "按比例并包含在目标范围内" "wrap": "按比例并包含在目标范围内"
}, },
"tip": "提示: 此节点仅对数字有效", "tip": "提示: 此节点仅对数字有效",
"errors": { "errors": {
"notnumber": "不是一个数字" "notnumber": "不是一个数字"
} }
@ -715,12 +844,12 @@
"columns": "用逗号分割列名" "columns": "用逗号分割列名"
}, },
"separator": { "separator": {
"comma": "逗号", "comma": "逗号(英文半角)",
"tab": "Tab", "tab": "Tab",
"space": "空格", "space": "空格(英文半角)",
"semicolon": "分号", "semicolon": "分号(英文半角)",
"colon": "冒号", "colon": "冒号(英文半角)",
"hashtag": "井号", "hashtag": "#号",
"other": "其他..." "other": "其他..."
}, },
"output": { "output": {
@ -747,7 +876,7 @@
"label": { "label": {
"select": "选取项", "select": "选取项",
"output": "输出", "output": "输出",
"in": "in" "in": "位于"
}, },
"output": { "output": {
"html": "选定元素的html内容", "html": "选定元素的html内容",
@ -799,10 +928,13 @@
}, },
"file": { "file": {
"label": { "label": {
"write": "写入文件",
"read": "读取文件",
"filename": "文件名", "filename": "文件名",
"action": "行为", "path": "路径",
"addnewline": "向每个有效载荷添加换行符(\\n?", "action": "操作",
"createdir": "创建目录(如果不存在)?", "addnewline": "向每个 payload 添加换行符(\\n",
"createdir": "目录不存在自动创建",
"outputas": "输出", "outputas": "输出",
"breakchunks": "分拆成块", "breakchunks": "分拆成块",
"breaklines": "分拆成行", "breaklines": "分拆成行",
@ -810,18 +942,21 @@
"encoding": "编码", "encoding": "编码",
"deletelabel": "删除 __file__", "deletelabel": "删除 __file__",
"utf8String": "UTF8字符串", "utf8String": "UTF8字符串",
"binaryBuffer": "二进制buffer" "utf8String_plural": "UTF8字符串",
"binaryBuffer": "二进制buffer",
"binaryBuffer_plural": "二进制buffer",
"allProps": "在每个 msg 中包含所有现有属性"
}, },
"action": { "action": {
"append": "追加至文件", "append": "追加至文件",
"overwrite": "复写文件", "overwrite": "覆盖文件",
"delete": "删除文件" "delete": "删除文件"
}, },
"output": { "output": {
"utf8": "一个utf8字符串", "utf8": "utf8字符串",
"buffer": "一个Buffer对象", "buffer": "Buffer对象",
"lines": "每行一条信息", "lines": "每行一条信息",
"stream": "一个Buffer流" "stream": "Buffer流"
}, },
"status": { "status": {
"wrotefile": "写入至文件: __file__", "wrotefile": "写入至文件: __file__",
@ -830,28 +965,29 @@
}, },
"encoding": { "encoding": {
"none": "默认", "none": "默认",
"native": "Native", "native": "Node-RED原生",
"setbymsg": "通过 msg.encoding 设置",
"unicode": "Unicode", "unicode": "Unicode",
"japanese": "日本", "japanese": "日本",
"chinese": "中国", "chinese": "中国",
"korean": "韩国", "korean": "韩国",
"taiwan": "台湾/香港", "taiwan": "台湾/香港",
"windows": "Windows代码页", "windows": "Windows编码",
"iso": "ISO代码页", "iso": "ISO编码",
"ibm": "IBM代码页", "ibm": "IBM编码",
"mac": "Mac代码页", "mac": "Mac编码",
"koi8": "KOI8代码页", "koi8": "KOI8编码",
"misc": "其它" "misc": "其它"
}, },
"errors": { "errors": {
"nofilename": "未指定文件名", "nofilename": "未指定文件名",
"invaliddelete": "警告:无效删除。请在配置对话框中使用特定的删除选项", "invaliddelete": "警告:删除无效,请在配置对话框中使用特定的删除选项",
"deletefail": "无法删除文件: __error__", "deletefail": "无法删除文件: __error__",
"writefail": "无法写入文件: __error__", "writefail": "无法写入文件: __error__",
"appendfail": "无法追加到文件: __error__", "appendfail": "无法追加到文件: __error__",
"createfail": "文件创建失败: __error__" "createfail": "文件创建失败: __error__"
}, },
"tip": "提示: 文件名应该是绝对路径,否则它将相对于Node-RED进程的工作目录。" "tip": "提示: 文件名应该是绝对路径,使用相对路径时为相对于Node-RED进程的工作目录。"
}, },
"split": { "split": {
"split": "split", "split": "split",
@ -866,7 +1002,7 @@
"addname": " 复制键到 " "addname": " 复制键到 "
}, },
"join": { "join": {
"join": "连接", "join": "join",
"mode": { "mode": {
"mode": "模式", "mode": "模式",
"auto": "自动", "auto": "自动",
@ -896,6 +1032,7 @@
"complete": "在收到存在<code>msg.complete</code>的消息后", "complete": "在收到存在<code>msg.complete</code>的消息后",
"tip": "此模式假定此节点与<i>split</i>相连, 或者接收到的消息有正确配置的<code>msg.parts</code>属性.", "tip": "此模式假定此节点与<i>split</i>相连, 或者接收到的消息有正确配置的<code>msg.parts</code>属性.",
"too-many": "join节点中有太多待定信息", "too-many": "join节点中有太多待定信息",
"message-prop": "消息属性",
"merge": { "merge": {
"topics-label": "合并主题", "topics-label": "合并主题",
"topics": "主题", "topics": "主题",
@ -953,6 +1090,41 @@
}, },
"too-many": "batch节点中有太多待定信息", "too-many": "batch节点中有太多待定信息",
"unexpected": "未知模式", "unexpected": "未知模式",
"no-parts": "信息中没有parts属性" "no-parts": "信息中没有parts属性",
"error": {
"invalid-count": "计数无效",
"invalid-overlap": "overlap无效",
"invalid-interval": "间隔无效"
}
},
"rbe": {
"rbe": "filter",
"label": {
"func": "模式",
"init": "发送初始值",
"start": "起始值",
"name": "名称",
"septopics": "分别为每个数据应用模式 ",
"gap": "值变化",
"property": "属性",
"topic": "主题"
},
"placeholder": {
"bandgap": "例如10 或 5%",
"start": "留空以使用收到的第一个数据"
},
"opts": {
"rbe": "阻塞到值变化",
"rbei": "阻塞到值变化 (忽略初始值)",
"deadband": "除非值变化大于",
"deadbandEq": "除非值变化大于或等于",
"narrowband": "如果值变化大于则阻塞",
"narrowbandEq": "如果值变化大于或等于则阻塞",
"in": "与上一个输入值相比",
"out": "与最后一个有效输出值相比"
},
"warn": {
"nonumber": "在payload中找不到数值"
}
} }
} }