vault backup: 2026-04-16 20:45:16
This commit is contained in:
BIN
.obsidian/plugins/i18n/backups/dataview/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/dataview/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/highlightr-plugin/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/highlightr-plugin/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/homepage/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/homepage/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/multi-properties/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/multi-properties/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/nutstore-sync/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/nutstore-sync/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/obsidian-custom-attachment-location/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/obsidian-custom-attachment-location/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/obsidian-custom-frames/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/obsidian-custom-frames/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/obsidian-excalidraw-plugin/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/obsidian-excalidraw-plugin/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/obsidian-git/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/obsidian-git/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/obsidian-livesync/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/obsidian-livesync/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/obsidian-style-settings/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/obsidian-style-settings/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/obsidian-tasks-plugin/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/obsidian-tasks-plugin/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/obsidian42-brat/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/obsidian42-brat/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/pdf-plus/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/pdf-plus/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/quickadd/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/quickadd/main.js.gz
vendored
Normal file
Binary file not shown.
BIN
.obsidian/plugins/i18n/backups/templater-obsidian/main.js.gz
vendored
Normal file
BIN
.obsidian/plugins/i18n/backups/templater-obsidian/main.js.gz
vendored
Normal file
Binary file not shown.
447
.obsidian/plugins/i18n/data.json
vendored
Normal file
447
.obsidian/plugins/i18n/data.json
vendored
Normal file
@@ -0,0 +1,447 @@
|
||||
{
|
||||
"agreement": true,
|
||||
"language": "zh-cn",
|
||||
"checkUpdates": true,
|
||||
"searchText": "",
|
||||
"sort": "0",
|
||||
"author": "",
|
||||
"mode": 0,
|
||||
"automaticUpdate": true,
|
||||
"llmApi": 1,
|
||||
"llmResponseFormat": "text",
|
||||
"llmLanguage": "简体中文",
|
||||
"llmStyle": "无",
|
||||
"llmBatchSize": 10,
|
||||
"llmConcurrencyLimit": 3,
|
||||
"llmTimeout": 60000,
|
||||
"llmRegexPrompt": "# Role & Context\nYou are an expert Software Localization Specialist & Technical Translator.\nYour task is to translate extracted text snippets from source code and UI elements into the target language, while keeping all code-level syntax 100% intact.\n\n# Core Output Rules (CRITICAL: Failure will crash the system)\n1. ONLY return a valid JSON array string.\n - ❌ NO Markdown formatting (e.g., ```json).\n - ❌ NO conversational text.\n - ✅ Starts exactly with `[` and ends with `]`.\n2. Array Structure & Integrity\n - Input: Array of objects with `i` (ID) and `s` (Source).\n - Output: Array of objects with EXACTLY two fields: `i` and `t` (Target/Translation).\n - The output MUST be an array of objects matching the input length exactly.\n - The `i` fields MUST be kept EXACTLY as they are. DO NOT MODIFY OR OMIT THEM.\n\n# Translation & Safety Rules (CRITICAL)\n1. Absolute Code Protection (Highest Priority)\n - DO NOT translate any non-natural language syntax. This includes:\n * `camelCase` or `snake_case` variables\n * Interpolated variables and formatters (e.g., `${filename}`, `{{val}}`, `%s`, `{0}`)\n * HTML/XML tags (e.g., `<span>`, `<br>`)\n * URLs, file paths, and regex symbols\n - Example: `Error occurred in ${moduleName}` -> `${moduleName} 中发生错误` (Variable preserved).\n2. Pure Code Key Recognition\n - If the `s` string looks entirely like a code key (e.g., `user_not_found_error`), DO NOT force a translation. Output it exactly as it is in the `t` field.\n3. Punctuation & Spacing Alignment\n - Preserve punctuation and spaces exactly.\n4. Unicode Encoding Preservation (CRITICAL)\n - If the source string `s` is formatted using Unicode escape sequences (e.g., `\\uXXXX`), your translated text `t` MUST ALSO be converted entirely into Unicode escape sequences.\n - ❌ Never return standard plain text if the source is Unicode-escaped.\n - Example: If `s` is `Hello` (\"Hello\"), and the translation is \"Hola\", `t` must be `Hola`.\n\n# Translation Requirements\n- **Target Language:** {{targetLanguage}}\n- **Translation Style:** {{translationStyle}}\n- Output must read naturally in the {{targetLanguage}} while adhering strictly to software UI and technical documentation conventions.\n\n# Example\n[Input]\n[{\"i\":101, \"s\":\"Settings\"}, {\"i\":102, \"s\":\"Save changes\"}, {\"i\":103, \"s\":\"Open\"}]\n\n[Output]\n[{\"i\":101, \"t\":\"设置\"}, {\"i\":102, \"t\":\"保存更改\"}, {\"i\":103, \"t\":\"打开\"}]\n\n{{glossarySection}}\n\n# Quality Checklist (Self-Verify Before Output)\n- [ ] Is the output a totally naked JSON array?\n- [ ] Does each object ONLY contain `i` and `t`?\n- [ ] Are all `i` fields present and unmodified?\n- [ ] Are all code variables (`${...}`) completely intact in the `t`?\n- [ ] If `s` used Unicode escapes (`\\uXXXX`), is `t` correctly encoded as Unicode escapes?",
|
||||
"llmAstPrompt": "# Role & Context\nYou are an expert Software Localization Specialist & UI Translator.\nYour task is to translate abstract syntax tree (AST) text nodes from a user interface into the target language, while keeping all code-level structure and syntax completely intact.\n\n# Core Output Rules (CRITICAL: Failure will crash the system)\n1. ONLY return a valid JSON array string.\n - ❌ NO Markdown formatting (e.g., ```json).\n - ❌ NO conversational text.\n - ✅ Starts exactly with `[` and ends with `]`.\n2. Property Gatekeeper (CRITICAL)\n - Input structure: `i` (ID), `s` (Source), `y` (Type), and `n` (Name).\n - Output structure: Return objects with EXACTLY two fields: `i` and `t` (Target/Translation).\n - DO NOT MODIFY `i`.\n - The `y` (type) and `n` (name) fields are for YOUR CONTEXT ONLY. Do not include them in output.\n\n# Translation & Safety Rules (CRITICAL)\n1. Absolute Code Protection\n - DO NOT translate any non-natural language syntax (e.g., `{{count}}`, `<span/>`, `\\n`).\n2. Context Awareness via y & n Fields\n - Use the `y` (node type) and `n` (node name) fields to infer context.\n - Example: `y=\"Button\"`, `n=\"submit\"` -> Translate as an action verb.\n3. Pure Code Key Handling\n - If `s` is a code key, return it as-is in `t`.\n\n# Translation Requirements\n- **Target Language:** {{targetLanguage}}\n- **Translation Style:** {{translationStyle}}\n\n{{glossarySection}}\n\n# Example\n[Input]\n[{\"i\":50, \"s\":\"Open\", \"y\":\"Button\", \"n\":\"openFile\"}, {\"i\":51, \"s\":\"⇧ Shift\", \"y\":\"Text\", \"n\":\"shortcut\"}]\n\n[Output]\n[{\"i\":50, \"t\":\"打开\"}, {\"i\":51, \"t\":\"⇧ Shift\"}]\n\n# Quality Checklist (Self-Verify Before Output)\n- [ ] Is the output a totally naked JSON array?\n- [ ] Does each object ONLY contain `i` and `t`?\n- [ ] Are `i` fields unaltered?\n- [ ] Are code variables/tags intact in `t`?",
|
||||
"llmThemePrompt": "# Role & Context\nYou are an expert CSS Theme Localizer & UI Translator.\nYour task is to translate Obsidian theme setting labels and descriptions into the target language.\n\n# Core Output Rules (CRITICAL: Failure will crash the system)\n1. ONLY return a valid JSON array string.\n - ❌ NO Markdown formatting (e.g., ```json).\n - ❌ NO conversational text.\n - ✅ Starts exactly with `[` and ends with `]`.\n2. Property Gatekeeper (CRITICAL)\n - Input structure: `i` (ID), `s` (Source), `y` (Type).\n - Output structure: Return objects with EXACTLY two fields: `i` and `t` (Target/Translation).\n - DO NOT MODIFY `i`.\n - The `y` (type) field is for YOUR CONTEXT ONLY. Do not include it in output.\n\n# Translation & Safety Rules (CRITICAL)\n1. Context Awareness via y Field\n - `y` value tells you if text is a `name`, `title`, `description`, `label`, or `markdown`.\n2. Code Protection\n - DO NOT translate CSS class names or variables.\n3. Brevity for UI\n - Keep translations concise for settings UI.\n4. Unicode Encoding Preservation (CRITICAL)\n - If the source string `s` is formatted using Unicode escape sequences (e.g., `\\uXXXX`), your translated text `t` MUST ALSO be converted entirely into Unicode escape sequences.\n - ❌ Never return standard plain text if the source is Unicode-escaped.\n - Example: If `s` is `\\u0048\\u0065\\u006c\\u006c\\u006f` (\"Hello\"), and the translation is \"Hola\", `t` must be `\\u0048\\u006f\\u006c\\u0061`.\n\n# Translation Requirements\n- **Target Language:** {{targetLanguage}}\n- **Translation Style:** {{translationStyle}}\n\n{{glossarySection}}\n\n# Example\n[Input]\n[{\"i\":201, \"s\":\"Accent color\", \"y\":\"name\"}, {\"i\":202, \"s\":\"The color of active elements.\", \"y\":\"description\"}]\n\n[Output]\n[{\"i\":201, \"t\":\"强调色\"}, {\"i\":202, \"t\":\"激活状态元素的颜色。\"}]\n\n# Quality Checklist (Self-Verify Before Output)\n- [ ] Is the output a totally naked JSON array?\n- [ ] Does each object ONLY contain `i` and `t`?\n- [ ] Are `i` fields unaltered?\n- [ ] If `s` used Unicode escapes (`\\uXXXX`), is `t` correctly encoded as Unicode escapes?",
|
||||
"llmOpenaiUrl": "",
|
||||
"llmOpenaiKey": "",
|
||||
"llmOpenaiModel": "gpt-4o-mini",
|
||||
"llmOpenaiProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "",
|
||||
"key": "",
|
||||
"model": "gpt-4o-mini",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmOpenaiActiveProfileId": "default",
|
||||
"llmUseCustomPrice": true,
|
||||
"llmPriceInputCustom": 0,
|
||||
"llmPriceOutputCustom": 0,
|
||||
"llmGeminiKey": "",
|
||||
"llmGeminiModel": "gemini-2.0-flash",
|
||||
"llmGeminiProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "",
|
||||
"key": "",
|
||||
"model": "gemini-2.0-flash",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmGeminiActiveProfileId": "default",
|
||||
"llmOllamaUrl": "http://localhost:11434",
|
||||
"llmOllamaModel": "",
|
||||
"llmOllamaProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "http://localhost:11434",
|
||||
"key": "",
|
||||
"model": "",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmOllamaActiveProfileId": "default",
|
||||
"llmDeepseekKey": "",
|
||||
"llmDeepseekModel": "deepseek-chat",
|
||||
"llmDeepseekProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://api.deepseek.com/v1",
|
||||
"key": "",
|
||||
"model": "deepseek-chat",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmDeepseekActiveProfileId": "default",
|
||||
"llmZhipuKey": "",
|
||||
"llmZhipuModel": "glm-4-flash",
|
||||
"llmZhipuProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://open.bigmodel.cn/api/paas/v4",
|
||||
"key": "",
|
||||
"model": "glm-4-flash",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmZhipuActiveProfileId": "default",
|
||||
"llmMoonshotKey": "",
|
||||
"llmMoonshotModel": "moonshot-v1-8k",
|
||||
"llmMoonshotProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://api.moonshot.cn/v1",
|
||||
"key": "",
|
||||
"model": "moonshot-v1-8k",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmMoonshotActiveProfileId": "default",
|
||||
"llmAliyunKey": "",
|
||||
"llmAliyunModel": "qwen-plus",
|
||||
"llmAliyunProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://dashscope.aliyuncs.com/compatible-mode/v1",
|
||||
"key": "",
|
||||
"model": "qwen-plus",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmAliyunActiveProfileId": "default",
|
||||
"llmBaiduKey": "",
|
||||
"llmBaiduModel": "ernie-4.0-8k-preview",
|
||||
"llmBaiduProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://qianfan.baidubce.com/v2",
|
||||
"key": "",
|
||||
"model": "ernie-4.0-8k-preview",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmBaiduActiveProfileId": "default",
|
||||
"llmBytedanceKey": "",
|
||||
"llmBytedanceModel": "doubao-pro-4k",
|
||||
"llmBytedanceProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://ark.cn-beijing.volces.com/api/v3",
|
||||
"key": "",
|
||||
"model": "doubao-pro-4k",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmBytedanceActiveProfileId": "default",
|
||||
"llmGroqKey": "",
|
||||
"llmGroqModel": "llama-3.3-70b-versatile",
|
||||
"llmGroqProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://api.groq.com/openai/v1",
|
||||
"key": "",
|
||||
"model": "llama-3.3-70b-versatile",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmGroqActiveProfileId": "default",
|
||||
"llmSiliconflowKey": "",
|
||||
"llmSiliconflowModel": "deepseek-ai/DeepSeek-V3",
|
||||
"llmSiliconflowProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://api.siliconflow.cn/v1",
|
||||
"key": "",
|
||||
"model": "deepseek-ai/DeepSeek-V3",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmSiliconflowActiveProfileId": "default",
|
||||
"llmOpenrouterKey": "",
|
||||
"llmOpenrouterModel": "anthropic/claude-3.5-sonnet",
|
||||
"llmOpenrouterProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://openrouter.ai/api/v1",
|
||||
"key": "",
|
||||
"model": "anthropic/claude-3.5-sonnet",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmOpenrouterActiveProfileId": "default",
|
||||
"llmDeepinfraKey": "",
|
||||
"llmDeepinfraModel": "meta-llama/Llama-3.3-70B-Instruct",
|
||||
"llmDeepinfraProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://api.deepinfra.com/v1/openai",
|
||||
"key": "",
|
||||
"model": "meta-llama/Llama-3.3-70B-Instruct",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmDeepinfraActiveProfileId": "default",
|
||||
"llmMistralKey": "",
|
||||
"llmMistralModel": "mistral-small-latest",
|
||||
"llmMistralProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://api.mistral.ai/v1",
|
||||
"key": "",
|
||||
"model": "mistral-small-latest",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmMistralActiveProfileId": "default",
|
||||
"llmMinimaxKey": "",
|
||||
"llmMinimaxModel": "abab6.5-chat",
|
||||
"llmMinimaxProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://api.minimax.chat/v1",
|
||||
"key": "",
|
||||
"model": "abab6.5-chat",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmMinimaxActiveProfileId": "default",
|
||||
"llmStepfunKey": "",
|
||||
"llmStepfunModel": "step-1-8k",
|
||||
"llmStepfunProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"url": "https://api.stepfun.com/v1",
|
||||
"key": "",
|
||||
"model": "step-1-8k",
|
||||
"useCustomPrice": false,
|
||||
"priceInput": 0,
|
||||
"priceOutput": 0
|
||||
}
|
||||
],
|
||||
"llmStepfunActiveProfileId": "default",
|
||||
"modeImt": false,
|
||||
"imtPagerule": {
|
||||
"selectors": [
|
||||
".mod-settings",
|
||||
".modal-container",
|
||||
".menu",
|
||||
".notice-container"
|
||||
],
|
||||
"excludeSelectors": [
|
||||
".markdown-source-view",
|
||||
".markdown-reading-view",
|
||||
".cm-editor"
|
||||
]
|
||||
},
|
||||
"shareToken": "",
|
||||
"shareRepo": "obsidian-translations",
|
||||
"shareProfiles": [
|
||||
{
|
||||
"id": "1776342005263",
|
||||
"name": "默认账号",
|
||||
"token": "",
|
||||
"repo": "obsidian-translations"
|
||||
}
|
||||
],
|
||||
"shareActiveProfileId": "1776342005263",
|
||||
"reFlags": "gs",
|
||||
"reLength": 300,
|
||||
"reDatas": [
|
||||
"(Notice|log|error|setText|setButtonText|setName|setDesc|setPlaceholder|setTooltip|appendText|setTitle|addHeading|renderMarkdown)\\(\\s*(['\"`])((?:[^\\\\2\\\\\\\\]|\\\\\\\\.)*?)\\2\\s*\\)",
|
||||
"(textContent|innerText|name|description|selection|annotation|link|text|search|speech|page|settings)\\s*[:=]\\s*(['\"`])((?:[^\\\\2\\\\\\\\]|\\\\\\\\.)*?)\\2"
|
||||
],
|
||||
"reRejectRe": [
|
||||
"^\\s*$",
|
||||
"^\\d+$",
|
||||
"^[\\w-]+\\.[\\w-]+\\.\\w+$",
|
||||
"^https?:\\/\\/",
|
||||
"^data:image\\/",
|
||||
"^#([0-9a-f]{3}|[0-9a-f]{6})$",
|
||||
"^[a-z0-9]+-[a-z0-9-]+$",
|
||||
"^[a-z]+[A-Z][a-zA-Z0-9]*$",
|
||||
"^[A-Z_][A-Z0-9_]{3,}$",
|
||||
"^(px|em|rem|vh|vw|auto)$",
|
||||
"^rgba?\\(",
|
||||
"^\\.",
|
||||
"\\.(png|jpg|gif|svg|css|js|ts|md|json)$",
|
||||
"^[\\w.\\/\\\\-]+\\/[\\w.\\/\\\\-]+$"
|
||||
],
|
||||
"reValidRe": [
|
||||
"\\s",
|
||||
"[^\\x00-\\x7F]",
|
||||
"[!?,;:。!?,;:]\\s*$"
|
||||
],
|
||||
"astAssignments": [
|
||||
"overwriteName",
|
||||
"innerHTML",
|
||||
"outerHTML",
|
||||
"title",
|
||||
"alt",
|
||||
"placeholder",
|
||||
"textContent",
|
||||
"innerText",
|
||||
"ariaLabel",
|
||||
"nodeValue",
|
||||
"buttonText",
|
||||
"confirmText",
|
||||
"cancelText",
|
||||
"labelText"
|
||||
],
|
||||
"astFunctions": [
|
||||
"Notice",
|
||||
"setTitle",
|
||||
"setContent",
|
||||
"setName",
|
||||
"setDesc",
|
||||
"setButtonText",
|
||||
"setPlaceholder",
|
||||
"setTooltip",
|
||||
"addOption",
|
||||
"addOptions",
|
||||
"addHeading",
|
||||
"addText",
|
||||
"setHint",
|
||||
"setWarning",
|
||||
"setText",
|
||||
"appendText",
|
||||
"createEl",
|
||||
"createDiv",
|
||||
"createSpan",
|
||||
"addCommand",
|
||||
"insertText",
|
||||
"replaceRange",
|
||||
"replaceSelection",
|
||||
"log",
|
||||
"error",
|
||||
"warn",
|
||||
"info",
|
||||
"alert",
|
||||
"confirm",
|
||||
"prompt",
|
||||
"renderMarkdown",
|
||||
"setLabel",
|
||||
"setConfirmText",
|
||||
"setCancelText"
|
||||
],
|
||||
"astKeys": [
|
||||
"name",
|
||||
"description",
|
||||
"text",
|
||||
"placeholder",
|
||||
"label",
|
||||
"tooltip",
|
||||
"title",
|
||||
"header",
|
||||
"desc",
|
||||
"message",
|
||||
"buttontext",
|
||||
"aria-label",
|
||||
"heading",
|
||||
"content",
|
||||
"tab",
|
||||
"caption",
|
||||
"subtitle",
|
||||
"summary",
|
||||
"info",
|
||||
"warning",
|
||||
"error",
|
||||
"success",
|
||||
"hint",
|
||||
"instructions",
|
||||
"link",
|
||||
"selection",
|
||||
"annotation",
|
||||
"search",
|
||||
"speech",
|
||||
"page",
|
||||
"empty",
|
||||
"detail",
|
||||
"body",
|
||||
"option",
|
||||
"notice",
|
||||
"confirmText",
|
||||
"cancelText",
|
||||
"ariaLabel",
|
||||
"buttonText"
|
||||
],
|
||||
"astRejectRe": [
|
||||
"^\\s*$",
|
||||
"^\\d+$",
|
||||
"^[\\w-]+\\.[\\w-]+\\.\\w+$",
|
||||
"^https?:\\/\\/",
|
||||
"^data:image\\/",
|
||||
"^#([0-9a-f]{3}|[0-9a-f]{6})$",
|
||||
"^[a-z0-9]+-[a-z0-9-]+$",
|
||||
"^[a-z]+[A-Z][a-zA-Z0-9]*$",
|
||||
"^[A-Z_][A-Z0-9_]{3,}$",
|
||||
"^(px|em|rem|vh|vw|auto)$",
|
||||
"^rgba?\\(",
|
||||
"^\\.",
|
||||
"\\.(png|jpg|gif|svg|css|js|ts|md|json)$",
|
||||
"^[\\w.\\/\\\\-]+\\/[\\w.\\/\\\\-]+$"
|
||||
],
|
||||
"astValidRe": [
|
||||
"\\s",
|
||||
"[^\\x00-\\x7F]",
|
||||
"[!?,;:。!?,;:]\\s*$"
|
||||
],
|
||||
"githubProxyUrl": "https://ghproxy.net/",
|
||||
"cloudRepos": [
|
||||
"yunrr/obsidian-i18n-resources"
|
||||
],
|
||||
"defaultCloudRepo": "yunrr/obsidian-i18n-resources",
|
||||
"managerTab": "plugins",
|
||||
"pluginViewMode": "list",
|
||||
"themeViewMode": "grid",
|
||||
"autoSave": true,
|
||||
"autoDiscovery": false,
|
||||
"autoMatchStrategy": "comprehensive",
|
||||
"autoApply": false,
|
||||
"autoCheckInterval": 24,
|
||||
"autoTrustedRepos": [],
|
||||
"autoExcludeList": [],
|
||||
"autoScanMode": "incremental",
|
||||
"lastAutoCheckTime": 0
|
||||
}
|
||||
390
.obsidian/plugins/i18n/main.js
vendored
Normal file
390
.obsidian/plugins/i18n/main.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
.obsidian/plugins/i18n/manifest.json
vendored
Normal file
1
.obsidian/plugins/i18n/manifest.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"id":"i18n","name":"I18N","version":"2.0.18","minAppVersion":"1.5.8","description":"专为Obsidian打造的插件国际化工具,助力用户轻松跨越语言障碍,实现插件界面的无缝汉化。","author":"zero","authorUrl":"https://github.com/eondrcode/obsidian-i18n","fundingUrl":"https://afdian.com/a/eondr","isDesktopOnly":true}
|
||||
251
.obsidian/plugins/i18n/metadata.json
vendored
Normal file
251
.obsidian/plugins/i18n/metadata.json
vendored
Normal file
@@ -0,0 +1,251 @@
|
||||
{
|
||||
"schemaVersion": 2,
|
||||
"sources": {
|
||||
"c0fT0euCDXLgw04AMGOXjVEbVWWo4AS7": {
|
||||
"id": "c0fT0euCDXLgw04AMGOXjVEbVWWo4AS7",
|
||||
"plugin": "obsidian-custom-attachment-location",
|
||||
"title": "obsidian-custom-attachment-location",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "436a4050e3b4bf235a59490baf356d199a2ed483a8eabee5fe681ae3301a9508",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "6682f9726682f9726682f9726682f972"
|
||||
},
|
||||
"updatedAt": 1776342489533,
|
||||
"createdAt": 1776342489533
|
||||
},
|
||||
"B3S674C-whT0MjQDpACrrWE79mH1TNyU": {
|
||||
"id": "B3S674C-whT0MjQDpACrrWE79mH1TNyU",
|
||||
"plugin": "obsidian-custom-frames",
|
||||
"title": "Custom Frames",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "2095355efce346b0055e5c27c27efa263e7db9e580e5f3ed0a82c2318c1c4beb",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "25858e7e25858e7e25858e7e25858e7e"
|
||||
},
|
||||
"updatedAt": 1776342497383,
|
||||
"createdAt": 1776342497383
|
||||
},
|
||||
"EHr3n6Okxnh-vXX3P_JKIADIbqefs6vf": {
|
||||
"id": "EHr3n6Okxnh-vXX3P_JKIADIbqefs6vf",
|
||||
"plugin": "dataview",
|
||||
"title": "Dataview",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "3db09b6ee431cf5cd58eb1d0c5a975f23eeb3ba31cbe307e57ab3ddde19fd79a",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "2170f4662170f4662170f4662170f466"
|
||||
},
|
||||
"updatedAt": 1776342500503,
|
||||
"createdAt": 1776342500503
|
||||
},
|
||||
"OwEz719HugL1EQEveFbf8rxC-8RJ6qxa": {
|
||||
"id": "OwEz719HugL1EQEveFbf8rxC-8RJ6qxa",
|
||||
"plugin": "obsidian-excalidraw-plugin",
|
||||
"title": "Excalidraw",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "c702176e86dab15d2bfd51489b338ccc7fb66efd55f284f3e439a188dd49c810",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "78572dde78572dde78572dde78572dde"
|
||||
},
|
||||
"updatedAt": 1776342502072,
|
||||
"createdAt": 1776342502072
|
||||
},
|
||||
"AOHQQfFtR-lzgqSFLQVJZtWoKLIgELli": {
|
||||
"id": "AOHQQfFtR-lzgqSFLQVJZtWoKLIgELli",
|
||||
"plugin": "obsidian-git",
|
||||
"title": "Git",
|
||||
"type": "plugin",
|
||||
"origin": "local",
|
||||
"isActive": true,
|
||||
"checksum": "a3c4f72dd1b7c507353d993e3b52541de42a0c56a5e5c03b40f874e72226954a",
|
||||
"updatedAt": 1776342666552,
|
||||
"createdAt": 1776342504986
|
||||
},
|
||||
"ZpQzaf1ecvek3TjVXkcsmI8qEsg0BVud": {
|
||||
"id": "ZpQzaf1ecvek3TjVXkcsmI8qEsg0BVud",
|
||||
"plugin": "highlightr-plugin",
|
||||
"title": "Highlightr",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "56d822ae8bc3f315fa6e2485c8ea48dd23018202b45cd7a0927e6a673fdd8031",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "58d78a9458d78a9458d78a9458d78a94"
|
||||
},
|
||||
"updatedAt": 1776342506361,
|
||||
"createdAt": 1776342506361
|
||||
},
|
||||
"fPY2-osW1IClUH6XQnmOz6d56ISFOeR9": {
|
||||
"id": "fPY2-osW1IClUH6XQnmOz6d56ISFOeR9",
|
||||
"plugin": "homepage",
|
||||
"title": "Homepage",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "dc437be1df297ad0cacc5b14005079eac6ee24a5041000af89100e532f5b54e8",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "5ef151fa5ef151fa5ef151fa5ef151fa"
|
||||
},
|
||||
"updatedAt": 1776342507550,
|
||||
"createdAt": 1776342507550
|
||||
},
|
||||
"CR5aPHe1OQzsTosQljlx090kiuFI8sfb": {
|
||||
"id": "CR5aPHe1OQzsTosQljlx090kiuFI8sfb",
|
||||
"plugin": "multi-properties",
|
||||
"title": "Multi Properties",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "6efcc9db5e800792ba76361c99af645bba57a6ae494b9cf0cb6704ac879e9ccc",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "6072b29b6072b29b6072b29b6072b29b"
|
||||
},
|
||||
"updatedAt": 1776342508913,
|
||||
"createdAt": 1776342508913
|
||||
},
|
||||
"6P9TFNP8FuH4-ZjEPny-uk_a0wz1_sCk": {
|
||||
"id": "6P9TFNP8FuH4-ZjEPny-uk_a0wz1_sCk",
|
||||
"plugin": "nutstore-sync",
|
||||
"title": "Nutstore Sync",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "563790fda5713c1f8c1e8850b71c7f658705ffc987ba412f2d09713ad3cec524",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "65850d7b65850d7b65850d7b65850d7b"
|
||||
},
|
||||
"updatedAt": 1776342510504,
|
||||
"createdAt": 1776342510504
|
||||
},
|
||||
"194GXsi9NUhrCTpnLa2dLmCHzWGsTZQf": {
|
||||
"id": "194GXsi9NUhrCTpnLa2dLmCHzWGsTZQf",
|
||||
"plugin": "pdf-plus",
|
||||
"title": "PDF++",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "4359be681bf0ea40c3fda779b4000bbaa655586ce5f084c18ad6864bda6ed24f",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "3f115c183f115c183f115c183f115c18"
|
||||
},
|
||||
"updatedAt": 1776342511773,
|
||||
"createdAt": 1776342511773
|
||||
},
|
||||
"rZIO51WxK6qfCShHA9o3TwJDRsQbKj19": {
|
||||
"id": "rZIO51WxK6qfCShHA9o3TwJDRsQbKj19",
|
||||
"plugin": "quickadd",
|
||||
"title": "QuickAdd",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "09948ce06328732b2698531f27fe7789823c6cc2f3ed5eac55484ce90d8f6f41",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "7c39fee07c39fee07c39fee07c39fee0"
|
||||
},
|
||||
"updatedAt": 1776342513090,
|
||||
"createdAt": 1776342513090
|
||||
},
|
||||
"WmTySrTLXEFDLtC9Y1oZfDHz8fZ1oXOk": {
|
||||
"id": "WmTySrTLXEFDLtC9Y1oZfDHz8fZ1oXOk",
|
||||
"plugin": "obsidian-livesync",
|
||||
"title": "Self-hosted LiveSync",
|
||||
"type": "plugin",
|
||||
"origin": "local",
|
||||
"isActive": true,
|
||||
"checksum": "508b69ef6c3dda3dfbc51a4065ada9a8920998c6d164d1033bc55b464683fa64",
|
||||
"updatedAt": 1776342662846,
|
||||
"createdAt": 1776342514731
|
||||
},
|
||||
"7shVKRmdhtVBbaqwrqP3kvbvapofcfc_": {
|
||||
"id": "7shVKRmdhtVBbaqwrqP3kvbvapofcfc_",
|
||||
"plugin": "obsidian-tasks-plugin",
|
||||
"title": "Tasks",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "5e1e8e2b2434ab94e6a432380c76e3da3e96dcc85f8e053882db575c93f61752",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "65e6b1f665e6b1f665e6b1f665e6b1f6"
|
||||
},
|
||||
"updatedAt": 1776342517350,
|
||||
"createdAt": 1776342517350
|
||||
},
|
||||
"EwBFScs5OsNKjzyP4nrhEWlL1zuH6fCH": {
|
||||
"id": "EwBFScs5OsNKjzyP4nrhEWlL1zuH6fCH",
|
||||
"plugin": "templater-obsidian",
|
||||
"title": "Templater",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "66dddfbd3ae6d339599d8f4ed8c09138198bb93a88e5f1b19e38141304a5296b",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "30aedbef30aedbef30aedbef30aedbef"
|
||||
},
|
||||
"updatedAt": 1776342518939,
|
||||
"createdAt": 1776342518939
|
||||
},
|
||||
"cmsESnsfzvQZtlswGDxvmLDSy0PGyB4S": {
|
||||
"id": "cmsESnsfzvQZtlswGDxvmLDSy0PGyB4S",
|
||||
"plugin": "obsidian42-brat",
|
||||
"title": "BRAT",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "2b9e47e7cd2906f6cbbe88d01428eda6715137070ad4c5e09227c1348ff01a95",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "040c2b21040c2b21040c2b21040c2b21"
|
||||
},
|
||||
"updatedAt": 1776342547322,
|
||||
"createdAt": 1776342547322
|
||||
},
|
||||
"zAYcYTPkZ_fIDLJYOyW0ztKFMZHyV3Xj": {
|
||||
"id": "zAYcYTPkZ_fIDLJYOyW0ztKFMZHyV3Xj",
|
||||
"plugin": "obsidian-style-settings",
|
||||
"title": "Style Settings",
|
||||
"type": "plugin",
|
||||
"origin": "cloud",
|
||||
"isActive": true,
|
||||
"checksum": "fcd6e02aba8074b5f3edf9fb7370ab36347985d5f17d439723f4aeb722e7bde6",
|
||||
"cloud": {
|
||||
"owner": "yunrr",
|
||||
"repo": "obsidian-i18n-resources",
|
||||
"hash": "5d36e1d25d36e1d25d36e1d25d36e1d2"
|
||||
},
|
||||
"updatedAt": 1776342728534,
|
||||
"createdAt": 1776342728534
|
||||
}
|
||||
}
|
||||
}
|
||||
101
.obsidian/plugins/i18n/states.json
vendored
Normal file
101
.obsidian/plugins/i18n/states.json
vendored
Normal file
@@ -0,0 +1,101 @@
|
||||
{
|
||||
"plugins": {
|
||||
"obsidian-custom-attachment-location": {
|
||||
"id": "obsidian-custom-attachment-location",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "10.3.4",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"obsidian-custom-frames": {
|
||||
"id": "obsidian-custom-frames",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "2.5.0",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"dataview": {
|
||||
"id": "dataview",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "0.5.68",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"obsidian-excalidraw-plugin": {
|
||||
"id": "obsidian-excalidraw-plugin",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "2.22.0",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"obsidian-git": {
|
||||
"id": "obsidian-git",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "2.38.1",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"highlightr-plugin": {
|
||||
"id": "highlightr-plugin",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "1.2.2",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"homepage": {
|
||||
"id": "homepage",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "4.4.0",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"multi-properties": {
|
||||
"id": "multi-properties",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "1.4.0",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"nutstore-sync": {
|
||||
"id": "nutstore-sync",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "1.1.3",
|
||||
"translationVersion": "1.0.0"
|
||||
},
|
||||
"pdf-plus": {
|
||||
"id": "pdf-plus",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "0.40.31",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"templater-obsidian": {
|
||||
"id": "templater-obsidian",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "2.19.0",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"obsidian-tasks-plugin": {
|
||||
"id": "obsidian-tasks-plugin",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "7.23.1",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"obsidian-livesync": {
|
||||
"id": "obsidian-livesync",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "0.25.57",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"quickadd": {
|
||||
"id": "quickadd",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "2.12.0",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"obsidian42-brat": {
|
||||
"id": "obsidian42-brat",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "2.0.4",
|
||||
"translationVersion": "2.0.0"
|
||||
},
|
||||
"obsidian-style-settings": {
|
||||
"id": "obsidian-style-settings",
|
||||
"isApplied": true,
|
||||
"pluginVersion": "1.0.9",
|
||||
"translationVersion": "1.0.0"
|
||||
}
|
||||
},
|
||||
"themes": {}
|
||||
}
|
||||
2
.obsidian/plugins/i18n/styles.css
vendored
Normal file
2
.obsidian/plugins/i18n/styles.css
vendored
Normal file
File diff suppressed because one or more lines are too long
3559
.obsidian/plugins/i18n/translations/194GXsi9NUhrCTpnLa2dLmCHzWGsTZQf.json
vendored
Normal file
3559
.obsidian/plugins/i18n/translations/194GXsi9NUhrCTpnLa2dLmCHzWGsTZQf.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1063
.obsidian/plugins/i18n/translations/6P9TFNP8FuH4-ZjEPny-uk_a0wz1_sCk.json
vendored
Normal file
1063
.obsidian/plugins/i18n/translations/6P9TFNP8FuH4-ZjEPny-uk_a0wz1_sCk.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
2243
.obsidian/plugins/i18n/translations/7shVKRmdhtVBbaqwrqP3kvbvapofcfc_.json
vendored
Normal file
2243
.obsidian/plugins/i18n/translations/7shVKRmdhtVBbaqwrqP3kvbvapofcfc_.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
959
.obsidian/plugins/i18n/translations/AOHQQfFtR-lzgqSFLQVJZtWoKLIgELli.json
vendored
Normal file
959
.obsidian/plugins/i18n/translations/AOHQQfFtR-lzgqSFLQVJZtWoKLIgELli.json
vendored
Normal file
@@ -0,0 +1,959 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "obsidian-git",
|
||||
"version": "2.0.0",
|
||||
"title": "Git",
|
||||
"description": "Integrate Git version control with automatic backup and other advanced features.",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "2.27.0",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [],
|
||||
"regex": [
|
||||
{
|
||||
"source": "Notice(\"ObsidianGit: Base path does not exist\")",
|
||||
"target": "Notice(\"ObsidianGit: 基础路径不存在\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Authentication failed. Please try with different credentials\")",
|
||||
"target": "Notice(\"验证失败。请尝试使用不同的凭据\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"This takes longer: Getting status\",this.noticeLength)",
|
||||
"target": "Notice(\"这需要较长的时间:获取状态\",this.noticeLength)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Initializing pull\")",
|
||||
"target": "Notice(\"初始化拉取\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Finished pull\",!1)",
|
||||
"target": "Notice(\"完成拉取\",!1)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Initializing push\")",
|
||||
"target": "Notice(\"初始化推送\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Initializing clone\")",
|
||||
"target": "Notice(\"初始化克隆\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Please specify a valid number.\")",
|
||||
"target": "Notice(\"请指定一个有效的数字。\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Automatic push disabled!\")",
|
||||
"target": "Notice(\"自动推送已禁用!\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Obsidian must be restarted for the changes to take affect.\")",
|
||||
"target": "Notice(\"Obsidian 必须重新启动以使更改生效。\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Debug information copied to clipboard. May contain sensitive information!\")",
|
||||
"target": "Notice(\"调试信息已复制到剪贴板。可能包含敏感信息!\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"It seems like you are not using GitHub\")",
|
||||
"target": "Notice(\"您似乎没有使用 GitHub\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Successfully deleted repository. Reloading plugin...\")",
|
||||
"target": "Notice(\"成功删除了仓库。正在重新加载插件...\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"No repository found\")",
|
||||
"target": "Notice(\"未找到仓库\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Can't find a valid git repository. Please create one via the given command or clone an existing repo.\",1e4)",
|
||||
"target": "Notice(\"无法找到有效的 Git 仓库。请通过给定的命令创建一个,或克隆一个现有的仓库。\",1e4)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Initialized new repo\")",
|
||||
"target": "Notice(\"初始化新仓库\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Aborted clone\")",
|
||||
"target": "Notice(\"已终止克隆 clone\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Invalid depth. Aborting clone.\")",
|
||||
"target": "Notice(\"无效的深度。中止克隆。\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(`Cloning new repo into \"${a}\"`)",
|
||||
"target": "Notice(`将新的仓库克隆到 \"${a}\"`)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Cloned new repo.\")",
|
||||
"target": "Notice(\"克隆了新的仓库。\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Please restart Obsidian\")",
|
||||
"target": "Notice(\"请重启 Obsidian\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Auto backup: Please enter a custom commit message. Leave empty to abort\")",
|
||||
"target": "Notice(\"自动备份:请输入自定义提交信息。留空以中止\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"No upstream branch is set. Please select one.\")",
|
||||
"target": "Notice(\"没有设置上游分支。请选择一个。\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"All local changes have been discarded. New files remain untouched.\")",
|
||||
"target": "Notice(\"所有本地更改已被丢弃。新文件保持不变。\")"
|
||||
},
|
||||
{
|
||||
"source": ".log(`Did not delete ${y} because directory is not empty`)",
|
||||
"target": ".log(`未删除 ${y},因为目录不为空`)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"No tracking branch found. Ignoring pull of main repo and updating submodules only.\")",
|
||||
"target": ".log(\"未找到跟踪分支。将忽略主仓库的拉取,仅更新子模块。\")"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"No tracking branch found. Ignoring push of main repo and updating submodules only.\")",
|
||||
"target": ".log(\"未找到跟踪分支。将忽略主仓库的推送,仅更新子模块。\")"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"Something weird happened:\")",
|
||||
"target": ".log(\"奇怪的事情发生了:\")"
|
||||
},
|
||||
{
|
||||
"source": ".log(this.plg.manifest.name+\": Enabled line authoring.\")",
|
||||
"target": ".log(this.plg.manifest.name+\": 启用行作者功能。\")"
|
||||
},
|
||||
{
|
||||
"source": ".log(this.plg.manifest.name+\": Disabled line authoring.\")",
|
||||
"target": ".log(this.plg.manifest.name+\": 禁用行作者功能。\")"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"Something weird happened. The 'checkRequirements' result is \"+r)",
|
||||
"target": ".log(\"奇怪的事情发生了。'checkRequirements'的结果是\"+r)"
|
||||
},
|
||||
{
|
||||
"source": ".error(\"Failed to parse lines, starting in 0!\")",
|
||||
"target": ".error(\"解析行失败,从 0 开始!\")"
|
||||
},
|
||||
{
|
||||
"source": ".error(\"Unknown state reached while processing groups of lines\",a,s,o)",
|
||||
"target": ".error(\"未知状态在处理行组时达到\",a,s,o)"
|
||||
},
|
||||
{
|
||||
"source": "name:\"History\"",
|
||||
"target": "name:\"历史\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Open history view\"",
|
||||
"target": "name:\"打开历史视图\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Open diff view\"",
|
||||
"target": "name:\"打开差异视图\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Open file on GitHub\"",
|
||||
"target": "name:\"在 GitHub 上打开文件\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Commit-and-sync\"",
|
||||
"target": "name:\"提交并同步\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Commit all changes\"",
|
||||
"target": "name:\"提交所有更改\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Commit Amend\"",
|
||||
"target": "name:\"提交修改\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Stage current file\"",
|
||||
"target": "name:\"暂存当前文件\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Set upstream branch\"",
|
||||
"target": "name:\"设置上游分支\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Initialize a new repo\"",
|
||||
"target": "name:\"初始化新仓库\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Clone an existing remote repo\"",
|
||||
"target": "name:\"克隆现有的远程仓库\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"List changed files\"",
|
||||
"target": "name:\"列出已更改的文件\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Create new branch\"",
|
||||
"target": "name:\"创建新分支\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Delete branch\"",
|
||||
"target": "name:\"删除分支\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Toggle line author information\"",
|
||||
"target": "name:\"切换行作者信息\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"Save\"",
|
||||
"target": "text:\"保存\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"File not found: \"",
|
||||
"target": "text:\"文件未找到:\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"Cancel\"",
|
||||
"target": "text:\"取消\""
|
||||
},
|
||||
{
|
||||
"source": ".setText(\"Copy Debug Information\")",
|
||||
"target": ".setText(\"复制调试信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setText(`Debugging and logging:\nYou can always see the logs of this and every other plugin by opening the console with`)",
|
||||
"target": ".setText(`调试和日志记录:\n使用以下命令打开控制台,即可查看本插件和其他所有插件的日志`)"
|
||||
},
|
||||
{
|
||||
"source": ".setText(\"Edit .gitignore\")",
|
||||
"target": ".setText(\"编辑 .gitignore\")"
|
||||
},
|
||||
{
|
||||
"source": ".setText(`${this.deletion?\"Delete\":\"Discard\"} this file?`)",
|
||||
"target": ".setText(`${this.deletion?\"删除\":\"放弃\"} 这个文件?`)"
|
||||
},
|
||||
{
|
||||
"source": ".setText(`Do you really want to ${this.deletion?\"delete\":\"discard the changes of\"} \"${this.filename}\"`)",
|
||||
"target": ".setText(`你真的想 ${this.deletion?\"删除\":\"放弃更改\"} \"${this.filename}\" 吗?`)"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Automatic\")",
|
||||
"target": ".setName(\"自动\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Split timers for automatic commit and sync\")",
|
||||
"target": ".setName(\"用于自动提交和同步的分割计时器\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(`Auto ${i} after stopping file edits`)",
|
||||
"target": ".setName(`在停止文件编辑后自动 ${i} `)"
|
||||
},
|
||||
{
|
||||
"source": ".setName(`Auto ${i} after latest commit`)",
|
||||
"target": ".setName(`在最新提交后自动 ${i} `)"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Auto push interval (minutes)\")",
|
||||
"target": ".setName(\"自动推送间隔(分钟)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Auto pull interval (minutes)\")",
|
||||
"target": ".setName(\"自动拉取间隔(分钟)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(`Specify custom commit message on auto ${i}`)",
|
||||
"target": ".setName(`在自动 ${i} 中指定自定义提交消息`)"
|
||||
},
|
||||
{
|
||||
"source": ".setName(`Commit message on auto ${i}`)",
|
||||
"target": ".setName(`自动 ${i} 的提交信息`)"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Commit message\")",
|
||||
"target": ".setName(\"提交信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Commit message on manual commit\")",
|
||||
"target": ".setName(\"手动提交时的提交信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"{{date}} placeholder format\")",
|
||||
"target": ".setName(\"{{date}} 占位符格式\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"{{hostname}} placeholder replacement\")",
|
||||
"target": ".setName(\"{{hostname}} 占位符替换\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Merge strategy\")",
|
||||
"target": ".setName(\"合并策略\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Pull on startup\")",
|
||||
"target": ".setName(\"开机时拉取\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Line author information\")",
|
||||
"target": ".setName(\"线路作者信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Commit-and-sync\")",
|
||||
"target": ".setName(\"提交并同步\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Push on commit-and-sync\")",
|
||||
"target": ".setName(\"提交并同步时推送到远程仓库\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Pull on commit-and-sync\")",
|
||||
"target": ".setName(\"提交并同步时从远程仓库拉取\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"History view\")",
|
||||
"target": ".setName(\"历史视图\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Show Author\")",
|
||||
"target": ".setName(\"显示作者\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Show Date\")",
|
||||
"target": ".setName(\"显示日期\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Source control view\")",
|
||||
"target": ".setName(\"源控制视图\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Automatically refresh source control view on file changes\")",
|
||||
"target": ".setName(\"自动刷新文件更改的源控制视图\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Source control view refresh interval\")",
|
||||
"target": ".setName(\"源控制视图刷新间隔\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Miscellaneous\")",
|
||||
"target": ".setName(\"杂项\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Disable notifications\")",
|
||||
"target": ".setName(\"禁用通知\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Hide notifications for no changes\")",
|
||||
"target": ".setName(\"隐藏无更改的通知\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Show status bar\")",
|
||||
"target": ".setName(\"显示状态栏\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Show stage/unstage button in file menu\")",
|
||||
"target": ".setName(\"显示文件菜单中的暂存/取消暂存按钮\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Show branch status bar\")",
|
||||
"target": ".setName(\"显示分支状态栏\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Show the count of modified files in the status bar\")",
|
||||
"target": ".setName(\"显示状态栏中修改文件的数量\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Authentication/commit author\")",
|
||||
"target": ".setName(\"身份验证/提交作者\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Commit author\")",
|
||||
"target": ".setName(\"提交作者\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Username on your git server. E.g. your username on GitHub\")",
|
||||
"target": ".setName(\"在你的 Git 服务器上的用户名。例如:你在 GitHub 上的用户名\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Password/Personal access token\")",
|
||||
"target": ".setName(\"密码/个人访问令牌\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Author name for commit\")",
|
||||
"target": ".setName(\"提交的作者名称\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Author email for commit\")",
|
||||
"target": ".setName(\"提交作者的电子邮件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Advanced\")",
|
||||
"target": ".setName(\"高级\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Update submodules\")",
|
||||
"target": ".setName(\"更新子模块\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Submodule recurse checkout/switch\")",
|
||||
"target": ".setName(\"子模块递归检出/切换\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Custom Git binary path\")",
|
||||
"target": ".setName(\"自定义 Git 二进制文件路径\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Additional environment variables\")",
|
||||
"target": ".setName(\"额外的环境变量\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Additional PATH environment variable paths\")",
|
||||
"target": ".setName(\"其他 PATH 环境变量路径\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Reload with new environment variables\")",
|
||||
"target": ".setName(\"重新加载新的环境变量\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Custom base path (Git repository path)\")",
|
||||
"target": ".setName(\"自定义基础路径(Git 仓库路径)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Custom Git directory path (Instead of '.git')\")",
|
||||
"target": ".setName(\"自定义 Git 目录路径(取代 .git)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Disable on this device\")",
|
||||
"target": ".setName(\"在此设备上禁用\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Support\")",
|
||||
"target": ".setName(\"支持\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Show commit authoring information next to each line\")",
|
||||
"target": ".setName(\"显示每行旁边的提交作者信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Follow movement and copies across files and commits\")",
|
||||
"target": ".setName(\"跟踪移动并跨文件和提交进行复制\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Show commit hash\")",
|
||||
"target": ".setName(\"显示提交哈希值\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Author name display\")",
|
||||
"target": ".setName(\"显示作者姓名\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Authoring date display\")",
|
||||
"target": ".setName(\"显示创建日期\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Custom authoring date format\")",
|
||||
"target": ".setName(\"自定义作者日期格式\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Authoring date display timezone\")",
|
||||
"target": ".setName(\"创建日期显示时区:\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Oldest age in coloring\")",
|
||||
"target": ".setName(\"着色年龄最大\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Text color\")",
|
||||
"target": ".setName(\"文本颜色\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Ignore whitespace and newlines in changes\")",
|
||||
"target": ".setName(\"忽略更改中的空格和换行符\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Enable to use one interval for commit and another for sync.\")",
|
||||
"target": ".setDesc(\"允许使用一个间隔进行提交,另一个间隔进行同步。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(`${r.settings.differentIntervalCommitAndPush?\"Commit\":\"Commit and sync\"} changes every X minutes. Set to 0 (default) to disable. (See below setting for further configuration!)`)",
|
||||
"target": ".setDesc(`${r.settings.differentIntervalCommitAndPush?\"提交\":\"提交并同步\"}每 X 分钟变更。设置为 0(默认)以禁用。(请参见下面的设置以进行进一步配置!)`)"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(`If turned on, sets last auto ${i} timestamp to the latest commit timestamp. This reduces the frequency of auto ${i} when doing manual commits.`)",
|
||||
"target": ".setDesc(`如果启用,将最后一次自动 ${i} 时间戳设置为最新的提交时间戳。这减少了在进行手动提交时自动 ${i} 的频率。`)"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Push commits every X minutes. Set to 0 (default) to disable.\")",
|
||||
"target": ".setDesc(\"每X分钟推送提交。设置为0(默认)以禁用。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Pull changes every X minutes. Set to 0 (default) to disable.\")",
|
||||
"target": ".setDesc(\"每 X 分钟拉取更改。设置为 0(默认)以禁用。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"You will get a pop up to specify your message.\")",
|
||||
"target": ".setDesc(\"您将收到一个弹出窗口以指定您的消息。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Available placeholders: {{date}} (see below), {{hostname}} (see below), {{numFiles}} (number of changed files in the commit) and {{files}} (changed files in commit message).\")",
|
||||
"target": ".setDesc(\"可用占位符:{{date}}(见下文)、{{hostname}}(见下文)、{{numFiles}}(提交中更改的文件数量)和{{files}}(提交信息中的更改文件)。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Specify custom hostname for every device.\")",
|
||||
"target": ".setDesc(\"为每个设备指定自定义主机名。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Decide how to integrate commits from your remote branch into your local branch.\")",
|
||||
"target": ".setDesc(\"决定如何将远程分支中的提交集成到本地分支中。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Automatically pull commits when Obsidian starts.\")",
|
||||
"target": ".setDesc(\"自动在 Obsidian 启动时拉取提交。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Commit-and-sync with default settings means staging everything -> committing -> pulling -> pushing. Ideally this is a single action that you do regularly to keep your local and remote repository in sync.\")",
|
||||
"target": ".setDesc(\"Commit-and-sync with default settings 意味着暂存所有内容 -> 提交 -> 拉取 -> 推送。理想情况下,这是一个你定期执行的单一操作,用于保持本地和远程仓库的同步。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Most of the time you want to push after committing. Turning this off turns a commit-and-sync action into commit only. It will still be called commit-and-sync.\")",
|
||||
"target": ".setDesc(\"大多数情况下,您希望在提交后进行推送。关闭此选项会将提交和同步操作变为仅提交。它仍将被称为提交和同步。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"On commit-and-sync, pull commits before pushing. Turning this off turns a commit-and-sync action into commit and push only.\")",
|
||||
"target": ".setDesc(\"在提交和同步时,在推送之前拉取提交。关闭此选项会将提交和同步操作变为仅提交和推送。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Show the author of the commit in the history view.\")",
|
||||
"target": ".setDesc(\"在历史视图中显示提交的作者。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Show the date of the commit in the history view. The {{date}} placeholder format is used to display the date.\")",
|
||||
"target": ".setDesc(\"在历史视图中显示提交的日期。使用 {{date}} 占位符格式来显示日期。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"On slower machines this may cause lags. If so, just disable this option.\")",
|
||||
"target": ".setDesc(\"在较慢的机器上,这可能会导致延迟。如果是这样,请禁用此选项。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Milliseconds to wait after file change before refreshing the Source Control View.\")",
|
||||
"target": ".setDesc(\"在文件更改后等待的毫秒数,然后刷新源控制视图。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Disable notifications for git operations to minimize distraction (refer to status bar for updates). Errors are still shown as notifications even if you enable this setting.\")",
|
||||
"target": ".setDesc(\"禁用 Git 操作的通知以减少干扰(请参阅状态栏以获取更新)。即使您启用此设置,错误仍会作为通知显示。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Don't show notifications when there are no changes to commit or push.\")",
|
||||
"target": ".setDesc(\"当没有需要提交或推送的更改时,不显示通知。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Obsidian must be restarted for the changes to take affect.\")",
|
||||
"target": ".setDesc(\"Obsidian必须重启以使更改生效。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Type in your password. You won't be able to see it again.\")",
|
||||
"target": ".setDesc(\"输入您的密码。您将无法再次看到它。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"These settings usually don't need to be changed, but may be requried for special setups.\")",
|
||||
"target": ".setDesc(\"这些设置通常无需更改,但在特殊配置中可能需要。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc('\"Commit-and-sync\" and \"pull\" takes care of submodules. Missing features: Conflicted files, count of pulled/pushed/committed files. Tracking branch needs to be set for each submodule.')",
|
||||
"target": ".setDesc('\"提交和同步\"以及\"拉取\"处理子模块。缺失的功能:冲突文件、拉取/推送/提交文件的数量。每个子模块需要设置跟踪分支。')"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Whenever a checkout happens on the root repository, recurse the checkout on the submodules (if the branches exist).\")",
|
||||
"target": ".setDesc(\"每当根仓库发生检出时,递归检出子模块(如果分支存在)。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Use each line for a new environment variable in the format KEY=VALUE .\")",
|
||||
"target": ".setDesc(\"使用每一行作为新环境变量,格式为 KEY=VALUE 。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Removing previously added environment variables will not take effect until Obsidian is restarted.\")",
|
||||
"target": ".setDesc(\"移除之前添加的环境变量直到 Obsidian 重启才生效。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(`\n Sets the relative path to the vault from which the Git binary should be executed.\n Mostly used to set the path to the Git repository, which is only required if the Git repository is below the vault root directory. Use \"\\\\\" instead of \"/\" on Windows.\n `)",
|
||||
"target": ".setDesc(`\n 设置 Git 二进制文件应从哪个存储库执行的相对路径。主要用于设置 Git 仓库的路径,只有当 Git 仓库位于分库根目录之下时才需要。在 Windows 下使用\"\\\\\"代替\"/\"。\n `)"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc('Requires restart of Obsidian to take effect. Use \"\\\\\" instead of \"/\" on Windows.')",
|
||||
"target": ".setDesc('需要重启 Obsidian 才能生效。在 Windows 上使用\"\\\\\"而不是\"/\"。')"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Disables the plugin on this device. This setting is not synced.\")",
|
||||
"target": ".setDesc(\"禁用此设备上的插件。此设置不会同步。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"If you like this Plugin, consider donating to support continued development.\")",
|
||||
"target": ".setDesc(\"如果您喜欢这个插件,请考虑捐赠以支持持续开发。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"If and how the date and time of authoring the line is displayed\")",
|
||||
"target": ".setDesc(\"如果以及如何显示该行的创作日期和时间\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"Type your message and select optional the version with the added date.\")",
|
||||
"target": ".setPlaceholder(\"输入您的消息并可选择添加日期的版本。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"Not supported files will be opened by default app!\")",
|
||||
"target": ".setPlaceholder(\"不支持的文件将由默认应用程序打开!\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"Select branch to checkout\")",
|
||||
"target": ".setPlaceholder(\"选择要检出的分支\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Copy commit hash\")",
|
||||
"target": ".setTitle(\"复制提交哈希\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Git: Stage\")",
|
||||
"target": ".setTitle(\"Git: 暂存\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Git: Unstage\")",
|
||||
"target": ".setTitle(\"Git: 撤销暂存\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Git: Add to .gitignore\")",
|
||||
"target": ".setTitle(\"Git: 添加到 .gitignore\")"
|
||||
},
|
||||
{
|
||||
"source": ".innerText=`Color for ${i} commits`",
|
||||
"target": ".innerText=`${i} 提交的颜色`"
|
||||
},
|
||||
{
|
||||
"source": "name:\"Source Control\"",
|
||||
"target": "name:\"源代码管理\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Diff View\"",
|
||||
"target": "name:\"差异视图\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Edit .gitignore\"",
|
||||
"target": "name:\"编辑.gitignore\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Open source control view\"",
|
||||
"target": "name:\"开源控制视图\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Open file history on GitHub\"",
|
||||
"target": "name:\"GitHub 上的打开文件历史记录\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Pull\"",
|
||||
"target": "name:\"拉取\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Fetch\"",
|
||||
"target": "name:\"取回\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Switch to remote branch\"",
|
||||
"target": "name:\"切换到远程分支\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Add file to gitignore\"",
|
||||
"target": "name:\"将文件添加到 gitignore\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Commit-and-sync and then close Obsidian\"",
|
||||
"target": "name:\"提交并同步,然后关闭 Obsidian\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Commit-and-sync with specific message\"",
|
||||
"target": "name:\"提交并同步特定消息\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Commit all changes with specific message\"",
|
||||
"target": "name:\"用特定消息提交所有更改\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Commit staged\"",
|
||||
"target": "name:\"提交阶段\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Commit staged with specific message\"",
|
||||
"target": "name:\"提交阶段带有特定消息\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Push\"",
|
||||
"target": "name:\"推送\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Unstage current file\"",
|
||||
"target": "name:\"取消当前文件的暂存\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Edit remotes\"",
|
||||
"target": "name:\"编辑遥控器\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Remove remote\"",
|
||||
"target": "name:\"删除遥控器\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"CAUTION: Delete repository\"",
|
||||
"target": "name:\"小心:删除存储库\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Switch branch\"",
|
||||
"target": "name:\"交换机分支\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"CAUTION: Discard all changes\"",
|
||||
"target": "name:\"小心:放弃所有更改\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"fileIcon\"",
|
||||
"target": "name:\"文件图标\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"fileTag\"",
|
||||
"target": "name:\"文件标签\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"Git is not ready. When all settings are correct you can configure commit-sync, etc.\"",
|
||||
"target": "text:\"Git还没有准备好。当所有设置都正确时,您可以配置提交同步等。\""
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Preview\")",
|
||||
"target": ".setButtonText(\"预览\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Reload\")",
|
||||
"target": ".setButtonText(\"重新加载\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Preview commit message\")",
|
||||
"target": ".setName(\"预览提交信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"List filenames affected by commit in the commit body\")",
|
||||
"target": ".setName(\"在提交内容中列出受提交影响的文件名\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Donate\")",
|
||||
"target": ".setName(\"捐赠\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Use each line for one path\")",
|
||||
"target": ".setDesc(\"每行使用一个路径\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Only available on desktop currently.\")",
|
||||
"target": ".setDesc(\"目前仅在桌面版可用。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"If and how the author is displayed\")",
|
||||
"target": ".setDesc(\"作者的显示方式(如果有)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"vault backup: {{date}}\")",
|
||||
"target": ".setPlaceholder(\"保险库备份:{{date}}\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"GIT_DIR=/path/to/git/dir\")",
|
||||
"target": ".setPlaceholder(\"GIT_DIR=/path/to/git/目录\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"directory/directory-with-git-repo\")",
|
||||
"target": ".setPlaceholder(\"目录/带 Git 仓库的目录\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Split automatic commit and push\")",
|
||||
"target": ".setName(\"自动提交和推送分离\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(`Vault ${commitOrBackup} interval (minutes)`)",
|
||||
"target": ".setName(`保险库 ${commitOrBackup} 间隔(分钟)`)"
|
||||
},
|
||||
{
|
||||
"source": ".setName(`Auto Backup after stopping file edits`)",
|
||||
"target": ".setName(`停止文件编辑后自动备份`)"
|
||||
},
|
||||
{
|
||||
"source": ".setName(`Auto ${commitOrBackup} after latest commit`)",
|
||||
"target": ".setName(`在最新提交后自动 ${commitOrBackup}`)"
|
||||
},
|
||||
{
|
||||
"source": ".setName(`Vault push interval (minutes)`)",
|
||||
"target": ".setName(`仓库推送间隔(分钟)`)"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Specify custom commit message on auto backup\")",
|
||||
"target": ".setName(\"在自动备份时指定自定义提交信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Commit message on auto backup/commit\")",
|
||||
"target": ".setName(\"自动备份/提交的提交信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Commit message on manual backup/commit\")",
|
||||
"target": ".setName(\"手动备份/提交的提交信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Backup\")",
|
||||
"target": ".setName(\"备份\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Sync Method\")",
|
||||
"target": ".setName(\"同步方法\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Pull updates on startup\")",
|
||||
"target": ".setName(\"启动时检查更新\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Push on backup\")",
|
||||
"target": ".setName(\"备份推送\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Pull changes before push\")",
|
||||
"target": ".setName(\"在推送前拉取变更\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Selects the method used for handling new changes found in your remote git repository.\"\n )",
|
||||
"target": ".setDesc(\n \"选择处理远程 Git 仓库中新变更的方法。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Automatically pull updates when Obsidian starts\")",
|
||||
"target": ".setDesc(\"启动 Obsidian 时自动拉取更新\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Disable to only commit changes\")",
|
||||
"target": ".setDesc(\"禁用以仅提交更改\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Commit -> pull -> push (Only if pushing is enabled)\")",
|
||||
"target": ".setDesc(\"提交 -> 拉取 -> 推送(仅当启用推送时)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Show the author of the commit in the history view\")",
|
||||
"target": ".setDesc(\"在历史视图中显示提交的作者\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Show the date of the commit in the history view. The {{date}} placeholder format is used to display the date.\"\n )",
|
||||
"target": ".setDesc(\n \"在历史视图中显示提交的日期。使用 {{date}} 占位符格式来显示日期。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"On slower machines this may cause lags. If so, just disable this option\"\n )",
|
||||
"target": ".setDesc(\n \"在较慢的机器上,这可能会导致延迟。如果出现这种情况,请禁用此选项。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Milliseconds to wait after file change before refreshing the Source Control View\"\n )",
|
||||
"target": ".setDesc(\n \"在文件更改后等待的毫秒数,之后刷新源代码控制视图\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Disable notifications for git operations to minimize distraction (refer to status bar for updates). Errors are still shown as notifications even if you enable this setting\"\n )",
|
||||
"target": ".setDesc(\n \"禁用 Git 操作的通知以减少干扰(请参阅状态栏以获取更新)。即使启用此设置,错误仍会以通知形式显示。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Don't show notifications when there are no changes to commit/push\"\n )",
|
||||
"target": ".setDesc(\n \"当没有更改要提交/推送时,不显示通知\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Obsidian must be restarted for the changes to take affect\"\n )",
|
||||
"target": ".setDesc(\n \"Obsidian 必须重启以使更改生效\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Type in your password. You won't be able to see it again.\"\n )",
|
||||
"target": ".setDesc(\n \"输入你的密码。你将无法再次查看它。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n '\"Create backup\" and \"pull\" takes care of submodules. Missing features: Conflicted files, count of pulled/pushed/committed files. Tracking branch needs to be set for each submodule'\n )",
|
||||
"target": ".setDesc(\n '创建备份”和“拉取”会处理子模块。缺失的功能:冲突文件,已拉取/推送/提交的文件数量。每个子模块需要设置跟踪分支。'\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Whenever a checkout happens on the root repository, recurse the checkout on the submodules (if the branches exist).\"\n )",
|
||||
"target": ".setDesc(\n \"每当在根仓库上进行检出时,对子模块递归进行检出(如果分支存在)。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Use each line for a new environment variable in the format KEY=VALUE\"\n )",
|
||||
"target": ".setDesc(\n \"使用每行来表示一个新的环境变量,格式为 KEY=VALUE\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n `Requires restart of Obsidian to take effect. Use \"\\\\\" instead of \"/\" on Windows.`\n )",
|
||||
"target": ".setDesc(\n `需要重启 Obsidian 才能生效。在 Windows 上使用 \"\\\\\" 代替 \"/\".`\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Disables the plugin on this device. This setting is not synced.\"\n )",
|
||||
"target": ".setDesc(\n \"在该设备上禁用插件。此设置不会同步。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"If you like this Plugin, consider donating to support continued development.\"\n )",
|
||||
"target": ".setDesc(\n \"如果你喜欢这个插件,考虑捐款支持持续开发。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"If and how the date and time of authoring the line is displayed\"\n )",
|
||||
"target": ".setDesc(\n \"作者编写行的日期和时间的显示方式(如果有的话)\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\n \"Not supported files will be opened by default app!\"\n )",
|
||||
"target": ".setPlaceholder(\n \"不支持的文件将默认由默认应用程序打开!\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\n \"Type your message and select optional the version with the added date.\"\n )",
|
||||
"target": ".setPlaceholder(\n \"输入您的信息并可选地选择带有添加日期的版本。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"button\", {\n text: \"Cancel\"\n })",
|
||||
"target": ".createEl(\"按钮\", {\n text: \"Cancel\"\n })"
|
||||
},
|
||||
{
|
||||
"source": "name:\"Amend staged\"",
|
||||
"target": "name:\"修改阶段\""
|
||||
},
|
||||
{
|
||||
"source": ".addRibbonIcon(\"git-pull-request\",\"Open Git source control\"",
|
||||
"target": ".addRibbonIcon(\"git-pull-request\",\"打开Git源代码管理\""
|
||||
},
|
||||
{
|
||||
"source": "T(s,\"aria-label\",\"Commit\")",
|
||||
"target": "T(s,\"aria-label\",\"提交\")"
|
||||
},
|
||||
{
|
||||
"source": "T(b,\"aria-label\",\"Refresh\")",
|
||||
"target": "T(b,\"aria-label\",\"刷新\")"
|
||||
},
|
||||
{
|
||||
"source": "T(p,\"aria-label\",\"Pull\")",
|
||||
"target": "T(p,\"aria-label\",\"拉取\")"
|
||||
},
|
||||
{
|
||||
"source": "T(h,\"aria-label\",\"Push\")",
|
||||
"target": "T(h,\"aria-label\",\"推送\")"
|
||||
},
|
||||
{
|
||||
"source": "T(m,\"aria-label\",\"Change Layout\")",
|
||||
"target": "T(m,\"aria-label\",\"更改布局\")"
|
||||
},
|
||||
{
|
||||
"source": "T(u,\"aria-label\",\"Unstage all\")",
|
||||
"target": "T(u,\"aria-label\",\"取消所有\")"
|
||||
},
|
||||
{
|
||||
"source": "T(d,\"aria-label\",\"Stage\")",
|
||||
"target": "T(d,\"aria-label\",\"暂存\")"
|
||||
},
|
||||
{
|
||||
"source": "T(i,\"aria-label\",\"Commit-and-sync\")",
|
||||
"target": "T(i,\"aria-label\",\"提交并同步\")"
|
||||
},
|
||||
{
|
||||
"source": "T(l,\"aria-label\",\"Stage all\")",
|
||||
"target": "T(l,\"aria-label\",\"暂存所有\")"
|
||||
},
|
||||
{
|
||||
"source": ".displayError(`Cannot run git command. Trying to run: '${this.localStorage.getGitPath()||\"git\"}' .`)",
|
||||
"target": ".displayError(`无法运行git命令。尝试运行: '${this.localStorage.getGitPath()||\"git\"}' .`)"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
223
.obsidian/plugins/i18n/translations/B3S674C-whT0MjQDpACrrWE79mH1TNyU.json
vendored
Normal file
223
.obsidian/plugins/i18n/translations/B3S674C-whT0MjQDpACrrWE79mH1TNyU.json
vendored
Normal file
@@ -0,0 +1,223 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "obsidian-custom-frames",
|
||||
"version": "2.0.0",
|
||||
"title": "Custom Frames",
|
||||
"description": "A plugin that turns web apps into panes using iframes with custom styling. Also comes with presets for Google Keep, Todoist and more.",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "2.5.0",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [],
|
||||
"regex": [
|
||||
{
|
||||
"source": "name: \"Open dev tools\"",
|
||||
"target": "name: \"打开开发者工具\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Copy link\"",
|
||||
"target": "name: \"复制链接\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Open in browser\"",
|
||||
"target": "name: \"在浏览器中打开\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Refresh\"",
|
||||
"target": "name: \"刷新\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Go forward\"",
|
||||
"target": "name: \"前进\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Go back\"",
|
||||
"target": "name: \"后退\""
|
||||
},
|
||||
{
|
||||
"source": "name: `Open ${frame.displayName}`",
|
||||
"target": "name: `打开 ${frame.displayName}`"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Show Settings\")",
|
||||
"target": ".setButtonText(\"显示设置\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Display Name\")",
|
||||
"target": ".setName(\"显示名称\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Icon\")",
|
||||
"target": ".setName(\"图标\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"URL\")",
|
||||
"target": ".setName(\"URL\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Disable on Mobile\")",
|
||||
"target": ".setName(\"在移动设备上禁用\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Force iframe\")",
|
||||
"target": ".setName(\"强制使用iframe\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Page Zoom\")",
|
||||
"target": ".setName(\"页面缩放\")"
|
||||
},
|
||||
{
|
||||
"source": "name: \"Return to original page\"",
|
||||
"target": "name: \"返回原始页面\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Please be advised that, when adding a site as a custom frame, you potentially expose personal information you enter to other plugins you have installed. For more information, see \"",
|
||||
"target": "text: \"请注意,当您将网站添加为自定义标签页时,您输入的个人信息可能会暴露给您安装的其他插件。有关更多信息,请参阅 \""
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Remove Frame\")",
|
||||
"target": ".setButtonText(\"移除标签页\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Add Frame\")",
|
||||
"target": ".setButtonText(\"添加标签页\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Frame Padding\")",
|
||||
"target": ".setName(\"标签页内边距\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Add Ribbon Icon\")",
|
||||
"target": ".setName(\"添加侧边栏图标\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Open in Center\")",
|
||||
"target": ".setName(\"在中间打开\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Additional CSS\")",
|
||||
"target": ".setName(\"额外CSS\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Additional JavaScript\")",
|
||||
"target": ".setName(\"额外JavaScript\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"The padding that should be left around the inside of custom frame panes, in pixels.\")",
|
||||
"target": ".setDesc(\"自定义标签页内部周围应留的内边距,单位为像素。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"The display name that this frame should have.\")",
|
||||
"target": ".setDesc(\"此标签页应具有的显示名称。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"The URL that should be opened in this frame.\")",
|
||||
"target": ".setDesc(\"此标签页中应打开的URL。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Custom Frames is a lot more restricted on mobile devices and doesn't allow for the same types of content to be displayed. If a frame doesn't work as expected on mobile, it can be disabled.\")",
|
||||
"target": ".setDesc(\"自定义标签页在移动设备上受到更多限制,不支持显示相同类型的内容。如果某个标签页在移动设备上无法正常工作,可以将其禁用。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Whether a button to open this frame should be added to the ribbon.\")",
|
||||
"target": ".setDesc(\"是否应在侧边栏添加一个按钮来打开此标签页。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Whether this frame should be opened in the unpinned center editor rather than one of the panes on the side. This is useful for sites that don't work well in a narrow view, or sites that don't require a note to be open when viewed.\")",
|
||||
"target": ".setDesc(\"此标签页是否应在未固定的中心编辑器中打开,而不是在侧边栏中打开。这对于在狭窄视图下效果不佳的网站,或在查看时不需要打开笔记的网站很有用。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"The zoom that this frame's page should be displayed with, as a percentage.\")",
|
||||
"target": ".setDesc(\"此标签页页面应显示的缩放比例,以百分比表示。\")"
|
||||
},
|
||||
{
|
||||
"source": ".log(`Skipping frame ${name} which is hidden on mobile`)",
|
||||
"target": ".log(`跳过在移动设备上隐藏的标签页 ${name}`)"
|
||||
},
|
||||
{
|
||||
"source": ".log(`Registering frame ${name} for URL ${frame.url}`)",
|
||||
"target": ".log(`为URL ${frame.url} 注册标签页 ${name}`)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Couldn't register frame ${name}, is there already one with the same name?`)",
|
||||
"target": ".error(`无法注册标签页 ${name},是否已存在同名标签页?`)"
|
||||
},
|
||||
{
|
||||
"source": "text: \"Custom Frames Settings\"",
|
||||
"target": "text: \"自定义标签页设置\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Please note that Obsidian has to be restarted or reloaded for most of these settings to take effect.\"",
|
||||
"target": "text: \"请注意,大多数设置需要重启或重新加载Obsidian才能生效。\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"The icon that this frame's pane should have. The names of any \"",
|
||||
"target": "text: \"此标签页应具有的图标。可以使用任何 \""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Lucide icons\"",
|
||||
"target": "text: \"Lucide 图标\""
|
||||
},
|
||||
{
|
||||
"source": "text: \" can be used.\"",
|
||||
"target": "text: \" 的名称。\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Whether this frame should use iframes on desktop as opposed to Electron webviews.\"",
|
||||
"target": "text: \"此标签页在桌面端是使用iframe还是Electron webviews。\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Only enable this setting if the frame is causing issues or frequent crashes. This setting causes all Desktop-only settings to be ignored.\"",
|
||||
"target": "text: \"仅当此标签页导致问题或频繁崩溃时才启用此设置。此设置会导致所有仅限桌面端的设置被忽略。\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"A snippet of additional CSS that should be applied to this frame.\"",
|
||||
"target": "text: \"应应用于此标签页的额外CSS代码片段。\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Note that this is only applied on Desktop.\"",
|
||||
"target": "text: \"请注意,这仅适用于桌面端。\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"A snippet of additional JavaScript that should be applied to this frame.\"",
|
||||
"target": "text: \"应应用于此标签页的额外JavaScript代码片段。\""
|
||||
},
|
||||
{
|
||||
"source": "text: `Create a new frame, either from a preset shipped with the plugin, or a custom one that you can edit yourself. Each frame's pane can be opened using the \"Custom Frames: Open\" command.`",
|
||||
"target": "text: `创建一个新标签页,可以从插件自带的预设中选择,也可以自定义编辑。每个标签页的标签页都可以通过“自定义标签页:打开”命令打开。`"
|
||||
},
|
||||
{
|
||||
"source": "text: \"this discussion\"",
|
||||
"target": "text: \"此讨论\""
|
||||
},
|
||||
{
|
||||
"source": "text: \".\"",
|
||||
"target": "text: \"。\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Need help using the plugin? Feel free to join the Discord server!\"",
|
||||
"target": "text: \"需要插件使用帮助?欢迎加入Discord服务器!\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"If you like this plugin and want to support its development, you can do so through my website by clicking this fancy image!\"",
|
||||
"target": "text: \"如果您喜欢此插件并希望支持其开发,可以通过点击此精美图片访问我的网站进行支持!\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Couldn't parse frame name\"",
|
||||
"target": "text: \"无法解析标签页名称\""
|
||||
},
|
||||
{
|
||||
"source": "text: `Couldn't find a frame with name ${frameName}`",
|
||||
"target": "text: `找不到名为 ${frameName} 的标签页`"
|
||||
},
|
||||
{
|
||||
"source": "text: `${frameName} is hidden on mobile`",
|
||||
"target": "text: `${frameName} 在移动设备上隐藏`"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
163
.obsidian/plugins/i18n/translations/CR5aPHe1OQzsTosQljlx090kiuFI8sfb.json
vendored
Normal file
163
.obsidian/plugins/i18n/translations/CR5aPHe1OQzsTosQljlx090kiuFI8sfb.json
vendored
Normal file
@@ -0,0 +1,163 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "multi-properties",
|
||||
"version": "2.0.0",
|
||||
"title": "Multi Properties",
|
||||
"description": "Adds Properties to multiple notes at once. Either right-click a folder, or select multiple notes and right-click the selection.",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "1.1.2",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [],
|
||||
"regex": [
|
||||
{
|
||||
"source": "Notice(\"Delimiter must be a single character.\")",
|
||||
"target": "Notice(\"分隔符必须是单个字符。\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Please check at least one property to remove.\")",
|
||||
"target": "Notice(\"请检查至少一个要删除的属性。\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"No properties to remove\")",
|
||||
"target": "Notice(\"没有要删除的属性\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"No files to add properties to.\", 4e3)",
|
||||
"target": "Notice(\"没有要添加属性的文件。\", 4e3)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"No files to remove properties from.\", 4e3)",
|
||||
"target": "Notice(\"没有要从中删除属性的文件。\", 4e3)"
|
||||
},
|
||||
{
|
||||
"source": "text: \"Add Properties\"",
|
||||
"target": "text: \"添加属性\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Remove Properties\"",
|
||||
"target": "text: \"移除属性\""
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Overwrite existing text\")",
|
||||
"target": ".setName(\"覆盖现有文本\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Recursive Iteration\")",
|
||||
"target": ".setName(\"递归迭代\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"List Delimiter\")",
|
||||
"target": ".setName(\"列表分隔符\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"When adding a property with a name that already exists, the text will overwrite the prop's existing value. If left disabled, the new value will be appended to the old as a List.\"\n )",
|
||||
"target": ".setDesc(\n \"添加名称已经存在的属性时,文本将覆盖该属性的现有值。 如果保持禁用状态,新值将作为列表添加到旧值。 \"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"When toggled on, while looping through all files in a folder, you will also loop through any sub-folders.\"\n )",
|
||||
"target": ".setDesc(\n \"启用后,在循环遍历文件夹中的所有文件时,还将循环遍历任何子文件夹。 \"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Set delimiter to use when creating a list. Commas(,) are used by default.\"\n )",
|
||||
"target": ".setDesc(\n \"设置要在创建列表时使用的分隔符。 默认使用逗号(,)。 \"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Add props to folder's notes\")",
|
||||
"target": ".setTitle(\"在文件夹的注释中添加props\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Remove props from folder's notes\")",
|
||||
"target": ".setTitle(\"从文件夹的笔记中删除props\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Add props to selected files\")",
|
||||
"target": ".setTitle(\"向所选文件添加props\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Remove props from selected files\")",
|
||||
"target": ".setTitle(\"从选定的文件中删除props\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Add props to search results\")",
|
||||
"target": ".setTitle(\"在搜索结果中添加props\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Remove props from search results\")",
|
||||
"target": ".setTitle(\"在搜索结果中移除props\")"
|
||||
},
|
||||
{
|
||||
"source": "Type in a property name, then value. Use the dropbox to choose what type of\\r\\n data you wish to store.",
|
||||
"target": "输入属性名称和值。使用下拉框选择您希望存储的\\r\\n 数据类型。"
|
||||
},
|
||||
{
|
||||
"source": "If you want to make a List property, use the Text data type and separate\\r\\n each value with a",
|
||||
"target": "如需创建列表属性,请使用文本数据类型并用符号分隔\\r\\n 每个值。"
|
||||
},
|
||||
{
|
||||
"source": "If you want to add Tags, use the name \"tags\".",
|
||||
"target": "如需添加标签,请使用属性名 \"tags\"。"
|
||||
},
|
||||
{
|
||||
"source": "Overwrite existing properties",
|
||||
"target": "覆盖已有属性"
|
||||
},
|
||||
{
|
||||
"source": "Select the properties you wish to remove from the file selection.",
|
||||
"target": "从文件选择中勾选您希望移除的属性。"
|
||||
},
|
||||
{
|
||||
"source": "Please select at least one property to remove.",
|
||||
"target": "请至少选择一个要移除的属性。"
|
||||
},
|
||||
{
|
||||
"source": "The following props will be added:",
|
||||
"target": "以下属性将被添加:"
|
||||
},
|
||||
{
|
||||
"source": "Are you sure you wish to proceed?",
|
||||
"target": "确认要继续执行吗?"
|
||||
},
|
||||
{
|
||||
"source": "will be removed",
|
||||
"target": "将被移除"
|
||||
},
|
||||
{
|
||||
"source": "`The following",
|
||||
"target": "`下列"
|
||||
},
|
||||
{
|
||||
"source": "\"Delete\"",
|
||||
"target": "\"删除\""
|
||||
},
|
||||
{
|
||||
"source": "Check if you entered a valid path in the Default Props File setting.",
|
||||
"target": "请检查默认属性文件设置中输入的路径是否有效。"
|
||||
},
|
||||
{
|
||||
"source": "No properties to remove",
|
||||
"target": "无属性可移除"
|
||||
},
|
||||
{
|
||||
"source": "Not a valid Props template.",
|
||||
"target": "无效的属性模板。"
|
||||
},
|
||||
{
|
||||
"source": "Function called outside component initialization",
|
||||
"target": "函数在组件初始化之外被调用"
|
||||
},
|
||||
{
|
||||
"source": "\"Default Props File\"",
|
||||
"target": "\"默认属性文件\""
|
||||
},
|
||||
{
|
||||
"source": "Select a file with properties that you want to load into the Multi Properties form by default. Type in the full path of the desired file.(ex. Templates/PropFile 1)",
|
||||
"target": "选择一个包含属性的文件,该文件将默认载入多属性表单。请输入目标文件的完整路径。(例如:Templates/PropFile 1)"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
1055
.obsidian/plugins/i18n/translations/EHr3n6Okxnh-vXX3P_JKIADIbqefs6vf.json
vendored
Normal file
1055
.obsidian/plugins/i18n/translations/EHr3n6Okxnh-vXX3P_JKIADIbqefs6vf.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1235
.obsidian/plugins/i18n/translations/EwBFScs5OsNKjzyP4nrhEWlL1zuH6fCH.json
vendored
Normal file
1235
.obsidian/plugins/i18n/translations/EwBFScs5OsNKjzyP4nrhEWlL1zuH6fCH.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
91
.obsidian/plugins/i18n/translations/OwEz719HugL1EQEveFbf8rxC-8RJ6qxa.json
vendored
Normal file
91
.obsidian/plugins/i18n/translations/OwEz719HugL1EQEveFbf8rxC-8RJ6qxa.json
vendored
Normal file
@@ -0,0 +1,91 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "obsidian-excalidraw-plugin",
|
||||
"version": "2.0.0",
|
||||
"title": "Excalidraw",
|
||||
"description": "An Obsidian plugin to edit and view Excalidraw drawings",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "2.8.3",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [],
|
||||
"regex": [
|
||||
{
|
||||
"source": "\"Toggle tray-mode\"",
|
||||
"target": "\"切换托盘模式\""
|
||||
},
|
||||
{
|
||||
"source": "ARIA_LABEL_TRAY_MODE:\"Tray-mode offers an alternative, more spacious canvas\"",
|
||||
"target": "ARIA_LABEL_TRAY_MODE:\"托盘模式提供了另一种更宽敞的画布\""
|
||||
},
|
||||
{
|
||||
"source": "forceSave()},\"Save\"",
|
||||
"target": "forceSave()},\"保存\""
|
||||
},
|
||||
{
|
||||
"source": "FORCE_SAVE:\"Save (will also update transclusions)\"",
|
||||
"target": "FORCE_SAVE:\"保存 (也会更新嵌入)\""
|
||||
},
|
||||
{
|
||||
"source": "\"Script Library\"",
|
||||
"target": "\"脚本库\""
|
||||
},
|
||||
{
|
||||
"source": "\"Explore the Excalidraw Script Library\"",
|
||||
"target": "\"探索 Excalidraw 脚本库\""
|
||||
},
|
||||
{
|
||||
"source": "\"Export Image...\"",
|
||||
"target": "\"导出图像...\""
|
||||
},
|
||||
{
|
||||
"source": "\"Export image as PNG, SVG, or Excalidraw file\"",
|
||||
"target": "\"将图像导出为 PNG、SVG 或 Excalidraw 文件\""
|
||||
},
|
||||
{
|
||||
"source": ",\"Open as Markdown\"",
|
||||
"target": ",\"以 Markdown 格式打开\""
|
||||
},
|
||||
{
|
||||
"source": "\"Switch to markdown view\"",
|
||||
"target": "\"切换到Markdown视图\""
|
||||
},
|
||||
{
|
||||
"source": "\"Obsidian Tools Panel\"",
|
||||
"target": "\"Obsidian工具面板\""
|
||||
},
|
||||
{
|
||||
"source": "\"Insert ANY file\"",
|
||||
"target": "\"插入任意文件\""
|
||||
},
|
||||
{
|
||||
"source": "CREATE_NEW:\"Create new drawing\"",
|
||||
"target": "CREATE_NEW:\"创建新图纸\""
|
||||
},
|
||||
{
|
||||
"source": "\"Open selected text as link\\n(SHIFT+CLICK to open in a new pane)\"",
|
||||
"target": "\"将选定文本作为链接打开\\n(SHIFT+CLICK 在新窗格中打开)\""
|
||||
},
|
||||
{
|
||||
"source": "\"Change to RAW mode (only affects text-elements with links or transclusions)\"",
|
||||
"target": "\"更改为 RAW 模式\\n(仅影响带有链接或嵌入的文本元素)\""
|
||||
},
|
||||
{
|
||||
"source": "\"Install or update Excalidraw Scripts\"",
|
||||
"target": "\"安装或更新 Excalidraw 脚本\""
|
||||
},
|
||||
{
|
||||
"source": "OPEN_AS_MD:\"Open as Markdown\"",
|
||||
"target": "OPEN_AS_MD:\"以 Markdown 格式打开\""
|
||||
},
|
||||
{
|
||||
"source": "EXPORT_IMAGE:\"Export Image\"",
|
||||
"target": "EXPORT_IMAGE:\"导出图像\""
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
455
.obsidian/plugins/i18n/translations/WmTySrTLXEFDLtC9Y1oZfDHz8fZ1oXOk.json
vendored
Normal file
455
.obsidian/plugins/i18n/translations/WmTySrTLXEFDLtC9Y1oZfDHz8fZ1oXOk.json
vendored
Normal file
@@ -0,0 +1,455 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "obsidian-livesync",
|
||||
"version": "2.0.0",
|
||||
"title": "Self-hosted LiveSync",
|
||||
"description": "Community implementation of self-hosted livesync. Reflect your vault changes to some other devices immediately. Please make sure to disable other synchronize solutions to avoid content corruption or duplication.",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "0.23.23",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [],
|
||||
"regex": [
|
||||
{
|
||||
"source": ".setText(\"Customization Sync (Beta3)\")",
|
||||
"target": ".setText(\"个性化同步(Beta3)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setText(`${this.file} / ${this.revs_info.length} revisions`)",
|
||||
"target": ".setText(`${this.file} / ${this.revs_info.length} 修订版本`)"
|
||||
},
|
||||
{
|
||||
"source": ".setText(\"History of this file was not recorded.\")",
|
||||
"target": ".setText(\"该文件的历史记录未被记录。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setText(\"Error occurred.\")",
|
||||
"target": ".setText(\"发生错误。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setText(\"Document History\")",
|
||||
"target": ".setText(\"文档历史\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Ok\")",
|
||||
"target": ".setButtonText(\"请提供插件名称,然后我会开始翻译工作。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Cancel\")",
|
||||
"target": ".setButtonText(\"取消\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(`( ${this.timeout} ) ${defaultAction}`)",
|
||||
"target": ".setButtonText(`( ${this.timeout} ) ${defaultAction}`)"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Use\")",
|
||||
"target": ".setButtonText(\"使用\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Start\")",
|
||||
"target": ".setButtonText(\"开始\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Enable\")",
|
||||
"target": ".setButtonText(\"启用\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Copy\")",
|
||||
"target": ".setButtonText(\"复制\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Discard\")",
|
||||
"target": ".setButtonText(\"丢弃\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Test\")",
|
||||
"target": ".setButtonText(\"测试\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Check\")",
|
||||
"target": ".setButtonText(\"检查\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Next\")",
|
||||
"target": ".setButtonText(\"下一个\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Apply\")",
|
||||
"target": ".setButtonText(\"应用\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Disable\")",
|
||||
"target": ".setButtonText(\"禁用\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Merge\")",
|
||||
"target": ".setButtonText(\"合并\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Fetch\")",
|
||||
"target": ".setButtonText(\"获取\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Overwrite\")",
|
||||
"target": ".setButtonText(\"覆盖\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Default\")",
|
||||
"target": ".setButtonText(\"默认\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Cross-platform\")",
|
||||
"target": ".setButtonText(\"跨平台\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Open\")",
|
||||
"target": ".setButtonText(\"打开\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Make report\")",
|
||||
"target": ".setButtonText(\"生成报告\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Recreate all\")",
|
||||
"target": ".setButtonText(\"重新创建\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Verify all\")",
|
||||
"target": ".setButtonText(\"验证所有\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Perform\")",
|
||||
"target": ".setButtonText(\"执行\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Back\")",
|
||||
"target": ".setButtonText(\"返回\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Delete\")",
|
||||
"target": ".setButtonText(\"删除\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Lock\")",
|
||||
"target": ".setButtonText(\"锁\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Flag and restart\")",
|
||||
"target": ".setButtonText(\"标记并重新启动\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Send chunks\")",
|
||||
"target": ".setButtonText(\"发送块\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Reset received\")",
|
||||
"target": ".setButtonText(\"接收到重置\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Reset sent history\")",
|
||||
"target": ".setButtonText(\"重置发送历史\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Fetch w/o restarting\")",
|
||||
"target": ".setButtonText(\"无需重新启动获取\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Save and Fetch\")",
|
||||
"target": ".setButtonText(\"保存和提取\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Rebuild\")",
|
||||
"target": ".setButtonText(\"重建\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Rebuild w/o restarting\")",
|
||||
"target": ".setButtonText(\"无需重启重新构建\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Send\")",
|
||||
"target": ".setButtonText(\"发送\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Reset all\")",
|
||||
"target": ".setButtonText(\"重置全部\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"DryRun\")",
|
||||
"target": ".setButtonText(\"干扰测试\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Perform cleaning\")",
|
||||
"target": ".setButtonText(\"执行清理\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Use the copied setup URI\")",
|
||||
"target": ".setName(\"使用复制的设置URI。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Minimal setup\")",
|
||||
"target": ".setName(\"最小设置\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Enable LiveSync on this device as the setup was completed manually\")",
|
||||
"target": ".setName(\"在此设备上启用实时同步,因为设置是手动完成的。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Copy current settings as a new setup URI\")",
|
||||
"target": ".setName(\"复制当前设置作为新的设置URI\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Discard existing settings and databases\")",
|
||||
"target": ".setName(\"丢弃现有设置和数据库\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Test Connection\")",
|
||||
"target": ".setName(\"测试连接\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Apply Settings\")",
|
||||
"target": ".setName(\"应用设置\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Test Database Connection\")",
|
||||
"target": ".setName(\"测试数据库连接\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Check and fix database configuration\")",
|
||||
"target": ".setName(\"检查并修复数据库配置\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Hidden file synchronization\")",
|
||||
"target": ".setName(\"隐藏文件同步\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Disable Hidden files sync\")",
|
||||
"target": ".setName(\"禁用隐藏文件同步\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Enable Hidden files sync\")",
|
||||
"target": ".setName(\"启用隐藏文件同步\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Synchronising files\")",
|
||||
"target": ".setName(\"同步文件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Non-Synchronising files\")",
|
||||
"target": ".setName(\"非同步文件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Ignore patterns\")",
|
||||
"target": ".setName(\"忽略模式\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Add default patterns\")",
|
||||
"target": ".setName(\"添加默认模式\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Open\")",
|
||||
"target": ".setName(\"打开\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Make report to inform the issue\")",
|
||||
"target": ".setName(\"制作报告以通知问题。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Recreate missing chunks for all files\")",
|
||||
"target": ".setName(\"为所有文件重新创建丢失的块\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Verify and repair all files\")",
|
||||
"target": ".setName(\"验证和修复所有文件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Check and convert non-path-obfuscated files\")",
|
||||
"target": ".setName(\"检查和转换非路径混淆文件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Back to non-configured\")",
|
||||
"target": ".setName(\"返回到未配置状态\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Delete all customization sync data\")",
|
||||
"target": ".setName(\"删除所有自定义同步数据\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Encrypting sensitive configuration items\")",
|
||||
"target": ".setName(\"加密敏感配置项\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Lock remote\")",
|
||||
"target": ".setName(\"远程锁定\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Emergency restart\")",
|
||||
"target": ".setName(\"紧急重启\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Resend\")",
|
||||
"target": ".setName(\"抱歉,我无法重新发送提问,但您可以再次向我提供需要翻译的英文文本,我会尽快为您翻译成简体中文。谢谢!\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Reset journal received history\")",
|
||||
"target": ".setName(\"重置日志接收历史\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Reset journal sent history\")",
|
||||
"target": ".setName(\"重置已发送的日志历史\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Fetch from remote\")",
|
||||
"target": ".setName(\"从远程获取\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Fetch rebuilt DB (Save local documents before)\")",
|
||||
"target": ".setName(\"获取重建的数据库(请先保存本地文档)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Rebuild everything\")",
|
||||
"target": ".setName(\"重建所有内容\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Perform compaction\")",
|
||||
"target": ".setName(\"执行压缩\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Overwrite remote\")",
|
||||
"target": ".setName(\"覆盖远程\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Reset all journal counter\")",
|
||||
"target": ".setName(\"重置所有日志计数器\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Purge all journal counter\")",
|
||||
"target": ".setName(\"清除所有日记计数器\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Make empty the bucket\")",
|
||||
"target": ".setName(\"清空桶\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"(Obsolete) Clean up databases\")",
|
||||
"target": ".setName(\"清理数据库 (已过时)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Discard local database to reset or uninstall Self-hosted LiveSync\")",
|
||||
"target": ".setName(\"丢弃本地数据库以重置或卸载自托管LiveSync\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"To setup Self-hosted LiveSync, this method is the most preferred one.\")",
|
||||
"target": ".setDesc(\"设置自托管LiveSync,这种方法是最受欢迎的。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Open database connection. If the remote database is not found and you have the privilege to create a database, the database will be created.\")",
|
||||
"target": ".setDesc(\"打开数据库连接。如果找不到远程数据库并且您有创建数据库的权限,则将创建数据库。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Check the database configuration, and fix if there are any problems.\")",
|
||||
"target": ".setDesc(\"检查数据库配置,如有问题请进行修复。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"(RegExp) Empty to sync all files. Set filter as a regular expression to limit synchronising files.\")",
|
||||
"target": ".setDesc(\"(正则表达式)空白以同步所有文件。设置过滤器为正则表达式以限制同步文件。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"(RegExp) If this is set, any changes to local and remote files that match this will be skipped.\")",
|
||||
"target": ".setDesc(\"如果设置了该选项,任何匹配此正则表达式的本地和远程文件的更改将被跳过。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Open the dialog\")",
|
||||
"target": ".setDesc(\"打开对话框\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"This will recreate chunks for all files. If there were missing chunks, this may fix the errors.\")",
|
||||
"target": ".setDesc(\"这将重新创建所有文件的块。如果有丢失的块,这可能会修复错误。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Compare the content of files between on local database and storage. If not matched, you will be asked which one you want to keep.\")",
|
||||
"target": ".setDesc(\"比对本地数据库和存储中文件的内容。如果不匹配,将会询问您想保留哪一个文件。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"\").addButton((button => button.setButtonText(\"Perform\")",
|
||||
"target": ".setDesc(\"\").addButton((button => button.setButtonText(\"执行\"\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Lock remote to prevent synchronization with other devices.\")",
|
||||
"target": ".setDesc(\"锁定远程设备,防止与其他设备同步。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"place the flag file to prevent all operation and restart.\")",
|
||||
"target": ".setDesc(\"将标志文件放置以阻止所有操作并重新启动。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Resend all chunks to the remote.\")",
|
||||
"target": ".setDesc(\"重新发送所有块到远程。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Initialise journal received history. On the next sync, every item except this device sent will be downloaded again.\")",
|
||||
"target": ".setDesc(\"初始化日志接收历史。在下一次同步中,除了此设备发送的项目之外,所有项目都将被重新下载。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Initialise journal sent history. On the next sync, every item except this device received will be sent again.\")",
|
||||
"target": ".setDesc(\"初始化日志发送历史。在下一次同步中,除了这台设备外,每个项目将再次发送。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Restore or reconstruct local database from remote.\")",
|
||||
"target": ".setDesc(\"从远程恢复或重建本地数据库。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Restore or reconstruct local database from remote database but use local chunks.\")",
|
||||
"target": ".setDesc(\"从远程数据库还原或重建本地数据库,但使用本地块。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Rebuild local and remote database with local files.\")",
|
||||
"target": ".setDesc(\"使用本地文件重新构建本地和远程数据库。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Compaction discards all of Eden in the non-latest revisions, reducing the storage usage. However, this operation requires the same free space on the remote as the current database.\")",
|
||||
"target": ".setDesc(\"压缩会丢弃非最新修订版中的全部Eden,减少存储使用量。然而,此操作需要与当前数据库相同的远程空闲空间。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Overwrite remote with local DB and passphrase.\")",
|
||||
"target": ".setDesc(\"使用本地数据库和口令覆盖远程数据库。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Initialise all journal history, On the next sync, every item will be received and sent.\")",
|
||||
"target": ".setDesc(\"初始化所有日志历史,下次同步时,每个项目都将被接收并发送。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Purge all sending and downloading cache.\")",
|
||||
"target": ".setDesc(\"清除所有发送和下载缓存。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Delete all data on the remote.\")",
|
||||
"target": ".setDesc(\"删除远程上的所有数据。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Delete unused chunks to shrink the database. However, this feature could be not effective in some cases. Please use rebuild everything instead.\")",
|
||||
"target": ".setDesc(\"删除未使用的块以缩小数据库。但在某些情况下,此功能可能不起作用。请改用重新构建所有内容。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Some configuration has been arrived, Press \")",
|
||||
"target": ".appendText(\"某些配置已就绪,请点击\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" to open the config sync dialog , or press elsewhere to dismiss this message.\")",
|
||||
"target": ".appendText(\"打开配置同步对话框,或者按其他地方以关闭此消息。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Highlight diff\")",
|
||||
"target": ".appendText(\"高亮差异\")"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"label\", {\n text: \"Changes need to be applied!\"\n })",
|
||||
"target": ".createEl(\"标签\", {\n text: \"Changes need to be applied!\"\n })"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
75
.obsidian/plugins/i18n/translations/ZpQzaf1ecvek3TjVXkcsmI8qEsg0BVud.json
vendored
Normal file
75
.obsidian/plugins/i18n/translations/ZpQzaf1ecvek3TjVXkcsmI8qEsg0BVud.json
vendored
Normal file
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "highlightr-plugin",
|
||||
"version": "2.0.0",
|
||||
"title": "Highlightr",
|
||||
"description": "A minimal and aesthetically pleasing highlighting menu that makes color-coded highlighting much easier with a configurable assortment of highlight colors 🎨.",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "1.2.2",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [],
|
||||
"regex": [
|
||||
{
|
||||
"source": ".setName(\"Choose highlight method\")",
|
||||
"target": ".setName(\"选择高亮方法\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Choose highlight style\")",
|
||||
"target": ".setName(\"选择高亮样式\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Choose highlight colors\")",
|
||||
"target": ".setName(\"选择高亮颜色\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(`Choose between highlighting with inline CSS or CSS classes. Please note that there are pros and cons to both choices. Inline CSS will keep you from being reliant on external CSS files if you choose to export your notes. CSS classes are more flexible and easier to customize.`)",
|
||||
"target": ".setDesc(`请选择使用内联 CSS 还是 CSS 类进行高亮。请注意,两种选择都有优缺点。内联 CSS 可以让你在导出笔记时不必依赖外部 CSS 文件。CSS 类更灵活且易于定制。`)"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(`Depending on your design aesthetic, you may want to customize the style of your highlights. Choose from an assortment of different highlighter styles by using the dropdown. Depending on your theme, this plugin's CSS may be overriden.`)",
|
||||
"target": ".setDesc(`根据您的设计审美,您可能需要自定义高亮的样式。通过下拉菜单选择不同的高亮风格。根据您的主题,此插件的 CSS 可能会被覆盖。`)"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(`Create new highlight colors by providing a color name and using the color picker to set the hex code value. Don't forget to save the color before exiting the color picker. Drag and drop the highlight color to change the order for your highlighter component.`)",
|
||||
"target": ".setDesc(`通过提供颜色名称并使用颜色选择器设置十六进制代码值来创建新的高亮颜色。不要忘记在退出颜色选择器前保存颜色。拖放高亮颜色以更改高亮组件的顺序。`)"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"Color name\")",
|
||||
"target": ".setPlaceholder(\"颜色名称\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"Color hex code\")",
|
||||
"target": ".setPlaceholder(\"颜色十六进制代码\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTooltip(\"Save\")",
|
||||
"target": ".setTooltip(\"保存\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTooltip(\"Remove\")",
|
||||
"target": ".setTooltip(\"移除\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If you like this Plugin and are considering donating to support continued development, use the buttons below!\")",
|
||||
"target": ".appendText(\"如果你喜欢这个插件并考虑捐款支持持续开发,请使用下方的按钮!\")"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"h1\", { text: \"Highlightr\" })",
|
||||
"target": ".createEl(\"h1\", { text: \"Highlightr\" })"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"p\", { text: \"Created by \" })",
|
||||
"target": ".createEl(\"p\", { text: \"创建于\" })"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"a\", {\n text: \"Chetachi 👩🏽💻\",\n href: \"https://github.com/chetachiezikeuzor\",\n });\n containerEl.createEl(\"h2\", { text: \"Plugin Settings\" })",
|
||||
"target": ".createEl(\"a\", {\n text: \"Chetachi 👩🏽💻\",\n href: \"https://github.com/chetachiezikeuzor\",\n });\n containerEl.createEl(\"h2\", { text: \"插件设置\" })"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
499
.obsidian/plugins/i18n/translations/c0fT0euCDXLgw04AMGOXjVEbVWWo4AS7.json
vendored
Normal file
499
.obsidian/plugins/i18n/translations/c0fT0euCDXLgw04AMGOXjVEbVWWo4AS7.json
vendored
Normal file
@@ -0,0 +1,499 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "obsidian-custom-attachment-location",
|
||||
"version": "2.0.0",
|
||||
"title": "obsidian-custom-attachment-location",
|
||||
"description": "Customize attachment location with variables($filename, $data, etc) like typora.",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "7.0.2",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [],
|
||||
"regex": [
|
||||
{
|
||||
"source": ".setName(\"JPEG Quality\")",
|
||||
"target": ".setName(\"JPEG 质量\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Duplicate name separator\")",
|
||||
"target": ".setName(\"重复名称分隔符\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Paste images from clipboard converting them to JPEG.\")",
|
||||
"target": ".setDesc(\"从剪贴板粘贴图像并将其转换为 JPEG。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"The smaller the quality, the greater the compression ratio.\")",
|
||||
"target": ".setDesc(\"质量越小,压缩比越大。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" and all its subfolders?\")",
|
||||
"target": ".appendText(\"及其所有子文件夹?\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" Collect attachments in folder\")",
|
||||
"target": ".appendText(\"收集文件夹中的附件\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" Plugin to manage them.\")",
|
||||
"target": ".appendText(\"插件来管理它们。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If enabled, attachments processed via \")",
|
||||
"target": ".appendText(\"如果启用,通过 \")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" commands will be renamed according to the \")",
|
||||
"target": ".appendText(\"命令处理的附件将根据 \")"
|
||||
},
|
||||
{
|
||||
"source": ".setTitle(\"Collect attachments in folder\")",
|
||||
"target": ".setTitle(\"收集文件夹中的附件\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(t)",
|
||||
"target": "Notice(t)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(`${this.manifest.name}\n${t}`)",
|
||||
"target": "Notice(`${this.manifest.name}\n${t}`)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(`Attachment ${o.path} is still used by other notes. It will not be deleted.`)",
|
||||
"target": "Notice(`附件 ${o.path} 仍被其他笔记使用,不会被删除。`)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"\",0)",
|
||||
"target": "Notice(\"\",0)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(`Collecting attachments for ${t.path}`)",
|
||||
"target": "Notice(`正在为 ${t.path} 收集附件`)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Note path is ignored\")",
|
||||
"target": "Notice(\"笔记路径被忽略\")"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Module not found: ${id}. Fake process object is returned instead.`)",
|
||||
"target": ".error(`未找到模块:${id}。返回了伪造的进程对象。`)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Module not found: ${id}. Empty object is returned instead.`)",
|
||||
"target": ".error(`未找到模块:${id}。返回了空对象。`)"
|
||||
},
|
||||
{
|
||||
"source": ".error(\"SEMVER\",...e)",
|
||||
"target": ".error(\"SEMVER\",...e)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`\\x1B[0m${r.message}\\x1B[0m`)",
|
||||
"target": ".error(`\\x1B[0m${r.message}\\x1B[0m`)"
|
||||
},
|
||||
{
|
||||
"source": ".error(r.message)",
|
||||
"target": ".error(r.message)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Failed to decode URL ${h}`,p)",
|
||||
"target": ".error(`解码 URL ${h} 失败`,p)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Invalid data type. Expected Object, got: ${n}`)",
|
||||
"target": ".error(`无效的数据类型。预期为对象,实际为:${n}`)"
|
||||
},
|
||||
{
|
||||
"source": "name:\"Anno Domini\"",
|
||||
"target": "name:\"公元\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Before Christ\"",
|
||||
"target": "name:\"公元前\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"\"};if(t.length===0)return n;var r=t.charCodeAt(0),s=r===47,o;s?(n.root=\"",
|
||||
"target": "name:\"\"};if(t.length===0)return n;var r=t.charCodeAt(0),s=r===47,o;s?(n.root=\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"attention\"",
|
||||
"target": "name:\"注意\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"autolink\"",
|
||||
"target": "name:\"自动链接\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"blockQuote\"",
|
||||
"target": "name:\"块引用\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"characterEscape\"",
|
||||
"target": "name:\"字符转义\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"characterReference\"",
|
||||
"target": "name:\"字符引用\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"codeFenced\"",
|
||||
"target": "name:\"围栏代码\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"codeIndented\"",
|
||||
"target": "name:\"缩进代码\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"codeText\"",
|
||||
"target": "name:\"代码文本\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"definition\"",
|
||||
"target": "name:\"定义\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"hardBreakEscape\"",
|
||||
"target": "name:\"硬换行转义\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"headingAtx\"",
|
||||
"target": "name:\"ATX 标题\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"htmlFlow\"",
|
||||
"target": "name:\"HTML 流\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"htmlText\"",
|
||||
"target": "name:\"HTML 文本\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"labelEnd\"",
|
||||
"target": "name:\"标签结束\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"labelStartImage\"",
|
||||
"target": "name:\"图片标签开始\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"labelStartLink\"",
|
||||
"target": "name:\"链接标签开始\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"lineEnding\"",
|
||||
"target": "name:\"行尾\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"thematicBreak\"",
|
||||
"target": "name:\"主题分隔线\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"list\"",
|
||||
"target": "name:\"列表\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"setextUnderline\"",
|
||||
"target": "name:\"Setext 下划线\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Collect attachments in current note\"",
|
||||
"target": "name:\"收集当前笔记中的附件\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Collect attachments in current folder\"",
|
||||
"target": "name:\"收集当前文件夹中的附件\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Collect attachments in entire vault\"",
|
||||
"target": "name:\"收集整个仓库中的附件\""
|
||||
},
|
||||
{
|
||||
"source": "link:\"backlink\"",
|
||||
"target": "link:\"反向链接\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"tokens\"",
|
||||
"target": "text:\"令牌\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"Show Hidden Files\"",
|
||||
"target": "text:\"显示隐藏文件\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"documentation\"",
|
||||
"target": "text:\"文档\""
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Location for new attachments\")",
|
||||
"target": ".setName(\"新附件的位置\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Generated attachment filename\")",
|
||||
"target": ".setName(\"生成的附件文件名\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Attachment rename mode\")",
|
||||
"target": ".setName(\"附件重命名模式\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Should rename attachment folder\")",
|
||||
"target": ".setName(\"是否重命名附件文件夹\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Should rename attachment files\")",
|
||||
"target": ".setName(\"是否重命名附件文件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Whitespace replacement\")",
|
||||
"target": ".setName(\"空格替换\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Should rename attachments to lowercase\")",
|
||||
"target": ".setName(\"是否将附件重命名为小写\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Should convert pasted images to JPEG\")",
|
||||
"target": ".setName(\"是否将粘贴的图像转换为 JPEG\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Should rename collected attachments\")",
|
||||
"target": ".setName(\"是否重命名已收集的附件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Should keep empty attachment folders\")",
|
||||
"target": ".setName(\"是否保留空附件文件夹\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Should delete orphan attachments\")",
|
||||
"target": ".setName(\"是否删除孤立的附件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Include paths\")",
|
||||
"target": ".setName(\"包含路径\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Exclude paths\")",
|
||||
"target": ".setName(\"排除路径\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Custom tokens\")",
|
||||
"target": ".setName(\"自定义令牌\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"./assets/${filename}\")",
|
||||
"target": ".setPlaceholder(\"./assets/${filename}\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"file-${date:YYYYMMDDHHmmssSSS}\")",
|
||||
"target": ".setPlaceholder(\"file-${date:YYYYMMDDHHmmssSSS}\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"-\")",
|
||||
"target": ".setPlaceholder(\"-\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" to use relative path.\")",
|
||||
"target": ".appendText(\"开头以使用相对路径。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"See available \")",
|
||||
"target": ".appendText(\"查看可用的 \")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\".\")",
|
||||
"target": ".appendText(\"。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Automatically replace whitespace in attachment folder and file name with the specified character.\")",
|
||||
"target": ".appendText(\"自动将附件文件夹和文件名中的空格替换为指定字符。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Leave blank to disable replacement.\")",
|
||||
"target": ".appendText(\"留空以禁用替换。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" setting.\")",
|
||||
"target": ".appendText(\"设置进行重命名。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\", \")",
|
||||
"target": ".appendText(\",\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Include notes from the following paths\")",
|
||||
"target": ".appendText(\"包含以下路径中的笔记\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Insert each path on a new line\")",
|
||||
"target": ".appendText(\"每行插入一个路径\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"You can use path string or \")",
|
||||
"target": ".appendText(\"您可以使用路径字符串或 \")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If the setting is empty, all notes are included\")",
|
||||
"target": ".appendText(\"如果设置为空,则包含所有笔记\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Exclude notes from the following paths\")",
|
||||
"target": ".appendText(\"排除以下路径中的笔记\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If the setting is empty, no notes are excluded\")",
|
||||
"target": ".appendText(\"如果设置为空,则不排除任何笔记\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Custom tokens to be used in the attachment folder path and pasted file name.\")",
|
||||
"target": ".appendText(\"自定义令牌,用于附件文件夹路径和粘贴的文件名。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"See \")",
|
||||
"target": ".appendText(\"查看 \")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" for more information.\")",
|
||||
"target": ".appendText(\"以获取更多信息。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"In plugin version 7.0.0, the format for custom tokens has changed. Please update your custom tokens accordingly. Refer to the \")",
|
||||
"target": ".appendText(\"在插件版本 7.0.0 中,自定义令牌的格式已更改。请相应地更新您的自定义令牌。请参阅 \")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(`Attachment ${file.path} is still used by other notes. It will not be deleted.`)",
|
||||
"target": "Notice(`附件 ${file.path} 仍被其他笔记使用。它将不会被删除。`)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(`Collecting attachments for ${note.path}`)",
|
||||
"target": "Notice(`正在收集 ${note.path} 的附件`)"
|
||||
},
|
||||
{
|
||||
"source": "name: \"Anno Domini\"",
|
||||
"target": "name: \"公元\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Before Christ\"",
|
||||
"target": "name: \"公元前\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Collect attachments in current note\"",
|
||||
"target": "name: \"收集当前笔记中的附件\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Collect attachments in current folder\"",
|
||||
"target": "name: \"收集当前文件夹中的附件\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Collect attachments in entire vault\"",
|
||||
"target": "name: \"收集整个保险库中的附件\""
|
||||
},
|
||||
{
|
||||
"source": "link: \"backlink\"",
|
||||
"target": "link: \"反向链接\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Show Hidden Files\"",
|
||||
"target": "text: \"显示隐藏文件\""
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Location for New Attachments\")",
|
||||
"target": ".setName(\"新附件的位置\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Pasted File Name\")",
|
||||
"target": ".setName(\"粘贴的文件名\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Automatically rename attachment folder\")",
|
||||
"target": ".setName(\"自动重命名附件文件夹\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Automatically rename attachment files\")",
|
||||
"target": ".setName(\"自动重命名附件文件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Replace whitespace with hyphen\")",
|
||||
"target": ".setName(\"用连字符替换空格\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"All lowercase names\")",
|
||||
"target": ".setName(\"全部小写名称\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Convert pasted images to JPEG\")",
|
||||
"target": ".setName(\"将粘贴的图像转换为 JPEG\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Convert images on drag&drop\")",
|
||||
"target": ".setName(\"拖放时转换图像\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Rename only images\")",
|
||||
"target": ".setName(\"仅重命名图像\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Rename pasted files with known names\")",
|
||||
"target": ".setName(\"重命名具有已知名称的粘贴文件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Rename attachments on drag&drop\")",
|
||||
"target": ".setName(\"拖放时重命名附件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Rename attachments on collecting\")",
|
||||
"target": ".setName(\"收集时重命名附件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Keep empty attachment folders\")",
|
||||
"target": ".setName(\"保留空附件文件夹\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Delete orphan attachments\")",
|
||||
"target": ".setName(\"删除孤立附件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Automatically replace whitespace in attachment folder and file name with hyphens.\")",
|
||||
"target": ".setDesc(\"自动将附件文件夹和文件名中的空格替换为连字符。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" to use relative path. Available variables: \")",
|
||||
"target": ".appendText(\"开始使用相对路径。可用变量:\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Available variables: \")",
|
||||
"target": ".appendText(\"可用变量:\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If enabled and \")",
|
||||
"target": ".appendText(\"如果启用并且\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\" setting is enabled, images drag&dropped into the editor will be converted to JPEG.\")",
|
||||
"target": ".appendText(\"设置已启用,拖放到编辑器中的图像将被转换为 JPEG 格式。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If enabled, only image files will be renamed.\")",
|
||||
"target": ".appendText(\"如果启用,仅图像文件将被重命名。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If disabled, all attachment files will be renamed.\")",
|
||||
"target": ".appendText(\"如果禁用,所有附件文件将被重命名。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If enabled, pasted copied files with known names will be renamed.\")",
|
||||
"target": ".appendText(\"如果启用,粘贴的复制文件如果有已知名称将被重命名。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If disabled, only clipboard image objects (e.g., screenshots) will be renamed.\")",
|
||||
"target": ".appendText(\"如果禁用,仅剪贴板图像对象(例如,屏幕截图)将被重命名。\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"If enabled, attachments dragged and dropped into the editor will be renamed according to the \")",
|
||||
"target": ".appendText(\"如果启用,拖放到编辑器中的附件将根据 \")"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
575
.obsidian/plugins/i18n/translations/cmsESnsfzvQZtlswGDxvmLDSy0PGyB4S.json
vendored
Normal file
575
.obsidian/plugins/i18n/translations/cmsESnsfzvQZtlswGDxvmLDSy0PGyB4S.json
vendored
Normal file
@@ -0,0 +1,575 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "obsidian42-brat",
|
||||
"version": "2.0.0",
|
||||
"title": "BRAT",
|
||||
"description": "Easily install a beta version of a plugin for testing.",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "1.0.6",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [],
|
||||
"regex": [
|
||||
{
|
||||
"source": "name:\"Plugins: Open Plugin Settings Tab\"",
|
||||
"target": "name:\"插件:打开插件设置选项卡\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Themes: Update beta themes\"",
|
||||
"target": "name:\"主题:更新测试版主题\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"All Commands list\"",
|
||||
"target": "name:\"所有命令列表\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"Never mind\"",
|
||||
"target": "text:\"没关系\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"Add Plugin\"",
|
||||
"target": "text:\"添加插件\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"Add Theme\"",
|
||||
"target": "text:\"添加主题\""
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Add Beta plugin\")",
|
||||
"target": ".setButtonText(\"添加测试版插件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Auto-enable plugins after installation\")",
|
||||
"target": ".setName(\"安装后自动启用插件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Auto-update plugins at startup\")",
|
||||
"target": ".setName(\"启动时自动更新插件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Auto-update themes at startup\")",
|
||||
"target": ".setName(\"启动时自动更新主题\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Enable Notifications\")",
|
||||
"target": ".setName(\"启用通知\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Enable Logging\")",
|
||||
"target": ".setName(\"启用日志记录\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Enable Verbose Logging\")",
|
||||
"target": ".setName(\"启用详细日志记录\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Debugging Mode\")",
|
||||
"target": ".setName(\"调试模式\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Personal Access Token\")",
|
||||
"target": ".setName(\"个人访问令牌\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"Get a lot more information in the log.\")",
|
||||
"target": ".setDesc(\"在日志中获取更多信息。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"Enter your personal access token\")",
|
||||
"target": ".setPlaceholder(\"输入您的个人访问令牌\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTooltip(\"Delete this beta plugin\")",
|
||||
"target": ".setTooltip(\"删除此测试版插件\")"
|
||||
},
|
||||
{
|
||||
"source": ".setTooltip(\"Delete this beta theme\")",
|
||||
"target": ".setTooltip(\"删除此测试版主题\")"
|
||||
},
|
||||
{
|
||||
"source": ".appendText(\"Enable after installing the plugin\")",
|
||||
"target": ".appendText(\"安装插件后启用\")"
|
||||
},
|
||||
{
|
||||
"source": ".innerText=\"https://tfthacker.com\"",
|
||||
"target": ".innerText=\"https://tfthacker.com\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"Note: \"",
|
||||
"target": "text:\"注意:\""
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"Example: BRAT-log\")",
|
||||
"target": ".setPlaceholder(\"示例:BRAT日志\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Failed to read the daily note template\")",
|
||||
"target": "Notice(\"无法读取每日笔记模板\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Unable to create new file.\")",
|
||||
"target": "Notice(\"无法创建新文件。\")"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"error in isPrivateRepo\",e,i)",
|
||||
"target": ".log(\"私有仓库错误\",e,i)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"error in grabReleaseFileFromRepository\",URL,o)",
|
||||
"target": ".log(\"从仓库获取发布文件时出错\",URL,o)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"grabManifestJsonFromRepository manifestJsonPath\",i)",
|
||||
"target": ".log(\"从仓库获取manifestJson文件路径\",i)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"Token validation error:\",g)",
|
||||
"target": ".log(\"令牌验证错误:\",g)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"Token valid:\",a)",
|
||||
"target": ".log(\"令牌有效:\",a)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"grabManifestJsonFromRepository response\",l)",
|
||||
"target": ".log(\"从仓库获取清单JSON响应\",l)"
|
||||
},
|
||||
{
|
||||
"source": ".log(`error in grabManifestJsonFromRepository for ${i}`,l)",
|
||||
"target": ".log(`在从仓库 ${i} 抓取 manifest.json 时出错`,l)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"error in grabCommmunityPluginList\",n)",
|
||||
"target": ".log(\"获取社区插件列表时出错\",n)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"error in grabCommmunityThemesList\",n)",
|
||||
"target": ".log(\"获取社区主题列表时出错\",n)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"error in grabCommmunityThemeCssFile\",i)",
|
||||
"target": ".log(\"获取社区主题CSS文件时出错\",i)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"error in grabCommmunityThemeManifestFile\",e)",
|
||||
"target": ".log(\"获取社区主题清单文件时出错\",e)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"error in grabLastCommitInfoForAFile\",i)",
|
||||
"target": ".log(\"获取文件最后提交信息时出错\",i)"
|
||||
},
|
||||
{
|
||||
"source": ".log({reallyGetManifestOrNot:a,version:o})",
|
||||
"target": ".log({reallyGetManifestOrNot:a,version:o})"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"BRAT: addPlugin\",t,n,e,i,o,a,l)",
|
||||
"target": ".log(\"BRAT:添加插件\",t,n,e,i,o,a,l)"
|
||||
},
|
||||
{
|
||||
"source": ".log(`${t} reinstalled`,!0)",
|
||||
"target": ".log(`${t} 已重新安装`,!0)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"BRAT - Local Manifest Load\",r.id,JSON.stringify(w,null,2)",
|
||||
"target": ".log(\"BRAT - 本地清单加载\",r.id,JSON.stringify(w,null,2)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"reload plugin\",e)",
|
||||
"target": ".log(\"重新加载插件\",e)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"BRAT: No internet detected.\")",
|
||||
"target": ".log(\"BRAT:未检测到网络连接。\")"
|
||||
},
|
||||
{
|
||||
"source": ".log(e,!0)",
|
||||
"target": ".log(e,!0)"
|
||||
},
|
||||
{
|
||||
"source": ".log(\"BRAT: lastUpdateOnline\",a)",
|
||||
"target": ".log(\"BRAT:在线最后更新时间\",a)"
|
||||
},
|
||||
{
|
||||
"source": ".log(`${e.display} plugin disabled`,!1)",
|
||||
"target": ".log(`${e.display} 插件已禁用`,!1)"
|
||||
},
|
||||
{
|
||||
"source": ".log(`BRAT: ${t}`,...n)",
|
||||
"target": ".log(`BRAT: ${t}`,...n)"
|
||||
},
|
||||
{
|
||||
"source": ".log(`BRAT: ${t}`)",
|
||||
"target": ".log(`BRAT: ${t}`)"
|
||||
},
|
||||
{
|
||||
"source": ".log(`loading ${this.APP_NAME}`)",
|
||||
"target": ".log(`正在加载 ${this.APP_NAME}`)"
|
||||
},
|
||||
{
|
||||
"source": " log(n,e=!1)",
|
||||
"target": " log(n,e=!1)"
|
||||
},
|
||||
{
|
||||
"source": ".log(`unloading ${this.APP_NAME}`)",
|
||||
"target": ".log(`正在卸载 ${this.APP_NAME}`)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Failed to read the daily note template '${e}'`,i)",
|
||||
"target": ".error(`无法读取每日笔记模板 '${e}'`,i)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Failed to create file: '${p}'`,T)",
|
||||
"target": ".error(`创建文件失败: '${p}'`,T)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Failed to create file: '${g}'`,r)",
|
||||
"target": ".error(`无法创建文件:'${g}'`,r)"
|
||||
},
|
||||
{
|
||||
"source": ".error(\"BRAT: validateRepository\",t,n,e)",
|
||||
"target": ".error(\"BRAT:验证仓库\",t,n,e)"
|
||||
},
|
||||
{
|
||||
"source": ".error(\"Failed to load settings:\",n)",
|
||||
"target": ".error(\"无法加载设置:\",n)"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"If you need to access private repositories, enter the personal access token here.\")",
|
||||
"target": ".setDesc(\"如需访问私有仓库,请在此处输入个人访问令牌。\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"Repository (example: https://github.com/GitubUserName/repository-name)\")",
|
||||
"target": ".setPlaceholder(\"仓库(示例:https://github.com/GitubUserName/repository-name)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\"Repository (example: https://github.com/GitubUserName/repository-name\")",
|
||||
"target": ".setPlaceholder(\"仓库(示例:https://github.com/GitubUserName/repository-name)\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n 'If enabled beta plugins will be automatically enabled after installtion by default. Note: you can toggle this on and off for each plugin in the \"Add Plugin\" form.'\n )",
|
||||
"target": ".setDesc(\n '如果启用,默认情况下,Beta插件将在安装后自动启用。注意:您可以在“添加插件”表单中为每个插件切换此功能。'\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"If enabled all beta plugins will be checked for updates each time Obsidian starts. Note: this does not update frozen version plugins.\"\n )",
|
||||
"target": ".setDesc(\n \"如果启用,每次启动Obsidian时都会检查所有测试版插件是否有更新。注意:这不会更新已冻结版本的插件。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"If enabled all beta themes will be checked for updates each time Obsidian starts.\"\n )",
|
||||
"target": ".setDesc(\n \"如果启用,每次启动Obsidian时都会检查所有测试版主题是否有更新。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"BRAT will provide popup notifications for its various activities. Turn this off means no notifications from BRAT.\"\n )",
|
||||
"target": ".setDesc(\n \"BRAT将为各种活动提供弹出通知。关闭此选项表示BRAT将不会显示任何通知。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\n \"Atomic Bomb level console logging. Can be used for troubleshoting and development.\"\n )",
|
||||
"target": ".setDesc(\n \"原子弹级控制台日志。可用于故障排除和开发。\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\n \"Repository (example: https://github.com/GitubUserName/repository-name\"\n )",
|
||||
"target": ".setPlaceholder(\n \"仓库(例如:https://github.com/GitubUserName/repository-name)\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".setPlaceholder(\n \"Repository (example: https://github.com/GitubUserName/repository-name)\"\n )",
|
||||
"target": ".setPlaceholder(\n \"仓库(例如:https://github.com/GitubUserName/repository-name)\"\n )"
|
||||
},
|
||||
{
|
||||
"source": ".innerText = \"Learn more about my work at:\"",
|
||||
"target": ".innerText = \"了解我的工作请访问:\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Add Plugin\"",
|
||||
"target": "text: \"添加插件\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Add Theme\"",
|
||||
"target": "text: \"添加主题\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"Never mind\"",
|
||||
"target": "text: \"取消\""
|
||||
},
|
||||
{
|
||||
"source": "text: \"This does not delete the plugin, this should be done from the Community Plugins tab in Settings.\"",
|
||||
"target": "text: \"这不会删除插件,您应该从“设置”中的“社区插件”选项卡中删除它。\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Add a beta plugin for testing\"",
|
||||
"target": "name: \"插件: 添加一个测试版插件进行测试\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Add a beta plugin with frozen version based on a release tag\"",
|
||||
"target": "name: \"插件: 根据发布标签添加一个版本冻结的测试版插件\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Check for updates to all beta plugins and UPDATE\"",
|
||||
"target": "name: \"插件: 检查所有测试版插件的更新并进行更新\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Only check for updates to beta plugins, but don't Update\"",
|
||||
"target": "name: \"插件: 仅检查测试版插件的更新,但不进行更新\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Choose a single plugin version to update\"",
|
||||
"target": "name: \"插件: 选择一个插件版本进行更新\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Choose a single plugin to reinstall\"",
|
||||
"target": "name: \"插件: 选择一个插件进行重新安装\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Restart a plugin that is already installed\"",
|
||||
"target": "name: \"插件: 重启已安装的插件\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Disable a plugin - toggle it off\"",
|
||||
"target": "name: \"插件: 禁用插件 - 关闭它\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Enable a plugin - toggle it on\"",
|
||||
"target": "name: \"插件: 启用插件 - 开启它\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Open the GitHub repository for a plugin\"",
|
||||
"target": "name: \"插件: 打开插件的GitHub仓库\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Themes: Open the GitHub repository for a theme (appearance)\"",
|
||||
"target": "name: \"主题: 打开主题的GitHub仓库(外观)\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Plugins: Open Plugin Settings Tab\"",
|
||||
"target": "name: \"插件: 打开插件设置选项卡\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Themes: Grab a beta theme for testing from a Github repository\"",
|
||||
"target": "name: \"主题: 从GitHub仓库获取测试版主题进行测试\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"Themes: Update beta themes\"",
|
||||
"target": "name: \"主题: 更新测试版主题\""
|
||||
},
|
||||
{
|
||||
"source": "name: \"All Commands list\"",
|
||||
"target": "name: \"所有命令列表\""
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"h4\", { text: \"Github repository for beta theme:\" })",
|
||||
"target": ".createEl(\"h4\", { text: \"Github仓库中的beta主题:\" })"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"h2\", { text: \"Beta Plugin List\" })",
|
||||
"target": ".createEl(\"h2\", { text: \"Beta插件列表\" })"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"div\", {\n text: `The following is a list of beta plugins added via the command palette \"Add a beta plugin for testing\" or \"Add a beta plugin with frozen version for testing\". A frozen version is a specific release of a plugin based on its releease tag. `\n })",
|
||||
"target": ".createEl(\"div\", {\n text: `以下是通过命令面板\"添加测试版插件\"或\"添加带冻结版本的测试版插件\"添加的测试版插件列表。冻结版本是基于插件的发布标签而定的特定版本。`\n })"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"div\", {\n text: `Click the x button next to a plugin to remove it from the list.`\n })",
|
||||
"target": ".createEl(\"div\", {\n text: `点击插件旁边的 x 按钮,以将其从列表中移除。`\n })"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"b\", { text: \"Note: \" })",
|
||||
"target": ".createEl(\"b\", { text: \"注释: \" })"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"h2\", { text: \"Beta Themes List\" })",
|
||||
"target": ".createEl(\"h2\", { text: \"Beta主题列表\" })"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"h2\", { text: \"Monitoring\" })",
|
||||
"target": ".createEl(\"h2\", { text: \"检查\" })"
|
||||
},
|
||||
{
|
||||
"source": ".createEl(\"h4\", { text: \"Github repository for beta plugin:\" })",
|
||||
"target": ".createEl(\"h4\", { text: \"测试版插件的Github仓库:\" })"
|
||||
},
|
||||
{
|
||||
"source": ".Notice(\"Failed to read the daily note template\")",
|
||||
"target": ".Notice(\"无法读取每日笔记模板\")"
|
||||
},
|
||||
{
|
||||
"source": ".Notice(\"Unable to create new file.\")",
|
||||
"target": ".Notice(\"无法创建新文件\")"
|
||||
},
|
||||
{
|
||||
"source": "\"There is no theme.css or theme-beta.css file in the root path of this repository, so there is no theme to install.\"",
|
||||
"target": "\"此仓库的根路径中没有theme.css或theme-beta.css文件,因此没有可安装的主题。\""
|
||||
},
|
||||
{
|
||||
"source": "\"There is no manifest.json file in the root path of this repository, so theme cannot be installed.\"",
|
||||
"target": "\"此仓库的根路径中没有manifest.json文件,因此无法安装主题。\""
|
||||
},
|
||||
{
|
||||
"source": "${manifestInfo.name} theme installed from ${cssGithubRepository}. ",
|
||||
"target": "从 ${cssGithubRepository} 安装了 ${manifestInfo.name} 主题。 "
|
||||
},
|
||||
{
|
||||
"source": "${manifestInfo.name} theme updated from ${cssGithubRepository}.",
|
||||
"target": "从 ${cssGithubRepository} 更新了 ${manifestInfo.name} 主题。"
|
||||
},
|
||||
{
|
||||
"source": "console.info(\"No custom daily note settings found!\", err);",
|
||||
"target": "console.info(\"未找到自定义每日笔记设置!\", err);"
|
||||
},
|
||||
{
|
||||
"source": "console.info(\"No custom weekly note settings found!\", err);",
|
||||
"target": "console.info(\"未找到自定义每周笔记设置!\", err);"
|
||||
},
|
||||
{
|
||||
"source": "console.info(\"No custom monthly note settings found!\", err);",
|
||||
"target": "console.info(\"未找到自定义每月笔记设置!\", err);"
|
||||
},
|
||||
{
|
||||
"source": "console.info(\"No custom quarterly note settings found!\", err);",
|
||||
"target": "console.info(\"未找到自定义季度笔记设置!\", err);"
|
||||
},
|
||||
{
|
||||
"source": "console.info(\"No custom yearly note settings found!\", err);",
|
||||
"target": "console.info(\"未找到自定义年度笔记设置!\", err);"
|
||||
},
|
||||
{
|
||||
"source": "console.error(`Failed to read the daily note template '${templatePath}'`, err);",
|
||||
"target": "console.error(`无法读取每日笔记模板 '${templatePath}'`, err);"
|
||||
},
|
||||
{
|
||||
"source": "console.error(`Failed to create file: '${normalizedPath}'`, err);",
|
||||
"target": "console.error(`创建文件失败:'${normalizedPath}'`, err);"
|
||||
},
|
||||
{
|
||||
"source": "Checking for beta theme updates STARTED",
|
||||
"target": "开始检查测试版主题更新"
|
||||
},
|
||||
{
|
||||
"source": "Checking for beta theme updates COMPLETED",
|
||||
"target": "检查测试版主题更新完成"
|
||||
},
|
||||
{
|
||||
"source": "Removed ${cssGithubRepository} from BRAT themes list and will no longer be updated. However, the theme files still exist in the vault. To remove them, go into Settings > Appearance and remove the theme.",
|
||||
"target": "已从BRAT主题列表中移除${cssGithubRepository},并将不再进行更新。但是,主题文件仍存在于保险库中。要删除它们,请转到“设置”>“外观”并删除该主题。"
|
||||
},
|
||||
{
|
||||
"source": "This theme is already in the list for beta testing",
|
||||
"target": "此主题已在测试版列表中"
|
||||
},
|
||||
{
|
||||
"source": "This does not seem to be an obsidian plugin, as there is no manifest.json file.",
|
||||
"target": "这似乎不是一个Obsidian插件,因为没有找到manifest.json文件。"
|
||||
},
|
||||
{
|
||||
"source": "The plugin id attribute for the release is missing from the manifest file",
|
||||
"target": "发布信息的manifest文件中缺少id属性"
|
||||
},
|
||||
{
|
||||
"source": "The version attribute for the release is missing from the manifest file",
|
||||
"target": "发布信息的manifest文件中缺少version属性"
|
||||
},
|
||||
{
|
||||
"source": "This plugin is already in the list for beta testing",
|
||||
"target": "此插件已在测试版列表中"
|
||||
},
|
||||
{
|
||||
"source": "A manifest.json or manifest-beta.json file does not exist in the root directory of the repository. This plugin cannot be installed.",
|
||||
"target": "仓库的根目录中不存在manifest.json或manifest-beta.json文件。无法安装此插件。"
|
||||
},
|
||||
{
|
||||
"source": "The manifest${usingBetaManifest ? \"-beta\" : \"\"}.json file in the root directory of the repository does not have a version number in the file. This plugin cannot be installed.",
|
||||
"target": "仓库根目录中的manifest${usingBetaManifest ? \"-beta\" : \"\"}.json文件中没有版本号。无法安装此插件。"
|
||||
},
|
||||
{
|
||||
"source": "The manifest${usingBetaManifest ? \"-beta\" : \"\"}.json for this plugin indicates that the Obsidian version of the app needs to be ${primaryManifest.minAppVersion}, but this installation of Obsidian is ${import_obsidian7.apiVersion}.",
|
||||
"target": "此插件的manifest${usingBetaManifest ? \"-beta\" : \"\"}.json 文件表明,Obsidian应用程序的版本需要为 ${primaryManifest.minAppVersion}, 但当前安装的Obsidian版本为 ${import_obsidian7.apiVersion}。"
|
||||
},
|
||||
{
|
||||
"source": "You will need to update your Obsidian to use this plugin or contact the plugin developer for more information.",
|
||||
"target": "您需要更新Obsidian以使用此插件,或联系插件开发者以获取更多信息。"
|
||||
},
|
||||
{
|
||||
"source": "The release is not complete and cannot be download. main.js is missing from the Release",
|
||||
"target": "此版本不完整,无法下载。发布版中缺少main.js文件。"
|
||||
},
|
||||
{
|
||||
"source": "Plugin has been reinstalled and reloaded.",
|
||||
"target": "插件已重新安装并重新加载。"
|
||||
},
|
||||
{
|
||||
"source": "The plugin has been registered with BRAT.",
|
||||
"target": "插件已向BRAT注册。"
|
||||
},
|
||||
{
|
||||
"source": "The version of ${repositoryPath} is frozen, not updating.",
|
||||
"target": "${repositoryPath}的版本已冻结,不会更新。"
|
||||
},
|
||||
{
|
||||
"source": "There is an update available for ${primaryManifest.id} from version ${localManifestJson.version} to ${primaryManifest.version}. ",
|
||||
"target": "${primaryManifest.id} 有可用更新,从版本 ${localManifestJson.version} 更新到 ${primaryManifest.version}. "
|
||||
},
|
||||
{
|
||||
"source": "[Release Info]",
|
||||
"target": "[发布信息]"
|
||||
},
|
||||
{
|
||||
"source": "No update available for ${repositoryPath}",
|
||||
"target": "没有 ${repositoryPath} 的可用更新"
|
||||
},
|
||||
{
|
||||
"source": "Update of plugin failed.",
|
||||
"target": "插件更新失败。"
|
||||
},
|
||||
{
|
||||
"source": "Checking for plugin updates STARTED",
|
||||
"target": "开始检查插件更新..."
|
||||
},
|
||||
{
|
||||
"source": "Checking for plugin updates COMPLETED",
|
||||
"target": "检查插件更新完成。"
|
||||
},
|
||||
{
|
||||
"source": "Removed ${repositoryPath} from BRAT plugin list",
|
||||
"target": "已从BRAT插件列表中移除 ${repositoryPath}"
|
||||
},
|
||||
{
|
||||
"source": "---- Core Plugin Settings ----",
|
||||
"target": "---- 核心插件设置 ----"
|
||||
},
|
||||
{
|
||||
"source": "---- Plugin Settings ----",
|
||||
"target": "---- 插件设置 ----"
|
||||
},
|
||||
{
|
||||
"source": "Could not locate the repository from the URL.",
|
||||
"target": "无法从URL定位仓库。"
|
||||
},
|
||||
{
|
||||
"source": "Checking for updates for ${results.info}",
|
||||
"target": "正在检查 ${results.info} 的更新..."
|
||||
},
|
||||
{
|
||||
"source": "Reinstalling ${results.info}",
|
||||
"target": "正在重新安装 ${results.info}"
|
||||
},
|
||||
{
|
||||
"source": "Plugin reloading .....",
|
||||
"target": "插件重新加载中....."
|
||||
},
|
||||
{
|
||||
"source": "${results.display} plugin disabled",
|
||||
"target": "${results.display} 插件已禁用"
|
||||
},
|
||||
{
|
||||
"source": "${results.display} plugin enabled",
|
||||
"target": "${results.display} 插件已开启"
|
||||
},
|
||||
{
|
||||
"source": "If you need to access private repositories, enter the personal access token here.",
|
||||
"target": "如果您需要访问私有存储库,请在此处输入个人访问令牌。"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
287
.obsidian/plugins/i18n/translations/fPY2-osW1IClUH6XQnmOz6d56ISFOeR9.json
vendored
Normal file
287
.obsidian/plugins/i18n/translations/fPY2-osW1IClUH6XQnmOz6d56ISFOeR9.json
vendored
Normal file
@@ -0,0 +1,287 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "homepage",
|
||||
"version": "2.0.0",
|
||||
"title": "Homepage",
|
||||
"description": "Open a specified note, canvas, or workspace on startup, or set it for quick access later.",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "4.0.6",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [],
|
||||
"regex": [
|
||||
{
|
||||
"source": "Notice(\"Failed to read the daily note template\")",
|
||||
"target": "Notice(\"读取日志模板失败\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Unable to create new file.\")",
|
||||
"target": "Notice(\"无法创建新文件\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Really?\")",
|
||||
"target": "Notice(\"确定?\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Copied homepage debug information to clipboard\")",
|
||||
"target": "Notice(\"将主页调试信息复制到剪贴板\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(\"Homepage cannot be opened due to plugin unavailablity.\")",
|
||||
"target": "Notice(\"由于插件不可用,主页无法打开\")"
|
||||
},
|
||||
{
|
||||
"source": "Notice(`Cannot find the workspace \"${this.data.value}\" to use as the homepage.`)",
|
||||
"target": "Notice(`找不到工作空间 \"${this.data.value}\" 作为主页`)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(`Homepage \"${this.computedValue}\" does not exist.`)",
|
||||
"target": "Notice(`主页\"${this.computedValue}\" 不存在`)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(`The homepage has been changed to \"${this.data.value}\".`)",
|
||||
"target": "Notice(`主页已更改为 \"${this.data.value}\".`)"
|
||||
},
|
||||
{
|
||||
"source": "Notice(ce)",
|
||||
"target": "Notice(ce)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Failed to read the daily note template '${n}'`,i)",
|
||||
"target": ".error(`读取日志模板失败 '${n}'`,i)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Failed to create file: '${d}'`,p)",
|
||||
"target": ".error(`创建文件失败: '${d}'`,p)"
|
||||
},
|
||||
{
|
||||
"source": ".error(`Failed to create file: '${m}'`,r)",
|
||||
"target": ".error(`创建文件失败: '${m}'`,r)"
|
||||
},
|
||||
{
|
||||
"source": "name:\"Copy debug info\"",
|
||||
"target": "name:\"复制调试信息\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Open homepage\"",
|
||||
"target": "name:\"打开主页\""
|
||||
},
|
||||
{
|
||||
"source": "name:\"Set to active file\"",
|
||||
"target": "name:\"设置为活动文件\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"The plugin required for this homepage type isn't available.\"",
|
||||
"target": "text:\"此主页类型所需的插件不可用\""
|
||||
},
|
||||
{
|
||||
"source": "text:`This setting has been disabled, as it isn't compatible with Daily Notes' \"Open daily note on startup\" functionality. To use it, disable the Daily Notes setting.`",
|
||||
"target": "text:`此设置已被禁用,因为它与每日笔记不兼容' \"在启动时打开每日笔记\" 功能。要使用它,请禁用“每日笔记”设置`"
|
||||
},
|
||||
{
|
||||
"source": "text:\"Select commands that will be executed when opening the homepage.\"",
|
||||
"target": "text:\"选择打开主页时要执行的命令.\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"If this vault is synced using unofficial services, this may lead to content being overwritten.\"",
|
||||
"target": "text:\"如果使用非官方服务同步此保险库,则可能导致内容被覆盖\""
|
||||
},
|
||||
{
|
||||
"source": "text:\"Requires Dataview auto-refresh to be enabled.\"",
|
||||
"target": "text:\"要求启用Dataview自动刷新\""
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Add...\")",
|
||||
"target": ".setButtonText(\"添加...\")"
|
||||
},
|
||||
{
|
||||
"source": ".setButtonText(\"Copy debug info\")",
|
||||
"target": ".setButtonText(\"复制调试信息\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Homepage\")",
|
||||
"target": ".setName(\"主页\")"
|
||||
},
|
||||
{
|
||||
"source": ".setName(\"Separate mobile homepage\")",
|
||||
"target": ".setName(\"单独的移动设备首页\")"
|
||||
},
|
||||
{
|
||||
"source": ".setDesc(\"For mobile devices, store the homepage and its settings separately.\")",
|
||||
"target": ".setDesc(\"对于移动设备,单独存储主页及其设置。\")"
|
||||
},
|
||||
{
|
||||
"source": ".addHeading(\"Commands\",\"commandsHeading\")",
|
||||
"target": ".addHeading(\"命令\",\"命令标题\")"
|
||||
},
|
||||
{
|
||||
"source": ".addHeading(\"Vault environment\",\"vaultHeading\")",
|
||||
"target": ".addHeading(\"库环境\",\"库标题\")"
|
||||
},
|
||||
{
|
||||
"source": ".addHeading(\"Opened view\",\"paneHeading\")",
|
||||
"target": ".addHeading(\"打开视图\",\"面板标题\")"
|
||||
},
|
||||
{
|
||||
"source": ".addToggle(\"Open on startup\",\"When launching Obsidian, open the homepage.\",\"openOnStartup\",d=>this.display())",
|
||||
"target": ".addToggle(\"启动时打开\",\"当Obsidian启动时, 打开主页.\",\"openOnStartup\",d=>this.display())"
|
||||
},
|
||||
{
|
||||
"source": ".addToggle(\"Open when empty\",\"When there are no tabs open, open the homepage.\",\"openWhenEmpty\")",
|
||||
"target": ".addToggle(\"为空时打开\",\"当标签页为空时,打开主页.\",\"openWhenEmpty\")"
|
||||
},
|
||||
{
|
||||
"source": ".addToggle(\"Use when opening normally\",\"Use homepage settings when opening it normally, such as from a link or the file browser.\",\"alwaysApply\")",
|
||||
"target": ".addToggle(\"打开时应用设置\",\"当主页正常打开时,应用主页设置,比如从链接或文件管理器打开\",\"alwaysApply\")"
|
||||
},
|
||||
{
|
||||
"source": ".addDropdown(\"Opening method\",\"Determine how extant tabs and views are affected on startup.\"",
|
||||
"target": ".addDropdown(\"开启方式\",\"确定启动时现有选项卡和视图如何受到影响。\""
|
||||
},
|
||||
{
|
||||
"source": ".addDropdown(\"Manual opening method\",\"Determine how extant tabs and views are affected when opening with commands or the ribbon button.\"",
|
||||
"target": ".addDropdown(\"确定启动时现有选项卡和视图如何受到影响。\",\"确定使用命令或功能区按钮打开时对现有选项卡和视图的影响。\""
|
||||
},
|
||||
{
|
||||
"source": "addDropdown(\"Homepage view\",\"Choose what view to open the homepage in.\"",
|
||||
"target": "addDropdown(\"主页视图\",\"主页视图\""
|
||||
},
|
||||
{
|
||||
"source": ".addToggle(\"Pin\",\"Pin the homepage when opening.\"",
|
||||
"target": ".addToggle(\"固定\",\"打开时固定主页。\""
|
||||
},
|
||||
{
|
||||
"source": ".addToggle(\"Hide release notes\",\"Never display release notes when Obsidian updates.\"",
|
||||
"target": ".addToggle(\"隐藏发行说明\",\"Obsidian更新时从不显示发行说明。\""
|
||||
},
|
||||
{
|
||||
"source": ".addToggle(\"Auto-create\",\"When the homepage doesn't exist, create a note with its name.\"",
|
||||
"target": ".addToggle(\"自动创建\",\"当主页不存在时,创建一个带有其名称的注释。\""
|
||||
},
|
||||
{
|
||||
"source": ".addToggle(\"Revert view on close\",\"When navigating away from the homepage, restore the default view.\"",
|
||||
"target": ".addToggle(\"关闭时恢复视图\",\"离开主页时,恢复默认视图。\""
|
||||
},
|
||||
{
|
||||
"source": ".addToggle(\"Auto-scroll\",\"When opening the homepage, scroll to the bottom and focus on the last line.\"",
|
||||
"target": ".addToggle(\"自动滚动\",\"打开主页时,滚动到底部并专注于最后一行。\""
|
||||
},
|
||||
{
|
||||
"source": ".addToggle(\"Refresh Dataview\",\"Always attempt to reload Dataview views when opening the homepage.\"",
|
||||
"target": ".addToggle(\"刷新数据视图\",\"打开主页时,始终尝试重新加载Dataview视图。\""
|
||||
},
|
||||
{
|
||||
"source": "\"Enter a note or canvas to use.\"",
|
||||
"target": "\"输入要使用的笔记或白板。\""
|
||||
},
|
||||
{
|
||||
"source": "\"Enter an Obsidian workspace to use.\"",
|
||||
"target": "\"输入要使用的Obsidian工作区。\""
|
||||
},
|
||||
{
|
||||
"source": "\"Your graph view will be used.\"",
|
||||
"target": "\"将使用您的图形视图。\""
|
||||
},
|
||||
{
|
||||
"source": "\"Nothing will occur by default. Any commands added will still take effect.\"",
|
||||
"target": "\"默认情况下不会发生任何事情。添加的任何命令仍将生效。\""
|
||||
},
|
||||
{
|
||||
"source": "\"A random note or canvas from your Obsidian folder will be selected.\"",
|
||||
"target": "\"将从您的Obsidian文件夹中随机选择一个笔记或白板。\""
|
||||
},
|
||||
{
|
||||
"source": "\"Your Daily Note or Periodic Daily Note will be used.\"",
|
||||
"target": "\"将使用您的日记或定期日记。\""
|
||||
},
|
||||
{
|
||||
"source": "\"Your Periodic Weekly Note will be used.\"",
|
||||
"target": "\"将使用您的定期周报。\""
|
||||
},
|
||||
{
|
||||
"source": "\"Your Periodic Monthly Note will be used.\"",
|
||||
"target": "\"将使用您的定期月报。\""
|
||||
},
|
||||
{
|
||||
"source": "\"Your Periodic Yearly Note will be used.\"",
|
||||
"target": "\"将使用您的定期年报。\""
|
||||
},
|
||||
{
|
||||
"source": "i.Default=\"Default view\",i.Reading=\"Reading view\",i.Source=\"Editing view (Source)\",i.LivePreview=\"Editing view (Live Preview)\"",
|
||||
"target": "i.Default=\"默认视图\",i.Reading=\"阅读视图\",i.Source=\"编辑视图(源码)\",i.LivePreview=\"编辑视图(实时预览)\""
|
||||
},
|
||||
{
|
||||
"source": "\"Replace last note\"",
|
||||
"target": "\"替换最后一个笔记\""
|
||||
},
|
||||
{
|
||||
"source": "\"Keep open notes\"",
|
||||
"target": "\"保持打开的笔记\""
|
||||
},
|
||||
{
|
||||
"source": "\"Replace all open notes\"",
|
||||
"target": "\"替换所有打开的笔记\""
|
||||
},
|
||||
{
|
||||
"source": ".addRibbonIcon(\"homepage\",\"Open homepage\"",
|
||||
"target": ".addRibbonIcon(\"homepage\",\"打开主页\""
|
||||
},
|
||||
{
|
||||
"source": "\"Enter a folder. A random note or canvas from it will be selected.\"",
|
||||
"target": "\"输入文件夹路径,系统将从中随机选择一个笔记或画布。\""
|
||||
},
|
||||
{
|
||||
"source": "\"File\"",
|
||||
"target": "\"文件\""
|
||||
},
|
||||
{
|
||||
"source": "\"Workspace\"",
|
||||
"target": "\"工作区\""
|
||||
},
|
||||
{
|
||||
"source": "\"Random file\"",
|
||||
"target": "\"随机文件\""
|
||||
},
|
||||
{
|
||||
"source": "\"Random in folder\"",
|
||||
"target": "\"随机选择文件夹内文件\""
|
||||
},
|
||||
{
|
||||
"source": "\"Graph view\"",
|
||||
"target": "\"图谱视图\""
|
||||
},
|
||||
{
|
||||
"source": "\"Nothing\"",
|
||||
"target": "\"无\""
|
||||
},
|
||||
{
|
||||
"source": "\"Daily Note\"",
|
||||
"target": "\"每日笔记\""
|
||||
},
|
||||
{
|
||||
"source": "\"Weekly Note\"",
|
||||
"target": "\"每周笔记\""
|
||||
},
|
||||
{
|
||||
"source": "\"Monthly Note\"",
|
||||
"target": "\"每月笔记\""
|
||||
},
|
||||
{
|
||||
"source": "\"Yearly Note\"",
|
||||
"target": "\"年度笔记\""
|
||||
},
|
||||
{
|
||||
"source": "\"Open on startup\"",
|
||||
"target": "\"启动时自动打开\""
|
||||
},
|
||||
{
|
||||
"source": "\"When launching Obsidian, open the homepage.\"",
|
||||
"target": "\"启动 Obsidian 时自动打开主页\""
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
1727
.obsidian/plugins/i18n/translations/rZIO51WxK6qfCShHA9o3TwJDRsQbKj19.json
vendored
Normal file
1727
.obsidian/plugins/i18n/translations/rZIO51WxK6qfCShHA9o3TwJDRsQbKj19.json
vendored
Normal file
File diff suppressed because it is too large
Load Diff
121
.obsidian/plugins/i18n/translations/zAYcYTPkZ_fIDLJYOyW0ztKFMZHyV3Xj.json
vendored
Normal file
121
.obsidian/plugins/i18n/translations/zAYcYTPkZ_fIDLJYOyW0ztKFMZHyV3Xj.json
vendored
Normal file
@@ -0,0 +1,121 @@
|
||||
{
|
||||
"schemaVersion": 1,
|
||||
"metadata": {
|
||||
"plugin": "obsidian-style-settings",
|
||||
"version": "1.0.0",
|
||||
"title": "Style Settings",
|
||||
"description": "Style Settings Localization & Tweaks",
|
||||
"language": "zh-cn",
|
||||
"supportedVersions": "1.0.9",
|
||||
"author": ""
|
||||
},
|
||||
"dict": {
|
||||
"main.js": {
|
||||
"ast": [
|
||||
{
|
||||
"type": "CallExpression",
|
||||
"name": "error",
|
||||
"source": "Error: Style Settings locale not found",
|
||||
"target": "错误:未找到样式设置语言"
|
||||
},
|
||||
{
|
||||
"type": "CallExpression",
|
||||
"name": "error",
|
||||
"source": "Style Settings | Failed to render section",
|
||||
"target": "样式设置 | 渲染部分失败"
|
||||
},
|
||||
{
|
||||
"type": "CallExpression",
|
||||
"name": "setDesc",
|
||||
"source": "Import an entire or partial configuration. Warning: this may override existing settings",
|
||||
"target": "导入全部或部分配置。警告:这可能会覆盖现有设置"
|
||||
},
|
||||
{
|
||||
"type": "CallExpression",
|
||||
"name": "setName",
|
||||
"source": "Import style setting",
|
||||
"target": "导入样式设置"
|
||||
},
|
||||
{
|
||||
"type": "CallExpression",
|
||||
"name": "setPlaceholder",
|
||||
"source": "Paste config here...",
|
||||
"target": "在此粘贴配置..."
|
||||
},
|
||||
{
|
||||
"type": "CallExpression",
|
||||
"name": "setPlaceholder",
|
||||
"source": "Search Style Settings...",
|
||||
"target": "搜索样式设置..."
|
||||
},
|
||||
{
|
||||
"type": "CallExpression",
|
||||
"name": "setTooltip",
|
||||
"source": "Reset all settings to default",
|
||||
"target": "将所有设置重置为默认值"
|
||||
},
|
||||
{
|
||||
"type": "CallExpression",
|
||||
"name": "setTooltip",
|
||||
"source": "Export settings",
|
||||
"target": "导出设置"
|
||||
},
|
||||
{
|
||||
"type": "ObjectProperty",
|
||||
"name": "name",
|
||||
"source": "Show style settings view",
|
||||
"target": "显示样式设置视图"
|
||||
},
|
||||
{
|
||||
"type": "ObjectProperty",
|
||||
"name": "name",
|
||||
"source": "Style Settings",
|
||||
"target": "样式设置"
|
||||
},
|
||||
{
|
||||
"type": "ObjectProperty",
|
||||
"name": "text",
|
||||
"source": "Copy to clipboard",
|
||||
"target": "复制到剪贴板"
|
||||
},
|
||||
{
|
||||
"type": "ObjectProperty",
|
||||
"name": "text",
|
||||
"source": "Error importing config",
|
||||
"target": "导入配置出错"
|
||||
},
|
||||
{
|
||||
"type": "ObjectProperty",
|
||||
"name": "text",
|
||||
"source": "Import from file",
|
||||
"target": "从文件导入"
|
||||
},
|
||||
{
|
||||
"type": "ObjectProperty",
|
||||
"name": "text",
|
||||
"source": "Default (light): ",
|
||||
"target": "默认(浅色): "
|
||||
},
|
||||
{
|
||||
"type": "ObjectProperty",
|
||||
"name": "text",
|
||||
"source": "Default (dark): ",
|
||||
"target": "默认(深色): "
|
||||
},
|
||||
{
|
||||
"type": "ObjectProperty",
|
||||
"name": "text",
|
||||
"source": "No style settings found",
|
||||
"target": "未找到样式设置"
|
||||
},
|
||||
{
|
||||
"type": "ObjectProperty",
|
||||
"name": "text",
|
||||
"source": "Click here for details and examples.",
|
||||
"target": "点击此处查看详细信息和示例。"
|
||||
}
|
||||
],
|
||||
"regex": []
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user