2025-8-16

This commit is contained in:
whatisnot
2025-08-16 17:26:32 +08:00
parent d46218961a
commit 17f157e193
44 changed files with 42516 additions and 736 deletions

3
.obsidian/app.json vendored
View File

@ -1,3 +1,4 @@
{
"alwaysUpdateLinks": true
"alwaysUpdateLinks": true,
"promptDelete": false
}

View File

@ -1 +1,5 @@
{}
{
"accentColor": "",
"cssTheme": "Minimal",
"theme": "obsidian"
}

View File

@ -1,3 +1,8 @@
[
"obsidian-livesync"
"dataview",
"easy-typing-obsidian",
"obsidian-kanban",
"obsidian-tasks-plugin",
"obsidian-hover-editor",
"obsidian-excalidraw-plugin"
]

20876
.obsidian/plugins/dataview/main.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,11 @@
{
"id": "dataview",
"name": "Dataview",
"version": "0.5.68",
"minAppVersion": "0.13.11",
"description": "Complex data views for the data-obsessed.",
"author": "Michael Brenan <blacksmithgu@gmail.com>",
"authorUrl": "https://github.com/blacksmithgu",
"helpUrl": "https://blacksmithgu.github.io/obsidian-dataview/",
"isDesktopOnly": false
}

141
.obsidian/plugins/dataview/styles.css vendored Normal file
View File

@ -0,0 +1,141 @@
.block-language-dataview {
overflow-y: auto;
}
/*****************/
/** Table Views **/
/*****************/
/* List View Default Styling; rendered internally as a table. */
.table-view-table {
width: 100%;
}
.table-view-table > thead > tr, .table-view-table > tbody > tr {
margin-top: 1em;
margin-bottom: 1em;
text-align: left;
}
.table-view-table > tbody > tr:hover {
background-color: var(--table-row-background-hover);
}
.table-view-table > thead > tr > th {
font-weight: 700;
font-size: larger;
border-top: none;
border-left: none;
border-right: none;
border-bottom: solid;
max-width: 100%;
}
.table-view-table > tbody > tr > td {
text-align: left;
border: none;
font-weight: 400;
max-width: 100%;
}
.table-view-table ul, .table-view-table ol {
margin-block-start: 0.2em !important;
margin-block-end: 0.2em !important;
}
/** Rendered value styling for any view. */
.dataview-result-list-root-ul {
padding: 0em !important;
margin: 0em !important;
}
.dataview-result-list-ul {
margin-block-start: 0.2em !important;
margin-block-end: 0.2em !important;
}
/** Generic grouping styling. */
.dataview.result-group {
padding-left: 8px;
}
/*******************/
/** Inline Fields **/
/*******************/
.dataview.inline-field-key {
padding-left: 8px;
padding-right: 8px;
font-family: var(--font-monospace);
background-color: var(--background-primary-alt);
color: var(--nav-item-color-selected);
}
.dataview.inline-field-value {
padding-left: 8px;
padding-right: 8px;
font-family: var(--font-monospace);
background-color: var(--background-secondary-alt);
color: var(--nav-item-color-selected);
}
.dataview.inline-field-standalone-value {
padding-left: 8px;
padding-right: 8px;
font-family: var(--font-monospace);
background-color: var(--background-secondary-alt);
color: var(--nav-item-color-selected);
}
/***************/
/** Task View **/
/***************/
.dataview.task-list-item, .dataview.task-list-basic-item {
margin-top: 3px;
margin-bottom: 3px;
transition: 0.4s;
}
.dataview.task-list-item:hover, .dataview.task-list-basic-item:hover {
background-color: var(--text-selection);
box-shadow: -40px 0 0 var(--text-selection);
cursor: pointer;
}
/*****************/
/** Error Views **/
/*****************/
div.dataview-error-box {
width: 100%;
min-height: 150px;
display: flex;
align-items: center;
justify-content: center;
border: 4px dashed var(--background-secondary);
}
.dataview-error-message {
color: var(--text-muted);
text-align: center;
}
/*************************/
/** Additional Metadata **/
/*************************/
.dataview.small-text {
font-size: smaller;
color: var(--text-muted);
margin-left: 3px;
}
.dataview.small-text::before {
content: "(";
}
.dataview.small-text::after {
content: ")";
}

View File

@ -0,0 +1,64 @@
{
"Tabout": true,
"SelectionEnhance": true,
"IntrinsicSymbolPairs": true,
"BaseObEditEnhance": true,
"FW2HWEnhance": true,
"BetterCodeEdit": true,
"BetterBackspace": true,
"AutoFormat": true,
"ExcludeFiles": "",
"ChineseEnglishSpace": true,
"ChineseNumberSpace": true,
"EnglishNumberSpace": true,
"ChineseNoSpace": true,
"QuoteSpace": true,
"PunctuationSpace": true,
"AutoCapital": true,
"AutoCapitalMode": "typing",
"PunctuationSpaceMode": "typing",
"InlineCodeSpaceMode": 1,
"InlineFormulaSpaceMode": 1,
"InlineLinkSpaceMode": 1,
"InlineLinkSmartSpace": true,
"UserDefinedRegSwitch": true,
"UserDefinedRegExp": "{{.*?}}|++\n<.*?>|--\n\\[\\!.*?\\][-+]{0,1}|-+\n(file:///|https?://|ftp://|obsidian://|zotero://|www.)[^\\s《》。,;;:“”‘’\\)\\(\\[\\]\\{\\}']+|--\n\n[a-zA-Z0-9_\\-.]+@[a-zA-Z0-9_\\-.]+|++\n(?<!#)#[\\u4e00-\\u9fa5\\w-\\/]+|++",
"debug": false,
"userSelRepRuleTrigger": [
"-",
"#"
],
"userSelRepRuleValue": [
{
"left": "~~",
"right": "~~"
},
{
"left": "#",
"right": " "
}
],
"userDeleteRulesStrList": [
[
"demo|",
"|"
]
],
"userConvertRulesStrList": [
[
":)|",
"😀|"
]
],
"userSelRuleSettingsOpen": true,
"userDelRuleSettingsOpen": true,
"userCvtRuleSettingsOpen": true,
"StrictModeEnter": false,
"StrictLineMode": "enter_twice",
"EnhanceModA": false,
"TryFixChineseIM": true,
"PuncRectify": false,
"FixMacOSContextMenu": false,
"TryFixMSIME": false,
"CollapsePersistentEnter": false
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,11 @@
{
"id": "easy-typing-obsidian",
"name": "Easy Typing",
"version": "5.5.14",
"minAppVersion": "0.15.0",
"description": "This plugin aims to enhance and optimize the editing experience in Obsidian",
"author": "yaozhuwa",
"authorUrl": "https://github.com/Yaozhuwa",
"isDesktopOnly": false,
"fundingUrl": "https://www.buymeacoffee.com/yaozhuwa"
}

View File

@ -0,0 +1,17 @@
span[class="easy-typing-tabstops"] {
border-radius: 2px;
background-color: #87cefa2e;
outline: #87cefa6e solid 1px;
}
span[class="easy-typing-cursor-widget"] {
color: #1364ce6e;
/* animation: blink 1s step-start 0s infinite; */
display: inline;
position: absolute;
white-space: pre;
}
/* @keyframes blink {
50% { opacity: 0; }
} */

View File

@ -0,0 +1,810 @@
{
"disableDoubleClickTextEditing": false,
"folder": "Excalidraw",
"cropFolder": "",
"annotateFolder": "",
"embedUseExcalidrawFolder": false,
"templateFilePath": "Excalidraw/Template.excalidraw",
"scriptFolderPath": "Excalidraw/Scripts",
"fontAssetsPath": "Excalidraw/CJK Fonts",
"loadChineseFonts": false,
"loadJapaneseFonts": false,
"loadKoreanFonts": false,
"compress": true,
"decompressForMDView": false,
"onceOffCompressFlagReset": true,
"onceOffGPTVersionReset": true,
"autosave": true,
"autosaveIntervalDesktop": 60000,
"autosaveIntervalMobile": 30000,
"drawingFilenamePrefix": "Drawing ",
"drawingEmbedPrefixWithFilename": true,
"drawingFilnameEmbedPostfix": " ",
"drawingFilenameDateTime": "YYYY-MM-DD HH.mm.ss",
"useExcalidrawExtension": true,
"cropSuffix": "",
"cropPrefix": "cropped_",
"annotateSuffix": "",
"annotatePrefix": "annotated_",
"annotatePreserveSize": false,
"previewImageType": "SVGIMG",
"renderingConcurrency": 3,
"allowImageCache": true,
"allowImageCacheInScene": true,
"displayExportedImageIfAvailable": false,
"previewMatchObsidianTheme": false,
"width": "400",
"height": "",
"overrideObsidianFontSize": false,
"dynamicStyling": "colorful",
"isLeftHanded": false,
"iframeMatchExcalidrawTheme": true,
"matchTheme": false,
"matchThemeAlways": false,
"matchThemeTrigger": false,
"defaultMode": "normal",
"defaultPenMode": "never",
"penModeDoubleTapEraser": true,
"penModeSingleFingerPanning": true,
"penModeCrosshairVisible": true,
"renderImageInMarkdownReadingMode": false,
"renderImageInHoverPreviewForMDNotes": false,
"renderImageInMarkdownToPDF": false,
"allowPinchZoom": false,
"allowWheelZoom": false,
"zoomToFitOnOpen": true,
"zoomToFitOnResize": true,
"zoomToFitMaxLevel": 2,
"zoomStep": 0.05,
"zoomMin": 0.1,
"zoomMax": 30,
"linkPrefix": "📍",
"urlPrefix": "🌐",
"parseTODO": false,
"todo": "☐",
"done": "🗹",
"hoverPreviewWithoutCTRL": false,
"linkOpacity": 1,
"openInAdjacentPane": true,
"showSecondOrderLinks": true,
"focusOnFileTab": true,
"openInMainWorkspace": true,
"showLinkBrackets": true,
"allowCtrlClick": true,
"forceWrap": false,
"pageTransclusionCharLimit": 200,
"wordWrappingDefault": 0,
"removeTransclusionQuoteSigns": true,
"iframelyAllowed": true,
"pngExportScale": 1,
"exportWithTheme": true,
"exportWithBackground": true,
"exportPaddingSVG": 10,
"exportEmbedScene": false,
"keepInSync": false,
"autoexportSVG": false,
"autoexportPNG": false,
"autoExportLightAndDark": false,
"autoexportExcalidraw": false,
"embedType": "excalidraw",
"embedMarkdownCommentLinks": true,
"embedWikiLink": true,
"syncExcalidraw": false,
"experimentalFileType": false,
"experimentalFileTag": "✏️",
"experimentalLivePreview": true,
"fadeOutExcalidrawMarkup": false,
"loadPropertySuggestions": false,
"experimentalEnableFourthFont": false,
"experimantalFourthFont": "Virgil",
"addDummyTextElement": false,
"zoteroCompatibility": false,
"fieldSuggester": true,
"compatibilityMode": false,
"drawingOpenCount": 0,
"library": "deprecated",
"library2": {
"type": "excalidrawlib",
"version": 2,
"source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag/2.14.3",
"libraryItems": []
},
"imageElementNotice": true,
"mdSVGwidth": 500,
"mdSVGmaxHeight": 800,
"mdFont": "Virgil",
"mdFontColor": "Black",
"mdBorderColor": "Black",
"mdCSS": "",
"scriptEngineSettings": {},
"defaultTrayMode": true,
"previousRelease": "2.14.3",
"showReleaseNotes": true,
"showNewVersionNotification": true,
"latexBoilerplate": "\\color{blue}",
"latexPreambleLocation": "preamble.sty",
"taskboneEnabled": false,
"taskboneAPIkey": "",
"pinnedScripts": [],
"customPens": [
{
"type": "default",
"freedrawOnly": false,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 0,
"roughness": 0,
"penOptions": {
"highlighter": false,
"constantPressure": false,
"hasOutline": false,
"outlineWidth": 1,
"options": {
"thinning": 0.6,
"smoothing": 0.5,
"streamline": 0.5,
"easing": "easeOutSine",
"start": {
"cap": true,
"taper": 0,
"easing": "linear"
},
"end": {
"cap": true,
"taper": 0,
"easing": "linear"
}
}
}
},
{
"type": "highlighter",
"freedrawOnly": true,
"strokeColor": "#FFC47C",
"backgroundColor": "#FFC47C",
"fillStyle": "solid",
"strokeWidth": 2,
"roughness": null,
"penOptions": {
"highlighter": true,
"constantPressure": true,
"hasOutline": true,
"outlineWidth": 4,
"options": {
"thinning": 1,
"smoothing": 0.5,
"streamline": 0.5,
"easing": "linear",
"start": {
"taper": 0,
"cap": true,
"easing": "linear"
},
"end": {
"taper": 0,
"cap": true,
"easing": "linear"
}
}
}
},
{
"type": "finetip",
"freedrawOnly": false,
"strokeColor": "#3E6F8D",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 0.5,
"roughness": 0,
"penOptions": {
"highlighter": false,
"hasOutline": false,
"outlineWidth": 1,
"constantPressure": true,
"options": {
"smoothing": 0.4,
"thinning": -0.5,
"streamline": 0.4,
"easing": "linear",
"start": {
"taper": 5,
"cap": false,
"easing": "linear"
},
"end": {
"taper": 5,
"cap": false,
"easing": "linear"
}
}
}
},
{
"type": "fountain",
"freedrawOnly": false,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 2,
"roughness": 0,
"penOptions": {
"highlighter": false,
"constantPressure": false,
"hasOutline": false,
"outlineWidth": 1,
"options": {
"smoothing": 0.2,
"thinning": 0.6,
"streamline": 0.2,
"easing": "easeInOutSine",
"start": {
"taper": 150,
"cap": true,
"easing": "linear"
},
"end": {
"taper": 1,
"cap": true,
"easing": "linear"
}
}
}
},
{
"type": "marker",
"freedrawOnly": true,
"strokeColor": "#B83E3E",
"backgroundColor": "#FF7C7C",
"fillStyle": "dashed",
"strokeWidth": 2,
"roughness": 3,
"penOptions": {
"highlighter": false,
"constantPressure": true,
"hasOutline": true,
"outlineWidth": 4,
"options": {
"thinning": 1,
"smoothing": 0.5,
"streamline": 0.5,
"easing": "linear",
"start": {
"taper": 0,
"cap": true,
"easing": "linear"
},
"end": {
"taper": 0,
"cap": true,
"easing": "linear"
}
}
}
},
{
"type": "thick-thin",
"freedrawOnly": true,
"strokeColor": "#CECDCC",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 0,
"roughness": null,
"penOptions": {
"highlighter": true,
"constantPressure": true,
"hasOutline": false,
"outlineWidth": 1,
"options": {
"thinning": 1,
"smoothing": 0.5,
"streamline": 0.5,
"easing": "linear",
"start": {
"taper": 0,
"cap": true,
"easing": "linear"
},
"end": {
"cap": true,
"taper": true,
"easing": "linear"
}
}
}
},
{
"type": "thin-thick-thin",
"freedrawOnly": true,
"strokeColor": "#CECDCC",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 0,
"roughness": null,
"penOptions": {
"highlighter": true,
"constantPressure": true,
"hasOutline": false,
"outlineWidth": 1,
"options": {
"thinning": 1,
"smoothing": 0.5,
"streamline": 0.5,
"easing": "linear",
"start": {
"cap": true,
"taper": true,
"easing": "linear"
},
"end": {
"cap": true,
"taper": true,
"easing": "linear"
}
}
}
},
{
"type": "default",
"freedrawOnly": false,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 0,
"roughness": 0,
"penOptions": {
"highlighter": false,
"constantPressure": false,
"hasOutline": false,
"outlineWidth": 1,
"options": {
"thinning": 0.6,
"smoothing": 0.5,
"streamline": 0.5,
"easing": "easeOutSine",
"start": {
"cap": true,
"taper": 0,
"easing": "linear"
},
"end": {
"cap": true,
"taper": 0,
"easing": "linear"
}
}
}
},
{
"type": "default",
"freedrawOnly": false,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 0,
"roughness": 0,
"penOptions": {
"highlighter": false,
"constantPressure": false,
"hasOutline": false,
"outlineWidth": 1,
"options": {
"thinning": 0.6,
"smoothing": 0.5,
"streamline": 0.5,
"easing": "easeOutSine",
"start": {
"cap": true,
"taper": 0,
"easing": "linear"
},
"end": {
"cap": true,
"taper": 0,
"easing": "linear"
}
}
}
},
{
"type": "default",
"freedrawOnly": false,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 0,
"roughness": 0,
"penOptions": {
"highlighter": false,
"constantPressure": false,
"hasOutline": false,
"outlineWidth": 1,
"options": {
"thinning": 0.6,
"smoothing": 0.5,
"streamline": 0.5,
"easing": "easeOutSine",
"start": {
"cap": true,
"taper": 0,
"easing": "linear"
},
"end": {
"cap": true,
"taper": 0,
"easing": "linear"
}
}
}
}
],
"numberOfCustomPens": 0,
"pdfScale": 4,
"pdfBorderBox": true,
"pdfFrame": false,
"pdfGapSize": 20,
"pdfGroupPages": false,
"pdfLockAfterImport": true,
"pdfNumColumns": 1,
"pdfNumRows": 1,
"pdfDirection": "right",
"pdfImportScale": 0.3,
"gridSettings": {
"DYNAMIC_COLOR": true,
"COLOR": "#000000",
"OPACITY": 50,
"GRID_DIRECTION": {
"horizontal": true,
"vertical": true
}
},
"laserSettings": {
"DECAY_LENGTH": 50,
"DECAY_TIME": 1000,
"COLOR": "#ff0000"
},
"embeddableMarkdownDefaults": {
"useObsidianDefaults": false,
"backgroundMatchCanvas": false,
"backgroundMatchElement": true,
"backgroundColor": "#fff",
"backgroundOpacity": 60,
"borderMatchElement": true,
"borderColor": "#fff",
"borderOpacity": 0,
"filenameVisible": false
},
"markdownNodeOneClickEditing": false,
"canvasImmersiveEmbed": true,
"startupScriptPath": "",
"aiEnabled": true,
"openAIAPIToken": "",
"openAIDefaultTextModel": "gpt-3.5-turbo-1106",
"openAIDefaultVisionModel": "gpt-4o",
"openAIDefaultImageGenerationModel": "dall-e-3",
"openAIURL": "https://api.openai.com/v1/chat/completions",
"openAIImageGenerationURL": "https://api.openai.com/v1/images/generations",
"openAIImageEditsURL": "https://api.openai.com/v1/images/edits",
"openAIImageVariationURL": "https://api.openai.com/v1/images/variations",
"modifierKeyConfig": {
"Mac": {
"LocalFileDragAction": {
"defaultAction": "image-import",
"rules": [
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image-import"
},
{
"shift": true,
"ctrl_cmd": false,
"alt_opt": true,
"meta_ctrl": false,
"result": "link"
},
{
"shift": true,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image-url"
},
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": true,
"meta_ctrl": false,
"result": "embeddable"
}
]
},
"WebBrowserDragAction": {
"defaultAction": "image-url",
"rules": [
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image-url"
},
{
"shift": true,
"ctrl_cmd": false,
"alt_opt": true,
"meta_ctrl": false,
"result": "link"
},
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": true,
"meta_ctrl": false,
"result": "embeddable"
},
{
"shift": true,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image-import"
}
]
},
"InternalDragAction": {
"defaultAction": "link",
"rules": [
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "link"
},
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": true,
"result": "embeddable"
},
{
"shift": true,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image"
},
{
"shift": true,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": true,
"result": "image-fullsize"
}
]
},
"LinkClickAction": {
"defaultAction": "new-tab",
"rules": [
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "active-pane"
},
{
"shift": false,
"ctrl_cmd": true,
"alt_opt": false,
"meta_ctrl": false,
"result": "new-tab"
},
{
"shift": false,
"ctrl_cmd": true,
"alt_opt": true,
"meta_ctrl": false,
"result": "new-pane"
},
{
"shift": true,
"ctrl_cmd": true,
"alt_opt": true,
"meta_ctrl": false,
"result": "popout-window"
},
{
"shift": false,
"ctrl_cmd": true,
"alt_opt": false,
"meta_ctrl": true,
"result": "md-properties"
}
]
}
},
"Win": {
"LocalFileDragAction": {
"defaultAction": "image-import",
"rules": [
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image-import"
},
{
"shift": false,
"ctrl_cmd": true,
"alt_opt": false,
"meta_ctrl": false,
"result": "link"
},
{
"shift": true,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image-url"
},
{
"shift": true,
"ctrl_cmd": true,
"alt_opt": false,
"meta_ctrl": false,
"result": "embeddable"
}
]
},
"WebBrowserDragAction": {
"defaultAction": "image-url",
"rules": [
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image-url"
},
{
"shift": false,
"ctrl_cmd": true,
"alt_opt": false,
"meta_ctrl": false,
"result": "link"
},
{
"shift": true,
"ctrl_cmd": true,
"alt_opt": false,
"meta_ctrl": false,
"result": "embeddable"
},
{
"shift": true,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image-import"
}
]
},
"InternalDragAction": {
"defaultAction": "link",
"rules": [
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "link"
},
{
"shift": true,
"ctrl_cmd": true,
"alt_opt": false,
"meta_ctrl": false,
"result": "embeddable"
},
{
"shift": true,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "image"
},
{
"shift": false,
"ctrl_cmd": true,
"alt_opt": true,
"meta_ctrl": false,
"result": "image-fullsize"
}
]
},
"LinkClickAction": {
"defaultAction": "new-tab",
"rules": [
{
"shift": false,
"ctrl_cmd": false,
"alt_opt": false,
"meta_ctrl": false,
"result": "active-pane"
},
{
"shift": false,
"ctrl_cmd": true,
"alt_opt": false,
"meta_ctrl": false,
"result": "new-tab"
},
{
"shift": false,
"ctrl_cmd": true,
"alt_opt": true,
"meta_ctrl": false,
"result": "new-pane"
},
{
"shift": true,
"ctrl_cmd": true,
"alt_opt": true,
"meta_ctrl": false,
"result": "popout-window"
},
{
"shift": false,
"ctrl_cmd": true,
"alt_opt": false,
"meta_ctrl": true,
"result": "md-properties"
}
]
}
}
},
"slidingPanesSupport": false,
"areaZoomLimit": 1,
"longPressDesktop": 500,
"longPressMobile": 500,
"doubleClickLinkOpenViewMode": true,
"isDebugMode": false,
"rank": "Bronze",
"modifierKeyOverrides": [
{
"modifiers": [
"Mod"
],
"key": "Enter"
},
{
"modifiers": [
"Mod"
],
"key": "k"
},
{
"modifiers": [
"Mod"
],
"key": "G"
}
],
"showSplashscreen": true,
"pdfSettings": {
"pageSize": "A4",
"pageOrientation": "portrait",
"fitToPage": 1,
"paperColor": "white",
"customPaperColor": "#ffffff",
"alignment": "center",
"margin": "normal"
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,12 @@
{
"id": "obsidian-excalidraw-plugin",
"name": "Excalidraw",
"version": "2.14.3",
"minAppVersion": "1.5.7",
"description": "An Obsidian plugin to edit and view Excalidraw drawings",
"author": "Zsolt Viczian",
"authorUrl": "https://excalidraw-obsidian.online",
"fundingUrl": "https://ko-fi.com/zsolt",
"helpUrl": "https://github.com/zsviczian/obsidian-excalidraw-plugin#readme",
"isDesktopOnly": false
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,17 @@
{
"defaultMode": "preview",
"autoPin": "onMove",
"triggerDelay": 300,
"closeDelay": 600,
"autoFocus": true,
"rollDown": false,
"snapToEdges": false,
"initialHeight": "340px",
"initialWidth": "400px",
"showViewHeader": false,
"imageZoom": true,
"hoverEmbeds": false,
"footnotes": "never",
"headings": "always",
"blocks": "never"
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,10 @@
{
"id": "obsidian-hover-editor",
"name": "Hover Editor",
"version": "0.11.26",
"minAppVersion": "1.5.8",
"description": "Transform the Page Preview hover popover into a fully working editor instance",
"author": "NothingIsLost",
"authorUrl": "https://github.com/nothingislost",
"isDesktopOnly": false
}

View File

@ -0,0 +1,582 @@
/* @settings
name: Hover Editor
id: hover-editor
settings:
-
id: titlebar-heading
title: Title bar
type: heading
level: 1
collapsed: true
-
id: titlebar-heading
title: Title bar background/foreground
type: heading
level: 2
collapsed: true
-
id: he-title-bar-active-bg
title: Active unpinned title bar background color
type: variable-themed-color
format: hex
default-light: '#'
default-dark: '#'
-
id: he-title-bar-inactive-bg
title: Inactive unpinned title bar background color
type: variable-themed-color
format: hex
default-light: '#'
default-dark: '#'
-
id: he-title-bar-active-pinned-bg
title: Active pinned title bar background color
type: variable-themed-color
format: hex
default-light: '#'
default-dark: '#'
-
id: he-title-bar-inactive-pinned-bg
title: Inactive pinned title bar background color
type: variable-themed-color
format: hex
default-light: '#'
default-dark: '#'
-
id: he-title-bar-active-fg
title: Active title bar foreground color
type: variable-themed-color
format: hex
default-light: '#'
default-dark: '#'
-
id: he-title-bar-inactive-fg
title: Inactive title bar foreground color
type: variable-themed-color
format: hex
default-light: '#'
default-dark: '#'
-
id: titlebar-action-heading
title: Title bar icons
type: heading
level: 2
collapsed: true
-
id: he-title-bar-inactive-action
title: Title bar inactive icon color
type: variable-themed-color
format: hex
default-light: '#'
default-dark: '#'
-
id: he-title-bar-active-action
title: Titlebar active icon color
type: variable-themed-color
format: hex
default-light: '#'
default-dark: '#'
-
id: titlebar-text-heading
title: Title bar text
type: heading
level: 2
collapsed: true
-
id: he-title-bar-font-size
title: Title bar Font size
type: variable-text
description: Accepts any CSS font-size value
default: 15px
-
id: titlebar-height-heading
title: Title bar height
type: heading
level: 2
collapsed: true
-
id: he-title-bar-height
title: Title bar height
type: variable-text
description: Accepts any CSS font-size value
default: 28px
*/
:root {
/* general styling */
--he-popover-opacity-while-dragging: 0.8;
--he-popover-border-radius: 6px;
--he-popover-header-transition-speed: 0.3s;
--he-popover-snap-to-edge-transition-speed: 0.3s;
/* resize handle sizing */
--he-resize-handle-side-size: 12px;
--he-resize-handle-corner-size: 18px;
/* view header height */
--he-view-header-height: 36px;
}
body {
--he-text-on-accent-inactive: var(--text-on-accent); /* couldn't find a good variable that worked across themes */
--he-text-on-accent-active: #fff;
/* z-index layer settings, probably not a good idea to mess with these */
--he-popover-layer-inactive: calc(var(--layer-slides) - 4);
--he-popover-layer-active: calc(var(--he-popover-layer-inactive) + 1);
--he-popover-layer-new: calc(var(--he-popover-layer-inactive) + 2);
--he-leaf-drag-overlay: calc(var(--he-popover-layer-inactive) + 3);
/* calculated variables, do not modify */
--he-resize-handle-side-offset: calc((var(--he-resize-handle-side-size) - 3px) * -1);
--he-resize-handle-corner-offset: calc((var(--he-resize-handle-corner-size) / 2) * -1);
--he-resize-handle-side-length: calc(100% - var(--he-resize-handle-corner-size));
/* title bar colors */
--he-title-bar-active-bg: var(--interactive-accent);
--he-title-bar-inactive-bg: #777777;
--he-title-bar-inactive-pinned-bg: #777777;
--he-title-bar-active-pinned-bg: var(--interactive-accent);
--he-title-bar-active-fg: var(--he-text-on-accent-active);
--he-title-bar-inactive-fg: var(--he-text-on-accent-inactive);
/* title bar action/icon colors */
--he-title-bar-inactive-action: var(--he-text-on-accent-inactive);
--he-title-bar-active-action: var(--he-text-on-accent-active);
/* titlebar sizing */
--he-title-bar-height: 28px;
--he-title-bar-font-size: 15px;
}
.popover.hover-editor .workspace-leaf,
.popover.hover-editor .workspace-split {
height: 100%;
width: 100%;
}
/*
Obsidian 1.6 sets a different background for non-root splits,
then uses primary as an override at root. Since hover editors
don't live in a root split, we have to copy the override:
*/
.popover.hover-editor .workspace-split .view-content {
background-color: var(--background-primary);
}
.popover.hover-editor {
min-height: unset;
max-height: unset;
/* touch action none fixes dragging and resizing on mobile */
touch-action: none;
/* this is set to allow the drag/resize handles to overflow the popover frame */
overflow: visible;
border: none;
padding: 0;
z-index: var(--he-popover-layer-inactive);
border-radius: var(--he-popover-border-radius);
/* Prevent snagging on titlebar */
-webkit-app-region: no-drag;
}
.popover.hover-editor .markdown-preview-view {
font-size: inherit;
}
.popover.hover-editor.is-active {
z-index: var(--he-popover-layer-active);
}
.popover.hover-editor.is-new {
z-index: var(--he-popover-layer-new);
}
/* Drag/link overlay needs to overlay popups */
.workspace-fake-target-overlay,
.workspace-drop-overlay {
z-index: var(--he-leaf-drag-overlay);
}
.popover.hover-editor .resize-handle {
position: absolute;
touch-action: none;
}
.popover.hover-editor .resize-handle.top {
top: var(--he-resize-handle-side-offset);
height: var(--he-resize-handle-side-size);
left: calc(var(--he-resize-handle-corner-offset) * -1);
width: var(--he-resize-handle-side-length);
}
.popover.hover-editor .resize-handle.left {
height: var(--he-resize-handle-side-length);
left: var(--he-resize-handle-side-offset);
top: calc(var(--he-resize-handle-corner-offset) * -1);
width: var(--he-resize-handle-side-size);
}
.popover.hover-editor .resize-handle.right {
height: var(--he-resize-handle-side-length);
right: var(--he-resize-handle-side-offset);
top: calc(var(--he-resize-handle-corner-offset) * -1);
width: var(--he-resize-handle-side-size);
}
.popover.hover-editor .resize-handle.bottom {
bottom: var(--he-resize-handle-side-offset);
height: var(--he-resize-handle-side-size);
left: calc(var(--he-resize-handle-corner-offset) * -1);
width: var(--he-resize-handle-side-length);
}
.popover.hover-editor .resize-handle.bottom-left {
bottom: var(--he-resize-handle-corner-offset);
height: var(--he-resize-handle-corner-size);
left: var(--he-resize-handle-corner-offset);
width: var(--he-resize-handle-corner-size);
}
.popover.hover-editor .resize-handle.bottom-right {
bottom: var(--he-resize-handle-corner-offset);
height: var(--he-resize-handle-corner-size);
right: var(--he-resize-handle-corner-offset);
width: var(--he-resize-handle-corner-size);
}
.popover.hover-editor .resize-handle.top-left {
top: var(--he-resize-handle-corner-offset);
height: var(--he-resize-handle-corner-size);
left: var(--he-resize-handle-corner-offset);
width: var(--he-resize-handle-corner-size);
}
.popover.hover-editor .resize-handle.top-right {
top: var(--he-resize-handle-corner-offset);
height: var(--he-resize-handle-corner-size);
right: var(--he-resize-handle-corner-offset);
width: var(--he-resize-handle-corner-size);
}
/* body.is-dragging-popover .tooltip {
opacity: 0;
} */
.popover-header-icon {
width: fit-content;
}
.mod-pin-popover > svg {
transform: rotate(45deg);
}
.mod-pin-popover.is-active > svg {
transform: rotate(0deg);
}
.popover-action,
.popover-header-icon {
margin: 0 8px;
cursor: pointer;
color: var(--he-title-bar-inactive-action);
position: relative;
display: flex;
align-items: center;
}
.popover-action.is-active,
.mod-pin-popover.is-active {
color: var(--he-title-bar-active-action);
}
.popover-action:hover,
.popover-header-icon:hover {
color: var(--he-title-bar-active-action);
}
.popover-action.is-active svg,
.mod-pin-popover.is-active svg {
}
.mod-pin-popover.is-active > svg {
transform: unset;
}
.popover.hover-editor .workspace-leaf-content[data-type="empty"] .view-header {
/* ensures that minimal theme doesn't hide the popover header */
display: flex;
}
.popover.hover-editor .workspace-split > .workspace-leaf:last-child > .workspace-leaf-resize-handle {
/* this hides the leaf resize handles that touch the edge of the popover */
/* without this the leaf resize handles conflict with the popover resize handles */
display: none;
}
.popover.hover-editor.is-dragging {
opacity: var(--he-popover-opacity-while-dragging);
}
.popover.hover-editor:is(.snap-to-viewport, .snap-to-left, .snap-to-right) .resize-handle {
display: none;
}
.popover.hover-editor.snap-to-right .resize-handle.left,
.popover.hover-editor.snap-to-left .resize-handle.right {
display: block;
}
.popover.hover-editor.is-dragging.snap-to-left,
.popover.hover-editor.is-dragging.snap-to-right,
.popover.hover-editor.is-dragging.snap-to-viewport {
transition: width var(--he-popover-snap-to-edge-transition-speed),
height var(--he-popover-snap-to-edge-transition-speed), top var(--he-popover-snap-to-edge-transition-speed),
left var(--he-popover-snap-to-edge-transition-speed);
}
.hover-popover.is-dragging.snap-to-left::after,
.hover-popover.is-dragging.snap-to-right::after,
.hover-popover.is-dragging.snap-to-viewport::after {
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
border-radius: var(--he-popover-border-radius);
box-shadow: inset 0px 0px 0px 4px var(--interactive-accent);
pointer-events: none;
}
.popover.hover-editor.snap-to-left {
max-height: unset !important;
}
.popover.hover-editor.snap-to-right {
right: 0 !important;
max-height: unset !important;
}
.popover.hover-editor.snap-to-viewport {
max-height: unset !important;
max-width: unset !important;
}
.popover.hover-editor .popover-titlebar {
display: flex;
height: var(--he-title-bar-height);
width: 100%;
background-color: var(--he-title-bar-inactive-bg);
}
.popover.hover-editor.is-active .popover-titlebar {
background-color: var(--he-title-bar-active-bg);
}
.popover.hover-editor.is-pinned.is-pinned .popover-titlebar {
background-color: var(--he-title-bar-inactive-pinned-bg);
}
.popover.hover-editor.is-pinned.is-pinned.is-active .popover-titlebar {
background-color: var(--he-title-bar-active-pinned-bg);
}
.popover.hover-editor .popover-titlebar .popover-actions {
display: flex;
justify-content: flex-end;
}
.popover.hover-editor > .popover-content {
margin: 0;
border-radius: var(--he-popover-border-radius);
overflow: hidden;
height: 100%;
width: 100%;
}
.popover.hover-popover.hover-editor .pdf-toolbar:not(.pdf-findbar.mod-hidden) {
/* Show PDF toolbar in hover editor */
display: flex;
}
.popover.hover-editor .popover-titlebar .popover-title {
display: block;
flex-grow: 1;
transition: all 0.3s;
align-self: center;
font-size: var(--he-title-bar-font-size);
font-weight: 500;
white-space: pre;
word-wrap: normal;
color: var(--he-title-bar-inactive-fg);
overflow: hidden;
position: relative;
}
.popover.hover-editor.is-active .popover-title {
color: var(--he-title-bar-active-fg);
}
.popover.hover-editor.is-active .popover-title:after {
background: linear-gradient(to right, transparent, var(--he-title-bar-active-bg));
}
.popover.hover-editor.is-pinned.is-pinned.is-active .popover-title:after {
background: linear-gradient(to right, transparent, var(--he-title-bar-active-pinned-bg));
}
.popover.hover-editor.is-pinned.is-pinned .popover-title:after {
background: linear-gradient(to right, transparent, var(--he-title-bar-inactive-pinned-bg));
}
.popover.hover-editor .popover-title:after {
content: " ";
position: absolute;
top: 0;
right: 0;
width: 30px;
height: 100%;
background: linear-gradient(to right, transparent, var(--he-title-bar-inactive-bg));
}
.popover.hover-editor .mod-show-navbar svg {
transform: rotate(90deg);
}
.popover.hover-editor > .popover-content > .workspace-split {
height: calc(100% - var(--he-title-bar-height));
}
.popover.hover-editor .view-header {
border-top: none;
transition: all var(--he-popover-header-transition-speed);
display: flex;
}
/* Restore 1.5.x view header icons */
.view-header .view-header-icon {
display: none;
padding: var(--size-2-2);
margin-right: var(--size-2-3);
color: var(--text-muted);
align-self: center;
cursor: grab;
}
.view-header .view-header-icon:active {
cursor: grabbing;
}
.popover.hover-editor .view-header .view-header-icon {
display: flex;
}
.popover.hover-editor.show-navbar:not(.is-minimized) .popover-title {
opacity: 0;
}
.popover.hover-editor:not(.show-navbar) .view-header {
height: 0px;
overflow: hidden;
}
.popover.hover-editor.show-navbar .view-header {
/* theme devs: if you want to change the header height, you must do so by setting the --he-view-header-height variable */
/* if you don't use the variable, you will break internal measurement logic */
height: var(--he-view-header-height);
overflow: unset;
}
.popover.hover-editor:not(.show-navbar) .view-content {
height: 100%;
}
.popover.hover-editor .workspace-leaf-content[data-type="image"] .view-content {
padding: 0;
position: relative;
overflow: hidden;
}
.popover.hover-editor .workspace-leaf-content[data-type="image"] img {
display: block;
position: relative;
height: 100%;
width: 100%;
max-width: unset;
border-radius: 0;
}
body .popover.hover-editor .view-content {
/* theme devs: if you want to change the header height, you must do so by setting the --he-view-header-height variable */
/* if you don't use the variable, you will break internal measurement logic */
height: calc(100% - var(--he-view-header-height));
}
/* start: zoomable images feature */
.popover.hover-editor.image-zoom .view-content .image-embed:active {
aspect-ratio: unset;
cursor: zoom-out;
display: block;
z-index: 200;
position: fixed;
max-height: calc(100% + 1px);
max-width: 100%;
height: calc(100% + 1px);
width: 100%;
object-fit: contain;
margin: -0.5px auto 0;
text-align: center;
padding: 0;
left: 0;
right: 0;
bottom: 0;
max-width: unset;
}
/* extra specificity to override some community theme styles that cause issues */
.popover.hover-editor.image-zoom .view-content .image-embed img:active {
top: 50%;
z-index: 99;
transform: translateY(-50%);
padding: 0;
margin: 0 auto;
width: calc(100% - 20px);
height: unset;
max-height: 95vh;
object-fit: contain;
left: 0;
right: 0;
bottom: 0;
position: absolute;
opacity: 1;
max-width: unset;
max-height: 100%;
}
.popover.hover-editor.image-zoom .view-content .image-embed:active:after {
background-color: var(--background-primary);
opacity: 0.9;
content: " ";
height: calc(100% + 1px);
width: 100%;
position: fixed;
left: 0;
right: 1px;
z-index: 0;
}
.popover.hover-editor.image-zoom .view-content img {
cursor: zoom-in;
}
/* extra specificity to override some community theme styles that cause issues */
.popover.hover-editor.image-zoom .workspace-leaf-content[data-type="image"] img {
cursor: zoom-in;
top: 50%;
transform: translateY(-50%);
object-fit: contain;
height: unset;
left: 0;
right: 0;
bottom: 0;
position: absolute;
opacity: 1;
max-height: 100%;
}
/* end: zoomable images feature */

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,11 @@
{
"id": "obsidian-kanban",
"name": "Kanban",
"version": "2.0.51",
"minAppVersion": "1.0.0",
"description": "Create markdown-backed Kanban boards in Obsidian.",
"author": "mgmeyers",
"authorUrl": "https://github.com/mgmeyers/obsidian-kanban",
"helpUrl": "https://publish.obsidian.md/kanban/Obsidian+Kanban+Plugin",
"isDesktopOnly": false
}

File diff suppressed because one or more lines are too long

View File

@ -1,151 +0,0 @@
{
"remoteType": "",
"useCustomRequestHandler": false,
"couchDB_URI": "",
"couchDB_USER": "",
"couchDB_PASSWORD": "",
"couchDB_DBNAME": "",
"liveSync": false,
"syncOnSave": false,
"syncOnStart": false,
"savingDelay": 200,
"lessInformationInLog": false,
"gcDelay": 0,
"versionUpFlash": "",
"minimumChunkSize": 20,
"longLineThreshold": 250,
"showVerboseLog": false,
"suspendFileWatching": false,
"trashInsteadDelete": true,
"periodicReplication": false,
"periodicReplicationInterval": 60,
"syncOnFileOpen": false,
"encrypt": false,
"passphrase": "",
"usePathObfuscation": false,
"doNotDeleteFolder": false,
"resolveConflictsByNewerFile": false,
"batchSave": false,
"batchSaveMinimumDelay": 5,
"batchSaveMaximumDelay": 60,
"deviceAndVaultName": "",
"usePluginSettings": false,
"showOwnPlugins": false,
"showStatusOnEditor": true,
"showStatusOnStatusbar": true,
"showOnlyIconsOnEditor": false,
"hideFileWarningNotice": false,
"usePluginSync": false,
"autoSweepPlugins": false,
"autoSweepPluginsPeriodic": false,
"notifyPluginOrSettingUpdated": false,
"checkIntegrityOnSave": false,
"batch_size": 25,
"batches_limit": 25,
"useHistory": true,
"disableRequestURI": true,
"skipOlderFilesOnSync": true,
"checkConflictOnlyOnOpen": false,
"showMergeDialogOnlyOnActive": false,
"syncInternalFiles": false,
"syncInternalFilesBeforeReplication": false,
"syncInternalFilesIgnorePatterns": "\\/node_modules\\/, \\/\\.git\\/, \\/obsidian-livesync\\/",
"syncInternalFilesTargetPatterns": "",
"syncInternalFilesInterval": 60,
"additionalSuffixOfDatabaseName": "5d34a212a1876d04",
"ignoreVersionCheck": false,
"lastReadUpdates": 0,
"deleteMetadataOfDeletedFiles": false,
"syncIgnoreRegEx": "",
"syncOnlyRegEx": "",
"customChunkSize": 0,
"readChunksOnline": true,
"watchInternalFileChanges": true,
"automaticallyDeleteMetadataOfDeletedFiles": 0,
"disableMarkdownAutoMerge": false,
"writeDocumentsIfConflicted": false,
"useDynamicIterationCount": false,
"syncAfterMerge": false,
"configPassphraseStore": "",
"encryptedPassphrase": "",
"encryptedCouchDBConnection": "%$M6GWPjOn6Epbd+tmmGagZ6p1fFetdfVEhcCc1u4n3vza8XINldlHL9RSTmYatqIbwYNPzzL2dUoYQT/XjBKzy/DEqo8fMJP4gOSCv5PNfkAyXnU6EK5rgelNnlfvrXyxwJt5nrYySW+FzS4QViMch/xnyVsm2zwIdkPY+z5JVKSShbSqivkRyOVXx7X9QOYRTmnZUcFQKS8vBLhsfe3j8QgI50jschp4N7hCDX0Xt/sM21xyS43epw/Yh4eI5iqwcXGMMOnxQg8uVfg7xymzY1teqMUw1zreru5nv4v7ShNA50wM/6aGW4C4NrvYg6Se1hcDT1XZnpAcpqFGYXBAqT5wSVmLYLU502msSYQ1w+4ZdtTDo2P+cKHBBqEmzPjeUHzb0OC8Qk43/B6c9thRW2E6psk3trUf/RaF+OCQtJHMGJCM3G3s1TUhZoTSTnisPZ6rG5ddDuyxN/COeQkL5ELbidM6+iDnwI1+4eGqmUo6fthCVOolJiq5EHh6XNQWIxwjQWnXDE3tof2wZb9YSggA6KbQqcm3gZj4acGedWFuERmiwg6WR9s714NyadJUMK60xF/extdr97XP+8FJPnHxOsAP/MMDV+GgbKu5dG/wiWp0aHt5SHfbyLl1aRFyloCTufTePLyAYTKGTrF3G4X1bMm8td5eFbtdNFXb",
"permitEmptyPassphrase": false,
"useIndexedDBAdapter": true,
"useTimeouts": false,
"writeLogToTheFile": false,
"doNotPaceReplication": false,
"hashCacheMaxCount": 300,
"hashCacheMaxAmount": 50,
"concurrencyOfReadChunksOnline": 40,
"minimumIntervalOfReadChunksOnline": 50,
"hashAlg": "xxhash64",
"suspendParseReplicationResult": false,
"doNotSuspendOnFetching": false,
"useIgnoreFiles": false,
"ignoreFiles": ".gitignore",
"syncOnEditorSave": false,
"pluginSyncExtendedSetting": {},
"syncMaxSizeInMB": 50,
"settingSyncFile": "",
"writeCredentialsForSettingSync": false,
"notifyAllSettingSyncFile": false,
"isConfigured": false,
"settingVersion": 10,
"enableCompression": false,
"accessKey": "",
"bucket": "",
"endpoint": "",
"region": "",
"secretKey": "",
"useEden": false,
"maxChunksInEden": 10,
"maxTotalLengthInEden": 1024,
"maxAgeInEden": 10,
"disableCheckingConfigMismatch": false,
"displayLanguage": "def",
"enableChunkSplitterV2": false,
"disableWorkerForGeneratingChunks": false,
"processSmallFilesInUIThread": false,
"notifyThresholdOfRemoteStorageSize": -1,
"usePluginSyncV2": false,
"usePluginEtc": false,
"doNotUseFixedRevisionForChunks": true,
"showLongerLogInsideEditor": false,
"sendChunksBulk": false,
"sendChunksBulkMaxSize": 1,
"useSegmenter": false,
"useAdvancedMode": false,
"usePowerUserMode": false,
"useEdgeCaseMode": false,
"enableDebugTools": false,
"suppressNotifyHiddenFilesChange": false,
"syncMinimumInterval": 2000,
"P2P_Enabled": false,
"P2P_AutoAccepting": 0,
"P2P_AppID": "self-hosted-livesync",
"P2P_roomID": "",
"P2P_passphrase": "",
"P2P_relays": "wss://exp-relay.vrtmrz.net/",
"P2P_AutoBroadcast": false,
"P2P_AutoStart": false,
"P2P_AutoSyncPeers": "",
"P2P_AutoWatchPeers": "",
"P2P_SyncOnReplication": "",
"P2P_RebuildFrom": "",
"P2P_AutoAcceptingPeers": "",
"P2P_AutoDenyingPeers": "",
"P2P_IsHeadless": false,
"doctorProcessedVersion": "",
"bucketCustomHeaders": "",
"couchDB_CustomHeaders": "",
"useJWT": false,
"jwtAlgorithm": "",
"jwtKey": "",
"jwtKid": "",
"jwtSub": "",
"jwtExpDuration": 5,
"useRequestAPI": false,
"bucketPrefix": "",
"chunkSplitterVersion": "",
"E2EEAlgorithm": ""
}

File diff suppressed because one or more lines are too long

View File

@ -1,10 +0,0 @@
{
"id": "obsidian-livesync",
"name": "Self-hosted LiveSync",
"version": "0.25.6",
"minAppVersion": "0.9.12",
"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.",
"author": "vorotamoroz",
"authorUrl": "https://github.com/vrtmrz",
"isDesktopOnly": false
}

View File

@ -1,454 +0,0 @@
.added {
color: var(--text-on-accent);
background-color: var(--text-accent);
}
.normal {
color: var(--text-normal);
}
.deleted {
color: var(--text-on-accent);
background-color: var(--text-muted);
}
.op-scrollable {
overflow-y: scroll;
/* min-height: 280px; */
max-height: 280px;
user-select: text;
-webkit-user-select: text;
}
.op-pre {
white-space: pre-wrap;
}
.op-warn {
border: 1px solid salmon;
padding: 2px;
border-radius: 4px;
}
.op-warn::before {
content: "Warning";
font-weight: bold;
color: salmon;
position: relative;
display: block;
}
.op-warn-info {
border: 1px solid rgb(255, 209, 81);
padding: 2px;
border-radius: 4px;
}
.op-warn-info::before {
content: "Notice";
font-weight: bold;
color: rgb(255, 209, 81);
position: relative;
display: block;
}
.syncstatusbar {
-webkit-filter: grayscale(100%);
filter: grayscale(100%);
}
.tcenter {
text-align: center;
}
.sls-plugins-wrap {
display: flex;
flex-grow: 1;
max-height: 50vh;
overflow-y: scroll;
}
.sls-plugins-tbl {
border: 1px solid var(--background-modifier-border);
width: 100%;
max-height: 80%;
}
.divider th {
border-top: 1px solid var(--background-modifier-border);
}
.sls-header-button {
margin-left: 2em;
}
.sls-hidden {
display: none;
}
:root {
--sls-log-text: "";
}
.sls-troubleshoot-preview {
max-width: max-content;
}
.sls-troubleshoot-preview img {
max-width: 100%;
}
.sls-setting-tab {
display: none;
}
div.sls-setting-menu-btn {
color: var(--text-normal);
background-color: var(--background-secondary-alt);
border-radius: 4px 4px 0 0;
padding: 6px 10px;
cursor: pointer;
margin-right: 12px;
font-family: "Inter", sans-serif;
outline: none;
user-select: none;
flex-grow: 1;
text-align: center;
flex-shrink: 1;
}
.sls-setting-label.selected {
/* order: 1; */
flex-grow: 1;
/* width: 100%; */
}
.sls-setting-tab:hover~div.sls-setting-menu-btn,
.sls-setting-label.selected .sls-setting-tab:checked~div.sls-setting-menu-btn {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.sls-setting-menu-wrapper {
display: flex;
flex-direction: column;
flex-grow: 1;
position: sticky;
top: 0;
background-color: rgba(var(--background-primary), 0.3);
backdrop-filter: blur(4px);
border-radius: 4px;
z-index: 10;
}
.sls-setting-menu {
display: flex;
flex-direction: row;
overflow-x: auto;
}
body {
--sls-col-transparent: transparent;
--sls-col-warn: rgba(var(--background-modifier-error-rgb), 0.1);
--sls-col-warn-stripe1: var(--sls-col-transparent);
--sls-col-warn-stripe2: var(--sls-col-warn);
}
.sls-setting-menu-buttons {
border: 1px solid var(--sls-col-warn);
padding: 2px;
margin: 1px;
border-radius: 4px;
background-image: linear-gradient(-45deg,
var(--sls-col-warn-stripe1) 25%, var(--sls-col-warn-stripe2) 25%, var(--sls-col-warn-stripe2) 50%,
var(--sls-col-warn-stripe1) 50%, var(--sls-col-warn-stripe1) 75%, var(--sls-col-warn-stripe2) 75%, var(--sls-col-warn-stripe2));
background-size: 30px 30px;
display: flex;
flex-direction: row;
justify-content: flex-end;
padding: 0.5em 0.25em;
justify-content: center;
align-items: center;
/* transition: background-position 1s; */
animation: sls-scroll-warn 1s linear 0s infinite;
}
@keyframes sls-scroll-warn {
0% {
background-position: 0 0;
}
100% {
background-position: 30px 0;
}
}
.sls-setting-menu-buttons label {
margin-right: auto;
flex-grow: 1;
color: var(--text-warning);
}
.sls-setting-label {
flex-grow: 1;
display: inline-flex;
justify-content: center;
}
.setting-collapsed {
display: none;
}
.sls-plugins-tbl-buttons {
text-align: right;
}
.sls-plugins-tbl-buttons button {
flex-grow: 0;
padding: 6px 10px;
}
.sls-plugins-tbl-device-head {
background-color: var(--background-secondary-alt);
color: var(--text-accent);
}
.op-flex {
display: flex;
}
.op-flex input {
display: inline-flex;
flex-grow: 1;
margin-bottom: 8px;
}
.op-info {
display: inline-flex;
flex-grow: 1;
border-bottom: 1px solid var(--background-modifier-border);
width: 100%;
margin-bottom: 4px;
padding-bottom: 4px;
}
.history-added {
color: var(--text-on-accent);
background-color: var(--text-accent);
}
.history-normal {
color: var(--text-normal);
}
.history-deleted {
color: var(--text-on-accent);
background-color: var(--text-muted);
text-decoration: line-through;
}
.ob-btn-config-fix label {
margin-right: 40px;
}
.ob-btn-config-info {
border: 1px solid salmon;
padding: 2px;
margin: 1px;
border-radius: 4px;
}
.ob-btn-config-head {
padding: 2px;
margin: 1px;
border-radius: 4px;
}
.isWizard .wizardHidden {
display: none;
}
.sls-setting:not(.isWizard) .wizardOnly {
display: none;
}
.sls-item-dirty::before {
content: "✏";
}
.sls-item-dirty-help::after {
content: " ❓";
}
.sls-item-invalid-value {
background-color: rgba(var(--background-modifier-error-rgb), 0.3) !important;
}
.sls-setting-disabled input[type=text],
.sls-setting-disabled input[type=number],
.sls-setting-disabled input[type=password] {
filter: brightness(80%);
color: var(--text-muted);
}
.sls-setting-hidden {
display: none;
}
.sls-setting-obsolete {
background-image: linear-gradient(-45deg,
var(--sls-col-warn-stripe1) 25%, var(--sls-col-warn-stripe2) 25%, var(--sls-col-warn-stripe2) 50%,
var(--sls-col-warn-stripe1) 50%, var(--sls-col-warn-stripe1) 75%, var(--sls-col-warn-stripe2) 75%, var(--sls-col-warn-stripe2));
background-image: linear-gradient(-45deg,
transparent 25%, rgba(var(--background-secondary), 0.1) 25%, rgba(var(--background-secondary), 0.1) 50%, transparent 50%, transparent 75%, rgba(var(--background-secondary), 0.1) 75%, rgba(var(--background-secondary), 0.1));
background-size: 60px 60px;
}
.password-input>.setting-item-control>input {
-webkit-text-security: disc;
}
span.ls-mark-cr::after {
user-select: none;
content: "↲";
color: var(--text-muted);
font-size: 0.8em;
}
.deleted span.ls-mark-cr::after {
color: var(--text-on-accent);
}
.ls-imgdiff-wrap {
display: flex;
justify-content: center;
align-items: center;
}
.ls-imgdiff-wrap .overlay {
position: relative;
}
.ls-imgdiff-wrap .overlay .img-base {
position: relative;
top: 0;
left: 0;
}
.ls-imgdiff-wrap .overlay .img-overlay {
-webkit-filter: invert(100%) opacity(50%);
filter: invert(100%) opacity(50%);
position: absolute;
top: 0;
left: 0;
animation: ls-blink-diff 0.5s cubic-bezier(0.4, 0, 1, 1) infinite alternate;
}
@keyframes ls-blink-diff {
0% {
opacity: 0;
}
50% {
opacity: 0;
}
100% {
opacity: 1;
}
}
.livesync-status {
user-select: none;
pointer-events: none;
height: auto;
min-height: 1em;
position: absolute;
background-color: transparent;
width: 100%;
padding: 10px;
padding-right: 16px;
top: var(--header-height);
z-index: calc(var(--layer-cover) + 1);
font-variant-numeric: tabular-nums;
tab-size: 4;
text-align: right;
white-space: pre-wrap;
display: inline-block;
color: var(--text-normal);
font-size: 80%;
}
.livesync-status div {
opacity: 0.6;
-webkit-filter: grayscale(100%);
filter: grayscale(100%);
}
.livesync-status .livesync-status-loghistory {
text-align: left;
opacity: 0.4;
}
.livesync-status div.livesync-status-messagearea {
opacity: 0.6;
color: var(--text-on-accent);
background: var(--background-modifier-error);
-webkit-filter: unset;
filter: unset;
}
.menu-setting-poweruser-disabled .sls-setting-poweruser {
display: none;
}
.menu-setting-advanced-disabled .sls-setting-advanced {
display: none;
}
.menu-setting-edgecase-disabled .sls-setting-edgecase {
display: none;
}
.sls-setting-panel-title {
position: sticky;
}
.sls-setting-panel-title {
top: 2em;
background-color: rgba(var(--background-primary), 0.3);
backdrop-filter: blur(4px);
border-radius: 30%;
}
.sls-dialogue-note-wrapper {
display: flex;
justify-content: flex-end;
align-items: center;
}
.sls-dialogue-note-countdown {
font-size: 0.8em;
}
.sls-qr {
display: flex;
justify-content: center;
align-items: center;
max-width: max-content;
}
.sls-keypair pre {
max-width: 100%;
overflow-x: auto;
white-space: pre-wrap;
word-break: break-all;
}

View File

@ -0,0 +1,86 @@
{
"presets": {
"this_file": "path includes {{query.file.path}}",
"this_folder": "folder includes {{query.file.folder}}",
"this_folder_only": "filter by function task.file.folder === query.file.folder",
"this_root": "root includes {{query.file.root}}",
"hide_date_fields": "# Hide any values for all date fields\nhide due date\nhide scheduled date\nhide start date\nhide created date\nhide done date\nhide cancelled date",
"hide_non_date_fields": "# Hide all the non-date fields, but not tags\nhide id\nhide depends on\nhide recurrence rule\nhide on completion\nhide priority",
"hide_query_elements": "# Hide postpone, edit and backinks\nhide postpone button\nhide edit button\nhide backlinks",
"hide_everything": "# Hide everything except description and any tags\npreset hide_date_fields\npreset hide_non_date_fields\npreset hide_query_elements"
},
"globalQuery": "",
"globalFilter": "",
"removeGlobalFilter": false,
"taskFormat": "tasksPluginEmoji",
"setCreatedDate": false,
"setDoneDate": true,
"setCancelledDate": true,
"autoSuggestInEditor": true,
"autoSuggestMinMatch": 0,
"autoSuggestMaxItems": 20,
"provideAccessKeys": true,
"useFilenameAsScheduledDate": false,
"filenameAsScheduledDateFormat": "",
"filenameAsDateFolders": [],
"recurrenceOnNextLine": false,
"removeScheduledDateOnRecurrence": false,
"statusSettings": {
"coreStatuses": [
{
"symbol": " ",
"name": "Todo",
"nextStatusSymbol": "x",
"availableAsCommand": true,
"type": "TODO"
},
{
"symbol": "x",
"name": "Done",
"nextStatusSymbol": " ",
"availableAsCommand": true,
"type": "DONE"
}
],
"customStatuses": [
{
"symbol": "/",
"name": "In Progress",
"nextStatusSymbol": "x",
"availableAsCommand": true,
"type": "IN_PROGRESS"
},
{
"symbol": "-",
"name": "Cancelled",
"nextStatusSymbol": " ",
"availableAsCommand": true,
"type": "CANCELLED"
}
]
},
"features": {
"INTERNAL_TESTING_ENABLED_BY_DEFAULT": true
},
"generalSettings": {},
"headingOpened": {
"核心状态": true,
"自定义状态": true
},
"debugSettings": {
"ignoreSortInstructions": false,
"showTaskHiddenData": false,
"recordTimings": false
},
"loggingOptions": {
"minLevels": {
"": "info",
"tasks": "info",
"tasks.Cache": "info",
"tasks.Events": "info",
"tasks.File": "info",
"tasks.Query": "info",
"tasks.Task": "info"
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,12 @@
{
"id": "obsidian-tasks-plugin",
"name": "Tasks",
"version": "7.21.0",
"minAppVersion": "1.4.0",
"description": "Track tasks across your vault. Supports due dates, recurring tasks, done dates, sub-set of checklist items, and filtering.",
"helpUrl": "https://publish.obsidian.md/tasks/",
"author": "Clare Macrae and Ilyas Landikov (created by Martin Schenck)",
"authorUrl": "https://github.com/obsidian-tasks-group",
"fundingUrl": "https://github.com/sponsors/claremacrae",
"isDesktopOnly": false
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,7 @@
{
"name": "AnuPpuccin",
"version": "1.5.0",
"minAppVersion": "1.6.0",
"author": "Anubis",
"authorUrl": "https://github.com/AnubisNekhet"
}

9080
.obsidian/themes/AnuPpuccin/theme.css vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
{
"name": "Minimal",
"version": "7.6.0",
"minAppVersion": "1.6.0",
"author": "@kepano",
"authorUrl": "https://twitter.com/kepano",
"fundingUrl": "https://www.buymeacoffee.com/kepano"
}

2150
.obsidian/themes/Minimal/theme.css vendored Normal file

File diff suppressed because one or more lines are too long

28
.obsidian/types.json vendored Normal file
View File

@ -0,0 +1,28 @@
{
"types": {
"aliases": "aliases",
"cssclasses": "multitext",
"tags": "tags",
"TQ_explain": "checkbox",
"TQ_extra_instructions": "text",
"TQ_short_mode": "checkbox",
"TQ_show_backlink": "checkbox",
"TQ_show_cancelled_date": "checkbox",
"TQ_show_created_date": "checkbox",
"TQ_show_depends_on": "checkbox",
"TQ_show_done_date": "checkbox",
"TQ_show_due_date": "checkbox",
"TQ_show_edit_button": "checkbox",
"TQ_show_id": "checkbox",
"TQ_show_on_completion": "checkbox",
"TQ_show_postpone_button": "checkbox",
"TQ_show_priority": "checkbox",
"TQ_show_recurrence_rule": "checkbox",
"TQ_show_scheduled_date": "checkbox",
"TQ_show_start_date": "checkbox",
"TQ_show_tags": "checkbox",
"TQ_show_task_count": "checkbox",
"TQ_show_tree": "checkbox",
"TQ_show_urgency": "checkbox"
}
}

View File

@ -4,21 +4,21 @@
"type": "split",
"children": [
{
"id": "3429fc6222b75a9e",
"id": "3622050379f332d2",
"type": "tabs",
"children": [
{
"id": "3abfa1be25cf8175",
"id": "f400803102ccd113",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "月兔直流变频内机功能说明书/检测与维护/故障处理.md",
"file": "月兔直流变频内机功能说明书/测试用例/基础功能测试.md",
"mode": "source",
"source": false
},
"icon": "lucide-file",
"title": "故障处理"
"title": "基础功能测试"
}
}
]
@ -94,7 +94,7 @@
"state": {
"type": "backlink",
"state": {
"file": "月兔直流变频内机功能说明书/检测与维护/故障处理.md",
"file": "月兔直流变频内机功能说明书/测试用例/基础功能测试.md",
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
@ -104,7 +104,7 @@
"unlinkedCollapsed": true
},
"icon": "links-coming-in",
"title": "故障处理 的反向链接列表"
"title": "基础功能测试 的反向链接列表"
}
},
{
@ -113,12 +113,12 @@
"state": {
"type": "outgoing-link",
"state": {
"file": "月兔直流变频内机功能说明书/检测与维护/故障处理.md",
"file": "月兔直流变频内机功能说明书/测试用例/基础功能测试.md",
"linksCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-going-out",
"title": "故障处理 的出链列表"
"title": "基础功能测试 的出链列表"
}
},
{
@ -142,21 +142,21 @@
"state": {
"type": "outline",
"state": {
"file": "月兔直流变频内机功能说明书/检测与维护/故障处理.md",
"file": "月兔直流变频内机功能说明书/测试用例/基础功能测试.md",
"followCursor": false,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-list",
"title": "故障处理 的大纲"
"title": "基础功能测试 的大纲"
}
}
]
],
"currentTab": 3
}
],
"direction": "horizontal",
"width": 300,
"collapsed": true
"width": 300
},
"left-ribbon": {
"hiddenItems": {
@ -166,16 +166,42 @@
"daily-notes:打开/创建今天的日记": false,
"templates:插入模板": false,
"command-palette:打开命令面板": false,
"obsidian-livesync:Show Log": false,
"obsidian-livesync:Replicate": false,
"obsidian-livesync:P2P Replicator": false,
"obsidian-livesync:Show Customization sync": false
"obsidian-kanban:创建新看板": false,
"obsidian-excalidraw-plugin:新建绘图文件": false
}
},
"active": "3abfa1be25cf8175",
"active": "87ec71219df28de6",
"lastOpenFiles": [
"月兔直流变频内机功能说明书/基础配置/温度传感器阻值表.md",
"月兔直流变频内机功能说明书/基础配置/基本功能概述.md",
"月兔直流变频内机功能说明书/测试用例/基础功能测试.md",
"月兔直流变频内机功能说明书/测试用例/标准单元格式模板.md",
"月兔直流变频内机功能说明书/未命名看板.md",
"月兔直流变频内机功能说明书/功能特性/屏显功能.md",
"月兔直流变频内机功能说明书/运行模式/自动模式.md",
"月兔直流变频内机功能说明书/基础配置/显示灯板功能.md",
"月兔直流变频内机功能说明书/测试用例",
"月兔直流变频内机功能说明书/月兔直流变频内机功能说明书.md",
"月兔直流变频内机功能说明书/运行模式/送风模式.md",
"月兔直流变频内机功能说明书/功能特性/ECO功能.md",
"ECO 功能.md",
"月兔直流变频内机功能说明书/显示灯板.png",
"月兔直流变频内机功能说明书/README.md",
"月兔直流变频内机功能说明书/制热防冷风.png",
"月兔直流变频内机功能说明书/制热模式.png",
"月兔直流变频内机功能说明书/基础配置/电控概述.md",
"屏显功能.md",
"睡眠功能.md",
"静音功能.md",
"定时功能.md",
"未命名看板 1.md",
"月兔直流变频内机功能说明书/基础配置/风速表.md",
"月兔直流变频内机功能说明书/检测与维护/保护类故障查询.md",
"月兔直流变频内机功能说明书/特殊功能/自清洁功能.md",
"月兔直流变频内机功能说明书/特殊功能/应急按键功能.md",
"月兔直流变频内机功能说明书/特殊功能/收氟.md",
"月兔直流变频内机功能说明书/特殊功能/室外继电器上电功能.md",
"月兔直流变频内机功能说明书/特殊功能/高温杀菌功能.md",
"月兔直流变频内机功能说明书/特殊功能/掉电记忆功能.md",
"C/main.exe",
"C语言学习/T1/cmake-build-debug/CMakeFiles/clion-Debug-log.txt",
"C语言学习/T1/cmake-build-debug/CMakeFiles",
@ -185,39 +211,11 @@
"C/T1/cmake-build-debug/CMakeFiles/4.0.2/CompilerIdC/tmp",
"C/T1/cmake-build-debug/CMakeFiles/4.0.2/CompilerIdC/a.exe",
"C/T1/cmake-build-debug/CMakeFiles/4.0.2/CompilerIdC/CMakeCCompilerId.c",
"C/T1/cmake-build-debug/Testing/Temporary/LastTest.log",
"运行模式/制冷模式.md",
"运行模式/制热模式.md",
"月兔直流变频内机功能说明书/运行模式/除湿模式.md",
"月兔直流变频内机功能说明书/运行模式/温度补偿.md",
"月兔直流变频内机功能说明书/运行模式/制冷模式.md",
"月兔直流变频内机功能说明书/运行模式/制热模式.md",
"月兔直流变频内机功能说明书/运行模式/自动模式.md",
"月兔直流变频内机功能说明书/睡眠制冷运行过程参考表.png",
"月兔直流变频内机功能说明书/睡眠制热运行过程参考表.png",
"月兔直流变频内机功能说明书/显示灯板.png",
"月兔直流变频内机功能说明书/制冷模式.png",
"月兔直流变频内机功能说明书/制热防冷风.png",
"月兔直流变频内机功能说明书/制热模式.png",
"月兔直流变频内机功能说明书/README.md",
"月兔直流变频内机功能说明书/特殊功能/自清洁功能.md",
"月兔直流变频内机功能说明书/特殊功能/高温杀菌功能.md",
"未命名.canvas",
"未命名 1.canvas",
"月兔直流变频内机功能说明书/检测与维护/Wifi功能.md",
"月兔直流变频内机功能说明书/功能特性/睡眠功能.md",
"image.png",
"月兔直流变频内机功能说明书/功能特性/屏显功能.md",
"月兔直流变频内机功能说明书/基础配置/基本功能概述.md",
"月兔直流变频内机功能说明书/基础配置/电控概述.md",
"月兔直流变频内机功能说明书/基础配置/显示灯板功能.md",
"月兔直流变频内机功能说明书/基础配置/风速表.md",
"月兔直流变频内机功能说明书/功能特性/ECO功能.md",
"月兔直流变频内机功能说明书/功能特性/静音功能.md",
"月兔直流变频内机功能说明书/功能特性/定时功能.md",
"月兔直流变频内机功能说明书/检测与维护/故障处理.md",
"月兔直流变频内机功能说明书/检测与维护/保护类故障查询.md",
"月兔直流变频内机功能说明书/检测与维护/参数查询.md",
"电控概述.md"
"image.png"
]
}

View File

@ -3,35 +3,22 @@
#include <stdlib.h>
bool canWinNim(int n) {
// <20><><EFBFBD><EFBFBD>ʯͷ<CAAF><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>4<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ʤ
return n % 4 != 0;
}
int main(void) {
// <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1: n = 4, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: false
int n1 = 4;
bool result1 = canWinNim(n1);
printf("ʯͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d: %s\n", n1, result1 ? "true (<28><>Ӯ)" : "false (<28><><EFBFBD><EFBFBD>Ӯ)");
// ʹ<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʡ<EFBFBD>ڴ<EFBFBD>
char *result[] = {"false", "true"};
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2: n = 1, <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: true
int n2 = 1;
bool result2 = canWinNim(n2);
printf("ʯͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d: %s\n", n2, result2 ? "true (<28><>Ӯ)" : "false (<28><><EFBFBD><EFBFBD>Ӯ)");
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD>printf<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int test_cases[] = {4, 1, 2, 3, 5};
int expected[] = {0, 1, 1, 1, 1}; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0=false, 1=true
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3: n = 2, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: true
int n3 = 2;
bool result3 = canWinNim(n3);
printf("ʯͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d: %s\n", n3, result3 ? "true (<28><>Ӯ)" : "false (<28><><EFBFBD><EFBFBD>Ӯ)");
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
int n4 = 3;
bool result4 = canWinNim(n4);
printf("ʯͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d: %s\n", n4, result4 ? "true (<28><>Ӯ)" : "false (<28><><EFBFBD><EFBFBD>Ӯ)");
int n5 = 5;
bool result5 = canWinNim(n5);
printf("ʯͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d: %s\n", n5, result5 ? "true (<28><>Ӯ)" : "false (<28><><EFBFBD><EFBFBD>Ӯ)");
for (int i = 0; i < 5; i++) {
int n = test_cases[i];
bool actual = canWinNim(n);
printf("n=%d: %s (<28><><EFBFBD><EFBFBD>:%s)\n", n, result[actual], result[expected[i]]);
}
return 0;
}

0
ECO 功能.md Normal file
View File

View File

@ -8,6 +8,7 @@
- `基础配置/基本功能概述.md` - 基本功能、风门控制、遥控器等 ✅ **完整填充**
- `基础配置/显示灯板功能.md` - 显示灯板硬件组成和功能 ✅ **完整填充**
- `基础配置/风速表.md` - 各种风速档位和控制特性 ✅ **完整填充**
- `基础配置/温度传感器阻值表.md` - NTC热敏电阻温度-阻值对应关系 ✅ **完整填充**
### 🌡️ 运行模式模块
- `运行模式/温度补偿.md` - 不同模式下的温度补偿机制 ✅ **完整填充**

View File

@ -139,11 +139,11 @@
**单音蜂鸣器规格**
| 蜂鸣类型 | 响铃时间 | 停铃时间 | 应用场景 |
|---------|---------|---------|----------|
| 蜂鸣类型 | 响铃时间 | 停铃时间 | 应用场景 |
| ---- | ----- | ----- | ---------- |
| 正常鸣叫 | 100毫秒 | 300毫秒 | 开机时、接收到指令时 |
| 长鸣 | 200毫秒 | 300毫秒 | 关机时 |
| 短鸣 | 100毫秒 | 100毫秒 | 自检时、参数查询时等 |
| 长鸣 | 200毫秒 | 300毫秒 | 关机时 |
| 短鸣 | 100毫秒 | 100毫秒 | 自检时、参数查询时等 |
### 显示模式
- **正常显示**:显示当前运行状态和参数

View File

@ -0,0 +1,205 @@
# 温度传感器阻值表
> [!info] 模块说明
> 本模块提供NTC热敏电阻的温度-阻值对应关系表,用于温度传感器检测、故障诊断和系统校准。
## 基本特性
### 传感器类型
- **类型**NTC热敏电阻负温度系数
- **温度范围**-40°C ~ 120°C
- **阻值范围**0.337 kΩ ~ 378.05 kΩ
- **精度等级**±1% ~ ±10%(根据温度范围)
### 工作原理
- **NTC特性**:温度升高,阻值降低
- **线性度**:在常用温度范围内具有良好的线性度
- **响应时间**:快速响应温度变化
## 温度-阻值对应表
| 温度(℃) | 最小阻值(kΩ) | 中心阻值(kΩ) | 最大阻值(kΩ) | 偏差(%) | ΔT(℃) |
|---------|--------------|--------------|--------------|--------|-------|
| -40 | 341.02 | 378.05 | 418.74 | 10.76% | 1.51 |
| -39 | 318.82 | 352.96 | 390.41 | 10.61% | 1.50 |
| -38 | 298.21 | 329.70 | 364.18 | 10.46% | 1.49 |
| -37 | 279.07 | 308.12 | 330.89 | 10.31% | 1.48 |
| -36 | 261.29 | 288.10 | 317.37 | 10.16% | 1.47 |
| -35 | 244.75 | 269.51 | 296.50 | 10.01% | 1.46 |
| -34 | 229.37 | 252.23 | 277.13 | 9.87% | 1.45 |
| -33 | 215.06 | 236.18 | 259.15 | 9.72% | 1.44 |
| -32 | 201.73 | 221.25 | 242.45 | 9.58% | 1.43 |
| -31 | 189.31 | 207.36 | 226.94 | 9.44% | 1.42 |
| -30 | 177.74 | 194.47 | 212.61 | 9.30% | 1.41 |
| -29 | 166.97 | 182.45 | 199.41 | 9.16% | 1.40 |
| -28 | 156.94 | 171.25 | 187.29 | 9.02% | 1.39 |
| -27 | 147.62 | 160.83 | 176.13 | 8.88% | 1.38 |
| -26 | 138.96 | 151.16 | 165.89 | 8.74% | 1.37 |
| -25 | 130.92 | 142.20 | 156.54 | 8.60% | 1.36 |
| -24 | 123.47 | 133.92 | 148.04 | 8.46% | 1.35 |
| -23 | 116.56 | 126.28 | 140.36 | 8.32% | 1.34 |
| -22 | 110.17 | 119.25 | 133.38 | 8.18% | 1.33 |
| -21 | 102.69 | 111.09 | 120.07 | 8.08% | 1.31 |
| -20 | 96.82 | 104.61 | 112.93 | 7.95% | 1.29 |
| -19 | 91.31 | 98.55 | 106.25 | 7.82% | 1.28 |
| -18 | 86.16 | 92.87 | 100.02 | 7.69% | 1.27 |
| -17 | 81.32 | 87.56 | 94.18 | 7.57% | 1.26 |
| -16 | 76.79 | 82.58 | 88.73 | 7.44% | 1.25 |
| -15 | 72.54 | 77.92 | 83.62 | 7.32% | 1.23 |
| -14 | 68.55 | 73.54 | 78.83 | 7.19% | 1.22 |
| -13 | 64.80 | 69.44 | 74.35 | 7.07% | 1.21 |
| -12 | 61.28 | 65.59 | 70.15 | 6.95% | 1.20 |
| -11 | 57.97 | 61.98 | 66.21 | 6.83% | 1.18 |
| -10 | 54.86 | 58.59 | 62.52 | 6.71% | 1.17 |
| -9 | 51.93 | 55.40 | 59.05 | 6.59% | 1.16 |
| -8 | 49.18 | 52.41 | 55.80 | 6.47% | 1.15 |
| -7 | 46.59 | 49.59 | 52.74 | 6.35% | 1.13 |
| -6 | 44.15 | 46.94 | 49.87 | 6.24% | 1.12 |
| -5 | 41.85 | 44.45 | 47.17 | 6.12% | 1.11 |
| -4 | 39.69 | 42.11 | 44.63 | 6.00% | 1.09 |
| -3 | 37.65 | 39.90 | 42.25 | 5.89% | 1.08 |
| -2 | 35.72 | 37.82 | 40.00 | 5.78% | 1.07 |
| -1 | 33.91 | 35.86 | 37.89 | 5.66% | 1.05 |
| 0 | 32.20 | 34.01 | 35.90 | 5.55% | 1.04 |
| 1 | 30.58 | 32.27 | 34.03 | 5.44% | 1.03 |
| 2 | 29.05 | 30.63 | 32.26 | 5.33% | 1.01 |
| 3 | 27.61 | 29.08 | 30.60 | 5.22% | 1.00 |
| 4 | 26.25 | 27.62 | 29.03 | 5.11% | 0.98 |
| 5 | 24.97 | 26.24 | 27.55 | 5.01% | 0.97 |
| 6 | 23.75 | 24.93 | 26.16 | 4.90% | 0.95 |
| 7 | 22.60 | 23.70 | 24.84 | 4.79% | 0.94 |
| 8 | 21.51 | 22.54 | 23.60 | 4.69% | 0.92 |
| 9 | 20.48 | 21.44 | 22.42 | 4.58% | 0.91 |
| 10 | 19.51 | 20.40 | 21.31 | 4.48% | 0.90 |
| 20 | 12.16 | 12.60 | 13.03 | 3.48% | 0.74 |
| 21 | 11.62 | 12.02 | 12.43 | 3.38% | 0.72 |
| 22 | 11.10 | 11.48 | 11.85 | 3.28% | 0.71 |
| 23 | 10.61 | 10.96 | 11.31 | 3.19% | 0.69 |
| 24 | 10.14 | 10.47 | 10.79 | 3.09% | 0.68 |
| 25 | 9.70 | 10.00 | 10.30 | 3.00% | 0.68 |
| 26 | 9.26 | 9.56 | 9.85 | 3.09% | 0.68 |
| 27 | 8.85 | 9.14 | 9.43 | 3.19% | 0.71 |
| 28 | 8.45 | 8.73 | 9.02 | 3.28% | 0.73 |
| 29 | 8.07 | 8.35 | 8.63 | 3.37% | 0.76 |
| 30 | 7.72 | 7.99 | 8.27 | 3.46% | 0.78 |
| 31 | 7.38 | 7.65 | 7.92 | 3.55% | 0.81 |
| 32 | 7.05 | 7.32 | 7.58 | 3.65% | 0.84 |
| 33 | 6.75 | 7.01 | 7.27 | 3.74% | 0.86 |
| 34 | 6.45 | 6.71 | 6.96 | 3.83% | 0.89 |
| 35 | 6.18 | 6.42 | 6.68 | 3.92% | 0.91 |
| 36 | 5.91 | 6.15 | 6.40 | 4.00% | 0.94 |
| 37 | 5.66 | 5.90 | 6.14 | 4.09% | 0.97 |
| 38 | 5.42 | 5.65 | 5.89 | 4.18% | 0.99 |
| 39 | 5.19 | 5.42 | 5.65 | 4.27% | 1.02 |
| 40 | 4.97 | 5.20 | 5.42 | 4.36% | 1.05 |
> 如需更高温区或更低温区阻值请参考完整NTC热敏电阻规格书。
## 关键温度点阻值
### 常用温度点
| 温度点 | 中心阻值(kΩ) | 应用场景 |
|--------|-------------|----------|
| -10°C | 60.00 | 低温保护 |
| 0°C | 37.10 | 结霜检测 |
| 16°C | 15.230 | 制冷下限 |
| 25°C | 9.900 | 室温标准 |
| 31°C | 7.550 | 制冷上限 |
| 48°C | 3.743 | 电加热控制 |
| 52°C | 3.194 | 电加热保护 |
### 故障诊断参考值
| 故障类型 | 阻值范围 | 对应温度 | 判断标准 |
|----------|----------|----------|----------|
| 开路故障 | >500 kΩ | < -50°C | 阻值过高 |
| 短路故障 | <1 | >150°C | 阻值过低 |
| 传感器老化 | 超出偏差范围 | - | 阻值异常 |
## 测试方法
### 1. 阻值测量
- **测量工具**:万用表(电阻档)
- **测量条件**常温25°C ±2°C
- **测量精度**±0.1 kΩ
### 2. 温度验证
- **验证工具**:恒温箱、标准温度计
- **验证点**0°C、25°C、50°C
- **允许偏差**±2°C
### 3. 故障检测流程
#### 步骤1外观检查
- [ ] 检查传感器外观是否完好
- [ ] 检查连接线是否松动
- [ ] 检查插头是否氧化
#### 步骤2阻值测量
- [ ] 断开电源,测量传感器阻值
- [ ] 记录测量值并与标准值对比
- [ ] 判断是否在允许范围内
#### 步骤3温度验证
- [ ] 将传感器置于已知温度环境
- [ ] 测量阻值并计算对应温度
- [ ] 验证温度计算值与实际温度的一致性
#### 步骤4动态测试
- [ ] 快速改变环境温度
- [ ] 观察阻值变化响应时间
- [ ] 验证响应时间是否正常(<30秒
## 应用场景
### 1. 室内温度检测
- **传感器位置**室内机回风口
- **检测范围**16°C ~ 31°C
- **精度要求**:±1°C
### 2. 盘管温度检测
- **传感器位置**蒸发器/冷凝器盘管
- **检测范围**-10°C ~ 80°C
- **精度要求**:±2°C
### 3. 室外温度检测
- **传感器位置**室外机
- **检测范围**-40°C ~ 60°C
- **精度要求**:±2°C
### 4. 电加热控制
- **传感器位置**电加热器附近
- **检测范围**20°C ~ 60°C
- **精度要求**:±1°C
## 维护建议
### 1. 定期检查
- **检查周期**每年一次
- **检查项目**阻值测量温度验证
- **记录要求**建立传感器档案
### 2. 更换标准
- **阻值偏差**超出标准值±10%
- **响应时间**超过30秒
- **外观损坏**明显物理损伤
### 3. 校准方法
- **校准工具**标准温度计恒温箱
- **校准点**0°C25°C50°C
- **校准周期**每2年一次
---
## 🔗 相关链接
- [[月兔直流变频内机功能说明书|返回主目录]]
- [[基础配置/基本功能概述|基本功能概述]]
- [[检测与维护/故障处理|故障处理]]
---
> [!tip] 使用提示
> - 测量前确保传感器处于稳定温度环境
> - 阻值测量时避免人体接触影响
> - 故障诊断时结合系统运行状态综合判断

View File

@ -9,38 +9,39 @@
- [[基本功能概述|一、基本功能概述]]
- [[显示灯板功能|二、显示灯板功能]]
- [[风速表|三、风速表]]
- [[基础配置/温度传感器阻值表|四、温度传感器阻值表]]
### 🌡️ 运行模式
- [[温度补偿|、温度补偿]]
- [[自动模式|、自动模式]]
- [[送风模式|、送风模式]]
- [[制冷模式|、制冷模式]]
- [[除湿模式|、除湿模式]]
- [[制热模式|、制热模式]]
- [[温度补偿|、温度补偿]]
- [[自动模式|、自动模式]]
- [[送风模式|、送风模式]]
- [[制冷模式|、制冷模式]]
- [[除湿模式|、除湿模式]]
- [[制热模式|、制热模式]]
### ⚙️ 功能特性
- [[屏显功能|十、屏显功能]]
- [[睡眠功能|十、睡眠功能]]
- [[定时功能|十、定时功能]]
- [[ECO功能|十、ECO功能]]
- [[静音功能|十、静音功能]]
- [[屏显功能|十、屏显功能]]
- [[睡眠功能|十、睡眠功能]]
- [[定时功能|十、定时功能]]
- [[ECO功能|十、ECO功能]]
- [[静音功能|十、静音功能]]
### 🧹 特殊功能
- [[自清洁功能|十、自清洁功能]]
- [[高温杀菌功能|十、高温杀菌功能]]
- [[收氟|十、收氟]]
- [[应急按键功能|十、应急按键功能]]
- [[掉电记忆功能|十、掉电记忆功能]]
- [[室外继电器上电功能|二十、室外继电器上电功能]]
- [[自清洁功能|十、自清洁功能]]
- [[高温杀菌功能|十、高温杀菌功能]]
- [[收氟|十、收氟]]
- [[应急按键功能|十、应急按键功能]]
- [[掉电记忆功能|十、掉电记忆功能]]
- [[室外继电器上电功能|二十、室外继电器上电功能]]
### 🔍 检测与维护
- [[自检功能|二十、自检功能]]
- [[缩时功能|二十、缩时功能]]
- [[能力测试|二十、能力测试]]
- [[Wifi功能|二十、Wifi功能]]
- [[参数查询|二十、参数查询]]
- [[保护类故障查询|二十、保护类故障查询]]
- [[故障处理|二十、故障处理]]
- [[自检功能|二十、自检功能]]
- [[缩时功能|二十、缩时功能]]
- [[能力测试|二十、能力测试]]
- [[Wifi功能|二十、Wifi功能]]
- [[参数查询|二十、参数查询]]
- [[保护类故障查询|二十、保护类故障查询]]
- [[故障处理|二十、故障处理]]
---

View File

@ -0,0 +1,61 @@
---
kanban-plugin: board
---
## 功能特性
- [ ] [[定时功能]] ^6ow3w3
- [ ] [[静音功能]] ^2d9u2j
- [ ] [[屏显功能]]
- [ ] [[睡眠功能]]
- [ ] [[ECO 功能]]
## 基础配置
- [ ] [[电控概述]]
- [ ] [[风速表]]
- [ ] [[基本功能概述]]
- [ ] [[显示灯板功能]]
## 检测与维护
- [ ] [[保护类故障查询]]
- [ ] [[参数查询]]
- [ ] [[故障处理]]
- [ ] [[能力测试]]
- [ ] [[缩时功能]]
- [ ] [[自检功能]]
- [ ] [[Wifi功能]]
## 特殊功能
- [ ] [[掉电记忆功能]]
- [ ] [[高温杀菌功能]]
- [ ] [[室外继电器上电功能]]
- [ ] [[收氟]]
- [ ] [[应急按键功能]]
- [ ] [[自清洁功能]]
## 运行模式
- [ ] [[除湿模式]]
- [ ] [[送风模式]]
- [ ] [[温度补偿]]
- [ ] [[制冷模式]]
- [ ] [[制热模式]]
- [ ] [[自动模式]]
%% kanban:settings
```
{"kanban-plugin":"board","list-collapse":[false,false,false,false,false]}
```
%%

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,103 @@
# 标准单元格式模板
## 标准单元结构
### 1. 功能概述
- [ ] **功能名称**:简洁描述测试的功能点
- [ ] **测试目的**:明确测试要达到的目标
- [ ] **前置条件**:测试开始前需要满足的条件
### 2. 测试设计
- [ ] **设定参数**
- Tr室内温度具体数值
- Te室外温度具体数值
- Ts设定温度具体数值
- **对应阻值**
- Tr阻值根据温度传感器阻值表查询
- Te阻值根据温度传感器阻值表查询
- Ts阻值根据温度传感器阻值表查询
- 其他相关参数
### 3. 测试步骤
- [ ] **步骤1**:具体操作动作
- [ ] **步骤2**:观察或验证点
- [ ] **步骤3**:继续操作或检查
- [ ] **步骤N**:最终验证
### 4. 预期结果
- [ ] **结果1**:具体期望现象
- [ ] **结果2**:具体期望数值
- [ ] **结果3**:具体期望状态
### 5. 测试方法
- [ ] **验证方式**:如何验证结果(如:屏摄、参数读取、观察等)
- [ ] **判断标准**:成功/失败的具体标准
### 6. 相关文档
📖 [[相关功能文档链接]]
---
## 示例:除湿模式温度控制测试
### 1. 功能概述
- [ ] **功能名称**:除湿模式温度控制策略
- [ ] **测试目的**验证除湿模式下设定温度自动按Tr-2℃计算且不可人工调节
- [ ] **前置条件**:系统正常运行,可进入除湿模式
### 2. 测试设计
- [ ] **设定参数**
- Tr室内温度27℃
- Te室外温度30℃
- Ts设定温度自动计算为25℃Tr-2℃
- **对应阻值**
- Tr阻值9.14 kΩ27℃中心阻值
- Te阻值7.99 kΩ30℃中心阻值
- Ts阻值10.00 kΩ25℃中心阻值
### 3. 测试步骤
- [ ] **步骤1**:进入除湿模式
- [ ] **步骤2**观察设定温度显示是否为25℃
- [ ] **步骤3**:尝试向上调节温度
- [ ] **步骤4**:尝试向下调节温度
- [ ] **步骤5**改变Tr为24℃观察Ts是否更新为22℃
- [ ] **步骤6**验证Tr=24℃时对应阻值为9.56 kΩTs=22℃时对应阻值为11.48 kΩ
### 4. 预期结果
- [ ] **结果1**初始设定温度显示25℃
- [ ] **结果2**向上调节温度无效仍显示25℃
- [ ] **结果3**向下调节温度无效仍显示25℃
- [ ] **结果4**Tr改变后Ts自动更新为22℃
- [ ] **结果5**温度传感器阻值变化符合NTC特性曲线
### 5. 测试方法
- [ ] **验证方式**:屏摄记录、温度调节操作、参数读取、阻值测量
- [ ] **判断标准**设定温度始终为Tr-2℃人工调节无效阻值变化符合温度传感器阻值表
### 6. 相关文档
📖 [[运行模式/除湿模式#温度控制]] [[运行模式/除湿模式#运行参数]] [[基础配置/温度传感器阻值表]]
---
## 使用说明
1. **任务标记**:使用 `- [ ]` 进行任务标记,便于跟踪测试进度
2. **参数固定**每个测试场景的Tr、Te、Ts等关键参数必须明确固定
3. **阻值对应**:根据温度传感器阻值表查询对应阻值,便于故障诊断和参数验证
4. **步骤清晰**:每个步骤都要具体可操作,避免模糊描述
5. **结果量化**:预期结果要具体可验证,避免主观判断
6. **文档链接**使用正确的Obsidian链接语法引用相关文档
## 温度-阻值查询参考
### 常用温度点阻值速查
| 温度(℃) | 中心阻值(kΩ) | 应用场景 |
|---------|-------------|----------|
| 16 | 15.23 | 制冷下限 |
| 20 | 12.60 | 标准室温 |
| 25 | 10.00 | 标准温度 |
| 27 | 9.14 | 常用测试 |
| 30 | 7.99 | 制冷上限 |
| 31 | 7.65 | 制冷上限 |
> 💡 **提示**:完整阻值表请参考 [[基础配置/温度传感器阻值表]]