2 Commits

Author SHA1 Message Date
protonjelly 0b0ed55db6 Add news.md 2026-09-12 05:31:50 +00:00
protonjelly f913401f71 Initial commit 2026-09-11 23:49:39 +00:00
174 changed files with 27 additions and 276502 deletions
-8
View File
@@ -1,8 +0,0 @@
{
"spellcheckDictionary": [
"Reinhiller",
"Triarch",
"Extemp"
],
"promptDelete": false
}
-6
View File
@@ -1,6 +0,0 @@
{
"enabledCssSnippets": [
"noctalia"
],
"cssTheme": "Minimal"
}
-19
View File
@@ -1,19 +0,0 @@
[
"obsidian-excalidraw-plugin",
"obsidian-livesync",
"editing-toolbar",
"omnisearch",
"longform",
"obsidian-languagetool-plugin",
"obsidian-tasks-plugin",
"obsidian-zotero-desktop-connector",
"obsidian-icon-folder",
"ink",
"notebook-navigator",
"obsidian-minimal-settings",
"obsidian-style-settings",
"tasknotes",
"obsidian-git",
"edit-in-neovim",
"obsidian-importer"
]
-33
View File
@@ -1,33 +0,0 @@
{
"file-explorer": true,
"global-search": true,
"switcher": true,
"graph": true,
"backlink": true,
"canvas": true,
"outgoing-link": true,
"tag-pane": true,
"footnotes": true,
"properties": true,
"page-preview": true,
"daily-notes": true,
"templates": true,
"note-composer": true,
"command-palette": true,
"slash-command": false,
"editor-status": true,
"bookmarks": true,
"markdown-importer": true,
"zk-prefixer": true,
"random-note": false,
"outline": true,
"word-count": true,
"slides": true,
"audio-recorder": true,
"workspaces": true,
"file-recovery": true,
"publish": false,
"sync": true,
"bases": true,
"webviewer": true
}
-22
View File
@@ -1,22 +0,0 @@
{
"collapse-filter": true,
"search": "",
"showTags": false,
"showAttachments": false,
"hideUnresolved": false,
"showOrphans": true,
"collapse-color-groups": true,
"colorGroups": [],
"collapse-display": true,
"showArrow": false,
"textFadeMultiplier": 0,
"nodeSizeMultiplier": 1,
"lineSizeMultiplier": 1,
"collapse-forces": true,
"centerStrength": 0.518713248970312,
"repelStrength": 10,
"linkStrength": 1,
"linkDistance": 250,
"scale": 1.5700067509625273,
"close": true
}
-10
View File
@@ -1,10 +0,0 @@
{
"shouldConfirmBeforeCreate": true,
"weekStart": "locale",
"wordsPerDot": 250,
"showWeeklyNote": false,
"weeklyNoteFormat": "",
"weeklyNoteTemplate": "",
"weeklyNoteFolder": "",
"localeOverride": "system-default"
}
-4459
View File
File diff suppressed because it is too large Load Diff
-10
View File
@@ -1,10 +0,0 @@
{
"id": "calendar",
"name": "Calendar",
"description": "Calendar view of your daily notes",
"version": "1.5.10",
"author": "Liam Cain",
"authorUrl": "https://github.com/liamcain/",
"isDesktopOnly": false,
"minAppVersion": "0.9.11"
}
File diff suppressed because it is too large Load Diff
-10
View File
@@ -1,10 +0,0 @@
{
"id": "edit-in-neovim",
"name": "Edit in Neovim",
"version": "1.8.5",
"minAppVersion": "0.15.0",
"description": "Open a Neovim buffer for the currently open file",
"author": "Theseus",
"authorUrl": "https://github.com/TheseusGrey",
"isDesktopOnly": true
}
-542
View File
@@ -1,542 +0,0 @@
{
"lastVersion": "4.1.1",
"aestheticStyle": "default",
"positionStyle": "top",
"menuCommands": [
{
"id": "editing-toolbar:editor-undo",
"name": "Undo Edit",
"icon": "undo-glyph"
},
{
"id": "editing-toolbar:editor-redo",
"name": "Redo Edit",
"icon": "redo-glyph"
},
{
"id": "editing-toolbar:toggle-format-brush",
"name": "Format Brush",
"icon": "paintbrush"
},
{
"id": "editing-toolbar:format-eraser",
"name": "Clear Text Formatting",
"icon": "eraser"
},
{
"id": "editing-toolbar:header2-text",
"name": "Header 2",
"icon": "header-2"
},
{
"id": "editing-toolbar:header3-text",
"name": "Header 3",
"icon": "header-3"
},
{
"id": "SubmenuCommands-header",
"name": "submenu",
"icon": "header-n",
"SubmenuCommands": [
{
"id": "editing-toolbar:header1-text",
"name": "Header 1",
"icon": "header-1"
},
{
"id": "editing-toolbar:header4-text",
"name": "Header 4",
"icon": "header-4"
},
{
"id": "editing-toolbar:header5-text",
"name": "Header 5",
"icon": "header-5"
},
{
"id": "editing-toolbar:header6-text",
"name": "Header 6",
"icon": "header-6"
}
]
},
{
"id": "editing-toolbar:toggle-bold",
"name": "Bold",
"icon": "bold-glyph"
},
{
"id": "editing-toolbar:toggle-italics",
"name": "Italic",
"icon": "italic-glyph"
},
{
"id": "editing-toolbar:toggle-strikethrough",
"name": "Strikethrough",
"icon": "strikethrough-glyph"
},
{
"id": "editing-toolbar:underline",
"name": "Underline",
"icon": "underline-glyph"
},
{
"id": "editing-toolbar:toggle-highlight",
"name": "Highlight",
"icon": "highlight-glyph"
},
{
"id": "SubmenuCommands-text-tools",
"name": "Text Tools",
"icon": "box",
"menuType": "dropdown",
"SubmenuCommands": [
{
"id": "editing-toolbar:get-plain-text",
"name": "Get Plain Text",
"icon": "lucide-file-text"
},
{
"id": "editing-toolbar:smart-symbols",
"name": "Full Half Converter",
"icon": "lucide-at-sign"
},
{
"id": "editingToolbar-Divider-Line",
"name": "Line Operations",
"icon": "vertical-split"
},
{
"id": "editing-toolbar:insert-blank-lines",
"name": "Insert Blank Lines",
"icon": "lucide-space"
},
{
"id": "editing-toolbar:remove-blank-lines",
"name": "Remove Blank Lines",
"icon": "lucide-minimize-2"
},
{
"id": "editing-toolbar:split-lines",
"name": "Split Lines",
"icon": "lucide-split"
},
{
"id": "editing-toolbar:merge-lines",
"name": "Merge Lines",
"icon": "lucide-merge"
},
{
"id": "editing-toolbar:dedupe-lines",
"name": "Dedupe Lines",
"icon": "lucide-filter"
},
{
"id": "editingToolbar-Divider-Line",
"name": "Text Processing",
"icon": "vertical-split"
},
{
"id": "editing-toolbar:add-wrap",
"name": "Add Prefix/Suffix",
"icon": "lucide-wrap-text"
},
{
"id": "editing-toolbar:number-lines",
"name": "Number Lines (Custom)",
"icon": "lucide-list-ordered"
},
{
"id": "editing-toolbar:remove-whitespace-trim",
"name": "Trim Line Ends",
"icon": "lucide-scissors"
},
{
"id": "editing-toolbar:remove-whitespace-compress",
"name": "Shrink Extra Spaces",
"icon": "lucide-minimize"
},
{
"id": "editing-toolbar:remove-whitespace-all",
"name": "Remove All Whitespace",
"icon": "lucide-eraser"
},
{
"id": "editingToolbar-Divider-Line",
"name": "Advanced Tools",
"icon": "vertical-split"
},
{
"id": "editing-toolbar:list-to-table",
"name": "List to Table",
"icon": "lucide-table"
},
{
"id": "editing-toolbar:table-to-list",
"name": "Table to List",
"icon": "lucide-list"
},
{
"id": "editing-toolbar:extract-between",
"name": "Extract Between Strings",
"icon": "lucide-brackets"
}
]
},
{
"id": "SubmenuCommands-lucdf3en5",
"name": "submenu",
"icon": "edit",
"SubmenuCommands": [
{
"id": "editing-toolbar:editor-cut",
"name": "Cut",
"icon": "lucide-scissors"
},
{
"id": "editing-toolbar:editor-copy",
"name": "Copy",
"icon": "lucide-copy"
},
{
"id": "editing-toolbar:editor-paste",
"name": "Paste",
"icon": "lucide-clipboard-type"
},
{
"id": "editing-toolbar:editor:swap-line-down",
"name": "Swap Line Down",
"icon": "lucide-corner-right-down"
},
{
"id": "editing-toolbar:editor:swap-line-up",
"name": "Swap Line Up",
"icon": "lucide-corner-right-up"
}
]
},
{
"id": "editing-toolbar:editor:attach-file",
"name": "Attach File",
"icon": "lucide-paperclip"
},
{
"id": "editing-toolbar:editor:insert-table",
"name": "Insert Table",
"icon": "lucide-table"
},
{
"id": "editing-toolbar:editor:cycle-list-checklist",
"name": "Cycle List and Checklist",
"icon": "check-circle"
},
{
"id": "SubmenuCommands-luc8efull",
"name": "submenu",
"icon": "message-square",
"SubmenuCommands": [
{
"id": "editing-toolbar:editor:toggle-blockquote",
"name": "Blockquote",
"icon": "lucide-text-quote"
},
{
"id": "editing-toolbar:insert-callout",
"name": "Callout",
"icon": "lucide-quote"
}
]
},
{
"id": "SubmenuCommands-mdcmder",
"name": "submenu",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M464 608 l0 -568 q0 -3 -2.5 -5.5 q-2.5 -2.5 -5.5 -2.5 l-80 0 q-3 0 -5.5 2.5 q-2.5 2.5 -2.5 5.5 l0 568 l-232 0 q-3 0 -5.5 2.5 q-2.5 2.5 -2.5 5.5 l0 80 q0 3 2.5 5.5 q2.5 2.5 5.5 2.5 l560 0 q3 0 5.5 -2.5 q2.5 -2.5 2.5 -5.5 l0 -80 q0 -3 -2.5 -5.5 q-2.5 -2.5 -5.5 -2.5 l-232 0 ZM864 696 q17 0 28.5 11.5 q11.5 11.5 11.5 28.5 q0 17 -11.5 28.5 q-11.5 11.5 -28.5 11.5 q-17 0 -28.5 -11.5 q-11.5 -11.5 -11.5 -28.5 q0 -17 11.5 -28.5 q11.5 -11.5 28.5 -11.5 ZM864 640 q-40 0 -68 28 q-28 28 -28 68 q0 40 28 68 q28 28 68 28 q40 0 68 -28 q28 -28 28 -68 q0 -40 -28 -68 q-28 -28 -68 -28 ZM576 322 l0 -63 q0 -3 2 -5 l89 -70 l-89 -70 q-2 -2 -2 -5 l0 -63 q0 -4 3.5 -5.5 q3.5 -1.5 6.5 0.5 l170 133 q4 3 4.5 8.5 q0.5 5.5 -2.5 9.5 l-2 2 l-170 133 q-3 2 -6.5 0.5 q-3.5 -1.5 -3.5 -5.5 ZM256 322 l0 -63 q0 -3 -2 -5 l-89 -70 l89 -70 q2 -2 2 -5 l0 -63 q0 -4 -3.5 -5.5 q-3.5 -1.5 -6.5 0.5 l-170 133 q-4 3 -4.5 8.5 q-0.5 5.5 2.5 9.5 l2 2 l170 133 q3 2 6.5 0.5 q3.5 -1.5 3.5 -5.5 Z\"></path></g></svg>",
"SubmenuCommands": [
{
"id": "editing-toolbar:superscript",
"name": "Superscript",
"icon": "superscript-glyph"
},
{
"id": "editing-toolbar:subscript",
"name": "Subscript",
"icon": "subscript-glyph"
},
{
"id": "editing-toolbar:editor:toggle-code",
"name": "Inline Code",
"icon": "code-glyph"
},
{
"id": "editing-toolbar:codeblock",
"name": "Code Block",
"icon": "codeblock-glyph"
},
{
"id": "editing-toolbar:editor:insert-wikilink",
"name": "Wikilink",
"icon": "<svg width=\"15\" height=\"15\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M306 134 l91 0 q1 0 1 -8 l0 -80 q0 -8 -1 -8 l-91 0 q-1 0 -1 7 q0 -8 -5 -8 l-45 0 q-5 0 -5 8 l0 784 q0 8 5 8 l45 0 q5 0 5 -8 q0 8 1 8 l91 0 q1 0 1 -8 l0 -80 q0 -8 -1 -8 l-91 0 q-1 0 -1 8 l0 -623 q0 8 1 8 ZM139 134 l91 0 q1 0 1 -8 l0 -80 q0 -8 -1 -8 l-91 0 q-1 0 -1 7 q0 -8 -5 -8 l-45 0 q-5 0 -5 8 l0 784 q0 8 5 8 l45 0 q5 0 5 -8 q0 8 1 8 l91 0 q1 0 1 -8 l0 -80 q0 -8 -1 -8 l-91 0 q-1 0 -1 8 l0 -623 q0 8 1 8 ZM711 134 q1 0 1 -8 l0 623 q0 -8 -1 -8 l-91 0 q-1 0 -1 8 l0 80 q0 8 1 8 l91 0 q1 0 1 -8 q0 8 4 8 l46 0 q4 0 4 -8 l0 -784 q0 -8 -4 -8 l-46 0 q-4 0 -4 8 q0 -7 -1 -7 l-91 0 q-1 0 -1 8 l0 80 q0 8 1 8 l91 0 ZM878 134 q1 0 1 -8 l0 623 q0 -8 -1 -8 l-91 0 q-1 0 -1 8 l0 80 q0 8 1 8 l91 0 q1 0 1 -8 q0 8 5 8 l45 0 q4 0 4 -8 l0 -784 q0 -8 -4 -8 l-45 0 q-5 0 -5 8 q0 -7 -1 -7 l-91 0 q-1 0 -1 8 l0 80 q0 8 1 8 l91 0 Z\"></path></g></svg>"
},
{
"id": "editing-toolbar:editor:insert-embed",
"name": "Embed",
"icon": "note-glyph"
},
{
"id": "editing-toolbar:insert-link",
"name": "Link",
"icon": "link-glyph"
},
{
"id": "editing-toolbar:hrline",
"name": "Horizontal Divider",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M912 424 l0 -80 q0 -3 -2.5 -5.5 q-2.5 -2.5 -5.5 -2.5 l-784 0 q-3 0 -5.5 2.5 q-2.5 2.5 -2.5 5.5 l0 80 q0 3 2.5 5.5 q2.5 2.5 5.5 2.5 l784 0 q3 0 5.5 -2.5 q2.5 -2.5 2.5 -5.5 Z\"></path></g></svg>"
},
{
"id": "editing-toolbar:toggle-inline-math",
"name": "Inline Math",
"icon": "lucide-sigma"
},
{
"id": "editing-toolbar:editor:insert-mathblock",
"name": "MathBlock",
"icon": "lucide-sigma-square"
}
]
},
{
"id": "SubmenuCommands-list",
"name": "submenu-list",
"icon": "bullet-list-glyph",
"SubmenuCommands": [
{
"id": "editing-toolbar:editor:toggle-checklist-status",
"name": "Checklist",
"icon": "checkbox-glyph"
},
{
"id": "editing-toolbar:renumber-ordered-list",
"name": "Renumber Ordered List",
"icon": "list-restart"
},
{
"id": "editing-toolbar:toggle-numbered-list",
"name": "Ordered List",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M860 424 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-457 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l457 0 ZM860 756 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-457 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l457 0 ZM860 92 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-457 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l457 0 ZM264 136 l-3 -3 l-51 -57 l56 0 q14 0 24.5 -10 q10.5 -10 11.5 -25 l0 -1 q0 -15 -10.5 -25.5 q-10.5 -10.5 -24.5 -10.5 l-137 0 q-15 0 -25 10 q-10 10 -11 24.5 q-1 14.5 9 25.5 l63 70 l49 54 q7 7 7 16.5 q0 9.5 -7.5 16.5 q-7.5 7 -18.5 7 q-11 0 -18.5 -6.5 q-7.5 -6.5 -8.5 -16.5 l0 0 q0 -15 -10.5 -25.5 q-10.5 -10.5 -25.5 -10.5 q-15 0 -25.5 10.5 q-10.5 10.5 -10.5 25.5 q0 26 13.5 47.5 q13.5 21.5 36 34.5 q22.5 13 49 13 q26.5 0 49.5 -13 q23 -13 36 -34.5 q13 -21.5 13 -47.5 q0 -20 -7.5 -37.5 q-7.5 -17.5 -21.5 -30.5 l-1 -1 ZM173 794 q11 11 25 10.5 q14 -0.5 24.5 -10.5 q10.5 -10 10.5 -25 l0 -293 q0 -15 -10 -25.5 q-10 -10.5 -25 -10.5 q-15 0 -25.5 10 q-10.5 10 -11.5 25 l0 211 q-10 -8 -23.5 -7 q-13.5 1 -22.5 11 l-1 0 q-10 11 -9.5 25.5 q0.5 14.5 10.5 24.5 l58 54 Z\"></path></g></svg>"
},
{
"id": "editing-toolbar:toggle-bullet-list",
"name": "Unordered List",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M860 424 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-477 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l477 0 ZM860 756 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-477 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l477 0 ZM860 92 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-477 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l477 0 ZM176 716 l0 0 ZM112 716 q0 -27 18.5 -45.5 q18.5 -18.5 45.5 -18.5 q27 0 45.5 18.5 q18.5 18.5 18.5 45.5 q0 27 -18.5 45.5 q-18.5 18.5 -45.5 18.5 q-27 0 -45.5 -18.5 q-18.5 -18.5 -18.5 -45.5 ZM176 384 l0 0 ZM112 384 q0 -27 18.5 -45.5 q18.5 -18.5 45.5 -18.5 q27 0 45.5 18.5 q18.5 18.5 18.5 45.5 q0 27 -18.5 45.5 q-18.5 18.5 -45.5 18.5 q-27 0 -45.5 -18.5 q-18.5 -18.5 -18.5 -45.5 ZM176 52 l0 0 ZM112 52 q0 -27 18.5 -45.5 q18.5 -18.5 45.5 -18.5 q27 0 45.5 18.5 q18.5 18.5 18.5 45.5 q0 27 -18.5 45.5 q-18.5 18.5 -45.5 18.5 q-27 0 -45.5 -18.5 q-18.5 -18.5 -18.5 -45.5 Z\"></path></g></svg>"
},
{
"id": "editing-toolbar:undent-list",
"name": "Unindent List",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M872 302 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-429 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l429 0 ZM872 542 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-429 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l429 0 ZM872 784 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 ZM872 62 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 ZM244 534 l-123 -122 q-8 -7 -8 -18 q0 -11 8 -18 l123 -122 q8 -7 19 -7 q11 0 18.5 7.5 q7.5 7.5 7.5 18.5 l0 242 q0 11 -7.5 18.5 q-7.5 7.5 -18.5 7.5 q-11 0 -19 -7 Z\"></path></g></svg>"
},
{
"id": "editing-toolbar:indent-list",
"name": "Indent list",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M872 302 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-429 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l429 0 ZM872 542 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-429 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l429 0 ZM872 784 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 ZM872 62 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 ZM158 534 l124 -122 q7 -7 7 -18 q0 -11 -7 -18 l-124 -122 q-7 -7 -18 -7 q-11 0 -19 7.5 q-8 7.5 -8 18.5 l0 242 q0 11 8 18.5 q8 7.5 19 7.5 q11 0 18 -7 Z\"></path></g></svg>"
}
]
},
{
"id": "SubmenuCommands-aligin",
"name": "submenu-aligin",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M724 304 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-421 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l421 0 ZM872 540 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 ZM724 776 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-421 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l421 0 ZM872 68 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 Z\"></path></g></svg>",
"SubmenuCommands": [
{
"id": "editing-toolbar:justify",
"name": "Justify Text",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M112 736 l0 0 ZM120 736 l784 0 q8 0 8 -8 l0 -80 q0 -8 -8 -8 l-784 0 q-8 0 -8 8 l0 80 q0 8 8 8 ZM112 331 l0 0 ZM120 331 l784 0 q8 0 8 -8 l0 -80 q0 -8 -8 -8 l-784 0 q-8 0 -8 8 l0 80 q0 8 8 8 ZM112 128 l0 0 ZM120 128 l784 0 q8 0 8 -8 l0 -80 q0 -8 -8 -8 l-784 0 q-8 0 -8 8 l0 80 q0 8 8 8 ZM112 533 l0 0 ZM120 533 l784 0 q8 0 8 -8 l0 -80 q0 -8 -8 -8 l-784 0 q-8 0 -8 8 l0 80 q0 8 8 8 Z\"></path></g></svg>"
},
{
"id": "editing-toolbar:left",
"name": "Align Text Left",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M572 304 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-421 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l421 0 ZM872 540 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 ZM572 776 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-421 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l421 0 ZM872 68 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 Z\"></path></g></svg>"
},
{
"id": "editing-toolbar:center",
"name": "Center Text",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M724 304 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-421 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l421 0 ZM872 540 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 ZM724 776 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-421 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l421 0 ZM872 68 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 Z\"></path></g></svg>"
},
{
"id": "editing-toolbar:right",
"name": "Align Text Right",
"icon": "<svg width=\"18\" height=\"18\" focusable=\"false\" fill=\"currentColor\" viewBox=\"0 0 1024 1024\"><g transform=\"scale(1, -1) translate(0, -896) scale(0.9, 0.9) \"><path class=\"path\" d=\"M872 304 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-421 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l421 0 ZM872 540 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 ZM872 776 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-421 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l421 0 ZM872 68 q17 0 28.5 -11.5 q11.5 -11.5 11.5 -28 q0 -16.5 -11.5 -28.5 q-11.5 -12 -27.5 -12 l-721 0 q-17 0 -28.5 11.5 q-11.5 11.5 -11.5 28 q0 16.5 11.5 28.5 q11.5 12 27.5 12 l721 0 Z\"></path></g></svg>"
}
]
},
{
"id": "editing-toolbar:change-font-color",
"name": "Change Font Color",
"icon": "<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" focusable=\"false\" fill=\"currentColor\"><g fill-rule=\"evenodd\"><path id=\"change-font-color-icon\" d=\"M3 18h18v3H3z\" style=\"fill:#2DC26B\"></path><path d=\"M8.7 16h-.8a.5.5 0 01-.5-.6l2.7-9c.1-.3.3-.4.5-.4h2.8c.2 0 .4.1.5.4l2.7 9a.5.5 0 01-.5.6h-.8a.5.5 0 01-.4-.4l-.7-2.2c0-.3-.3-.4-.5-.4h-3.4c-.2 0-.4.1-.5.4l-.7 2.2c0 .3-.2.4-.4.4zm2.6-7.6l-.6 2a.5.5 0 00.5.6h1.6a.5.5 0 00.5-.6l-.6-2c0-.3-.3-.4-.5-.4h-.4c-.2 0-.4.1-.5.4z\"></path></g></svg>"
},
{
"id": "editing-toolbar:change-background-color",
"name": "Change Background Color",
"icon": "<svg width=\"18\" height=\"24\" viewBox=\"0 0 256 256\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"><g stroke=\"none\" stroke-width=\"1\" fill=\"currentColor\" fill-rule=\"evenodd\"><g ><g fill=\"currentColor\"><g transform=\"translate(119.502295, 137.878331) rotate(-135.000000) translate(-119.502295, -137.878331) translate(48.002295, 31.757731)\" ><path d=\"M100.946943,60.8084699 L43.7469427,60.8084699 C37.2852111,60.8084699 32.0469427,66.0467383 32.0469427,72.5084699 L32.0469427,118.70847 C32.0469427,125.170201 37.2852111,130.40847 43.7469427,130.40847 L100.946943,130.40847 C107.408674,130.40847 112.646943,125.170201 112.646943,118.70847 L112.646943,72.5084699 C112.646943,66.0467383 107.408674,60.8084699 100.946943,60.8084699 Z M93.646,79.808 L93.646,111.408 L51.046,111.408 L51.046,79.808 L93.646,79.808 Z\" fill-rule=\"nonzero\"></path><path d=\"M87.9366521,16.90916 L87.9194966,68.2000001 C87.9183543,69.4147389 86.9334998,70.399264 85.7187607,70.4 L56.9423078,70.4 C55.7272813,70.4 54.7423078,69.4150264 54.7423078,68.2 L54.7423078,39.4621057 C54.7423078,37.2523513 55.5736632,35.1234748 57.0711706,33.4985176 L76.4832996,12.4342613 C78.9534987,9.75382857 83.1289108,9.5834005 85.8093436,12.0535996 C87.1658473,13.303709 87.9372691,15.0644715 87.9366521,16.90916 Z\" fill-rule=\"evenodd\"></path><path d=\"M131.3,111.241199 L11.7,111.241199 C5.23826843,111.241199 0,116.479467 0,122.941199 L0,200.541199 C0,207.002931 5.23826843,212.241199 11.7,212.241199 L131.3,212.241199 C137.761732,212.241199 143,207.002931 143,200.541199 L143,122.941199 C143,116.479467 137.761732,111.241199 131.3,111.241199 Z M124,130.241 L124,193.241 L19,193.241 L19,130.241 L124,130.241 Z\" fill-rule=\"nonzero\"></path></g></g><path d=\"M51,218 L205,218 C211.075132,218 216,222.924868 216,229 C216,235.075132 211.075132,240 205,240 L51,240 C44.9248678,240 40,235.075132 40,229 C40,222.924868 44.9248678,218 51,218 Z\" id=\"change-background-color-icon\" style=\"fill:#FA541C\"></path></g></g></svg>"
},
{
"id": "editing-toolbar:fullscreen-focus",
"name": "Fullscreen Focus Mode",
"icon": "fullscreen"
},
{
"id": "editing-toolbar:workplace-fullscreen-focus",
"name": "Workplace Fullscreen",
"icon": "exit-fullscreen"
}
],
"followingCommands": [],
"topCommands": [],
"fixedCommands": [],
"mobileCommands": [],
"enableMultipleConfig": false,
"enableTopToolbar": true,
"enableFollowingToolbar": false,
"enableFixedToolbar": false,
"appendMethod": "workspace",
"shouldShowMenuOnSelect": false,
"cMenuVisibility": true,
"cMenuBottomValue": 4.25,
"cMenuNumRows": 12,
"cMenuWidth": 610,
"cMenuFontColor": "#2DC26B",
"cMenuBackgroundColor": "#d3f8b6",
"autohide": false,
"Iscentered": false,
"custom_bg1": "#FFB78B8C",
"custom_bg2": "#CDF4698C",
"custom_bg3": "#A0CCF68C",
"custom_bg4": "#F0A7D88C",
"custom_bg5": "#ADEFEF8C",
"custom_fc1": "#D83931",
"custom_fc2": "#DE7802",
"custom_fc3": "#245BDB",
"custom_fc4": "#6425D0",
"custom_fc5": "#646A73",
"isLoadOnMobile": false,
"horizontalPosition": 0,
"verticalPosition": 0,
"formatBrushes": {},
"customCommands": [],
"viewTypeSettings": {},
"appearanceByStyle": {
"top": {
"toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)",
"toolbarIconColor": "var(--text-normal)",
"toolbarIconSize": 18,
"aestheticStyle": "default"
},
"following": {
"toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)",
"toolbarIconColor": "var(--text-normal)",
"toolbarIconSize": 18,
"aestheticStyle": "default"
},
"fixed": {
"toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)",
"toolbarIconColor": "var(--text-normal)",
"toolbarIconSize": 18,
"aestheticStyle": "default"
},
"mobile": {
"toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)",
"toolbarIconColor": "var(--text-normal)",
"toolbarIconSize": 18,
"aestheticStyle": "default"
}
},
"toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)",
"toolbarIconColor": "var(--text-normal)",
"toolbarIconSize": 18,
"useCurrentLineForRegex": false,
"ai": {
"enabled": false,
"showAIContextMenu": true,
"consentAccepted": false,
"onboardingShown": true,
"providerMode": "pkmer-first",
"enableInlineCompletion": true,
"inlineCompletionHintLearned": false,
"completionTrigger": "manual",
"completionDelay": 500,
"enableRewrite": true,
"showRewriteToolbarOnSelection": false,
"rewriteMinSelectionLength": 1,
"pkmerApiBaseUrl": "https://newapi.pkmer.cn",
"pkmerModel": "04-fast",
"pkmerModelRouting": {
"mode": "smart",
"completion": "04-fast",
"rewrite": "04-fast",
"reasoning": "03-agent",
"artifact": "03-agent"
},
"pkmer": {
"tokenExpiresAt": 0,
"userInfo": null
},
"enableCustomModel": false,
"customModel": {
"apiFormat": "openai-compatible",
"baseUrl": "",
"apiKey": "",
"model": "",
"temperature": 0.2
},
"frontmatterPrompt": {
"mode": "auto",
"properties": "title: concise, one-line note title\nsummary: 1-3 sentence note summary\ntags: YAML list of relevant keywords\ncreated: YYYY-MM-DD date when appropriate\ncategory: broad content category",
"language": "auto",
"prompt": "Generate YAML frontmatter for the current Obsidian note using the requested properties below.\n\nRequested properties:\n{properties}\n\nOutput language for generated values: {language}\n\nRules:\n- Return only one complete YAML frontmatter block wrapped in --- delimiters.\n- Use the target text as the note content.\n- Follow current and sibling-note frontmatter conventions from context when provided.\n- Keep values concise, practical, and useful for filtering or browsing.\n- Do not add explanations or markdown fences outside the YAML block."
},
"customPromptHistory": [],
"customPromptTemplates": [
{
"id": "template-demo-variables",
"name": "📝 Summarize Key Points",
"prompt": "Analyze the structure of {{file:content}} and focus on:\n{{selection}}\n\nPlease provide:\n1. A concise overview\n2. The key points\n3. Suggestions for improvement",
"icon": "lucide-sparkles"
},
{
"id": "template-task-variables",
"name": "Extract Tasks",
"prompt": "Today's date is {{date}}. Extract all actionable tasks from {{file:content}}, with special attention to:\n{{selection}}\n\nPlease output strictly in Obsidian Tasks plugin format, one task per line:\n\n- [ ] Task description ⏫/🔼/🔽/⏬ priority\n- [ ] Task description 📅 YYYY-MM-DD due date\n- [ ] Task description ⏰ YYYY-MM-DD HH:mm reminder\n- [ ] Task description 🛫 YYYY-MM-DD start date\n- [ ] Task description 🔁 every day/week/month recurrence\n- [ ] Task description #tag #project\n\nExtraction rules:\n1. If the text implies urgency such as urgent, ASAP, immediately, or today, add ⏫.\n2. If it implies near-term timing such as tomorrow, this week, or soon, add 🔼.\n3. Convert explicit dates to 📅 YYYY-MM-DD.\n4. Convert explicit times to ⏰ YYYY-MM-DD HH:mm when possible.\n5. Add recurrence for repeated work such as 🔁 every week/month.\n6. Add practical tags for each task.\n\nExample output:\n- [ ] Finish project report ⏫ 📅 2026-04-25 #work\n- [ ] Weekly team sync 🔁 every week on Monday ⏰ 09:00 #meeting\n- [ ] Follow up on client request 🔼 📅 2026-04-23 #follow-up",
"icon": "lucide-sparkles"
},
{
"id": "template-dataview",
"name": "Generate Dataview",
"prompt": "Help me generate an Obsidian Dataview query block based on my requirement. Requirements:\n1. Use DataviewJS or DQL syntax.\n2. Include the necessary filters and sorting.\n3. Add short comments explaining each part.\n4. Use DataviewJS if the logic is complex.\n\nMy requirement:",
"icon": "lucide-database"
},
{
"id": "template-templater",
"name": "Design Templater Template",
"prompt": "Help me design an Obsidian Templater template. Requirements:\n1. Use Templater syntax (<% %>).\n2. Include dynamic date, time, and similar variables.\n3. Support user input prompts.\n4. Add necessary conditionals and loops.\n5. Comment the purpose of each section.\n\nTemplate purpose:",
"icon": "lucide-file-code"
},
{
"id": "template-mermaid",
"name": "Create Mermaid Diagram",
"prompt": "Based on my selected text {{selection}}, generate Mermaid diagram code. Requirements:\n1. Choose an appropriate diagram type such as flowchart, sequence, class, or gantt.\n2. Use clear node names.\n3. Add useful styling and comments when needed.\n4. Ensure the syntax is valid and renderable.\n",
"icon": "lucide-workflow"
},
{
"id": "template-metadata",
"name": "Design YAML",
"prompt": "Based on the current note content {{file:content}}, help me design a suitable YAML Frontmatter structure for this note. Requirements:\n1. Recommend fields that fit the note content.\n2. Include common fields such as tags, aliases, and date.\n3. Suggest useful custom fields.\n4. Briefly explain the purpose of each field.\n\nNote type:",
"icon": "lucide-file-json"
},
{
"id": "template-callout",
"name": "Wrap with Callout",
"prompt": "Based on my selected text {{selection}}, wrap it using an Obsidian Callout block. Requirements:\n1. Choose an appropriate callout type such as note, tip, warning, or danger.\n2. Support nesting and folding when helpful.\n3. Include a title and content.\n4. Allow code blocks or lists when needed.\n\nContent requirement:",
"icon": "lucide-message-square"
}
]
}
}
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"id": "editing-toolbar",
"name": "Editing Toolbar",
"version": "4.1.1",
"minAppVersion": "0.14.0",
"description": "The Obsidian Editing Toolbar is modified from cmenu, which provides more powerful customization settings and has many built-in editing commands to be a MS Word-like toolbar editing experience.",
"author": "Cuman",
"authorUrl": "https://github.com/cumany/obsidian-editing-toolbar",
"isDesktopOnly": false
}
File diff suppressed because it is too large Load Diff
-28
View File
@@ -1,28 +0,0 @@
{
"settingsVersion": "0.5.0",
"onboardingTips": {
"welcomeTipRead": true,
"strokeLimitTipRead": false,
"lastVersionTipRead": "0.5.6"
},
"gettingStartedExpanded": true,
"customAttachmentFolders": false,
"noteAttachmentFolderLocation": "obsidian",
"notelessAttachmentFolderLocation": "obsidian",
"writingSubfolder": "Ink/Writing",
"drawingSubfolder": "Ink/Drawing",
"debugLoggingEnabled": false,
"dominantHand": "right",
"writingEnabled": true,
"writingStrokeLimit": 200,
"writingBufferLines": 3,
"writingLineHeight": 150,
"writingDynamicStrokeThickness": true,
"writingSmoothing": false,
"writingLinesWhenLocked": true,
"writingBackgroundWhenLocked": true,
"drawingEnabled": true,
"drawingGridEnabledByDefault": true,
"drawingFrameWhenLocked": false,
"drawingBackgroundWhenLocked": false
}
-108066
View File
File diff suppressed because one or more lines are too long
-11
View File
@@ -1,11 +0,0 @@
{
"id": "ink",
"name": "Ink",
"author": "Dale de Silva",
"description": "Hand write or draw directly between paragraphs in your notes using a digital pen, stylus, or Apple pencil. Useful for handwriting, sketches, scribbles, or even math equations and scientific notation. Runs on the tldraw framework and drawing provides an infinite canvas.",
"version": "0.5.6",
"minAppVersion": "1.8.7",
"authorUrl": "https://designdebt.club",
"fundingUrl": "https://ko-fi.com/daledesilva",
"isDesktopOnly": false
}
-8208
View File
File diff suppressed because it is too large Load Diff
-241
View File
@@ -1,241 +0,0 @@
{
"version": 3,
"projects": {},
"selectedDraftVaultPath": null,
"userScriptFolder": null,
"sessionStorage": "data",
"sessions": [
{
"start": "2026-09-15T23:19:43.332Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-09-14T13:25:49.206Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-09-11T17:29:32.182Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-09-10T15:02:07.378Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-09-09T14:19:55.825Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-09-08T12:41:12.421Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-09-05T01:02:43.709Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-09-02T13:07:15.603Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-09-01T13:06:21.300Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-08-31T15:34:39.112Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-08-30T18:01:25.316Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-08-29T18:56:37.836Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-08-28T12:55:55.980Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-08-27T14:40:08.223Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
},
{
"start": "2026-08-26T15:27:22.123Z",
"total": 0,
"drafts": {
"Novel/Murder At Dilven Manor - Alyxa's PI/Index.md": {
"total": 0,
"scenes": {
"Chapter One": 0
}
}
}
}
],
"showWordCountInStatusBar": true,
"startNewSessionEachDay": true,
"sessionGoal": 500,
"applyGoalTo": "all",
"notifyOnGoal": true,
"countDeletionsForGoal": false,
"keepSessionCount": 30,
"sessionFile": "longform-sessions.json",
"numberScenes": false,
"sceneTemplate": null,
"waitForSync": false,
"fallbackWaitEnabled": true,
"fallbackWaitTime": 5,
"workflows": {
"Default Workflow": {
"name": "Default Workflow",
"description": "A starter workflow. Feel free to edit, rename, or delete it and create your own.",
"steps": [
{
"id": "strip-frontmatter",
"optionValues": {}
},
{
"id": "remove-links",
"optionValues": {
"remove-wikilinks": true,
"remove-external-links": true
}
},
{
"id": "prepend-title",
"optionValues": {
"format": "$3{#} $1",
"separator": "\n\n"
}
},
{
"id": "concatenate-text",
"optionValues": {
"separator": "\\n\\n---\\n\\n"
}
},
{
"id": "write-to-note",
"optionValues": {
"target": "manuscript.md",
"open-after": true
}
}
]
}
}
}
-38670
View File
File diff suppressed because one or more lines are too long
-11
View File
@@ -1,11 +0,0 @@
{
"id": "longform",
"name": "Longform",
"version": "2.1.0",
"minAppVersion": "1.0",
"description": "Write novels, screenplays, and other long projects in Obsidian.",
"author": "Kevin Barrett",
"authorUrl": "https://kevinbarrett.org",
"fundingUrl": "https://github.com/sponsors/kevboh",
"isDesktopOnly": false
}
-19
View File
@@ -1,19 +0,0 @@
:root {
--longform-explorer-font-size: var(--font-ui-medium);
--longform-explorer-indent-size: 2em;
}
.longform-settings-user-steps {
padding-inline-start: 1em;
margin-block-start: 0;
margin-block-end: 0;
}
.longform-settings-user-step-name {
color: var(--text-normal);
}
.longform-settings-user-step-id {
margin-left: var(--size-4-2);
color: var(--text-muted);
}
-560
View File
@@ -1,560 +0,0 @@
{
"vaultProfiles": [
{
"id": "default",
"name": "Default",
"fileVisibility": "supported",
"propertyKeys": [],
"hiddenFolders": [],
"descendantExcludedFolders": [],
"hiddenTags": [],
"hiddenFileNames": [],
"hiddenFileTags": [],
"hiddenFileProperties": [],
"navigationBanner": null,
"periodicNotesFolder": "",
"shortcuts": [],
"navRainbow": {
"mode": "none",
"balanceHueLuminance": true,
"separateThemeColors": false,
"shortcuts": {
"enabled": false,
"firstColor": "#ef4444",
"lastColor": "#8b5cf6",
"darkFirstColor": "#fb7185",
"darkLastColor": "#c084fc",
"transitionStyle": "rgb"
},
"recent": {
"enabled": false,
"firstColor": "#ef4444",
"lastColor": "#8b5cf6",
"darkFirstColor": "#fb7185",
"darkLastColor": "#c084fc",
"transitionStyle": "rgb"
},
"folders": {
"enabled": true,
"firstColor": "#ef4444",
"lastColor": "#8b5cf6",
"darkFirstColor": "#fb7185",
"darkLastColor": "#c084fc",
"transitionStyle": "hue",
"scope": "root"
},
"tags": {
"enabled": false,
"firstColor": "#ef4444",
"lastColor": "#8b5cf6",
"darkFirstColor": "#fb7185",
"darkLastColor": "#c084fc",
"transitionStyle": "hue",
"scope": "root"
},
"properties": {
"enabled": false,
"firstColor": "#ef4444",
"lastColor": "#8b5cf6",
"darkFirstColor": "#fb7185",
"darkLastColor": "#c084fc",
"transitionStyle": "hue",
"scope": "root"
}
}
}
],
"vaultProfile": "default",
"vaultTitle": "navigation",
"syncModes": {
"vaultProfile": "synced",
"homepage": "synced",
"folderSortOrder": "synced",
"tagSortOrder": "synced",
"propertySortOrder": "synced",
"includeDescendantNotes": "synced",
"useFloatingToolbars": "synced",
"dualPane": "synced",
"dualPaneOrientation": "synced",
"narrowSidebarLayout": "synced",
"narrowSidebarTriggerMode": "synced",
"narrowSidebarCustomWidth": "synced",
"paneTransitionDuration": "synced",
"toolbarVisibility": "synced",
"pinNavigationBanner": "synced",
"navIndent": "synced",
"navItemHeight": "synced",
"navItemHeightScaleText": "synced",
"calendarPlacement": "synced",
"calendarLeftPlacement": "synced",
"calendarWeeksToShow": "synced",
"compactItemHeight": "synced",
"compactItemHeightScaleText": "synced",
"featureImageSize": "synced",
"featureImagePixelSize": "synced",
"uiScale": "synced"
},
"createNewNotesInNewTab": false,
"autoRevealActiveFile": true,
"autoRevealShortestPath": true,
"autoRevealIgnoreRightSidebar": true,
"autoRevealIgnoreOtherWindows": true,
"paneTransitionDuration": 150,
"multiSelectModifier": "cmdCtrl",
"enterToOpenFiles": false,
"shiftEnterOpenContext": "tab",
"cmdCtrlEnterOpenContext": "split",
"mouseBackForwardAction": "history",
"startView": "files",
"showInfoButtons": true,
"homepage": {
"source": "none",
"file": null,
"createMissingPeriodicNote": true
},
"dualPane": true,
"dualPaneOrientation": "horizontal",
"narrowSidebarLayout": "singlePane",
"narrowSidebarTriggerMode": "fitPanes",
"narrowSidebarCustomWidth": 350,
"showTooltips": false,
"showTooltipPath": true,
"showTooltipWordCount": false,
"desktopBackground": "separate",
"desktopScale": 1,
"mobileScale": 1,
"useFloatingToolbars": true,
"toolbarVisibility": {
"navigation": {
"toggleDualPane": true,
"expandCollapse": true,
"calendar": true,
"hiddenItems": true,
"rootReorder": true,
"newFolder": true
},
"list": {
"back": true,
"search": true,
"reveal": false,
"descendants": true,
"groupExpansion": false,
"sort": true,
"appearance": true,
"newNote": true
}
},
"interfaceIcons": {},
"colorIconOnly": false,
"dateFormat": "MMM D, YYYY",
"timeFormat": "h:mm a",
"calendarTemplateFolder": "",
"confirmBeforeDelete": true,
"deleteAttachments": "ask",
"moveFileConflicts": "ask",
"externalIconProviders": {},
"showReleaseNotes": true,
"checkForUpdatesOnStart": true,
"pinNavigationBanner": true,
"showNoteCount": true,
"separateNoteCounts": true,
"showIndentGuides": false,
"navCountLeaderStyle": "none",
"rootLevelSpacing": 0,
"navIndent": 16,
"navItemHeight": 28,
"navItemHeightScaleText": true,
"collapseBehavior": "all",
"smartCollapse": true,
"excludeVaultRootFromCollapse": false,
"collapseOtherBranchesOnExpand": false,
"autoSelectFirstFileOnFocusChange": false,
"autoExpandNavItems": false,
"springLoadedFolders": true,
"springLoadedFoldersInitialDelay": 0.5,
"springLoadedFoldersSubsequentDelay": 0.5,
"showSectionIcons": true,
"showShortcuts": true,
"shortcutBadgeDisplay": "index",
"skipAutoScroll": false,
"showRecentNotes": true,
"hideRecentNotes": "none",
"pinRecentNotesWithShortcuts": false,
"recentNotesCount": 5,
"showFolderIcons": true,
"showRootFolder": true,
"inheritFolderColors": true,
"folderSortOrder": "alpha-asc",
"enableFolderNotes": false,
"folderNoteType": "markdown",
"folderNoteNamePattern": "{{folder}}",
"folderNoteTemplate": null,
"enableFolderNoteLinks": true,
"hideFolderNoteInList": true,
"pinCreatedFolderNote": false,
"folderNoteOpenLocation": "current-tab",
"showNearestFolderNoteInSidebar": true,
"showTags": true,
"showTagIcons": true,
"showAllTagsFolder": true,
"showUntagged": true,
"scopeTagsToCurrentContext": false,
"tagSortOrder": "alpha-asc",
"inheritTagColors": true,
"keepEmptyTagsProperty": false,
"showProperties": true,
"showPropertyIcons": true,
"inheritPropertyColors": true,
"propertySortOrder": "alpha-asc",
"showAllPropertiesFolder": true,
"scopePropertiesToCurrentContext": false,
"defaultListMode": "standard",
"includeDescendantNotes": false,
"defaultFolderSort": "modified-desc",
"defaultFolderSortPropertyKey": "",
"propertySortKey": "",
"propertyGroupKey": "",
"propertySortSecondary": "title",
"manualSortPropertyKey": "sort_index",
"manualSortGroupHeaderProperty": "group_header",
"manualSortNewNotePlacement": "below-selected-note",
"confirmBeforeManualSort": true,
"revealFileOnListChanges": true,
"listPaneTitle": "header",
"noteGrouping": "date",
"showSelectedNavigationPills": false,
"stickyGroupHeaders": true,
"showFolderGroupPaths": true,
"showGroupHeaderItemCounts": false,
"showCurrentFolderFilesAtBottom": false,
"filterPinnedByFolder": false,
"compactItemHeight": 28,
"compactItemHeightScaleText": true,
"showQuickActions": true,
"quickActionRevealInFolder": false,
"quickActionAddTag": true,
"quickActionAddToShortcuts": true,
"quickActionPinNote": true,
"quickActionOpenInNewTab": false,
"hideDrawingPreviewImages": true,
"useFrontmatterMetadata": false,
"frontmatterIconField": "icon",
"frontmatterColorField": "color",
"frontmatterBackgroundField": "background",
"frontmatterNameField": "",
"frontmatterCreatedField": "",
"frontmatterModifiedField": "",
"frontmatterDateFormat": "",
"showFileTaskProgress": true,
"showFileTaskProgressBar": true,
"showFileTaskProgressCount": true,
"hideFileTaskProgressWhenComplete": false,
"showFileBackgroundUnfinishedTask": false,
"unfinishedTaskBackgroundColor": "#ef000050",
"unfinishedTaskBackgroundColorDark": "#ef000050",
"showFileIcons": true,
"unfinishedTaskIcon": "compact",
"useFolderIconForFiles": false,
"showFilenameMatchIcons": false,
"fileNameIconMap": {},
"showCategoryIcons": false,
"fileTypeIconMap": {},
"fileTypeIconPreset": "none",
"fileNameRows": 1,
"useFolderColorForTitles": false,
"showFilePreview": true,
"skipHeadingsInPreview": true,
"skipCodeBlocksInPreview": true,
"skipCalloutsInPreview": false,
"stripHtmlInPreview": true,
"stripLatexInPreview": true,
"previewRows": 2,
"previewProperties": [],
"previewPropertiesFallback": true,
"showFeatureImage": true,
"featureImageProperties": [],
"featureImageExcludeProperties": [],
"featureImageSize": "64",
"featureImagePixelSize": "256",
"forceSquareFeatureImage": true,
"downloadExternalFeatureImages": true,
"showFileTags": true,
"colorFileTags": true,
"prioritizeColoredFileTags": true,
"showFileTagAncestors": false,
"showFileTagsInCompactMode": false,
"showFileProperties": true,
"colorFileProperties": true,
"prioritizeColoredFileProperties": true,
"showFilePropertiesInCompactMode": false,
"showPropertiesOnSeparateRows": false,
"enablePropertyInternalLinks": true,
"enablePropertyExternalLinks": true,
"textCountDisplay": "none",
"textCountPlacement": "title",
"characterCountSpaces": "include",
"wordCountTargetProperty": "word-goal",
"showWordCountPercentage": false,
"showFileDate": true,
"alphabeticalDateMode": "modified",
"showParentFolder": true,
"showParentFolderFullPath": false,
"parentFolderClickRevealsFile": false,
"showParentFolderColor": false,
"showParentFolderIcon": false,
"calendarEnabled": true,
"calendarPlacement": "right-sidebar",
"calendarConfirmBeforeCreate": true,
"calendarShowHiddenItems": false,
"calendarLocale": "system-default",
"calendarWeekendDays": "sat-sun",
"calendarMonthHeadingFormat": "full",
"calendarHighlightToday": true,
"calendarShowFeatureImage": true,
"calendarShowTasks": true,
"calendarMonthHighlights": {},
"calendarShowWeekNumber": false,
"calendarShowQuarter": false,
"calendarShowOutsideMonthDays": true,
"calendarShowYearCalendar": true,
"calendarLeftPlacement": "navigation",
"calendarWeeksToShow": 1,
"calendarIntegrationMode": "notebook-navigator",
"calendarPeriodicNotesLocaleSource": "calendar",
"calendarCustomFilePattern": "YYYY/YYYYMMDD",
"calendarCustomWeekPattern": "gggg/[W]ww",
"calendarCustomMonthPattern": "YYYY/YYYYMM",
"calendarCustomQuarterPattern": "YYYY/[Q]Q",
"calendarCustomYearPattern": "YYYY",
"calendarCustomFileTemplate": null,
"calendarCustomWeekTemplate": null,
"calendarCustomMonthTemplate": null,
"calendarCustomQuarterTemplate": null,
"calendarCustomYearTemplate": null,
"keyboardShortcuts": {
"pane:move-up": [
{
"key": "ArrowUp",
"modifiers": []
}
],
"pane:move-down": [
{
"key": "ArrowDown",
"modifiers": []
}
],
"pane:page-up": [
{
"key": "PageUp",
"modifiers": []
}
],
"pane:page-down": [
{
"key": "PageDown",
"modifiers": []
}
],
"pane:home": [
{
"key": "Home",
"modifiers": []
}
],
"pane:end": [
{
"key": "End",
"modifiers": []
}
],
"pane:rename": [
{
"key": "F2",
"modifiers": []
}
],
"navigation:collapse-or-parent": [
{
"key": "ArrowLeft",
"modifiers": []
}
],
"navigation:expand-or-focus-list": [
{
"key": "ArrowRight",
"modifiers": []
}
],
"navigation:focus-list": [
{
"key": "Tab",
"modifiers": []
}
],
"pane:delete-selected": [
{
"key": "Delete",
"modifiers": []
},
{
"key": "Backspace",
"modifiers": []
}
],
"list:focus-navigation": [
{
"key": "ArrowLeft",
"modifiers": []
},
{
"key": "Tab",
"modifiers": [
"Shift"
]
}
],
"list:focus-editor": [
{
"key": "ArrowRight",
"modifiers": []
},
{
"key": "Tab",
"modifiers": []
}
],
"list:select-all": [
{
"key": "A",
"modifiers": [
"Mod"
]
}
],
"list:extend-selection-up": [
{
"key": "ArrowUp",
"modifiers": [
"Shift"
]
}
],
"list:extend-selection-down": [
{
"key": "ArrowDown",
"modifiers": [
"Shift"
]
}
],
"list:manual-sort-up": [
{
"key": "ArrowUp",
"modifiers": [
"Mod"
]
}
],
"list:manual-sort-down": [
{
"key": "ArrowDown",
"modifiers": [
"Mod"
]
}
],
"list:range-to-start": [
{
"key": "Home",
"modifiers": [
"Shift"
]
}
],
"list:range-to-end": [
{
"key": "End",
"modifiers": [
"Shift"
]
}
],
"search:focus-list": [
{
"key": "Tab",
"modifiers": []
},
{
"key": "Enter",
"modifiers": []
}
],
"search:focus-navigation": [
{
"key": "Tab",
"modifiers": [
"Shift"
]
}
],
"search:close": [
{
"key": "Escape",
"modifiers": []
}
]
},
"customVaultName": "",
"pinnedNotes": {},
"fileIcons": {},
"fileColors": {},
"fileBackgroundColors": {},
"folderIcons": {},
"folderColors": {},
"folderBackgroundColors": {},
"folderSortOverrides": {},
"folderTreeSortOverrides": {},
"folderAppearances": {},
"tagIcons": {},
"tagColors": {},
"tagBackgroundColors": {},
"tagSortOverrides": {},
"tagTreeSortOverrides": {},
"tagAppearances": {},
"propertyIcons": {},
"propertyColors": {},
"propertyBackgroundColors": {},
"propertySortOverrides": {},
"propertyTreeSortOverrides": {},
"propertyAppearances": {},
"virtualFolderColors": {},
"virtualFolderBackgroundColors": {},
"navigationSeparators": {},
"userColors": [
"#ffffff",
"#d9d9d9",
"#a6a6a6",
"#737373",
"#000000",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040",
"#404040"
],
"lastShownVersion": "3.3.5",
"rootFolderOrder": [],
"rootTagOrder": [],
"rootPropertyOrder": []
}
File diff suppressed because one or more lines are too long
-11
View File
@@ -1,11 +0,0 @@
{
"id": "notebook-navigator",
"name": "Notebook Navigator",
"version": "3.3.5",
"minAppVersion": "1.11.0",
"description": "Replace the default file explorer with a clean two-pane interface featuring folder tree, tag browsing, file previews, keyboard navigation, drag-and-drop, pinned notes, and customizable display options.",
"author": "Johan Sanneblad",
"authorUrl": "https://github.com/johansan",
"fundingUrl": "https://github.com/sponsors/johansan/",
"isDesktopOnly": false
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
@@ -1,12 +0,0 @@
{
"id": "obsidian-excalidraw-plugin",
"name": "Excalidraw",
"version": "2.26.4",
"minAppVersion": "1.8.7",
"description": "Sketch Your Mind. Edit and view Excalidraw drawings. Enter the world of 4D Visual PKM.",
"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
-68
View File
@@ -1,68 +0,0 @@
{
"commitMessage": "vault backup: {{date}}",
"autoCommitMessage": "vault backup: {{date}}",
"commitMessageScript": "",
"commitDateFormat": "YYYY-MM-DD HH:mm:ss",
"autoSaveInterval": 0,
"autoPushInterval": 0,
"autoPullInterval": 0,
"autoPullOnBoot": false,
"autoCommitOnlyStaged": false,
"disablePush": false,
"pullBeforePush": true,
"squashCommitsBeforePush": false,
"disablePopups": false,
"showErrorNotices": true,
"disablePopupsForNoChanges": false,
"listChangedFilesInMessageBody": false,
"showStatusBar": true,
"updateSubmodules": false,
"syncMethod": "merge",
"mergeStrategy": "none",
"customMessageOnAutoBackup": false,
"autoBackupAfterFileChange": false,
"treeStructure": true,
"refreshSourceControl": true,
"basePath": "",
"differentIntervalCommitAndPush": false,
"changedFilesInStatusBar": false,
"showedMobileNotice": true,
"refreshSourceControlTimer": 7000,
"showBranchStatusBar": true,
"setLastSaveToLastCommit": false,
"submoduleRecurseCheckout": false,
"gitDir": "",
"showFileMenu": true,
"authorInHistoryView": "full",
"dateInHistoryView": false,
"diffStyle": "split",
"hunks": {
"showSigns": false,
"hunkCommands": false,
"statusBar": "disabled"
},
"lineAuthor": {
"show": false,
"followMovement": "inactive",
"authorDisplay": "initials",
"showCommitHash": false,
"dateTimeFormatOptions": "date",
"dateTimeFormatCustomString": "YYYY-MM-DD HH:mm",
"dateTimeTimezone": "viewer-local",
"coloringMaxAge": "1y",
"colorNew": {
"r": 255,
"g": 150,
"b": 150
},
"colorOld": {
"r": 120,
"g": 160,
"b": 255
},
"textColorCss": "var(--text-muted)",
"ignoreWhitespace": false,
"lastShownAuthorDisplay": "initials",
"lastShownDateTimeFormatOptions": "date"
}
}
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"author": "Vinzent",
"authorUrl": "https://github.com/Vinzent03",
"id": "obsidian-git",
"name": "Git",
"description": "Integrate Git version control with automatic backup and other advanced features.",
"isDesktopOnly": false,
"fundingUrl": "https://ko-fi.com/vinzent",
"version": "2.39.0"
}
-705
View File
@@ -1,705 +0,0 @@
@keyframes loading {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.workspace-leaf-content[data-type="git-view"] .button-border {
border: 2px solid var(--interactive-accent);
border-radius: var(--radius-s);
}
.workspace-leaf-content[data-type="git-view"] .view-content {
padding-left: 0;
padding-top: 0;
padding-right: 0;
}
.workspace-leaf-content[data-type="git-history-view"] .view-content {
padding-left: 0;
padding-top: 0;
padding-right: 0;
}
.loading {
overflow: hidden;
}
.loading > svg {
animation: 2s linear infinite loading;
transform-origin: 50% 50%;
display: inline-block;
}
.obsidian-git-center {
margin: auto;
text-align: center;
width: 50%;
}
.obsidian-git-textarea {
display: block;
margin-left: auto;
margin-right: auto;
}
.obsidian-git-disabled {
opacity: 0.5;
}
.obsidian-git-center-button {
display: block;
margin: 20px auto;
}
.tooltip.mod-left {
overflow-wrap: break-word;
}
.tooltip.mod-right {
overflow-wrap: break-word;
}
/* Limits the scrollbar to the view body */
.git-view {
display: flex;
flex-direction: column;
position: relative;
height: 100%;
}
/* Re-enable wrapping of nav buttns to prevent overflow on smaller screens #*/
.workspace-drawer .git-view .nav-buttons-container {
flex-wrap: wrap;
}
.git-tools {
display: flex;
margin-left: auto;
}
.git-tools .type {
padding-left: var(--size-2-1);
display: flex;
align-items: center;
justify-content: center;
width: 11px;
}
.git-tools .type[data-type="M"] {
color: orange;
}
.git-tools .type[data-type="D"] {
color: red;
}
.git-tools .buttons {
display: flex;
}
.git-tools .buttons > * {
padding: 0;
height: auto;
}
.workspace-leaf-content[data-type="git-view"] .tree-item-self,
.workspace-leaf-content[data-type="git-history-view"] .tree-item-self {
align-items: center;
}
.workspace-leaf-content[data-type="git-view"]
.tree-item-self:hover
.clickable-icon,
.workspace-leaf-content[data-type="git-history-view"]
.tree-item-self:hover
.clickable-icon {
color: var(--icon-color-hover);
}
/* Highlight an item as active if it's diff is currently opened */
.is-active .git-tools .buttons > * {
color: var(--nav-item-color-active);
}
.git-author {
color: var(--text-accent);
}
.git-date {
color: var(--text-accent);
}
.git-ref {
color: var(--text-accent);
}
/* ====== diff2html ======
The following styles are adapted from the obsidian-version-history plugin by
@kometenstaub https://github.com/kometenstaub/obsidian-version-history-diff/blob/main/src/styles.scss
which itself is adapted from the diff2html library with the following original license:
https://github.com/rtfpessoa/diff2html/blob/master/LICENSE.md
Copyright 2014-2016 Rodrigo Fernandes https://rtfpessoa.github.io/
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
.theme-dark,
.theme-light {
--git-delete-bg: #ff475040;
--git-delete-hl: #96050a75;
--git-insert-bg: #68d36840;
--git-insert-hl: #23c02350;
--git-change-bg: #ffd55840;
--git-selected: #3572b0;
--git-delete: #cc3333;
--git-insert: #399839;
--git-change: #d0b44c;
--git-move: #3572b0;
}
.git-diff {
.d2h-d-none {
display: none;
}
.d2h-wrapper {
text-align: left;
border-radius: 0.25em;
overflow: auto;
}
.d2h-file-header.d2h-file-header {
background-color: var(--background-secondary);
border-bottom: 1px solid var(--background-modifier-border);
font-family:
Source Sans Pro,
Helvetica Neue,
Helvetica,
Arial,
sans-serif;
height: 35px;
padding: 5px 10px;
}
.d2h-file-header,
.d2h-file-stats {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.d2h-file-header {
display: none;
}
.d2h-file-stats {
font-size: 14px;
margin-left: auto;
}
.d2h-lines-added {
border: 1px solid var(--color-green);
border-radius: 5px 0 0 5px;
color: var(--color-green);
padding: 2px;
text-align: right;
vertical-align: middle;
}
.d2h-lines-deleted {
border: 1px solid var(--color-red);
border-radius: 0 5px 5px 0;
color: var(--color-red);
margin-left: 1px;
padding: 2px;
text-align: left;
vertical-align: middle;
}
.d2h-file-name-wrapper {
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
font-size: 15px;
width: 100%;
}
.d2h-file-name {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: var(--text-normal);
font-size: var(--h5-size);
}
.d2h-file-wrapper {
border: 1px solid var(--background-secondary-alt);
border-radius: 3px;
margin-bottom: 1em;
max-height: 100%;
}
.d2h-file-collapse {
-webkit-box-pack: end;
-ms-flex-pack: end;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
border: 1px solid var(--background-secondary-alt);
border-radius: 3px;
cursor: pointer;
display: none;
font-size: 12px;
justify-content: flex-end;
padding: 4px 8px;
}
.d2h-file-collapse.d2h-selected {
background-color: var(--git-selected);
}
.d2h-file-collapse-input {
margin: 0 4px 0 0;
}
.d2h-diff-table {
border-collapse: collapse;
font-family: var(--font-monospace);
font-size: var(--code-size);
width: 100%;
}
.d2h-files-diff {
width: 100%;
}
.d2h-file-diff {
/*
overflow-y: scroll;
*/
border-radius: 5px;
font-size: var(--font-text-size);
line-height: var(--line-height-normal);
}
.d2h-file-side-diff {
display: inline-block;
margin-bottom: -8px;
margin-right: -4px;
overflow-x: scroll;
overflow-y: hidden;
width: 50%;
}
.d2h-code-line {
padding-left: 6em;
padding-right: 1.5em;
}
.d2h-code-line,
.d2h-code-side-line {
display: inline-block;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
white-space: nowrap;
width: 100%;
}
.d2h-code-side-line {
/* needed to be changed */
padding-left: 0.5em;
padding-right: 0.5em;
}
.d2h-code-line-ctn {
word-wrap: normal;
background: none;
display: inline-block;
padding: 0;
-webkit-user-select: text;
-moz-user-select: text;
-ms-user-select: text;
user-select: text;
vertical-align: middle;
width: 100%;
/* only works for line-by-line */
white-space: pre-wrap;
}
.d2h-code-line del,
.d2h-code-side-line del {
background-color: var(--git-delete-hl);
color: var(--text-normal);
}
.d2h-code-line del,
.d2h-code-line ins,
.d2h-code-side-line del,
.d2h-code-side-line ins {
border-radius: 0.2em;
display: inline-block;
margin-top: -1px;
text-decoration: none;
vertical-align: middle;
}
.d2h-code-line ins,
.d2h-code-side-line ins {
background-color: var(--git-insert-hl);
text-align: left;
}
.d2h-code-line-prefix {
word-wrap: normal;
background: none;
display: inline;
padding: 0;
white-space: pre;
}
.line-num1 {
float: left;
}
.line-num1,
.line-num2 {
-webkit-box-sizing: border-box;
box-sizing: border-box;
overflow: hidden;
/*
padding: 0 0.5em;
*/
text-overflow: ellipsis;
width: 2.5em;
padding-left: 0;
}
.line-num2 {
float: right;
}
.d2h-code-linenumber {
background-color: var(--background-primary);
border: solid var(--background-modifier-border);
border-width: 0 1px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: var(--text-faint);
cursor: pointer;
display: inline-block;
position: absolute;
text-align: right;
width: 5.5em;
}
.d2h-code-linenumber:after {
content: "\200b";
}
.d2h-code-side-linenumber {
background-color: var(--background-primary);
border: solid var(--background-modifier-border);
border-width: 0 1px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: var(--text-faint);
cursor: pointer;
overflow: hidden;
padding: 0 0.5em;
text-align: right;
text-overflow: ellipsis;
width: 4em;
/* needed to be changed */
display: table-cell;
position: relative;
}
.d2h-code-side-linenumber:after {
content: "\200b";
}
.d2h-code-side-emptyplaceholder,
.d2h-emptyplaceholder {
background-color: var(--background-primary);
border-color: var(--background-modifier-border);
}
.d2h-code-line-prefix,
.d2h-code-linenumber,
.d2h-code-side-linenumber,
.d2h-emptyplaceholder {
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.d2h-code-linenumber,
.d2h-code-side-linenumber {
direction: rtl;
}
.d2h-del {
background-color: var(--git-delete-bg);
border-color: var(--git-delete-hl);
}
.d2h-ins {
background-color: var(--git-insert-bg);
border-color: var(--git-insert-hl);
}
.d2h-info {
background-color: var(--background-primary);
border-color: var(--background-modifier-border);
color: var(--text-faint);
}
.d2h-del,
.d2h-ins,
.d2h-file-diff .d2h-change {
color: var(--text-normal);
}
.d2h-file-diff .d2h-del.d2h-change {
background-color: var(--git-change-bg);
}
.d2h-file-diff .d2h-ins.d2h-change {
background-color: var(--git-insert-bg);
}
.d2h-file-list-wrapper {
a {
text-decoration: none;
cursor: default;
-webkit-user-drag: none;
}
svg {
display: none;
}
}
.d2h-file-list-header {
text-align: left;
}
.d2h-file-list-title {
display: none;
}
.d2h-file-list-line {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
text-align: left;
}
.d2h-file-list {
}
.d2h-file-list > li {
border-bottom: 1px solid var(--background-modifier-border);
margin: 0;
padding: 5px 10px;
}
.d2h-file-list > li:last-child {
border-bottom: none;
}
.d2h-file-switch {
cursor: pointer;
display: none;
font-size: 10px;
}
.d2h-icon {
fill: currentColor;
margin-right: 10px;
vertical-align: middle;
}
.d2h-deleted {
color: var(--git-delete);
}
.d2h-added {
color: var(--git-insert);
}
.d2h-changed {
color: var(--git-change);
}
.d2h-moved {
color: var(--git-move);
}
.d2h-tag {
background-color: var(--background-secondary);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
font-size: 10px;
margin-left: 5px;
padding: 0 2px;
}
.d2h-deleted-tag {
border: 1px solid var(--git-delete);
}
.d2h-added-tag {
border: 1px solid var(--git-insert);
}
.d2h-changed-tag {
border: 1px solid var(--git-change);
}
.d2h-moved-tag {
border: 1px solid var(--git-move);
}
/* needed for line-by-line*/
.d2h-diff-tbody {
position: relative;
}
/* My additions */
.cm-merge-revert {
width: 4em;
}
/* Ensure that merge revert markers are positioned correctly */
.cm-merge-revert > * {
position: absolute;
background-color: var(--background-secondary);
display: flex;
}
}
/* ====================== Line Authoring Information ====================== */
.cm-gutterElement.obs-git-blame-gutter {
/* Add background color to spacing inbetween and around the gutter for better aesthetics */
border-width: 0px 2px 0.2px;
border-style: solid;
border-color: var(--background-secondary);
background-color: var(--background-secondary);
}
.cm-gutterElement.obs-git-blame-gutter > div,
.line-author-settings-preview {
/* delegate text color to settings */
color: var(--obs-git-gutter-text);
font-family: monospace;
height: 100%; /* ensure, that age-based background color occupies entire parent */
text-align: right;
padding: 0px 6px;
white-space: pre; /* Keep spaces and do not collapse them. */
}
@media (max-width: 800px) {
/* hide git blame gutter not to superpose text */
.cm-gutterElement.obs-git-blame-gutter {
display: none;
}
}
.git-unified-diff-view,
.git-split-diff-view .cm-deletedLine .cm-changedText {
background-color: #ee443330;
}
.git-unified-diff-view,
.git-split-diff-view .cm-insertedLine .cm-changedText {
background-color: #22bb2230;
}
.git-obscure-prompt[git-is-obscured="true"] #git-show-password:after {
-webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svg-icon lucide-eye"><path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"></path><circle cx="12" cy="12" r="3"></circle></svg>');
}
.git-obscure-prompt[git-is-obscured="false"] #git-show-password:after {
-webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svg-icon lucide-eye-off"><path d="M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"></path><path d="M14.084 14.158a3 3 0 0 1-4.242-4.242"></path><path d="M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"></path><path d="m2 2 20 20"></path></svg>');
}
/* Override styling of Codemirror merge view "collapsed lines" indicator */
.git-split-diff-view .ͼ2 .cm-collapsedLines {
background: var(--interactive-normal);
border-radius: var(--radius-m);
color: var(--text-accent);
font-size: var(--font-small);
padding: var(--size-4-1) var(--size-4-1);
}
.git-split-diff-view .ͼ2 .cm-collapsedLines:hover {
background: var(--interactive-hover);
color: var(--text-accent-hover);
}
.git-signs-gutter {
.cm-gutterElement {
display: grid;
/* Needed to align the sign properly for different line heigts. Such as
* when having a heading or list item.
*/
padding-top: 0 !important;
}
}
.git-gutter-marker:hover {
border-radius: 2px;
}
.git-gutter-marker.git-add {
background-color: var(--color-green);
justify-self: center;
height: inherit;
width: 0.2rem;
}
.git-gutter-marker.git-change {
background-color: var(--color-yellow);
justify-self: center;
height: inherit;
width: 0.2rem;
}
.git-gutter-marker.git-changedelete {
color: var(--color-yellow);
font-weight: var(--font-bold);
font-size: 1rem;
justify-self: center;
height: inherit;
}
.git-gutter-marker.git-delete {
background-color: var(--color-red);
height: 0.2rem;
width: 0.8rem;
align-self: end;
}
.git-gutter-marker.git-topdelete {
background-color: var(--color-red);
height: 0.2rem;
width: 0.8rem;
align-self: start;
}
div:hover > .git-gutter-marker.git-change {
width: 0.6rem;
}
div:hover > .git-gutter-marker.git-add {
width: 0.6rem;
}
div:hover > .git-gutter-marker.git-delete {
height: 0.6rem;
}
div:hover > .git-gutter-marker.git-topdelete {
height: 0.6rem;
}
div:hover > .git-gutter-marker.git-changedelete {
font-weight: var(--font-bold);
}
.git-gutter-marker.staged {
opacity: 0.5;
}
/* Prevent shifting of the editor when git signs gutter is the only gutter present */
.cm-gutters.cm-gutters-before:has(> .git-signs-gutter:only-child) {
margin-inline-end: 0;
.git-signs-gutter {
margin-inline-start: -1rem;
}
}
.git-changes-status-bar-colored {
.git-add {
color: var(--color-green);
}
.git-change {
color: var(--color-yellow);
}
.git-delete {
color: var(--color-red);
}
}
.git-changes-status-bar .git-add {
margin-right: 0.3em;
}
.git-changes-status-bar .git-change {
margin-right: 0.3em;
}
-31
View File
@@ -1,31 +0,0 @@
{
"settings": {
"migrated": 6,
"iconPacksPath": ".obsidian/icons",
"fontSize": 16,
"emojiStyle": "native",
"iconColor": null,
"recentlyUsedIcons": [],
"recentlyUsedIconsSize": 5,
"rules": [],
"extraMargin": {
"top": 0,
"right": 4,
"bottom": 0,
"left": 0
},
"iconInTabsEnabled": false,
"iconInTitleEnabled": false,
"iconInTitlePosition": "above",
"iconInFrontmatterEnabled": false,
"iconInFrontmatterFieldName": "icon",
"iconColorInFrontmatterFieldName": "iconColor",
"iconsBackgroundCheckEnabled": false,
"iconsInNotesEnabled": true,
"iconsInLinksEnabled": true,
"iconIdentifier": ":",
"lucideIconPackType": "native",
"debugMode": false,
"useInternalPlugins": false
}
}
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"id": "obsidian-icon-folder",
"name": "Iconize",
"version": "2.14.7",
"minAppVersion": "0.9.12",
"description": "Add icons to anything you desire in Obsidian, including files, folders, and text.",
"author": "Florian Woelki",
"authorUrl": "https://florianwoelki.com/",
"isDesktopOnly": false
}
-120
View File
@@ -1,120 +0,0 @@
.iconize-inline-title-wrapper {
width: var(--line-width);
max-width: var(--max-width);
margin-inline: var(--content-margin);
}
.iconize-title-icon {
max-width: var(--max-width);
margin-right: var(--size-4-2);
}
.iconize-icon-in-link {
transform: translateY(20%);
margin-right: var(--size-2-2);
display: inline-flex;
}
.iconize-icon {
border: 1px solid transparent;
margin: 0px 4px 0px 0px;
display: flex;
align-self: center;
margin: auto 0;
}
.nav-folder-title,
.nav-file-title {
align-items: center;
}
.iconize-setting input[type='color'] {
margin: 0 6px;
}
.iconize-modal.prompt-results {
margin: 0;
overflow-y: auto;
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
}
.prompt .iconize-subheadline {
margin-top: 12px;
font-size: 12px;
color: gray;
grid-column-start: 1;
grid-column-end: 6;
}
@media (max-width: 640px) {
.iconize-modal.prompt-results {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.prompt .iconize-subheadline {
grid-column-end: 4;
}
}
.iconize-modal.prompt-results .suggestion-item {
cursor: pointer;
white-space: pre-wrap;
display: flex;
justify-content: flex-end;
align-items: center;
flex-direction: column-reverse;
text-align: center;
font-size: 13px;
color: var(--text-muted);
padding: 16px 8px;
line-break: auto;
word-break: break-word;
line-height: 1.3;
}
.iconize-modal.prompt-results .suggestion-item.suggestion-item__center {
justify-content: center;
}
.iconize-icon-preview {
font-size: 22px;
}
.iconize-icon-preview img {
width: 16px;
height: 16px;
}
.iconize-icon-preview svg {
width: 24px;
height: 24px;
color: currentColor;
margin-bottom: 4px;
}
.iconize-dragover {
position: relative;
}
.iconize-dragover-el {
position: absolute;
width: 100%;
height: 100%;
color: var(--text-normal);
background-color: var(--background-secondary-alt);
display: flex;
align-items: center;
justify-content: center;
}
/* Custom rule modal. */
.iconize-custom-modal .modal-content {
display: flex;
align-items: center;
justify-content: center;
}
.iconize-custom-modal .modal-content input {
width: 100%;
margin-right: 0.5rem;
}
-22
View File
@@ -1,22 +0,0 @@
{
"secrets": {},
"outputLocations": {},
"outputSettings": {
"markdown": {
"folder": "Markdown",
"attachments": {
"mode": "vault",
"path": ""
},
"duplicates": "update",
"saveSourceId": true,
"template": "",
"titleTemplate": "{{title}}"
}
},
"onenoteAttachments": {},
"sourceFolders": {
"markdown": "/home/protonjelly/Documents/AI-output"
},
"lastSourceFolder": "/home/protonjelly/Documents/AI-output"
}
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"id": "obsidian-importer",
"name": "Importer",
"version": "3.1.6",
"minAppVersion": "1.13.0",
"description": "Import data from Airtable, Notion, Evernote, Apple Notes, Apple Journal, Microsoft OneNote, Google Keep, Bear, Roam, Logseq, Tomboy, Textbundle, CSV, and HTML files.",
"author": "Obsidian",
"authorUrl": "https://obsidian.md",
"isDesktopOnly": false
}
File diff suppressed because one or more lines are too long
@@ -1,9 +0,0 @@
{
"serverUrl": "https://language-tool.proton-jelly.net",
"urlMode": "custom",
"glassBg": false,
"shouldAutoCheck": true,
"autoCheckDelay": 3000,
"pickyMode": false,
"apiKeyStorage": "local"
}
File diff suppressed because one or more lines are too long
@@ -1,10 +0,0 @@
{
"id": "obsidian-languagetool-plugin",
"name": "LanguageTool Integration",
"version": "0.4.2",
"minAppVersion": "1.8.10",
"description": "Unofficial LanguageTool integration for advanced grammar and spell checking.",
"author": "Clemens Ertle",
"authorUrl": "https://github.com/Clemens-E",
"isDesktopOnly": false
}
@@ -1,234 +0,0 @@
.lt-underline {
cursor: pointer;
transition: background-color 100ms ease-out;
}
.lt-underline.lt-minor {
box-shadow: inset 0 -2px #e9b35f;
}
.lt-underline.lt-major {
box-shadow: inset 0 -2px #da615c;
}
.lt-underline.lt-style {
box-shadow: inset 0 -2px #8981f3;
}
.lt-underline.lt-minor:hover {
background-color: #e9b35f21;
}
.lt-underline.lt-major:hover {
background-color: #da615c21;
}
.lt-underline.lt-style:hover {
background-color: #8981f321;
}
@keyframes lineInserted {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
.lt-predictions-container-glass.cm-tooltip,
.lt-predictions-container.cm-tooltip,
.lt-predictions-container-glass,
.lt-predictions-container {
position: absolute;
animation-duration: 150ms;
animation-name: lineInserted;
font-family: var(--default-font);
font-size: 0.93rem;
padding: 12px 0 0;
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
border-radius: 6px;
width: 300px;
line-height: 1.5;
z-index: var(--layer-popover);
overflow: visible;
}
.lt-predictions-container-glass {
background: hsla(0, 0%, 100%, 0.25);
backdrop-filter: blur(12px);
}
.lt-predictions-container > button {
transition-delay: 0.5s;
}
.lt-buttoncontainer:not(:empty) {
padding-top: 10px;
}
.lt-buttoncontainer > button {
border: 1px solid var(--background-modifier-border);
font-size: 1rem;
margin-right: 4px;
margin-bottom: 4px;
padding: 4px 10px;
}
.lt-title {
display: block;
font-weight: 600;
margin-bottom: 6px;
padding: 0 12px;
}
.lt-message {
padding: 0 12px;
display: block;
}
.lt-bottom {
min-height: 10px;
padding-left: 12px;
position: relative;
}
.lt-info-container {
position: absolute;
right: 0;
bottom: 0;
}
.lt-info-button {
color: var(--text-faint);
}
.lt-info-box {
position: absolute;
right: 0;
animation-duration: 150ms;
animation-name: lineInserted;
font-family: var(--default-font);
font-size: 0.93rem;
padding: 12px 0;
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
border-radius: 6px;
line-height: 1.5;
z-index: var(--layer-popover);
overflow: hidden;
}
.hidden {
display: none;
}
.lt-info {
padding: 0 12px;
display: block;
font-size: 0.8rem;
color: var(--text-muted);
user-select: text;
-webkit-user-select: text;
}
.lt-ignorecontainer {
display: flex;
}
.lt-status-bar-btn {
height: 100%;
display: flex;
cursor: pointer;
line-height: 1;
align-items: center;
}
.lt-status-bar-check-icon {
/* A dotted border reads as a dotted underline without relying on the
text-decoration longhands, which the plugin review CSS lint flags */
display: block;
border-bottom: 1px dotted currentColor;
}
.lt-ignore-btn {
margin: 0;
padding: 12px;
display: flex;
width: 100%;
text-align: left;
border-radius: 0;
align-items: center;
line-height: 1;
border-top: 1px solid var(--background-modifier-border);
}
.lt-ignore-btn > span {
display: flex;
}
.lt-ignore-btn > span:last-child {
margin-left: 5px;
}
.lt-minor .lt-title > span {
box-shadow: inset 0 -2px #e9b35f88;
}
.lt-major .lt-title > span {
box-shadow: inset 0 -2px #da615c88;
}
.lt-style .lt-title > span {
box-shadow: inset 0 -2px #8981f388;
}
.lt-loading > svg {
animation-name: spin;
animation-duration: 1s;
animation-iteration-count: infinite;
animation-timing-function: linear;
}
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
.lt-settings-endpoint-control {
display: inline-grid;
}
.lt-settings-error-text {
color: var(--text-error);
}
.lt-premium-warning {
display: grid;
}
.lt-premium-warning-buttons {
justify-self: center;
}
.lt-premium-warning-ack {
justify-self: flex-start;
color: red;
}
.lt-premium-warning-switch {
justify-self: flex-end;
}
.lt-dict-undo-btn {
margin-left: var(--size-4-2);
}
-179
View File
@@ -1,179 +0,0 @@
{
"remoteType": "",
"useCustomRequestHandler": false,
"couchDB_URI": "",
"couchDB_USER": "",
"couchDB_PASSWORD": "",
"couchDB_DBNAME": "",
"liveSync": true,
"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,
"networkWarningStyle": "",
"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": "d8b0c4af0446e5d6",
"ignoreVersionCheck": false,
"lastReadUpdates": 0,
"deleteMetadataOfDeletedFiles": false,
"syncIgnoreRegEx": "",
"syncOnlyRegEx": "",
"customChunkSize": 60,
"readChunksOnline": true,
"watchInternalFileChanges": true,
"automaticallyDeleteMetadataOfDeletedFiles": 0,
"disableMarkdownAutoMerge": false,
"writeDocumentsIfConflicted": false,
"useDynamicIterationCount": false,
"syncAfterMerge": false,
"configPassphraseStore": "",
"encryptedPassphrase": "",
"encryptedCouchDBConnection": "%$JiOAe89K9AkR6+M2gOEDO2wFwsGbV71+Nd0Om26g6d2qE76YkVdXHHgs02o0MVBRKqhe2buTWRU6IjumtRggO/YJkHbXKvuIXnSKTHUg7qSAyPu3eKPws0/Am3aEPWJjFWaSZZJN3gC35AXc64tjR08Ll8ilJ9A05RfwbeG5CaR24OP0VDChe0dJBhrkexT25/hHYRXObANwXjrp5NB3yGFlnRZqdM162kXsy5qKNSSmVHQmAveuEfqhndDkh6ZJk/H+9uTZ0S2Zy7ezaIyarROLYxlLzELDdpDcUMfsPIqxZ+IXcu8mLWac4JhpBVyFrmEL9UtbJg1yJCUP9WZ102Z4anFUPAH+7hc267SZ3hr+DC4xTDlBX7zcWBPom4TmSMBfGSkvAPFzoMZHXE3JPvTrznGQzN7ci7drR2zvRnJ2TYSJeKlOKirwKMH0IWiBZlISOm16q7o10ryVm3XWTk6KNtH18dvc3H+tBNt5asm1NM1n1zXB7okrKSUCwNLrVqOLNSg/Uz+4DkyuIRKnpHxRec2krTAk549FH57AdoMU5856OMbkasH0ei0UG7NqfrFlEHGoRuMHmRj6csHrEMTchCgq5P+/bs6wIzCfufwwWJHwKy4/r4KYCoAPzxMzebSGJ8nvpHPRfQVu/tqLEgMyxyQq6RHhq5h/oUe3uepUZ9zzHXQ3LlAG1w/klI4=",
"permitEmptyPassphrase": false,
"remoteConfigurations": {
"remote-mtv02cli-0bbxdb": {
"id": "remote-mtv02cli-0bbxdb",
"name": "CouchDB obsidian.proton-jelly.net",
"uri": "%$JiOAe89K9AkR6+M2gOEDO2wFwsGbV71+Nd0Om26g6d1R2TLlbtjTZwnPsLylMBTOYqIzw8HoNKdjSzvLPdsOek4rCPThJgwtvC0jni3B3F5N8SvOJhITUoW2mXX4W0rPsOESwMuXIapI1MRBgfj+IpuxcJpQ2ESzYPCfVpZbCNG4QArJynAHqkcQxEzxik+sBY4EBj5UUc0eIaQpaoAn13bkEU8FrbSNuaGJB+YK",
"isEncrypted": true
}
},
"activeConfigurationId": "remote-mtv02cli-0bbxdb",
"P2P_ActiveRemoteConfigurationId": "",
"useIndexedDBAdapter": false,
"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,
"keepReplicationActiveInBackground": false,
"allowSleepDuringSynchronisation": false,
"allowSleepDuringSynchronisationOnDesktop": true,
"pluginSyncExtendedSetting": {},
"syncMaxSizeInMB": 50,
"settingSyncFile": "",
"writeCredentialsForSettingSync": false,
"notifyAllSettingSyncFile": false,
"isConfigured": true,
"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": 0,
"usePluginSyncV2": true,
"usePluginEtc": false,
"handleFilenameCaseSensitive": 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,
"P2P_DevicePeerName": "",
"P2P_turnServers": "",
"P2P_turnUsername": "",
"P2P_turnCredential": "",
"P2P_maxWirePayloadBytes": 15360,
"P2P_connectionPath": "automatic",
"P2P_useDiagRTC": false,
"doctorProcessedVersion": "1.0.0",
"bucketCustomHeaders": "",
"couchDB_CustomHeaders": "",
"useJWT": false,
"jwtAlgorithm": "",
"jwtKey": "",
"jwtKid": "",
"jwtSub": "",
"jwtExpDuration": 5,
"useRequestAPI": true,
"bucketPrefix": "",
"chunkSplitterVersion": "v3-rabin-karp",
"E2EEAlgorithm": "v2",
"processSizeMismatchedFiles": false,
"forcePathStyle": true,
"syncInternalFileOverwritePatterns": "",
"useOnlyLocalChunk": false,
"maxMTimeForReflectEvents": 0,
"tweakModified": 1789012925705
}
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"id": "obsidian-livesync",
"name": "Self-hosted LiveSync",
"version": "1.0.21",
"minAppVersion": "1.7.2",
"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
}
-835
View File
@@ -1,835 +0,0 @@
.ls-dialog .added {
color: var(--text-on-accent);
background-color: var(--text-accent);
}
.ls-dialog .normal {
color: var(--text-normal);
}
.ls-dialog .deleted {
color: var(--text-on-accent);
background-color: var(--text-muted);
}
.vpk-action-dialog__message {
user-select: text;
-webkit-user-select: text;
}
.conflict-dev-name {
display: inline-block;
min-width: 5em;
}
.conflict-action-container {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
margin-top: var(--size-4-2);
}
.conflict-action-button {
width: 100%;
margin: 0;
}
.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-remote-list .setting-item-description {
white-space: normal;
overflow-wrap: anywhere;
word-break: break-word;
}
.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: 8px;
padding: 6px 10px;
cursor: pointer;
margin-right: 2px;
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;
backdrop-filter: blur(15px);
padding: 4px;
border-radius: 10px;
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;
}
.sls-item-dirty::before {
content: "✏";
}
.sls-item-dirty-help::after {
content: " ❓";
}
.sls-setting .setting-item-control input.sls-item-invalid-value,
.sls-setting .setting-item-control textarea.sls-item-invalid-value {
background-color: rgba(var(--background-modifier-error-rgb), 0.3);
}
.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;
}
.sls-onboarding-invitation-action {
display: inline-flex;
min-width: 44px;
min-height: 44px;
align-items: center;
justify-content: center;
}
.sls-review-harness {
box-sizing: border-box;
max-width: 100%;
overflow-x: clip;
padding-bottom: max(1rem, env(safe-area-inset-bottom));
}
.sls-review-harness .setting-item,
.sls-review-harness .setting-item-control {
flex-wrap: wrap;
max-width: 100%;
}
.sls-review-harness .setting-item-info {
min-width: min(16rem, 100%);
}
.sls-review-harness .setting-item-control {
gap: 0.5rem;
}
.sls-review-harness button {
min-height: 44px;
max-width: 100%;
white-space: normal;
}
.sls-review-harness__result,
.sls-review-harness__warning,
.sls-review-harness__privacy,
.sls-review-harness__error,
.sls-review-harness__resumed {
max-width: 100%;
overflow-wrap: anywhere;
}
.sls-review-harness__result {
margin: 0 0 1rem;
}
.sls-review-harness__warning,
.sls-review-harness__error {
color: var(--text-error);
}
.sls-review-harness__resumed {
color: var(--text-success);
}
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%;
}
.is-mobile.is-ios .livesync-status {
box-sizing: border-box;
top: calc(var(--header-height) + var(--view-header-height, var(--header-height)) + var(--size-4-2));
}
div.workspace-leaf-content[data-type="bases"] .livesync-status {
top: calc(var(--bases-header-height) + var(--header-height));
padding: 5px;
padding-right: 18px;
}
.is-mobile div.workspace-leaf-content[data-type="bases"] .livesync-status {
top: calc(var(--bases-header-height) + var(--view-header-height));
padding: 6px;
padding-right: 18px;
}
.is-mobile.is-ios div.workspace-leaf-content[data-type="bases"] .livesync-status {
top: calc(
var(--bases-header-height) + var(--header-height) + var(--view-header-height, var(--header-height)) +
var(--size-4-2)
);
}
.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:empty {
display: none;
}
.livesync-status div.livesync-status-messagearea:not(:empty) {
opacity: 0.6;
color: var(--text-on-accent);
border: 1px solid var(--background-modifier-error);
background-color: rgba(var(--background-modifier-error-rgb), 0.2);
-webkit-filter: unset;
filter: unset;
width: fit-content;
margin-left: auto;
}
.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 {
font-size: medium;
background-color: var(--background-secondary-alt);
border-radius: 10px;
padding: 0.5em 1em;
}
body.is-mobile .sls-setting button {
max-width: 100%;
white-space: normal;
}
body.is-mobile .sls-setting-with-additional-actions {
flex-wrap: wrap;
}
body.is-mobile .sls-setting-with-additional-actions .setting-item-control {
min-width: 0;
flex: 1 1 100%;
flex-wrap: wrap;
}
body.is-mobile .sls-setting .sls-setting-additional-action {
flex: 1 1 12rem;
}
.active-pane .sls-setting-panel-title {
border: 1px solid var(--interactive-accent);
}
.sls-dialogue-note-wrapper {
display: flex;
justify-content: flex-end;
align-items: center;
}
.sls-dialogue-note-countdown {
font-size: 0.8em;
}
body.is-mobile .livesync-message-box-container {
box-sizing: border-box;
padding-top: var(--safe-area-inset-top, env(safe-area-inset-top, 0px));
padding-right: var(--safe-area-inset-right, env(safe-area-inset-right, 0px));
padding-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px));
padding-left: var(--safe-area-inset-left, env(safe-area-inset-left, 0px));
}
body.is-mobile .livesync-message-box-container .modal {
max-height: 100%;
}
body.is-mobile .livesync-message-box-container button {
height: auto;
min-height: var(--input-height);
white-space: normal;
}
body.is-mobile .livesync-compatibility-review-notice {
box-sizing: border-box;
margin-right: calc(64px + var(--safe-area-inset-right, env(safe-area-inset-right, 0px)));
min-width: 0;
width: calc(
100vw - 88px - var(--safe-area-inset-left, env(safe-area-inset-left, 0px)) -
var(--safe-area-inset-right, env(safe-area-inset-right, 0px))
);
}
.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;
}
.sls-repair-results {
display: grid;
gap: var(--size-4-3);
}
.sls-repair-result {
padding: var(--size-4-3);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
background: var(--background-secondary);
}
.sls-repair-header {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: var(--size-4-2);
min-width: 0;
}
.sls-repair-header > :first-child {
flex: 1 1 auto;
min-width: 0;
}
.sls-repair-header h6 {
margin: 0;
overflow-wrap: anywhere;
}
.sls-repair-status {
display: flex;
flex-wrap: wrap;
gap: var(--size-4-2);
margin-top: var(--size-4-1);
font-size: var(--font-ui-smaller);
}
.sls-repair-status-ok {
color: var(--text-success);
}
.sls-repair-status-warning {
color: var(--text-warning);
}
.sls-repair-metric {
margin-top: var(--size-4-1);
font-size: var(--font-ui-smaller);
line-height: var(--line-height-tight);
overflow-wrap: anywhere;
}
.sls-repair-action-menu {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: var(--clickable-icon-size);
width: var(--clickable-icon-size);
height: var(--clickable-icon-size);
padding: 0;
}
.sls-repair-action-menu .svg-icon {
width: 18px;
height: 18px;
}
.sls-repair-revision {
margin-top: var(--size-4-2);
padding: var(--size-4-2);
border-left: 3px solid var(--background-modifier-border);
background: var(--background-primary-alt);
}
.sls-repair-revision-title {
font-weight: var(--font-semibold);
overflow-wrap: anywhere;
}
.sls-repair-revision code {
display: block;
margin-top: var(--size-4-1);
overflow-wrap: anywhere;
white-space: normal;
}
.sls-repair-ancestor-warning {
margin-top: var(--size-4-2);
color: var(--text-warning);
}
/* Diff navigation */
.diff-options-row {
display: flex;
align-items: center;
gap: 8px;
}
.diff-nav {
display: flex;
align-items: center;
gap: 4px;
margin-left: auto;
}
.diff-nav-btn {
padding: 2px 8px;
font-size: 0.85em;
cursor: pointer;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
background-color: var(--background-secondary);
color: var(--text-normal);
}
.diff-nav-btn:hover {
background-color: var(--background-modifier-hover);
}
.diff-nav-indicator {
font-size: 0.85em;
color: var(--text-muted);
min-width: 3em;
text-align: center;
}
.diff-only-label {
margin-left: 10px;
}
.history-search-row {
display: flex;
gap: 5px;
align-items: center;
margin-bottom: 10px;
}
.history-search-input {
flex-grow: 1;
}
.history-search-result-indicator {
font-size: 0.8em;
min-width: 80px;
}
.history-search-progress-indicator {
font-size: 0.8em;
color: var(--text-muted);
}
.history-search-row button:disabled {
opacity: 0.4;
cursor: not-allowed;
}
.history-rev-nav-row {
display: flex;
align-items: center;
gap: 6px;
margin-bottom: 8px;
}
.history-rev-nav-row input[type="range"] {
flex-grow: 1;
margin-bottom: 0;
}
.history-rev-nav-btn {
flex-shrink: 0;
padding: 2px 10px;
font-size: 0.9em;
cursor: pointer;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
background-color: var(--background-secondary);
color: var(--text-normal);
}
.history-rev-nav-btn:hover:not(:disabled) {
background-color: var(--background-modifier-hover);
}
.history-rev-nav-btn:disabled {
opacity: 0.4;
cursor: not-allowed;
}
.history-rev-indicator {
flex-shrink: 0;
font-size: 0.85em;
color: var(--text-muted);
min-width: 4.5em;
text-align: right;
}
.history-diff-options-row {
justify-content: space-between;
}
.history-highlight-diff-container,
.history-highlight-diff-label {
display: flex;
align-items: center;
}
.history-highlight-diff-label {
gap: 4px;
}
.diff-focused {
outline: 2px solid var(--interactive-accent);
outline-offset: 1px;
border-radius: 2px;
}
-32
View File
@@ -1,32 +0,0 @@
{
"lightStyle": "minimal-light",
"darkStyle": "minimal-dark-tonal",
"lightScheme": "minimal-default-light",
"darkScheme": "minimal-solarized-dark",
"lineHeight": 1.5,
"lineWidth": 40,
"lineWidthWide": 50,
"maxWidth": 88,
"textNormal": 16,
"textSmall": 13,
"imgGrid": false,
"imgWidth": "img-default-width",
"tableWidth": "table-default-width",
"iframeWidth": "iframe-default-width",
"mapWidth": "map-default-width",
"chartWidth": "chart-default-width",
"colorfulHeadings": false,
"colorfulFrame": true,
"colorfulActiveStates": false,
"trimNames": true,
"labeledNav": false,
"fullWidthMedia": true,
"bordersToggle": true,
"minimalStatus": true,
"focusMode": false,
"underlineInternal": true,
"underlineExternal": true,
"folding": true,
"lineNumbers": false,
"readableLineLength": true
}
File diff suppressed because one or more lines are too long
@@ -1,11 +0,0 @@
{
"id": "obsidian-minimal-settings",
"name": "Minimal Theme Settings",
"version": "9.0.0",
"minAppVersion": "1.13.0",
"description": "Change the colors, fonts and features of Minimal Theme.",
"author": "@kepano",
"authorUrl": "https://www.twitter.com/kepano",
"fundingUrl": "https://www.buymeacoffee.com/kepano",
"isDesktopOnly": false
}
@@ -1,3 +0,0 @@
.setting-group > .setting-item-heading .setting-item-description {
margin-top: 4px;
}
-1
View File
@@ -1 +0,0 @@
{}
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"id": "obsidian-style-settings",
"name": "Style Settings",
"version": "1.0.9",
"minAppVersion": "0.11.5",
"description": "Offers controls for adjusting theme, plugin, and snippet CSS variables.",
"author": "mgmeyers",
"authorUrl": "https://github.com/mgmeyers/obsidian-style-settings",
"isDesktopOnly": false
}
File diff suppressed because one or more lines are too long
-105
View File
@@ -1,105 +0,0 @@
{
"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 toolbar, postpone, edit, backlinks and task count\nhide toolbar\nhide postpone button\nhide edit button\nhide backlinks\nhide task count",
"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,
"searchResults": {
"taskCountLocation": "bottom"
},
"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"
}
]
},
"isShownInEditModal": {
"priority": true,
"recurrence": true,
"due": true,
"scheduled": true,
"start": true,
"before_this": true,
"after_this": true,
"status": true,
"created": true,
"done": true,
"cancelled": true
},
"dismissedNotices": {
"live-preview-callout-warning": false
},
"features": {
"INTERNAL_TESTING_ENABLED_BY_DEFAULT": true
},
"generalSettings": {},
"headingOpened": {
"Core Statuses": true,
"Custom Statuses": 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
-12
View File
@@ -1,12 +0,0 @@
{
"id": "obsidian-tasks-plugin",
"name": "Tasks",
"version": "8.4.0",
"minAppVersion": "1.8.7",
"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
File diff suppressed because one or more lines are too long
@@ -1,10 +0,0 @@
{
"id": "obsidian-zotero-desktop-connector",
"name": "Zotero Integration",
"version": "3.2.1",
"minAppVersion": "1.1.1",
"description": "Insert and import citations, bibliographies, notes, and PDF annotations from Zotero.",
"author": "mgmeyers",
"authorUrl": "https://github.com/mgmeyers/obsidian-zotero-integration",
"isDesktopOnly": true
}
@@ -1,238 +0,0 @@
.zt-format {
border: 1px solid var(--background-modifier-border);
padding: 1rem;
background-color: var(--background-primary);
border-radius: 10px;
margin-bottom: 10px;
}
.zt-format__form {
display: flex;
flex-direction: column;
align-items: stretch;
margin-bottom: 1rem;
max-width: 600px;
}
.zt-format__form:last-child {
margin-bottom: 0;
}
.zt-format__label {
font-size: 0.9em;
font-weight: 600;
margin-bottom: 5px;
}
.is-deprecated .zt-format__label {
color: var(--text-error);
}
.zt-format__input-wrapper {
display: flex;
align-items: center;
}
.zt-format__input-wrapper textarea {
resize: vertical;
}
.zt-format__input-wrapper > *:not(.checkbox-container) {
width: 100% !important;
}
.is-deprecated .zt-format__input-wrapper button {
width: auto !important;
flex-grow: 0;
flex-shrink: 0;
margin-left: 5px;
}
.zt-format__delete-btn {
display: flex;
align-items: center;
justify-content: center;
line-height: 1;
padding: 7px 9px;
margin-left: 10px;
flex-shrink: 0;
flex-grow: 0;
}
.zt-json-viewer {
font-size: 13px;
}
.zt-json-viewer .react-json-view {
padding: 1em;
border-radius: 10px;
margin-top: 1em;
overflow: auto;
font-family: var(--font-monospace) !important;
}
.zt-json-viewer__btns {
display: flex;
align-items: center;
justify-content: flex-start;
}
.zt-json-viewer__btns label {
display: block;
font-weight: bold;
padding-top: 1em;
}
.zt-json-viewer__btns select {
font-size: 1em;
}
.zt-json-viewer__btns button {
font-size: 1em;
margin-right: 5px;
}
.zt-json-viewer__preview,
.zt-json-viewer__data {
border: 1px solid var(--background-modifier-border);
border-radius: 10px;
padding: 1em;
margin-top: 1em;
}
.zt-json-viewer__preview.error {
background-color: #ff000011;
font-family: var(--font-monospace);
}
.zt-json-viewer__preview pre {
overflow: auto;
white-space: pre-wrap;
margin: 0;
}
.zt-json-viewer__preview pre,
.zt-json-viewer__preview code {
font-family: inherit;
}
.zt-json-viewer__preview:not(.error) pre {
font-family: var(--font-text, --font-default, --default-font);
max-height: 70vh;
min-height: 400px;
}
.zt-multiselect {
width: 300px;
text-align: left;
}
.zt-multiselect input {
outline: none !important;
box-shadow: none !important;
}
.zt-format__input-note {
font-style: italic;
font-size: 0.9em;
padding-top: 10px;
margin-bottom: 10px;
}
.zt-setting-item pre,
.zt-format__input-note pre {
display: inline-block;
margin: 0;
padding: 0 6px;
background-color: var(--background-secondary-alt);
border-radius: 4px;
}
.zt-asset-success {
text-align: left;
display: flex;
}
.zt-asset-success__icon {
color: var(--interactive-success);
font-size: 24px;
margin-right: 5px;
}
.zt-asset-success__icon svg {
width: 1em !important;
height: 1em !important;
}
.zt-asset-success__message {
font-size: 0.9em;
}
.zt-suggest-title {
font-size: var(--font-ui-small);
color: var(--text-muted);
display: block;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
padding-top: var(--size-4-1);
}
.zt-suggest-loading-wrapper {
display: flex;
position: relative;
align-items: center;
justify-content: center;
padding: var(--size-4-2) 0;
}
.zt-suggest-loading,
.zt-suggest-loading:before,
.zt-suggest-loading:after {
border-radius: 999px;
width: 1em;
height: 1em;
animation-fill-mode: both;
animation: bblFadInOut 1.6s infinite ease-in-out;
}
.zt-suggest-loading {
display: block;
color: var(--text-muted);
font-size: 7px;
position: relative;
animation-delay: -0.16s;
top: -1em;
}
.zt-suggest-loading:before,
.zt-suggest-loading:after {
content: '';
position: absolute;
}
.zt-suggest-loading:before {
left: -2em;
animation-delay: -0.32s;
}
.zt-suggest-loading:after {
left: 2em;
}
.zt-color-chip {
display: inline-block;
width: 1em;
height: 1em;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
margin-right: var(--size-4-1);
}
@keyframes bblFadInOut {
0%,
80%,
100% {
box-shadow: 0 1em 0 -1.3em;
}
40% {
box-shadow: 0 1em 0 0;
}
}
-43
View File
@@ -1,43 +0,0 @@
{
"useCache": true,
"hideExcluded": false,
"recencyBoost": "0",
"downrankedFoldersFilters": [],
"ignoreDiacritics": true,
"ignoreArabicDiacritics": false,
"indexedFileTypes": [],
"indexFilesWithoutExtension": false,
"displayTitle": "",
"PDFIndexing": false,
"officeIndexing": false,
"imagesIndexing": false,
"aiImageIndexing": false,
"unsupportedFilesIndexing": "default",
"splitCamelCase": false,
"openInNewPane": false,
"vimLikeNavigationShortcut": false,
"ribbonIcon": true,
"showExcerpt": true,
"maxEmbeds": 5,
"renderLineReturnInExcerpts": true,
"showCreateButton": false,
"highlight": true,
"showPreviousQueryResults": true,
"simpleSearch": false,
"tokenizeUrls": false,
"fuzziness": "1",
"weightBasename": 10,
"weightDirectory": 7,
"weightH1": 6,
"weightH2": 5,
"weightH3": 4,
"weightUnmarkedTags": 2,
"weightCustomProperties": [],
"httpApiEnabled": false,
"httpApiPort": "51361",
"httpApiNotice": true,
"welcomeMessage": "1.21.0",
"verboseLogging": false,
"DANGER_httpHost": null,
"DANGER_forceSaveCache": false
}
File diff suppressed because one or more lines are too long
-14
View File
@@ -1,14 +0,0 @@
{
"id": "omnisearch",
"name": "Omnisearch",
"version": "1.30.1",
"minAppVersion": "1.7.2",
"description": "A search engine that just works.",
"author": "Simon Cambier",
"authorUrl": "https://scambier.xyz",
"fundingUrl": {
"Github": "https://github.com/sponsors/scambier",
"Ko-fi": "https://ko-fi.com/scambier"
},
"isDesktopOnly": false
}
-150
View File
@@ -1,150 +0,0 @@
.omnisearch-modal {
}
.omnisearch-result {
white-space: normal;
display: flex;
flex-direction: row;
/* justify-content: space-between; */
flex-wrap: nowrap;
}
.omnisearch-result__title-container {
display: flex;
align-items: center;
justify-content: space-between;
column-gap: 5px;
flex-wrap: wrap;
}
.omnisearch-result__title {
white-space: pre-wrap;
align-items: center;
display: flex;
gap: 5px;
}
.omnisearch-result__title > span {
}
.omnisearch-result__folder-path {
font-size: 0.75rem;
align-items: center;
display: flex;
gap: 5px;
color: var(--text-muted);
}
.omnisearch-result__extension {
font-size: 0.7rem;
color: var(--text-muted);
}
.omnisearch-result__counter {
font-size: 0.7rem;
color: var(--text-muted);
}
.omnisearch-result__body {
white-space: normal;
font-size: small;
word-wrap: normal;
overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
color: var(--text-muted);
margin-inline-start: 0.5em;
}
.omnisearch-result__embed {
margin-left: 1em;
}
.omnisearch-result__image-container {
flex-basis: 20%;
text-align: end;
}
.omnisearch-highlight {
}
.omnisearch-default-highlight {
text-decoration: underline;
text-decoration-color: var(--text-highlight-bg);
text-decoration-thickness: 3px;
text-underline-offset: -1px;
text-decoration-skip-ink: none;
}
.omnisearch-input-container {
display: flex;
align-items: center;
flex-direction: row;
gap: 5px;
}
.omnisearch-result__icon {
display: inline-block;
vertical-align: middle;
width: 16px;
height: 16px;
margin-right: 4px;
}
.omnisearch-result__icon svg {
width: 100%;
height: 100%;
}
.omnisearch-result__icon--emoji {
font-size: 16px;
vertical-align: middle;
margin-right: 4px;
}
@media only screen and (max-width: 600px) {
.omnisearch-input-container {
flex-direction: column;
}
.omnisearch-input-container__buttons {
display: flex;
flex-direction: row;
width: 100%;
padding: 0 1em 0 1em;
gap: 1em;
}
.omnisearch-input-container__buttons > button {
flex-grow: 1;
}
}
@media only screen and (min-width: 600px) {
.omnisearch-input-container__buttons {
margin-inline-end: 1em;
}
}
.omnisearch-input-field {
position: relative;
flex-grow: 1;
}
.omnisearch-result-highlight .cm-content ::selection,
.omnisearch-result-highlight .cm-line::selection {
background-color: var(
--omnisearch-highlight-color,
rgba(222, 183, 110, 1)
);
color: var(--omnisearch-highlight-text-color, black);
}
.omnisearch-result-highlight .cm-selectionLayer .cm-selectionBackground {
background-color: var(
--omnisearch-highlight-color,
rgba(222, 183, 110, 1)
);
}
-600
View File
@@ -1,600 +0,0 @@
{
"tasksFolder": "TaskNotes/Tasks",
"moveArchivedTasks": false,
"archiveFolder": "TaskNotes/Archive",
"taskTag": "task",
"taskIdentificationMethod": "tag",
"hideIdentifyingTagsInCards": false,
"hideIdentifyingTagsMode": "all",
"taskPropertyName": "",
"taskPropertyValue": "",
"excludedFolders": "",
"defaultTaskPriority": "normal",
"defaultTaskStatus": "open",
"taskOrgFiltersCollapsed": false,
"taskFilenameFormat": "zettel",
"storeTitleInFilename": true,
"customFilenameTemplate": "{{title}}",
"occurrenceFilenameTemplate": "",
"occurrenceFilenameTemplateProperty": "occurrenceFilenameTemplate",
"taskCreationDefaults": {
"defaultContexts": "",
"defaultTags": "",
"defaultProjects": "",
"useParentNoteForTaskCreation": false,
"useParentNoteAsProject": false,
"useParentHeaderAsProject": false,
"inheritParentTaskProperties": false,
"defaultTimeEstimate": 0,
"defaultRecurrence": "none",
"defaultDueDate": "none",
"defaultDueTime": "none",
"defaultScheduledDate": "today",
"defaultScheduledTime": "none",
"bodyTemplate": "",
"useBodyTemplate": false,
"occurrenceBodyTemplate": "",
"useOccurrenceBodyTemplate": false,
"defaultReminders": []
},
"openTaskAfterCreation": "none",
"calendarViewSettings": {
"defaultView": "dayGridMonth",
"customDayCount": 3,
"slotDuration": "00:30:00",
"slotMinTime": "00:00:00",
"slotMaxTime": "24:00:00",
"scrollTime": "08:00:00",
"firstDay": 1,
"timeFormat": "24",
"showWeekends": true,
"locale": "",
"defaultShowScheduled": true,
"defaultShowDue": true,
"defaultShowDueWhenScheduled": true,
"defaultShowScheduledToDueSpan": false,
"defaultShowTimeEntries": false,
"defaultShowRecurring": true,
"defaultShowICSEvents": true,
"enableTimeblocking": false,
"defaultShowTimeblocks": true,
"defaultTimeblockColor": "#6366f1",
"timeblockAttachmentSearchOrder": "name-asc",
"nowIndicator": true,
"selectMirror": true,
"weekNumbers": false,
"showTodayHighlight": true,
"eventMinHeight": 15,
"slotEventOverlap": true,
"eventMaxStack": null,
"dayMaxEvents": true,
"dayMaxEventRows": false
},
"pomodoroWorkDuration": 25,
"pomodoroShortBreakDuration": 5,
"pomodoroLongBreakDuration": 15,
"pomodoroLongBreakInterval": 4,
"pomodoroAutoStartBreaks": true,
"pomodoroAutoStartWork": false,
"pomodoroNotifications": true,
"pomodoroSoundEnabled": true,
"pomodoroSoundVolume": 50,
"pomodoroStorageLocation": "plugin",
"pomodoroMobileSidebar": "tab",
"showPomodoroInStatusBar": true,
"enableTaskLinkOverlay": true,
"disableOverlayOnAlias": false,
"enableInstantTaskConvert": true,
"useDefaultsOnInstantConvert": true,
"preserveCheckboxOnConvert": false,
"taskModalTabMovesFocus": true,
"enableNaturalLanguageInput": true,
"nlpDefaultToScheduled": true,
"nlpLanguage": "en",
"uiLanguage": "system",
"statusSuggestionTrigger": "*",
"nlpTriggers": {
"triggers": [
{
"propertyId": "tags",
"trigger": "#",
"enabled": true
},
{
"propertyId": "contexts",
"trigger": "@",
"enabled": true
},
{
"propertyId": "projects",
"trigger": "+",
"enabled": true
},
{
"propertyId": "status",
"trigger": "*",
"enabled": true
},
{
"propertyId": "priority",
"trigger": "!",
"enabled": false
}
]
},
"singleClickAction": "edit",
"doubleClickAction": "openNote",
"projectAutosuggest": {
"enableFuzzy": false,
"rows": [
"{title|n(Title)}",
"{aliases|n(Aliases)}",
"{file.path|n(Path)}"
],
"showAdvanced": false,
"requiredTags": [],
"includeFolders": [],
"propertyKey": "",
"propertyValue": ""
},
"inlineTaskConvertFolder": "{{currentNotePath}}",
"disableNoteIndexing": false,
"suggestionDebounceMs": 0,
"fieldMapping": {
"title": "title",
"status": "status",
"priority": "priority",
"due": "due",
"scheduled": "scheduled",
"contexts": "contexts",
"projects": "projects",
"attachments": "attachments",
"timeEstimate": "timeEstimate",
"completedDate": "completedDate",
"dateCreated": "dateCreated",
"dateModified": "dateModified",
"recurrence": "recurrence",
"recurrenceAnchor": "recurrence_anchor",
"recurrenceParent": "recurrence_parent",
"occurrenceDate": "occurrence_date",
"occurrenceMaterialization": "occurrence_materialization",
"occurrenceNextTrigger": "occurrence_next_trigger",
"occurrenceTemplate": "occurrence_template",
"occurrencePastHorizon": "occurrence_past_horizon",
"occurrenceFutureHorizon": "occurrence_future_horizon",
"archiveTag": "archived",
"timeEntries": "timeEntries",
"completeInstances": "complete_instances",
"skippedInstances": "skipped_instances",
"blockedBy": "blockedBy",
"pomodoros": "pomodoros",
"icsEventId": "icsEventId",
"icsEventTag": "ics_event",
"googleCalendarEventId": "googleCalendarEventId",
"googleCalendarExceptionEventId": "googleCalendarExceptionEventId",
"googleCalendarExceptionOriginalScheduled": "googleCalendarExceptionOriginalScheduled",
"googleCalendarMovedOriginalDates": "googleCalendarMovedOriginalDates",
"reminders": "reminders",
"sortOrder": "tasknotes_manual_order"
},
"customStatuses": [
{
"id": "none",
"value": "none",
"label": "None",
"color": "#cccccc",
"isCompleted": false,
"excludeFromCycle": false,
"order": 0,
"autoArchive": false,
"autoArchiveDelay": 5
},
{
"id": "open",
"value": "open",
"label": "Open",
"color": "#808080",
"isCompleted": false,
"excludeFromCycle": false,
"order": 1,
"autoArchive": false,
"autoArchiveDelay": 5
},
{
"id": "in-progress",
"value": "in-progress",
"label": "In progress",
"color": "#0066cc",
"isCompleted": false,
"excludeFromCycle": false,
"order": 2,
"autoArchive": false,
"autoArchiveDelay": 5
},
{
"id": "done",
"value": "done",
"label": "Done",
"color": "#00aa00",
"isCompleted": true,
"excludeFromCycle": false,
"order": 3,
"autoArchive": false,
"autoArchiveDelay": 5
}
],
"customPriorities": [
{
"id": "none",
"value": "none",
"label": "None",
"color": "#cccccc",
"weight": 0
},
{
"id": "low",
"value": "low",
"label": "Low",
"color": "#00aa00",
"weight": 1
},
{
"id": "normal",
"value": "normal",
"label": "Normal",
"color": "#ffaa00",
"weight": 2
},
{
"id": "high",
"value": "high",
"label": "High",
"color": "#ff0000",
"weight": 3
}
],
"recurrenceMigrated": false,
"showReleaseNotesOnUpdate": true,
"checkForUpdatesOnStartup": true,
"starterNoteCreated": true,
"showTrackedTasksInStatusBar": false,
"autoStopTimeTrackingOnComplete": true,
"autoStopTimeTrackingNotification": false,
"showRelationships": true,
"relationshipsPosition": "bottom",
"showTaskCardInNote": true,
"showCompletedTaskStrikethrough": true,
"showExpandableSubtasks": true,
"expandSubtasksByDefault": false,
"subtaskChevronPosition": "right",
"viewsButtonAlignment": "right",
"hideCompletedFromOverdue": true,
"icsIntegration": {
"defaultNoteTemplate": "",
"defaultNoteFolder": "",
"icsNoteFilenameFormat": "title",
"customICSNoteFilenameTemplate": "{title}",
"enableAutoExport": false,
"autoExportPath": "tasknotes-calendar.ics",
"autoExportInterval": 60,
"useDurationForExport": false,
"excludeArchivedFromExport": false,
"excludeCompletedFromExport": false,
"requireDueDateForExport": false,
"requireScheduledDateForExport": false,
"useICSEndAsDue": false,
"recurringEventRelatedNotesMode": "series"
},
"savedViews": [],
"enableNotifications": true,
"notificationType": "system",
"notificationSoundEnabled": false,
"notificationSoundVolume": 50,
"enableAPI": false,
"apiPort": 8080,
"apiAuthToken": "",
"enableMCP": false,
"webhooks": [],
"userFields": [],
"modalFieldsConfig": {
"version": 1,
"fields": [
{
"id": "title",
"fieldType": "core",
"group": "basic",
"displayName": "Title",
"visibleInCreation": true,
"visibleInEdit": true,
"order": 0,
"enabled": true,
"required": true
},
{
"id": "details",
"fieldType": "core",
"group": "basic",
"displayName": "Details",
"visibleInCreation": true,
"visibleInEdit": true,
"order": 1,
"enabled": true
},
{
"id": "contexts",
"fieldType": "core",
"group": "metadata",
"displayName": "Contexts",
"visibleInCreation": true,
"visibleInEdit": true,
"order": 0,
"enabled": true
},
{
"id": "tags",
"fieldType": "core",
"group": "metadata",
"displayName": "Tags",
"visibleInCreation": true,
"visibleInEdit": true,
"order": 1,
"enabled": true
},
{
"id": "time-estimate",
"fieldType": "core",
"group": "metadata",
"displayName": "Time Estimate",
"visibleInCreation": true,
"visibleInEdit": true,
"order": 2,
"enabled": true
},
{
"id": "projects",
"fieldType": "organization",
"group": "organization",
"displayName": "Projects",
"visibleInCreation": true,
"visibleInEdit": true,
"order": 0,
"enabled": true
},
{
"id": "subtasks",
"fieldType": "organization",
"group": "organization",
"displayName": "Subtasks",
"visibleInCreation": true,
"visibleInEdit": true,
"order": 1,
"enabled": true
},
{
"id": "blocked-by",
"fieldType": "dependency",
"group": "dependencies",
"displayName": "Blocked By",
"visibleInCreation": true,
"visibleInEdit": true,
"order": 0,
"enabled": true
},
{
"id": "blocking",
"fieldType": "dependency",
"group": "dependencies",
"displayName": "Blocking",
"visibleInCreation": true,
"visibleInEdit": true,
"order": 1,
"enabled": true
}
],
"groups": [
{
"id": "basic",
"displayName": "Basic Information",
"order": 0,
"collapsible": false,
"defaultCollapsed": false
},
{
"id": "metadata",
"displayName": "Metadata",
"order": 1,
"collapsible": true,
"defaultCollapsed": false
},
{
"id": "organization",
"displayName": "Organization",
"order": 2,
"collapsible": true,
"defaultCollapsed": false
},
{
"id": "dependencies",
"displayName": "Dependencies",
"order": 3,
"collapsible": true,
"defaultCollapsed": false
},
{
"id": "custom",
"displayName": "Custom Fields",
"order": 4,
"collapsible": true,
"defaultCollapsed": false
}
]
},
"enableModalSplitLayout": true,
"defaultVisibleProperties": [
"status",
"priority",
"due",
"scheduled",
"projects",
"contexts",
"tags",
"blocked",
"blocking"
],
"inlineVisibleProperties": [
"status",
"priority",
"due",
"scheduled",
"recurrence"
],
"enableBases": true,
"enableMdbaseSpec": false,
"autoCreateDefaultBasesFiles": true,
"commandFileMapping": {
"open-calendar-view": "TaskNotes/Views/mini-calendar-default.base",
"open-kanban-view": "TaskNotes/Views/kanban-default.base",
"open-tasks-view": "TaskNotes/Views/tasks-default.base",
"open-advanced-calendar-view": "TaskNotes/Views/calendar-default.base",
"open-agenda-view": "TaskNotes/Views/agenda-default.base",
"pomodoro-stats-base": "TaskNotes/Views/pomodoro-stats.base",
"relationships": "TaskNotes/Views/relationships.base"
},
"maintainDueDateOffsetInRecurring": false,
"resetCheckboxesOnRecurrence": false,
"useFrontmatterMarkdownLinks": false,
"enableGoogleCalendar": false,
"enableMicrosoftCalendar": false,
"disableCalendarOnMobile": false,
"enabledGoogleCalendars": [],
"googleCalendarSyncTokens": {},
"enabledMicrosoftCalendars": [],
"microsoftCalendarSyncTokens": {},
"googleCalendarExport": {
"enabled": false,
"targetCalendarId": "",
"syncOnTaskCreate": true,
"syncOnTaskUpdate": true,
"syncOnTaskComplete": true,
"syncOnTaskDelete": true,
"eventTitleTemplate": "{{title}}",
"includeDescription": true,
"eventColorId": null,
"syncTrigger": "scheduled",
"createAsAllDay": true,
"defaultEventDuration": 60,
"includeObsidianLink": true,
"defaultReminderMinutes": null
},
"enableDebugLogging": false,
"lastSeenVersion": "4.12.5",
"pomodoroState": {
"isRunning": false,
"timeRemaining": 1500,
"nextSessionType": "work"
},
"lastPomodoroDate": "2026-09-10",
"pomodoroHistory": [
{
"id": "1788885374012",
"startTime": "2026-09-08T11:36:14.012-05:00",
"endTime": "2026-09-08T11:51:21.375-05:00",
"plannedDuration": 25,
"type": "work",
"completed": false,
"activePeriods": [
{
"startTime": "2026-09-08T11:36:14.012-05:00",
"endTime": "2026-09-08T11:51:21.375-05:00"
}
]
},
{
"id": "1788966163358",
"startTime": "2026-09-09T10:02:43.358-05:00",
"endTime": "2026-09-09T10:27:43.358-05:00",
"plannedDuration": 25,
"type": "work",
"completed": true,
"activePeriods": [
{
"startTime": "2026-09-09T10:02:43.358-05:00",
"endTime": "2026-09-09T10:27:43.358-05:00"
}
]
},
{
"id": "1788967664816",
"startTime": "2026-09-09T10:27:44.816-05:00",
"endTime": "2026-09-09T10:32:44.816-05:00",
"plannedDuration": 5,
"type": "short-break",
"completed": true,
"activePeriods": [
{
"startTime": "2026-09-09T10:27:44.816-05:00",
"endTime": "2026-09-09T10:32:44.816-05:00"
}
]
},
{
"id": "1788968192516",
"startTime": "2026-09-09T10:36:32.516-05:00",
"endTime": "2026-09-09T11:01:32.516-05:00",
"plannedDuration": 25,
"type": "work",
"completed": true,
"activePeriods": [
{
"startTime": "2026-09-09T10:36:32.516-05:00",
"endTime": "2026-09-09T11:01:32.516-05:00"
}
]
},
{
"id": "1788969693820",
"startTime": "2026-09-09T11:01:33.820-05:00",
"endTime": "2026-09-09T11:06:33.820-05:00",
"plannedDuration": 5,
"type": "short-break",
"completed": true,
"activePeriods": [
{
"startTime": "2026-09-09T11:01:33.820-05:00",
"endTime": "2026-09-09T11:06:33.820-05:00"
}
]
},
{
"id": "1789056100985",
"startTime": "2026-09-10T11:01:40.985-05:00",
"endTime": "2026-09-10T11:26:40.985-05:00",
"plannedDuration": 25,
"type": "work",
"taskPath": "TaskNotes/Tasks/Physiology Homework 2.md",
"completed": true,
"activePeriods": [
{
"startTime": "2026-09-10T11:01:40.985-05:00",
"endTime": "2026-09-10T11:26:40.985-05:00"
}
]
},
{
"id": "1789057602595",
"startTime": "2026-09-10T11:26:42.595-05:00",
"endTime": "2026-09-10T11:31:42.595-05:00",
"plannedDuration": 5,
"type": "short-break",
"completed": true,
"activePeriods": [
{
"startTime": "2026-09-10T11:26:42.595-05:00",
"endTime": "2026-09-10T11:31:42.595-05:00"
}
]
}
],
"lastSelectedTaskPath": "TaskNotes/Tasks/Physiology Homework 2.md",
"lastNotifiedReleaseVersion": "4.13.1"
}
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"id": "tasknotes",
"name": "TaskNotes",
"version": "4.12.5",
"minAppVersion": "1.12.2",
"description": "Note-based task management with calendar, pomodoro and time-tracking integration.",
"author": "Callum Alpass",
"authorUrl": "https://github.com/callumalpass",
"isDesktopOnly": false
}
File diff suppressed because it is too large Load Diff
-297
View File
@@ -1,297 +0,0 @@
/* Obsidian theme snippet generated by noctalia */
.theme-dark {
/* Background layers */
--background-primary: #131313;
--background-primary-alt: #191919;
--background-secondary: #1f1f1f;
--background-secondary-alt: #292929;
--background-modifier-border: #3b3b3b;
--background-modifier-form-field: #151515;
--background-modifier-form-field-highlighted: #191919;
--background-modifier-box-shadow: #000000;
--background-modifier-success: rgba(176, 198, 255, 0.15);
--background-modifier-error: rgba(255, 180, 171, 0.15);
--background-modifier-error-rgb: 255,180,171;
--background-modifier-error-hover: rgba(255, 180, 171, 0.25);
--background-modifier-cover: rgba(0, 0, 0, 0.6);
/* Text colors */
--text-normal: #e2e2e2;
--text-muted: #c6c6c6;
--text-faint: #616161;
--text-on-accent: #002d6e;
--text-on-accent-inverted: #b0c6ff;
--text-error: #ffb4ab;
--text-success: #b0c6ff;
--text-selection: rgba(176, 198, 255, 0.2);
--text-accent: #b0c6ff;
--text-highlight-bg: rgba(224, 187, 222, 0.25);
/* Interactive accent */
--interactive-normal: #1f1f1f;
--interactive-hover: #292929;
--interactive-accent: #b0c6ff;
--interactive-accent-hover: #b5caff;
--interactive-accent-rgb: 176,198,255;
--interactive-success: #b0c6ff;
/* Scrollbar */
--scrollbar-bg: #131313;
--scrollbar-thumb-bg: rgba(59, 59, 59, 0.3);
--scrollbar-active-thumb-bg: rgba(97, 97, 97, 0.5);
/* Tab styling */
--tab-text-color: #c6c6c6;
--tab-text-color-focused: #e2e2e2;
--tab-text-color-focused-active: #b0c6ff;
--tab-background-active: #131313;
--tab-divider-color: #3b3b3b;
/* Navigation */
--nav-item-color: #c6c6c6;
--nav-item-color-hover: #e2e2e2;
--nav-item-color-active: #002d6e;
--nav-item-background-hover: #292929;
--nav-item-background-active: rgba(176, 198, 255, 0.12);
--nav-collapse-icon-color: #616161;
/* Titlebar */
--titlebar-background: #1f1f1f;
--titlebar-background-focused: #1f1f1f;
--titlebar-text-color: #e2e2e2;
--titlebar-text-color-focused: #e2e2e2;
/* Tags */
--tag-color: #c0c6dc;
--tag-background: rgba(192, 198, 220, 0.12);
--tag-color-hover: #c3c9de;
--tag-background-hover: rgba(192, 198, 220, 0.2);
/* Headings */
--h1-color: #b0c6ff;
--h2-color: #abc2ff;
--h3-color: #c0c6dc;
--h4-color: #bdc3da;
--h5-color: #e0bbde;
--h6-color: #deb7dc;
/* Links */
--link-color: #b0c6ff;
--link-color-hover: #b5caff;
--link-decoration-color: rgba(176, 198, 255, 0.4);
--link-external-color: #e0bbde;
--link-external-color-hover: #e2bfe0;
--link-unresolved-color: rgba(255, 180, 171, 0.7);
/* Code */
--code-normal: #c0c6dc;
--code-background: #333333;
--code-comment: #616161;
/* Blockquotes */
--blockquote-border-color: rgba(176, 198, 255, 0.5);
/* Checkbox */
--checkbox-color: #b0c6ff;
--checkbox-color-hover: #b5caff;
--checkbox-border-color: #616161;
/* Graph view */
--graph-line: rgba(59, 59, 59, 0.4);
--graph-node: #b0c6ff;
--graph-node-focused: #e0bbde;
--graph-node-tag: #c0c6dc;
--graph-node-attachment: #e0bbde;
/* Vault name */
--vault-name-color: #e2e2e2;
/* Indentation guide */
--indentation-guide-color: rgba(59, 59, 59, 0.3);
--indentation-guide-color-active: rgba(59, 59, 59, 0.6);
/* Obsidian 1.0+ variables */
--color-accent: #b0c6ff;
--color-accent-1: rgba(176, 198, 255, 0.12);
--color-accent-2: rgba(176, 198, 255, 0.25);
/* Icon colors */
--icon-color: #c6c6c6;
--icon-color-hover: #e2e2e2;
--icon-color-active: #b0c6ff;
--icon-color-focused: #b0c6ff;
/* Divider */
--divider-color: #3b3b3b;
--divider-color-hover: #616161;
/* Status bar */
--status-bar-background: #1f1f1f;
--status-bar-text-color: #c6c6c6;
/* Modal */
--modal-background: #1f1f1f;
--modal-border-color: #3b3b3b;
/* Prompt / suggestion */
--prompt-border-color: #3b3b3b;
/* Inline title */
--inline-title-color: #e2e2e2;
/* Bold / italic */
--bold-color: #e2e2e2;
--italic-color: #e2e2e2;
/* List markers */
--list-marker-color: rgba(176, 198, 255, 0.7);
}
.theme-light {
/* Background layers */
--background-primary: #f9f9f9;
--background-primary-alt: #f3f3f3;
--background-secondary: #eeeeee;
--background-secondary-alt: #e4e4e4;
--background-modifier-border: #b6b6b6;
--background-modifier-form-field: #f6f6f6;
--background-modifier-form-field-highlighted: #f3f3f3;
--background-modifier-box-shadow: #000000;
--background-modifier-success: rgba(54, 92, 168, 0.1);
--background-modifier-error: rgba(186, 26, 26, 0.1);
--background-modifier-error-rgb: 186,26,26;
--background-modifier-error-hover: rgba(186, 26, 26, 0.2);
--background-modifier-cover: rgba(0, 0, 0, 0.4);
/* Text colors */
--text-normal: #1b1b1b;
--text-muted: #474747;
--text-faint: #909090;
--text-on-accent: #ffffff;
--text-on-accent-inverted: #365ca8;
--text-error: #ba1a1a;
--text-success: #365ca8;
--text-selection: rgba(54, 92, 168, 0.15);
--text-accent: #365ca8;
--text-highlight-bg: rgba(114, 85, 114, 0.2);
/* Interactive accent */
--interactive-normal: #eeeeee;
--interactive-hover: #e4e4e4;
--interactive-accent: #365ca8;
--interactive-accent-hover: #355aa4;
--interactive-accent-rgb: 54,92,168;
--interactive-success: #365ca8;
/* Scrollbar */
--scrollbar-bg: #f9f9f9;
--scrollbar-thumb-bg: rgba(182, 182, 182, 0.3);
--scrollbar-active-thumb-bg: rgba(144, 144, 144, 0.5);
/* Tab styling */
--tab-text-color: #474747;
--tab-text-color-focused: #1b1b1b;
--tab-text-color-focused-active: #365ca8;
--tab-background-active: #f9f9f9;
--tab-divider-color: #b6b6b6;
/* Navigation */
--nav-item-color: #474747;
--nav-item-color-hover: #1b1b1b;
--nav-item-color-active: #ffffff;
--nav-item-background-hover: #e4e4e4;
--nav-item-background-active: rgba(54, 92, 168, 0.1);
--nav-collapse-icon-color: #909090;
/* Titlebar */
--titlebar-background: #eeeeee;
--titlebar-background-focused: #eeeeee;
--titlebar-text-color: #1b1b1b;
--titlebar-text-color-focused: #1b1b1b;
/* Tags */
--tag-color: #575e71;
--tag-background: rgba(87, 94, 113, 0.1);
--tag-color-hover: #555c6e;
--tag-background-hover: rgba(87, 94, 113, 0.18);
/* Headings */
--h1-color: #365ca8;
--h2-color: #375eac;
--h3-color: #575e71;
--h4-color: #596074;
--h5-color: #725572;
--h6-color: #755775;
/* Links */
--link-color: #365ca8;
--link-color-hover: #355aa4;
--link-decoration-color: rgba(54, 92, 168, 0.4);
--link-external-color: #725572;
--link-external-color-hover: #6f536f;
--link-unresolved-color: rgba(186, 26, 26, 0.7);
/* Code */
--code-normal: #575e71;
--code-background: #dadada;
--code-comment: #909090;
/* Blockquotes */
--blockquote-border-color: rgba(54, 92, 168, 0.5);
/* Checkbox */
--checkbox-color: #365ca8;
--checkbox-color-hover: #355aa4;
--checkbox-border-color: #909090;
/* Graph view */
--graph-line: rgba(182, 182, 182, 0.4);
--graph-node: #365ca8;
--graph-node-focused: #725572;
--graph-node-tag: #575e71;
--graph-node-attachment: #725572;
/* Vault name */
--vault-name-color: #1b1b1b;
/* Indentation guide */
--indentation-guide-color: rgba(182, 182, 182, 0.3);
--indentation-guide-color-active: rgba(182, 182, 182, 0.6);
/* Obsidian 1.0+ variables */
--color-accent: #365ca8;
--color-accent-1: rgba(54, 92, 168, 0.1);
--color-accent-2: rgba(54, 92, 168, 0.2);
/* Icon colors */
--icon-color: #474747;
--icon-color-hover: #1b1b1b;
--icon-color-active: #365ca8;
--icon-color-focused: #365ca8;
/* Divider */
--divider-color: #b6b6b6;
--divider-color-hover: #909090;
/* Status bar */
--status-bar-background: #eeeeee;
--status-bar-text-color: #474747;
/* Modal */
--modal-background: #eeeeee;
--modal-border-color: #b6b6b6;
/* Prompt / suggestion */
--prompt-border-color: #b6b6b6;
/* Inline title */
--inline-title-color: #1b1b1b;
/* Bold / italic */
--bold-color: #1b1b1b;
--italic-color: #1b1b1b;
/* List markers */
--list-marker-color: rgba(54, 92, 168, 0.7);
}
-8
View File
@@ -1,8 +0,0 @@
{
"name": "Minimal",
"version": "9.0.2",
"minAppVersion": "1.13.0",
"author": "@kepano",
"authorUrl": "https://twitter.com/kepano",
"fundingUrl": "https://www.buymeacoffee.com/kepano"
}
-8709
View File
File diff suppressed because it is too large Load Diff
-29
View File
@@ -1,29 +0,0 @@
{
"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_toolbar": "checkbox",
"TQ_show_tree": "checkbox",
"TQ_show_urgency": "checkbox"
}
}
-6
View File
@@ -1,6 +0,0 @@
{
"openExternalURLs": true,
"enableAdblocking": true,
"searchEngine": "brave",
"homepage": "https://searxng.proton-jelly.net"
}
-362
View File
@@ -1,362 +0,0 @@
{
"main": {
"id": "0f93d4a35dc394e6",
"type": "split",
"children": [
{
"id": "3d32f8a82c6e6643",
"type": "tabs",
"children": [
{
"id": "aa205561eab0cd0a",
"type": "leaf",
"state": {
"type": "tasknotes-pomodoro-view",
"state": {},
"icon": "lucide-ghost",
"title": "tasknotes-pomodoro-view"
}
},
{
"id": "306d03aae3bdd8e1",
"type": "leaf",
"state": {
"type": "tasknotes-pomodoro-stats-view",
"state": {},
"icon": "lucide-ghost",
"title": "tasknotes-pomodoro-stats-view"
}
},
{
"id": "393fd32bfe0579d3",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "Personal Access/Quote Book.md",
"mode": "source",
"source": false
},
"icon": "lucide-file",
"title": "Quote Book"
}
},
{
"id": "269d9cc885f76017",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "Speech and Debate/Impromptu Examples.md",
"mode": "source",
"source": false
},
"icon": "lucide-file",
"title": "Impromptu Examples"
}
},
{
"id": "83d3224e22b06537",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "Personal Access/Alyxa's Private Investigator/Story Bible - Alyxa's PI.md",
"mode": "source",
"source": false
},
"icon": "lucide-file",
"title": "Story Bible - Alyxa's PI"
}
}
],
"currentTab": 3
}
],
"direction": "vertical"
},
"left": {
"id": "d3ed19077ac542f3",
"type": "split",
"children": [
{
"id": "92468573a3f3a9b9",
"type": "tabs",
"children": [
{
"id": "3425515dc3c8a6c2",
"type": "leaf",
"state": {
"type": "file-explorer",
"state": {
"sortOrder": "alphabetical",
"autoReveal": false,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-folder-closed",
"title": "Files"
}
},
{
"id": "a4ebc9df780f0031",
"type": "leaf",
"state": {
"type": "search",
"state": {
"query": "",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical"
},
"icon": "lucide-search",
"title": "Search"
}
},
{
"id": "6ab182fc016462e5",
"type": "leaf",
"state": {
"type": "bookmarks",
"state": {
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-bookmark",
"title": "Bookmarks"
}
},
{
"id": "d6242617fc99766d",
"type": "leaf",
"state": {
"type": "VIEW_TYPE_LONGFORM_EXPLORER",
"state": {},
"icon": "longform",
"title": "Longform"
}
},
{
"id": "c0d204cc07260156",
"type": "leaf",
"state": {
"type": "notebook-navigator",
"state": {},
"icon": "notebook-navigator",
"title": "Notebook Navigator"
}
}
],
"currentTab": 4
}
],
"direction": "horizontal",
"width": 300,
"collapsed": true
},
"right": {
"id": "8baa3b7827f96a87",
"type": "split",
"children": [
{
"id": "be8006f099a79108",
"type": "tabs",
"children": [
{
"id": "3ec1e8b46a094fd6",
"type": "leaf",
"state": {
"type": "backlink",
"state": {
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-coming-in",
"title": "Backlinks"
}
},
{
"id": "9f3f2c1563b7195b",
"type": "leaf",
"state": {
"type": "outgoing-link",
"state": {
"linksCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-going-out",
"title": "Outgoing links"
}
},
{
"id": "724343ea94d72879",
"type": "leaf",
"state": {
"type": "tag",
"state": {
"sortOrder": "frequency",
"useHierarchy": true,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-tags",
"title": "Tags"
}
},
{
"id": "6b57de6e3e29f477",
"type": "leaf",
"state": {
"type": "all-properties",
"state": {
"sortOrder": "frequency",
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-archive",
"title": "All properties"
}
},
{
"id": "057701bf60f12f5b",
"type": "leaf",
"state": {
"type": "outline",
"state": {
"followCursor": false,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-list",
"title": "Outline"
}
},
{
"id": "15748f7485155294",
"type": "leaf",
"state": {
"type": "footnotes",
"state": {},
"icon": "lucide-file-signature",
"title": "Footnotes"
}
},
{
"id": "c3d6cde980e8d7fc",
"type": "leaf",
"state": {
"type": "git-view",
"state": {},
"icon": "git-pull-request",
"title": "Source Control"
}
}
],
"currentTab": 6
},
{
"id": "daf51fa2715406c5",
"type": "tabs",
"children": [
{
"id": "50fe4ffe69334ad5",
"type": "leaf",
"state": {
"type": "notebook-navigator-calendar",
"state": {},
"icon": "lucide-calendar-days",
"title": "Calendar"
}
}
]
}
],
"direction": "horizontal",
"width": 200
},
"left-ribbon": {
"hiddenItems": {
"obsidian-excalidraw-plugin:New drawing": false,
"obsidian-livesync:Replicate": false,
"obsidian-livesync:Show Log": false,
"switcher:Open quick switcher": false,
"graph:Open graph view": false,
"canvas:Create new canvas": false,
"daily-notes:Open today's daily note": false,
"templates:Insert template": false,
"command-palette:Open command palette": false,
"bases:Create new base": false,
"obsidian-livesync:Show Customization sync": false,
"omnisearch:Omnisearch": false,
"notebook-navigator:Notebook Navigator": false,
"workspaces:Manage workspace layouts": false,
"zk-prefixer:Create new unique note": false,
"markdown-importer:Open format converter": false,
"audio-recorder:Start/stop recording": false,
"tasknotes:Open mini calendar view": false,
"tasknotes:Open calendar view": false,
"tasknotes:Open tasks view": false,
"tasknotes:Open agenda view": false,
"tasknotes:Open Kanban board": false,
"tasknotes:Open Pomodoro timer": false,
"tasknotes:Open Pomodoro statistics": false,
"tasknotes:Create new task": false,
"obsidian-git:Open Git source control": false,
"obsidian-importer:Import notes": false
}
},
"active": "269d9cc885f76017",
"lastOpenFiles": [
"Personal Access/Alyxa's Private Investigator/Story Bible - Alyxa's PI.md",
"TaskNotes/Views/agenda-default.base",
"Markdown/Antigravity_output.md",
"Excalidraw/Drawing 2026-09-11 18.02.34.excalidraw.md",
"Markdown",
"2026-09-14.md",
"TaskNotes/Views/mini-calendar-default.base",
"TaskNotes/Views/calendar-default.base",
"Excalidraw/Drawing 2026-08-18 10.34.45.excalidraw.md",
"TaskNotes/Views/tasks-default.base",
"TaskNotes/Tasks/Physiology Test 2.md",
"TaskNotes/Tasks/Physiology Homework 2.md",
"Untitled.md",
"Ink/Writing/2026.9.8 - 21.08pm.svg",
"Untitled 1.md",
"Personal Access/Quote Book.md",
"Speech and Debate/Impromptu Examples.md",
"Personal Access/The Lost Colony.md",
"TaskNotes/Tasks/Suit ready for Photoshoot and Practice.md",
"Schoolwork/Human Lifespan Development 210 - Honors.md",
"SearXNG.md",
"TaskNotes/Views/relationships.base",
"TaskNotes/Views/pomodoro-stats.base",
"TaskNotes/Tasks/Physiology Prelab Questions.md",
"Food Journal.md",
"2026-08-26.md",
"Home Base.base",
"Phones Notes.md",
"Shopping.md",
"Schoolwork/Microbiology.md",
"Schoolwork/One two four five one two four five two four five six one two three four five six five six seven eight one two three six seven eight one two seven eight.md",
"TaskNotes/Views/kanban-default.base",
"TaskNotes/Tasks/Human Lifespan Dev. - Hello my name is Intro Video.md",
"TaskNotes/Tasks/Chemistry Quiz - Microbio.md",
"TaskNotes/Tasks/Human Lifespan - Chapter 1-2 Quiz.md",
"TaskNotes/Tasks",
"Ink/Writing/2026.7.23 - 14.07pm.svg",
"Ink/Drawing/2026.7.23 - 14.07pm.svg",
"Excalidraw/Scripts/Downloaded/Mindmap format.svg",
"Excalidraw/Scripts/Downloaded/Mindmap Builder.svg",
"Excalidraw/Scripts/Downloaded/Printable Layout Wizard.svg",
"Excalidraw/Scripts/Downloaded/Palm Guard.svg",
"Excalidraw/Scripts/Downloaded/PDF Page Text to Clipboard.svg",
"Excalidraw/Scripts/Downloaded/Mindmap connector.svg"
]
}
View File
-1
View File
@@ -1 +0,0 @@
# 2026-09-14
@@ -1,10 +0,0 @@
---
title: "Cassandra-Lamb-November-4.mp3"
source: "https://podcasts.captivate.fm/media/e8b65176-643c-46ab-8124-982ec888a0fc/Cassandra-Lamb-November-4.mp3"
author:
published:
created: 2026-08-25
description:
tags:
- "clippings"
---
File diff suppressed because it is too large Load Diff
@@ -1,72 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
%%
## Drawing
```compressed-json
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=
```
%%
@@ -1,106 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
%%
## Drawing
```compressed-json
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
ioKBsAErAgBKwQAA
```
%%
@@ -1,34 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
%%
## Drawing
```compressed-json
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
```
%%
@@ -1,14 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
## Drawing
```compressed-json
N4IgLgngDgpiBcIYA8DGBDANgSwCYCd0B3EAGhADcZ8BnbAewDsEAmcm+gV31TkQAswYKDXgB6MQHNsYfpwBGAOlT0AtmIBeNCtlQbs6RmPry6uA4wC0KDDgLFLUTJ2lH8MTDHQ0YNMWHRJMRZFFhCABjIkT1UYRjAaBABtAF1ydCgoAGUAsD5QSXw8LOwNPkZOTExyHRgiACF0VABrQq5GXABhekx6fAQQAGIAM1GxkABfCaA==
```
%%
@@ -1,14 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
## Drawing
```compressed-json
N4IgLgngDgpiBcIYA8DGBDANgSwCYCd0B3EAGhADcZ8BnbAewDsEAmcm+gV31TkQAswYKDXgB6MQHNsYfpwBGAOlT0AtmIBeNCtlQbs6RmPry6uA4wC0KDDgLFLUTJ2lH8MTDHQ0YNMWHRJMRZFFhCABjIkT1UYRjAaBABtAF1ydCgoAGUAsD5QSXw8LOwNPkZOTExyHRgiACF0VABrQq5GXABhekx6fAQQAGIAM1GxkABfCaA==
```
%%
@@ -1,132 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
%%
## Drawing
```compressed-json
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=
```
%%
@@ -1,38 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
%%
## Drawing
```compressed-json
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
```
%%
@@ -1,28 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
%%
## Drawing
```compressed-json
N4KAkARALgngDgUwgLgAQQQDwMYEMA2AlgCYBOuA7hADTgQBuCpAzoQPYB2KqATLZMzYBXUtiRoIACyhQ4zZAHoFAc0JRJQgEYA6bGwC2CgF7N6hbEcK4OCtptbErHALRY8RMpWdx8Q1TdIEfARcZgRmBShcZQUebR44gAYaOiCEfQQOKGZuAG1wMFAwYogSbggAdQANegqoAHYAMQBxFOLIWERywOwojmVgtpLMbmcAZgBGCf4SmFGAFgBWMZnI
ChJ1bjH6+dWpBEJlaW4JngntRb3rAfFURL3mKFI2AGsEAGE2fDZScoBiCYIQGAoaQTS4bAvZTPIQcYifb6/CRPazMOC4QJZUEQABmhHw+AAyrBBhJBB5sY9nm8KhtJNw+AUBE9XghiTBSehyWU9jCjhxwjk0NMmRA2OjsGo5sLEvdRdDhHAAJLEIWoXIAXT2OPIGRV3A4QgJe0IcKw5VwyV5wjhAuYaqK7Wg8FuYyZAF8HggEMQtjwABxjf2JeqJ
S6ixgsdhcNAANkZTsjrE4ADlOGITrHZfUpgBOWO5k3MAAiaSgPu4TyECD2mhtxAAosEMlk1YbjaKhHBiLhy77hfV/YPtvMg0GRU6iBwXgajfg9t9IRW0DiCGECu7wFq6Lg4HBib3bo7oJJ0rcIEQjlAhgxCAgKAAhCFQmFwhE/f44r/fm/YESYqAlXLfRiWpD4vg/CQASBGDf3/TJAOAp9IQVWF4QgpF0BRDg0QxBC4NIACgPSRp8SJElz25X0Zg
gP9CIQ4iQJZGk6QZGi6KI4DQNZdlOQgKiCM49IACVhH5QUTnY+CskYgB5CUpROWUpPomTgMaTgoEaXB9HxaVUHDEoOIY9TNMJQgjFuHg5SM6TEPSAAVLAoAAQUvGN0GCHFrxUoSmIxVzCLYChT1wftUHbecClouzGIbOEXKCkKQnCiAMWeKhfJM9JEoyhyXW6etBOy/RGl1BBRM5SKaOYbBngJKpuHmAMarqr58AATQZBILhoow2AMbhHUgegCGr
E4NyytSRPrO01QgV9qOi6ESHMyyGRsyAVuIYkEDgbhDK20gSAAWTYYgEHi3BNGCcLV3wMIaO299MOGiAHy+VLSGUcEAAoznqaheAmQHgdBxILgASmxYSEGUI0MW6H7cH+sZ7l4NGgZ4TG7ihiBJui4ysm4t55KgaM2znGidR0irMgu47+iG0VMmu27K1Ias9mwIh9rQKsa1FDhaY5rnRWEKAp1uAW9n0DE3lIFMRf5znBadOXSAVq6buXVABYJko
7AAKwQXpmEJYW4DOi7tfZlc1zVyAIXJxgHIG/BmadTpKLSXpo2xP9HgMfKujQarRUXN47od7VnhA33yc4bh7seiPQlcv3Xfd2cCQNyBHGYNnwKyZyTsyIRk5j6LNFNRx+gABUCHEmEyDMJFZnWlpKQhmAfWvTWUW3dZl6Ke5Okg4DYU0oAt3c4AHofwpHko60wQkE+ja3zz0LJcFNfGwE9Og8WCB1N3dIA==
```
%%
@@ -1,38 +0,0 @@
---
excalidraw-plugin: parsed
tags: [excalidraw]
---
==⚠ Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ⚠== You can decompress Drawing data with the command palette: 'Decompress current Excalidraw file'. For more info check in plugin settings under 'Saving'
# Excalidraw Data
## Text Elements
%%
## Drawing
```compressed-json
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=
```
%%
File diff suppressed because it is too large Load Diff
@@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svg-icon lucide-map-plus"><path d="m11 19-1.106-.552a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0l4.212 2.106a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619V12"/><path d="M15 5.764V12"/><path d="M18 15v6"/><path d="M21 18h-6"/><path d="M9 3.236v15"/></svg>

Before

Width:  |  Height:  |  Size: 505 B

@@ -1,113 +0,0 @@
/*
![](https://github.com/xllowl/obsidian-excalidraw-plugin/blob/master/images/mindmap%20connector.png)
![](https://github.com/xllowl/obsidian-excalidraw-plugin/blob/master/images/Mindmap%20connector1.png)
This script creates mindmap like lines(only right and down side are available). The line will starts according to the creation time of the elements. So you may need to create the header element first.
```javascript
*/
const elements = ea.getViewSelectedElements();
ea.copyViewElementsToEAforEditing(elements);
groups = ea.getMaximumGroups(elements);
els=[];
elsx=[];
elsy=[];
for (i = 0, len =groups.length; i < len; i++) {
els.push(ea.getLargestElement(groups[i]));
elsx.push(ea.getLargestElement(groups[i]).x);
elsy.push(ea.getLargestElement(groups[i]).y);
}
//line style setting
ea.style.strokeColor = els[0].strokeColor;
ea.style.strokeWidth = els[0].strokeWidth;
ea.style.strokeStyle = els[0].strokeStyle;
ea.style.strokeSharpness = els[0].strokeSharpness;
//all min max x y
let maxy = Math.max.apply(null, elsy);
let indexmaxy=elsy.indexOf(maxy);
let miny = Math.min.apply(null, elsy);
let indexminy = elsy.indexOf(miny);
let maxx = Math.max.apply(null, elsx);
let indexmaxx = elsx.indexOf(maxx);
let minx = Math.min.apply(null, elsx);
let indexminx = elsx.indexOf(minx);
//child max min x y
let gmaxy = Math.max.apply(null, elsy.slice(1));
let gindexmaxy=elsy.indexOf(gmaxy);
let gminy = Math.min.apply(null, elsy.slice(1));
let gindexminy = elsy.indexOf(gminy);
let gmaxx = Math.max.apply(null, elsx.slice(1));
let gindexmaxx = elsx.indexOf(gmaxx);
let gminx = Math.min.apply(null, elsx.slice(1));
let gindexminx = elsx.indexOf(gminx);
let s=0;//Set line direction down as default
if (indexminx==0 && els[0].x + els[0].width<=gminx) {
s=1;
}
else if (indexminy == 0) {
s=0;
}
var length_left;
if(els[0].x + els[0].width * 2<=gminx){length_left=els[0].x + els[0].width * 1.5;}
else {length_left=(els[0].x + els[0].width+gminx)/2;}
var length_down;
if(els[0].y + els[0].height* 2.5<=gminy){length_down=els[0].y + els[0].height * 2;}
else {length_down=(els[0].y + els[0].height+gminy)/2;}
if(s) {
ea.addLine(
[[length_left,
maxy + els[indexmaxy].height / 2],
[length_left,
miny + els[indexminy].height / 2]]
);
for (i = 1, len = groups.length; i < len; i++) {
ea.addLine(
[[els[i].x,
els[i].y + els[i].height/2],
[length_left,
els[i].y + els[i].height/2]]
);
}
ea.addArrow(
[[els[0].x+els[0].width,
els[0].y + els[0].height / 2],
[length_left,
els[0].y + els[0].height / 2]],
{
startArrowHead: "none",
endArrowHead: "dot"
}
)
}
else {
ea.addLine(
[[maxx + els[indexmaxx].width / 2,
length_down],
[minx + els[indexminx].width / 2,
length_down]]
);
for (i = 1, len = groups.length; i < len; i++) {
ea.addLine(
[[els[i].x + els[i].width / 2,
els[i].y],
[els[i].x + els[i].width / 2,
length_down]]
);
}
ea.addArrow(
[[els[0].x + els[0].width / 2,
els[0].y + els[0].height],
[els[0].x + els[0].width / 2,
length_down]],
{
startArrowHead: "none",
endArrowHead: "dot"
}
);
}
await ea.addElementsToView(false,false,true);
@@ -1,12 +0,0 @@
<svg width="607" height="541" viewBox="0 0 607 541" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M280 43.355V253.355H140V206.687L0 206.691V346.691H140V300.023H280V510.023C280 522.925 290.453 533.355 303.332 533.355H490.002C502.904 533.355 513.334 522.925 513.334 510.023C513.334 497.144 502.904 486.691 490.002 486.691H326.672V300.021H490.002C502.904 300.021 513.334 289.568 513.334 276.689C513.334 263.81 502.904 253.357 490.002 253.357H326.672V66.6869H490.002C502.904 66.6869 513.334 56.2569 513.334 43.3549C513.334 30.4529 502.904 20.0229 490.002 20.0229H303.332C290.453 20.019 280 30.4489 280 43.3509V43.355ZM46.67 300.025V253.357H93.338V300.025H46.67Z" fill="black"/>
<rect x="540" y="23" width="39" height="39" fill="#D9D9D9"/>
<rect x="503" width="104" height="95" fill="#D9D9D9"/>
<rect x="503.5" y="0.5" width="103" height="94" fill="black" stroke="black"/>
<rect x="503" y="223" width="104" height="95" fill="black"/>
<rect x="503.5" y="446.5" width="103" height="94" fill="black" stroke="black"/>
<path d="M532 243H580V291H532V243Z" fill="white"/>
<path d="M532 475H580V523H532V475Z" fill="white"/>
<path d="M532 243H580V291H532V243Z" fill="white"/>
<path d="M532 23H580V71H532V23Z" fill="white"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

@@ -1,370 +0,0 @@
/*
format **the left to right** mind map
![](https://raw.githubusercontent.com/zsviczian/obsidian-excalidraw-plugin/master/images/scripts-mindmap-format-1.png)
# tree
Mind map is actually a tree, so you must have a **root node**. The script will determine **the leftmost element** of the selected element as the root element (node is excalidraw element, e.g. rectangle, diamond, ellipse, text, image, but it can't be arrow, line, freedraw, **group**)
The element connecting node and node must be an **arrow** and have the correct direction, e.g. **parent node -> children node**
# sort
The order of nodes in the Y axis or vertical direction is determined by **the creation time** of the arrow connecting it
![](https://raw.githubusercontent.com/zsviczian/obsidian-excalidraw-plugin/master/images/scripts-mindmap-format-2.png)
So if you want to readjust the order, you can **delete arrows and reconnect them**
# setting
Script provides options to adjust the style of mind map, The option is at the bottom of the option of the exalidraw plugin(e.g. Settings -> Community plugins -> Excalidraw -> drag to bottom)
# problem
1. since the start bingding and end bingding of the arrow are easily disconnected from the node, so if there are unformatted parts, please **check the connection** and use the script to **reformat**
```javascript
*/
let settings = ea.getScriptSettings();
//set default values on first run
if (!settings["MindMap Format"]) {
settings = {
"MindMap Format": {
value: "Excalidraw/MindMap Format",
description:
"This is prepared for the namespace of MindMap Format and does not need to be modified",
},
"default gap": {
value: 10,
description: "Interval size of element",
},
"curve length": {
value: 40,
description: "The length of the curve part in the mind map line",
},
"length between element and line": {
value: 50,
description:
"The distance between the tail of the connection and the connecting elements of the mind map",
},
};
ea.setScriptSettings(settings);
}
const sceneElements = ea.getExcalidrawAPI().getSceneElements();
// default X coordinate of the middle point of the arc
const defaultDotX = Number(settings["curve length"].value);
// The default length from the middle point of the arc on the X axis
const defaultLengthWithCenterDot = Number(
settings["length between element and line"].value
);
// Initial trimming distance of the end point on the Y axis
const initAdjLength = 4;
// default gap
const defaultGap = Number(settings["default gap"].value);
const setCenter = (parent, line) => {
// Focus and gap need the api calculation of excalidraw
// e.g. determineFocusDistance, but they are not available now
// so they are uniformly set to 0/1
line.startBinding.focus = 0;
line.startBinding.gap = 1;
line.endBinding.focus = 0;
line.endBinding.gap = 1;
line.x = parent.x + parent.width;
line.y = parent.y + parent.height / 2;
};
/**
* set the middle point of curve
* @param {any} lineEl the line element of excalidraw
* @param {number} height height of dot on Y axis
* @param {number} [ratio=1] coefficient of the initial trimming distance of the end point on the Y axis, default is 1
*/
const setTopCurveDotOnLine = (lineEl, height, ratio = 1) => {
if (lineEl.points.length < 3) {
lineEl.points.splice(1, 0, [defaultDotX, lineEl.points[0][1] - height]);
} else if (lineEl.points.length === 3) {
lineEl.points[1] = [defaultDotX, lineEl.points[0][1] - height];
} else {
lineEl.points.splice(2, lineEl.points.length - 3);
lineEl.points[1] = [defaultDotX, lineEl.points[0][1] - height];
}
lineEl.points[2][0] = lineEl.points[1][0] + defaultLengthWithCenterDot;
// adjust the curvature of the second line segment
lineEl.points[2][1] = lineEl.points[1][1] - initAdjLength * ratio * 0.8;
};
const setMidCurveDotOnLine = (lineEl) => {
if (lineEl.points.length < 3) {
lineEl.points.splice(1, 0, [defaultDotX, lineEl.points[0][1]]);
} else if (lineEl.points.length === 3) {
lineEl.points[1] = [defaultDotX, lineEl.points[0][1]];
} else {
lineEl.points.splice(2, lineEl.points.length - 3);
lineEl.points[1] = [defaultDotX, lineEl.points[0][1]];
}
lineEl.points[2][0] = lineEl.points[1][0] + defaultLengthWithCenterDot;
lineEl.points[2][1] = lineEl.points[1][1];
};
/**
* set the middle point of curve
* @param {any} lineEl the line element of excalidraw
* @param {number} height height of dot on Y axis
* @param {number} [ratio=1] coefficient of the initial trimming distance of the end point on the Y axis, default is 1
*/
const setBottomCurveDotOnLine = (lineEl, height, ratio = 1) => {
if (lineEl.points.length < 3) {
lineEl.points.splice(1, 0, [defaultDotX, lineEl.points[0][1] + height]);
} else if (lineEl.points.length === 3) {
lineEl.points[1] = [defaultDotX, lineEl.points[0][1] + height];
} else {
lineEl.points.splice(2, lineEl.points.length - 3);
lineEl.points[1] = [defaultDotX, lineEl.points[0][1] + height];
}
lineEl.points[2][0] = lineEl.points[1][0] + defaultLengthWithCenterDot;
// adjust the curvature of the second line segment
lineEl.points[2][1] = lineEl.points[1][1] + initAdjLength * ratio * 0.8;
};
const setTextXY = (rect, text) => {
text.x = rect.x + (rect.width - text.width) / 2;
text.y = rect.y + (rect.height - text.height) / 2;
};
const setChildrenXY = (parent, children, line, elementsMap) => {
x = parent.x + parent.width + line.points[2][0];
y = parent.y + parent.height / 2 + line.points[2][1] - children.height / 2;
distX = children.x - x;
distY = children.y - y;
ea.getElementsInTheSameGroupWithElement(children, sceneElements).forEach((el) => {
el.x = el.x - distX;
el.y = el.y - distY;
});
if (
["rectangle", "diamond", "ellipse"].includes(children.type) &&
![null, undefined].includes(children.boundElements)
) {
const textDesc = children.boundElements.filter(
(el) => el.type === "text"
)[0];
if (textDesc !== undefined) {
const textEl = elementsMap.get(textDesc.id);
setTextXY(children, textEl);
}
}
};
/**
* returns the height of the upper part of all child nodes
* and the height of the lower part of all child nodes
* @param {Number[]} childrenTotalHeightArr
* @returns {Number[]} [topHeight, bottomHeight]
*/
const getNodeCurrentHeight = (childrenTotalHeightArr) => {
if (childrenTotalHeightArr.length <= 0) return [0, 0];
else if (childrenTotalHeightArr.length === 1)
return [childrenTotalHeightArr[0] / 2, childrenTotalHeightArr[0] / 2];
const heightArr = childrenTotalHeightArr;
let topHeight = 0,
bottomHeight = 0;
const isEven = heightArr.length % 2 === 0;
const mid = Math.floor(heightArr.length / 2);
const topI = mid - 1;
const bottomI = isEven ? mid : mid + 1;
topHeight = isEven ? 0 : heightArr[mid] / 2;
for (let i = topI; i >= 0; i--) {
topHeight += heightArr[i];
}
bottomHeight = isEven ? 0 : heightArr[mid] / 2;
for (let i = bottomI; i < heightArr.length; i++) {
bottomHeight += heightArr[i];
}
return [topHeight, bottomHeight];
};
/**
* handle the height of each point in the single-level tree
* @param {Array} lines
* @param {Map} elementsMap
* @param {Boolean} isEven
* @param {Number} mid 'lines' array midpoint index
* @returns {Array} height array corresponding to 'lines'
*/
const handleDotYValue = (lines, elementsMap, isEven, mid) => {
const getTotalHeight = (line, elementsMap) => {
return elementsMap.get(line.endBinding.elementId).totalHeight;
};
const getTopHeight = (line, elementsMap) => {
return elementsMap.get(line.endBinding.elementId).topHeight;
};
const getBottomHeight = (line, elementsMap) => {
return elementsMap.get(line.endBinding.elementId).bottomHeight;
};
const heightArr = new Array(lines.length).fill(0);
const upI = mid === 0 ? 0 : mid - 1;
const bottomI = isEven ? mid : mid + 1;
let initHeight = isEven ? 0 : getTopHeight(lines[mid], elementsMap);
for (let i = upI; i >= 0; i--) {
heightArr[i] = initHeight + getBottomHeight(lines[i], elementsMap);
initHeight += getTotalHeight(lines[i], elementsMap);
}
initHeight = isEven ? 0 : getBottomHeight(lines[mid], elementsMap);
for (let i = bottomI; i < lines.length; i++) {
heightArr[i] = initHeight + getTopHeight(lines[i], elementsMap);
initHeight += getTotalHeight(lines[i], elementsMap);
}
return heightArr;
};
/**
* format single-level tree
* @param {any} parent
* @param {Array} lines
* @param {Map} childrenDescMap
* @param {Map} elementsMap
*/
const formatTree = (parent, lines, childrenDescMap, elementsMap) => {
lines.forEach((item) => setCenter(parent, item));
const isEven = lines.length % 2 === 0;
const mid = Math.floor(lines.length / 2);
const heightArr = handleDotYValue(lines, childrenDescMap, isEven, mid);
lines.forEach((item, index) => {
if (isEven) {
if (index < mid) setTopCurveDotOnLine(item, heightArr[index], index + 1);
else setBottomCurveDotOnLine(item, heightArr[index], index - mid + 1);
} else {
if (index < mid) setTopCurveDotOnLine(item, heightArr[index], index + 1);
else if (index === mid) setMidCurveDotOnLine(item);
else setBottomCurveDotOnLine(item, heightArr[index], index - mid);
}
});
lines.forEach((item) => {
if (item.endBinding !== null) {
setChildrenXY(
parent,
elementsMap.get(item.endBinding.elementId),
item,
elementsMap
);
}
});
};
const generateTree = (elements) => {
const elIdMap = new Map([[elements[0].id, elements[0]]]);
let minXEl = elements[0];
for (let i = 1; i < elements.length; i++) {
elIdMap.set(elements[i].id, elements[i]);
if (
!(elements[i].type === "arrow" || elements[i].type === "line") &&
elements[i].x < minXEl.x
) {
minXEl = elements[i];
}
}
const root = {
el: minXEl,
totalHeight: minXEl.height,
topHeight: 0,
bottomHeight: 0,
linkChildrensLines: [],
isLeafNode: false,
children: [],
};
const preIdSet = new Set(); // The id_set of Elements that is already in the tree, avoid a dead cycle
const dfsForTreeData = (root) => {
if (preIdSet.has(root.el.id)) {
return 0;
}
preIdSet.add(root.el.id);
let lines = root.el.boundElements.filter(
(el) =>
el.type === "arrow" &&
!preIdSet.has(el.id) &&
elIdMap.get(el.id)?.startBinding?.elementId === root.el.id
);
if (lines.length === 0) {
root.isLeafNode = true;
root.totalHeight = root.el.height + 2 * defaultGap;
[root.topHeight, root.bottomHeight] = [
root.totalHeight / 2,
root.totalHeight / 2,
];
return root.totalHeight;
} else {
lines = lines.map((elementDesc) => {
preIdSet.add(elementDesc.id);
return elIdMap.get(elementDesc.id);
});
}
const linkChildrensLines = [];
lines.forEach((el) => {
const line = el;
if (
line &&
line.endBinding !== null &&
line.endBinding !== undefined &&
!preIdSet.has(elIdMap.get(line.endBinding.elementId).id)
) {
const children = elIdMap.get(line.endBinding.elementId);
linkChildrensLines.push(line);
root.children.push({
el: children,
totalHeight: 0,
topHeight: 0,
bottomHeight: 0,
linkChildrensLines: [],
isLeafNode: false,
children: [],
});
}
});
let totalHeight = 0;
root.children.forEach((el) => (totalHeight += dfsForTreeData(el)));
root.linkChildrensLines = linkChildrensLines;
if (root.children.length === 0) {
root.isLeafNode = true;
root.totalHeight = root.el.height + 2 * defaultGap;
[root.topHeight, root.bottomHeight] = [
root.totalHeight / 2,
root.totalHeight / 2,
];
} else if (root.children.length > 0) {
root.totalHeight = Math.max(root.el.height + 2 * defaultGap, totalHeight);
[root.topHeight, root.bottomHeight] = getNodeCurrentHeight(
root.children.map((item) => item.totalHeight)
);
}
return totalHeight;
};
dfsForTreeData(root);
const dfsForFormat = (root) => {
if (root.isLeafNode) return;
const childrenDescMap = new Map(
root.children.map((item) => [item.el.id, item])
);
formatTree(root.el, root.linkChildrensLines, childrenDescMap, elIdMap);
root.children.forEach((el) => dfsForFormat(el));
};
dfsForFormat(root);
};
const elements = ea.getViewSelectedElements();
generateTree(elements);
ea.copyViewElementsToEAforEditing(elements);
await ea.addElementsToView(false, false);
@@ -1 +0,0 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1673428425027" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1642" xmlns:xlink="http://www.w3.org/1999/xlink" width="24" height="24"><path d="M388.7 542.88c-16.57 0-30-13.43-30-30s13.43-30 30-30c52.3 0 94.85-42.55 94.85-94.85v-67.81c0-40.96 15.84-79.58 44.6-108.74 28.76-29.16 67.16-45.53 108.12-46.1l3.43-0.05c16.57-0.22 30.18 13.02 30.41 29.58 0.23 16.57-13.02 30.18-29.58 30.41l-3.43 0.05c-51.58 0.71-93.55 43.25-93.55 94.84v67.81c0 85.4-69.47 154.86-154.85 154.86z" fill="#000000" p-id="1643"></path><path d="M640.12 860.42h-0.42l-3.43-0.05c-40.96-0.56-79.36-16.93-108.12-46.09s-44.6-67.78-44.6-108.74v-67.8c0-52.3-42.55-94.85-94.85-94.85-16.57 0-30-13.43-30-30s13.43-30 30-30c85.38 0 154.85 69.47 154.85 154.85v67.8c0 51.59 41.96 94.13 93.55 94.84l3.43 0.05c16.57 0.23 29.81 13.84 29.59 30.41-0.24 16.42-13.62 29.58-30 29.58z" fill="#000000" p-id="1644"></path><path d="M640.11 542.88H388.7c-16.57 0-30-13.43-30-30s13.43-30 30-30h251.42c16.57 0 30 13.43 30 30-0.01 16.57-13.44 30-30.01 30z" fill="#000000" p-id="1645"></path><path d="M343.89 638.95H137.78c-38.6 0-70-31.4-70-70V456.81c0-38.6 31.4-70 70-70h206.11c38.6 0 70 31.4 70 70v112.13c0 38.6-31.4 70.01-70 70.01zM137.78 446.81c-5.51 0-10 4.49-10 10v112.13c0 5.51 4.49 10 10 10h206.11c5.51 0 10-4.49 10-10V456.81c0-5.51-4.49-10-10-10H137.78zM830.16 316.96h-93.98c-69.51 0-126.07-56.55-126.07-126.07S666.66 64.83 736.18 64.83h93.98c69.51 0 126.07 56.55 126.07 126.07-0.01 69.5-56.56 126.06-126.07 126.06z m-93.98-192.13c-36.43 0-66.07 29.64-66.07 66.07s29.64 66.07 66.07 66.07h93.98c36.43 0 66.07-29.64 66.07-66.07s-29.64-66.07-66.07-66.07h-93.98zM830.16 638.95h-93.98c-69.51 0-126.07-56.55-126.07-126.07 0-69.51 56.55-126.07 126.07-126.07h93.98c69.51 0 126.07 56.55 126.07 126.07-0.01 69.51-56.56 126.07-126.07 126.07z m-93.98-192.14c-36.43 0-66.07 29.64-66.07 66.07 0 36.43 29.64 66.07 66.07 66.07h93.98c36.43 0 66.07-29.64 66.07-66.07 0-36.43-29.64-66.07-66.07-66.07h-93.98z" fill="#000000" p-id="1646"></path><path d="M830.16 959.17h-93.98c-69.51 0-126.07-56.55-126.07-126.07s56.55-126.07 126.07-126.07h93.98c69.51 0 126.07 56.55 126.07 126.07s-56.56 126.07-126.07 126.07z m-93.98-192.13c-36.43 0-66.07 29.64-66.07 66.07s29.64 66.07 66.07 66.07h93.98c36.43 0 66.07-29.64 66.07-66.07s-29.64-66.07-66.07-66.07h-93.98z" fill="#000000" p-id="1647"></path></svg>

Before

Width:  |  Height:  |  Size: 2.5 KiB

@@ -1,36 +0,0 @@
/*
Copies the text from the selected PDF page on the Excalidraw canvas to the clipboard.
<a href="https://www.youtube.com/watch?v=Kwt_8WdOUT4" target="_blank"><img src ="https://i.ytimg.com/vi/Kwt_8WdOUT4/maxresdefault.jpg" style="width:560px;"></a>
```js*/
const el = ea.getViewSelectedElements().filter(el=>el.type==="image")[0];
if(!el) {
new Notice("Select a PDF page");
return;
}
const f = ea.getViewFileForImageElement(el);
if(f.extension.toLowerCase() !== "pdf") {
new Notice("Select a PDF page");
return;
}
const pageNum = parseInt(ea.targetView.excalidrawData.getFile(el.fileId).linkParts.ref.replace(/\D/g, ""));
if(isNaN(pageNum)) {
new Notice("Can't find page number");
return;
}
const pdfDoc = await window.pdfjsLib.getDocument(app.vault.getResourcePath(f)).promise;
const page = await pdfDoc.getPage(pageNum);
const text = await page.getTextContent();
if(!text) {
new Notice("Could not get text");
return;
}
pdfDoc.destroy();
window.navigator.clipboard.writeText(
text.items.reduce((acc, cur) => acc + cur.str.replace(/\x00/ug, '') + (cur.hasEOL ? "\n" : ""),"")
);
new Notice("Page text is available on the clipboard");
@@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svg-icon lucide-file-text"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"/><path d="M14 2v5a1 1 0 0 0 1 1h5"/><path d="M10 9H8"/><path d="M16 13H8"/><path d="M16 17H8"/></svg>

Before

Width:  |  Height:  |  Size: 437 B

Some files were not shown because too many files have changed in this diff Show More