2025-07-05 00:05:55 update from obsidian (7 file·s changed)
Affected files: .obsidian/community-plugins.json .obsidian/plugins/extended-graph/data.json .obsidian/plugins/lazy-plugins/data.json .obsidian/plugins/lazy-plugins/main.js .obsidian/plugins/lazy-plugins/manifest.json .obsidian/plugins/lazy-plugins/styles.css .obsidian/plugins/obsidian-pandoc-reference-list/data.json
This commit is contained in:
3
.obsidian/community-plugins.json
vendored
3
.obsidian/community-plugins.json
vendored
@@ -34,5 +34,6 @@
|
|||||||
"nldates-obsidian",
|
"nldates-obsidian",
|
||||||
"text-snippets-obsidian",
|
"text-snippets-obsidian",
|
||||||
"quickadd",
|
"quickadd",
|
||||||
"obsidian-list-callouts"
|
"obsidian-list-callouts",
|
||||||
|
"calendar"
|
||||||
]
|
]
|
132
.obsidian/plugins/extended-graph/data.json
vendored
132
.obsidian/plugins/extended-graph/data.json
vendored
@@ -66,137 +66,27 @@
|
|||||||
"additionalProperties": {},
|
"additionalProperties": {},
|
||||||
"backupGraphOptions": {
|
"backupGraphOptions": {
|
||||||
"collapse-filter": false,
|
"collapse-filter": false,
|
||||||
|
"localJumps": 1,
|
||||||
|
"localBacklinks": true,
|
||||||
|
"localForelinks": true,
|
||||||
|
"localInterlinks": false,
|
||||||
"showTags": false,
|
"showTags": false,
|
||||||
"showAttachments": false,
|
"showAttachments": false,
|
||||||
"hideUnresolved": false,
|
"hideUnresolved": false,
|
||||||
"showOrphans": false,
|
|
||||||
"collapse-color-groups": true,
|
"collapse-color-groups": true,
|
||||||
"colorGroups": [
|
"colorGroups": [],
|
||||||
{
|
|
||||||
"query": "tag:#not-done",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 8882055
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#MOC",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 10354945
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#s/PKM OR tag:#s/obsidian",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 4863904
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#flashcards",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 4863904
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#gists",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 6827411
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#CV",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 11010185
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#s/maths",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 2792960
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#s/logique",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 13050
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#s/informatique",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 14772500
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#t/personne",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 6655149
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "path:sources",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 3770873
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#s/politique OR tag:#s/science/sociologie",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 35464
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#s/science OR tag:#s/art OR tag:#s/autres OR tag:#s/cuisine",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 15646813
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#t/exercice OR tag:#t/cours OR tag:#s/fac",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 16759552
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#t/devoir OR tag:#t/devoir-fait",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 16711914
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"query": "tag:#excalidraw",
|
|
||||||
"color": {
|
|
||||||
"a": 1,
|
|
||||||
"rgb": 8019199
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"collapse-display": true,
|
"collapse-display": true,
|
||||||
"showArrow": false,
|
"showArrow": false,
|
||||||
"textFadeMultiplier": 0,
|
"textFadeMultiplier": 0,
|
||||||
"nodeSizeMultiplier": 1.29210205078125,
|
"nodeSizeMultiplier": 1,
|
||||||
"lineSizeMultiplier": 1.23408203125,
|
"lineSizeMultiplier": 1,
|
||||||
"collapse-forces": true,
|
"collapse-forces": true,
|
||||||
"centerStrength": 0.384765625,
|
"centerStrength": 0.591389973958333,
|
||||||
"repelStrength": 8.4228515625,
|
"repelStrength": 10,
|
||||||
"linkStrength": 1,
|
"linkStrength": 1,
|
||||||
"linkDistance": 30,
|
"linkDistance": 30,
|
||||||
"scale": 1.2190307421143933,
|
"scale": 1.7881233372819851,
|
||||||
"close": false
|
"close": true
|
||||||
},
|
},
|
||||||
"states": [
|
"states": [
|
||||||
{
|
{
|
||||||
|
388
.obsidian/plugins/lazy-plugins/data.json
vendored
388
.obsidian/plugins/lazy-plugins/data.json
vendored
@@ -1,388 +0,0 @@
|
|||||||
{
|
|
||||||
"dualConfigs": false,
|
|
||||||
"showConsoleLog": false,
|
|
||||||
"desktop": {
|
|
||||||
"shortDelaySeconds": 5,
|
|
||||||
"longDelaySeconds": 15,
|
|
||||||
"delayBetweenPlugins": 40,
|
|
||||||
"defaultStartupType": null,
|
|
||||||
"showDescriptions": true,
|
|
||||||
"plugins": {
|
|
||||||
"3d-graph": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-advanced-slides": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-asciimath": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"better-fn": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"math-in-callout": {
|
|
||||||
"startupType": "short"
|
|
||||||
},
|
|
||||||
"obsidian42-brat": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"breadcrumbs": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"calendar": {
|
|
||||||
"startupType": "short"
|
|
||||||
},
|
|
||||||
"canvas-presentation": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-card-view-mode": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-charts": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"cloze": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"code-styler": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"cmdr": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-completr": {
|
|
||||||
"startupType": "short"
|
|
||||||
},
|
|
||||||
"obsidian-contextual-typography": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"crumbs-obsidian": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-custom-frames": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"cycle-in-sidebar": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"dataview": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"obsidian-day-planner": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"desk": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-desmos": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"drawio-obsidian": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"dynamic-text-concealer": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"excalibrain": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-excalidraw-plugin": {
|
|
||||||
"startupType": "short"
|
|
||||||
},
|
|
||||||
"obsidian-latex": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"floating-toc": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-footnotes": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"garble-text": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"graph-analysis": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"heatmap-calendar": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-hider": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"obsidian-hover-editor": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-icon-shortcodes": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"juggl": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"mrj-jump-to-link": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-kanban": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"languagetool": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"obsidian-latex-suite": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"latex-to-unicode": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"math-booster": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-list-callouts": {
|
|
||||||
"startupType": "short"
|
|
||||||
},
|
|
||||||
"lovely-mindmap": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-markmind": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"mathlinks": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-meta-bind-plugin": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"metaedit": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-mind-map": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-minimal-settings": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"nldates-obsidian": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"nlp": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"inline-math": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"note-aliases": {
|
|
||||||
"startupType": "short"
|
|
||||||
},
|
|
||||||
"number-headings-obsidian": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"obsidian-better-internal-link-inserter": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-functionplot": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-ocr": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-query-language": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"omnisearch": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"obsidian-outliner": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-pandoc": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-pandoc-reference-list": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"pane-relief": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"url-into-selection": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-path-finder": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"break-page": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"persistent-graph": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-pocket": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"podnotes": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"postfix": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"qmd-as-md-obsidian": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"obsidian-qrcode-plugin": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"quick-preview": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"darlal-switcher-plus": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"quickadd": {
|
|
||||||
"startupType": "short"
|
|
||||||
},
|
|
||||||
"obsidian-quickshare": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"restore-tab-key": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-rollover-daily-todos": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"rss-reader": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"run": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-sequence-hotkeys": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-share-as-gist": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"share-note": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"obsidian-shellcommands": {
|
|
||||||
"startupType": "short"
|
|
||||||
},
|
|
||||||
"obsidian-spaced-repetition": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian42-strange-new-worlds": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-style-settings": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"supercharged-links-obsidian": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"surfing": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"sync-graph-settings": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"ob-table-enhancer": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-plugin-toc": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"tag-word-cloud": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"tag-wrangler": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"obsidian-task-progress-bar": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-tasks-plugin": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"tasks-calendar-wrapper": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"templater-obsidian": {
|
|
||||||
"startupType": "short"
|
|
||||||
},
|
|
||||||
"terminal": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"text-snippets-obsidian": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"time-ruler": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"txt-as-md-obsidian": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"unicode-search": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"various-complements": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-vault-statistics-plugin": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"vertical-tabs": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"vertical-tabs-view": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"obsidian-vimrc-support": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"zotlit": {
|
|
||||||
"startupType": "long"
|
|
||||||
},
|
|
||||||
"mysnippets-plugin": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"janitor": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"3d-graph-new": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"graph-link-types": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"graph-nested-tags": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"vault-size-history": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"obsidian-banners": {
|
|
||||||
"startupType": "disabled"
|
|
||||||
},
|
|
||||||
"github-sync": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"dynamic-outline": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"obsidian-daily-note-outline": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"obsidian-git": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"wikilinks-to-mdlinks-obsidian": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"extended-graph": {
|
|
||||||
"startupType": "instant"
|
|
||||||
},
|
|
||||||
"contribution-graph": {
|
|
||||||
"startupType": "instant"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
322
.obsidian/plugins/lazy-plugins/main.js
vendored
322
.obsidian/plugins/lazy-plugins/main.js
vendored
@@ -1,322 +0,0 @@
|
|||||||
/*
|
|
||||||
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
||||||
if you want to view the source, please visit the github repository of this plugin
|
|
||||||
*/
|
|
||||||
|
|
||||||
var __defProp = Object.defineProperty;
|
|
||||||
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
||||||
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
||||||
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
||||||
var __commonJS = (cb, mod) => function __require() {
|
|
||||||
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
||||||
};
|
|
||||||
var __export = (target, all) => {
|
|
||||||
for (var name in all)
|
|
||||||
__defProp(target, name, { get: all[name], enumerable: true });
|
|
||||||
};
|
|
||||||
var __copyProps = (to, from, except, desc) => {
|
|
||||||
if (from && typeof from === "object" || typeof from === "function") {
|
|
||||||
for (let key of __getOwnPropNames(from))
|
|
||||||
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
||||||
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
||||||
}
|
|
||||||
return to;
|
|
||||||
};
|
|
||||||
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
||||||
|
|
||||||
// manifest.json
|
|
||||||
var require_manifest = __commonJS({
|
|
||||||
"manifest.json"(exports, module2) {
|
|
||||||
module2.exports = {
|
|
||||||
id: "lazy-plugins",
|
|
||||||
name: "Lazy Plugin Loader",
|
|
||||||
version: "1.0.18",
|
|
||||||
minAppVersion: "1.6.0",
|
|
||||||
description: "Load plugins with a delay on startup, so that you can get your app startup down into the sub-second loading time.",
|
|
||||||
author: "Alan Grainger",
|
|
||||||
authorUrl: "https://github.com/alangrainger",
|
|
||||||
fundingUrl: "https://ko-fi.com/alan_",
|
|
||||||
isDesktopOnly: false
|
|
||||||
};
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// src/main.ts
|
|
||||||
var main_exports = {};
|
|
||||||
__export(main_exports, {
|
|
||||||
default: () => LazyPlugin
|
|
||||||
});
|
|
||||||
module.exports = __toCommonJS(main_exports);
|
|
||||||
var import_obsidian2 = require("obsidian");
|
|
||||||
|
|
||||||
// src/settings.ts
|
|
||||||
var import_obsidian = require("obsidian");
|
|
||||||
var DEFAULT_DEVICE_SETTINGS = {
|
|
||||||
shortDelaySeconds: 5,
|
|
||||||
longDelaySeconds: 15,
|
|
||||||
delayBetweenPlugins: 40,
|
|
||||||
// milliseconds
|
|
||||||
defaultStartupType: null,
|
|
||||||
showDescriptions: true,
|
|
||||||
plugins: {}
|
|
||||||
};
|
|
||||||
var DEFAULT_SETTINGS = {
|
|
||||||
dualConfigs: false,
|
|
||||||
showConsoleLog: false,
|
|
||||||
desktop: DEFAULT_DEVICE_SETTINGS
|
|
||||||
};
|
|
||||||
var LoadingMethods = {
|
|
||||||
disabled: "\u26D4 Disable plugin",
|
|
||||||
instant: "\u26A1 Instant",
|
|
||||||
short: "\u231A Short delay",
|
|
||||||
long: "\u{1F4A4} Long delay"
|
|
||||||
};
|
|
||||||
var SettingsTab = class extends import_obsidian.PluginSettingTab {
|
|
||||||
constructor(app, plugin) {
|
|
||||||
super(app, plugin);
|
|
||||||
this.dropdowns = [];
|
|
||||||
this.app = app;
|
|
||||||
this.lazyPlugin = plugin;
|
|
||||||
}
|
|
||||||
async display() {
|
|
||||||
const { containerEl } = this;
|
|
||||||
this.containerEl = containerEl;
|
|
||||||
await this.lazyPlugin.loadSettings();
|
|
||||||
this.buildDom();
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Build the Settings modal DOM elements
|
|
||||||
*/
|
|
||||||
buildDom() {
|
|
||||||
const pluginSettings = this.lazyPlugin.settings.plugins;
|
|
||||||
this.containerEl.empty();
|
|
||||||
new import_obsidian.Setting(this.containerEl).setName("Separate desktop/mobile configuration").setDesc(`Enable this if you want to have different settings depending whether you're using a desktop or mobile device. All of the settings below can be configured differently on desktop and mobile. You're currently using the ${this.lazyPlugin.device} settings.`).addToggle((toggle) => {
|
|
||||||
toggle.setValue(this.lazyPlugin.data.dualConfigs).onChange(async (value) => {
|
|
||||||
this.lazyPlugin.data.dualConfigs = value;
|
|
||||||
await this.lazyPlugin.saveSettings();
|
|
||||||
await this.lazyPlugin.loadSettings();
|
|
||||||
this.buildDom();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
new import_obsidian.Setting(this.containerEl).setName("Lazy Loader settings").setHeading();
|
|
||||||
Object.entries({
|
|
||||||
shortDelaySeconds: "Short delay (seconds)",
|
|
||||||
longDelaySeconds: "Long delay (seconds)"
|
|
||||||
}).forEach(([key, name]) => {
|
|
||||||
new import_obsidian.Setting(this.containerEl).setName(name).addText((text) => text.setValue(this.lazyPlugin.settings[key].toString()).onChange(async (value) => {
|
|
||||||
this.lazyPlugin.settings[key] = parseFloat(parseFloat(value).toFixed(3));
|
|
||||||
await this.lazyPlugin.saveSettings();
|
|
||||||
}));
|
|
||||||
});
|
|
||||||
new import_obsidian.Setting(this.containerEl).setName("Default startup type for new plugins").addDropdown((dropdown) => {
|
|
||||||
dropdown.addOption("", "Nothing configured");
|
|
||||||
this.addDelayOptions(dropdown);
|
|
||||||
dropdown.setValue(this.lazyPlugin.settings.defaultStartupType || "").onChange(async (value) => {
|
|
||||||
this.lazyPlugin.settings.defaultStartupType = value || null;
|
|
||||||
await this.lazyPlugin.saveSettings();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
new import_obsidian.Setting(this.containerEl).setName("Show plugin descriptions").addToggle((toggle) => {
|
|
||||||
toggle.setValue(this.lazyPlugin.settings.showDescriptions).onChange(async (value) => {
|
|
||||||
this.lazyPlugin.settings.showDescriptions = value;
|
|
||||||
await this.lazyPlugin.saveSettings();
|
|
||||||
this.buildDom();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
new import_obsidian.Setting(this.containerEl).setName("Set the delay for all plugins at once").addDropdown((dropdown) => {
|
|
||||||
dropdown.addOption("", "Set all plugins to be:");
|
|
||||||
this.addDelayOptions(dropdown);
|
|
||||||
dropdown.onChange(async (value) => {
|
|
||||||
this.lazyPlugin.manifests.forEach((plugin) => {
|
|
||||||
pluginSettings[plugin.id] = { startupType: value };
|
|
||||||
});
|
|
||||||
this.dropdowns.forEach((dropdown2) => dropdown2.setValue(value));
|
|
||||||
dropdown.setValue("");
|
|
||||||
await this.lazyPlugin.saveSettings();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
new import_obsidian.Setting(this.containerEl).setName("Plugins").setHeading().setDesc("Filter by: ").then((setting) => {
|
|
||||||
this.addFilterButton(setting.descEl, "All");
|
|
||||||
Object.keys(LoadingMethods).forEach((key) => this.addFilterButton(setting.descEl, LoadingMethods[key], key));
|
|
||||||
});
|
|
||||||
this.lazyPlugin.manifests.forEach((plugin) => {
|
|
||||||
const currentValue = this.lazyPlugin.getPluginStartup(plugin.id);
|
|
||||||
if (this.filter && currentValue !== this.filter)
|
|
||||||
return;
|
|
||||||
new import_obsidian.Setting(this.containerEl).setName(plugin.name).addDropdown((dropdown) => {
|
|
||||||
this.dropdowns.push(dropdown);
|
|
||||||
this.addDelayOptions(dropdown);
|
|
||||||
dropdown.setValue(currentValue).onChange(async (value) => {
|
|
||||||
await this.lazyPlugin.updatePluginSettings(plugin.id, value);
|
|
||||||
this.lazyPlugin.setPluginStartup(plugin.id).then();
|
|
||||||
});
|
|
||||||
}).then((setting) => {
|
|
||||||
if (this.lazyPlugin.settings.showDescriptions) {
|
|
||||||
setting.setDesc(plugin.description);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Add the dropdown select options for each delay type
|
|
||||||
*/
|
|
||||||
addDelayOptions(el) {
|
|
||||||
Object.keys(LoadingMethods).forEach((key) => {
|
|
||||||
el.addOption(key, LoadingMethods[key]);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Add a filter button in the header of the plugin list
|
|
||||||
*/
|
|
||||||
addFilterButton(el, text, value) {
|
|
||||||
const link = el.createEl("button", { text });
|
|
||||||
link.addClass("lazy-plugin-filter");
|
|
||||||
link.onclick = () => {
|
|
||||||
this.filter = value;
|
|
||||||
this.buildDom();
|
|
||||||
};
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
// src/main.ts
|
|
||||||
var lazyPluginId = require_manifest().id;
|
|
||||||
var LazyPlugin = class extends import_obsidian2.Plugin {
|
|
||||||
constructor() {
|
|
||||||
super(...arguments);
|
|
||||||
this.device = "desktop/global";
|
|
||||||
this.pendingTimeouts = [];
|
|
||||||
}
|
|
||||||
async onload() {
|
|
||||||
await this.loadSettings();
|
|
||||||
this.manifests = Object.values(this.app.plugins.manifests).filter((plugin) => plugin.id !== lazyPluginId && // Filter out the Lazy Loader plugin
|
|
||||||
!(import_obsidian2.Platform.isMobile && plugin.isDesktopOnly)).sort((a, b) => a.name.localeCompare(b.name));
|
|
||||||
await this.setInitialPluginsConfiguration();
|
|
||||||
this.addSettingTab(new SettingsTab(this.app, this));
|
|
||||||
this.manifests.forEach((plugin) => this.setPluginStartup(plugin.id));
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Configure and load a plugin based on its startup settings.
|
|
||||||
*/
|
|
||||||
async setPluginStartup(pluginId) {
|
|
||||||
var _a, _b;
|
|
||||||
const obsidian = this.app.plugins;
|
|
||||||
const startupType = this.getPluginStartup(pluginId);
|
|
||||||
const isActiveOnStartup = obsidian.enabledPlugins.has(pluginId);
|
|
||||||
const isRunning = (_b = (_a = obsidian.plugins) == null ? void 0 : _a[pluginId]) == null ? void 0 : _b._loaded;
|
|
||||||
switch (startupType) {
|
|
||||||
case "disabled" /* disabled */:
|
|
||||||
await obsidian.disablePluginAndSave(pluginId);
|
|
||||||
break;
|
|
||||||
case "instant" /* instant */:
|
|
||||||
if (!isActiveOnStartup && !isRunning)
|
|
||||||
await obsidian.enablePluginAndSave(pluginId);
|
|
||||||
break;
|
|
||||||
case "short" /* short */:
|
|
||||||
case "long" /* long */:
|
|
||||||
if (isActiveOnStartup) {
|
|
||||||
await obsidian.disablePluginAndSave(pluginId);
|
|
||||||
await obsidian.enablePlugin(pluginId);
|
|
||||||
} else if (!isRunning) {
|
|
||||||
const seconds = startupType === "short" /* short */ ? this.settings.shortDelaySeconds : this.settings.longDelaySeconds;
|
|
||||||
const stagger = isNaN(this.settings.delayBetweenPlugins) ? 40 : this.settings.delayBetweenPlugins;
|
|
||||||
const delay = this.manifests.findIndex((x) => x.id === pluginId) * stagger;
|
|
||||||
const timeout = setTimeout(async () => {
|
|
||||||
var _a2, _b2;
|
|
||||||
if (!((_b2 = (_a2 = obsidian.plugins) == null ? void 0 : _a2[pluginId]) == null ? void 0 : _b2._loaded)) {
|
|
||||||
if (this.data.showConsoleLog) {
|
|
||||||
console.log(`Starting ${pluginId} after a ${startupType} delay`);
|
|
||||||
}
|
|
||||||
await obsidian.enablePlugin(pluginId);
|
|
||||||
}
|
|
||||||
}, seconds * 1e3 + delay);
|
|
||||||
this.pendingTimeouts.push(timeout);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Get the startup type for a given pluginId, falling back to Obsidian's current
|
|
||||||
* loading method (enabled/disabled) if no configuration is found for this plugin.
|
|
||||||
*/
|
|
||||||
getPluginStartup(pluginId) {
|
|
||||||
var _a, _b;
|
|
||||||
return ((_b = (_a = this.settings.plugins) == null ? void 0 : _a[pluginId]) == null ? void 0 : _b.startupType) || this.settings.defaultStartupType || (this.app.plugins.enabledPlugins.has(pluginId) ? "instant" /* instant */ : "disabled" /* disabled */);
|
|
||||||
}
|
|
||||||
async loadSettings() {
|
|
||||||
this.data = Object.assign({}, DEFAULT_SETTINGS, await this.loadData());
|
|
||||||
this.data.desktop = Object.assign({}, DEFAULT_DEVICE_SETTINGS, this.data.desktop);
|
|
||||||
if (this.data.dualConfigs && import_obsidian2.Platform.isMobile) {
|
|
||||||
if (!this.data.mobile) {
|
|
||||||
this.data.mobile = Object.assign({}, this.data.desktop);
|
|
||||||
} else {
|
|
||||||
this.data.mobile = Object.assign({}, DEFAULT_DEVICE_SETTINGS, this.data.mobile);
|
|
||||||
}
|
|
||||||
this.settings = this.data.mobile;
|
|
||||||
this.device = "mobile";
|
|
||||||
} else {
|
|
||||||
this.settings = this.data.desktop;
|
|
||||||
this.device = "desktop/global";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
async saveSettings() {
|
|
||||||
await this.saveData(this.data);
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Set the initial config value for all installed plugins. This will also set the value
|
|
||||||
* for any new plugin in the future, depending on what default value is chosen in the
|
|
||||||
* Settings page.
|
|
||||||
*/
|
|
||||||
async setInitialPluginsConfiguration() {
|
|
||||||
var _a, _b;
|
|
||||||
for (const plugin of this.manifests) {
|
|
||||||
if (!((_b = (_a = this.settings.plugins) == null ? void 0 : _a[plugin.id]) == null ? void 0 : _b.startupType)) {
|
|
||||||
await this.updatePluginSettings(plugin.id, this.getPluginStartup(plugin.id));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* Update an individual plugin's configuration in the settings file
|
|
||||||
*/
|
|
||||||
async updatePluginSettings(pluginId, startupType) {
|
|
||||||
this.settings.plugins[pluginId] = { startupType };
|
|
||||||
await this.saveSettings();
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
* Originally this was set up so that when the plugin unloaded, it would enablePluginAndSave()
|
|
||||||
* the other plugins based on their Lazy Loader startup config.
|
|
||||||
*
|
|
||||||
* The problem with that is that the onunload() function is called during plugin *update* also,
|
|
||||||
* which means that every time you get an update for this plugin, it would cause:
|
|
||||||
*
|
|
||||||
* a) A slowdown across the vault for the next 1-2 restarts.
|
|
||||||
* b) The possibility of plugins being loaded twice / duplicated.
|
|
||||||
*
|
|
||||||
* Since across all users, updating the plugin is common, and uninstalling the plugin is less
|
|
||||||
* common, I decided to remove this function.
|
|
||||||
*
|
|
||||||
* I apologise to the people who have to manually re-enable their plugins once they uninstall this one :(
|
|
||||||
*
|
|
||||||
* --------------------
|
|
||||||
*
|
|
||||||
* When the Lazy Loader plugin is disabled / deleted from Obsidian, iterate over
|
|
||||||
* the configured plugins and re-enable any that are set to be delayed.
|
|
||||||
*
|
|
||||||
* This will cause a short slowdown as each plugin has to be disabled and then
|
|
||||||
* re-enabled to save its new startup state.
|
|
||||||
*
|
|
||||||
async onunload () {
|
|
||||||
// Clear any pending timeouts
|
|
||||||
this.pendingTimeouts.forEach(timeout => clearTimeout(timeout))
|
|
||||||
// Iterate over the configured plugins
|
|
||||||
for (const plugin of this.manifests) {
|
|
||||||
const startupType = this.settings.plugins?.[plugin.id]?.startupType
|
|
||||||
if (startupType !== LoadingMethod.disabled) {
|
|
||||||
await this.app.plugins.disablePlugin(plugin.id)
|
|
||||||
await this.app.plugins.enablePluginAndSave(plugin.id)
|
|
||||||
console.log(`Set ${plugin.id} back to instant start`)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} */
|
|
||||||
};
|
|
||||||
|
|
||||||
/* nosourcemap */
|
|
11
.obsidian/plugins/lazy-plugins/manifest.json
vendored
11
.obsidian/plugins/lazy-plugins/manifest.json
vendored
@@ -1,11 +0,0 @@
|
|||||||
{
|
|
||||||
"id": "lazy-plugins",
|
|
||||||
"name": "Lazy Plugin Loader",
|
|
||||||
"version": "1.0.18",
|
|
||||||
"minAppVersion": "1.6.0",
|
|
||||||
"description": "Load plugins with a delay on startup, so that you can get your app startup down into the sub-second loading time.",
|
|
||||||
"author": "Alan Grainger",
|
|
||||||
"authorUrl": "https://github.com/alangrainger",
|
|
||||||
"fundingUrl": "https://ko-fi.com/alan_",
|
|
||||||
"isDesktopOnly": false
|
|
||||||
}
|
|
4
.obsidian/plugins/lazy-plugins/styles.css
vendored
4
.obsidian/plugins/lazy-plugins/styles.css
vendored
@@ -1,4 +0,0 @@
|
|||||||
.lazy-plugin-filter {
|
|
||||||
margin: 4px;
|
|
||||||
font-size: 90%;
|
|
||||||
}
|
|
@@ -5,12 +5,12 @@
|
|||||||
{
|
{
|
||||||
"id": 2,
|
"id": 2,
|
||||||
"name": "memoire-L3",
|
"name": "memoire-L3",
|
||||||
"lastUpdate": 1751653394974
|
"lastUpdate": 1751666746111
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": 1,
|
"id": 1,
|
||||||
"name": "Ma bibliothèque",
|
"name": "Ma bibliothèque",
|
||||||
"lastUpdate": 1751653395156
|
"lastUpdate": 1751666746276
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"renderCitations": true,
|
"renderCitations": true,
|
||||||
|
Reference in New Issue
Block a user