Compare commits
120 Commits
5123b2c7c0
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
| ed4d0e40c2 | |||
| 9a7c4c68c8 | |||
| 957644c7e7 | |||
| bdbeb211a5 | |||
| f248b3aea3 | |||
| 584e74eea1 | |||
| a5e63eadb9 | |||
| aa6942dd07 | |||
| 684411fb7c | |||
| 878f79f5c4 | |||
| de58e1e56e | |||
| 8f4d8164bc | |||
| 769c65fdcd | |||
| 25c6173cb8 | |||
| 474a4a3a12 | |||
| f2aaa00fa9 | |||
| 1c7e844e9f | |||
| 636281b174 | |||
| 90537b3181 | |||
| 654decd27f | |||
| fac8887c32 | |||
| 0c700153eb | |||
| 7688bdc9c8 | |||
| a5f8cde4ad | |||
| 2d908c75e3 | |||
| 35ea344131 | |||
| c13fb819e1 | |||
| 8573e8c523 | |||
| 747fe85e65 | |||
| 16017e9cfd | |||
| 4663a35885 | |||
| ae109198ac | |||
| 196e9b4c3e | |||
| 7df02cf8e7 | |||
| 8a16e6a4f7 | |||
| 49ea2fe0f4 | |||
| 76f2eec32b | |||
| 5d2da708fe | |||
| 2b6cfff464 | |||
| 5fdb6d0d28 | |||
| 50f4e3cff3 | |||
| 0e31f02e14 | |||
| c2a22c0d5e | |||
| 6807606ecf | |||
| 3490310578 | |||
| 61b5600bcd | |||
| be7df66372 | |||
| 54cf10d26c | |||
| fdd1843cf6 | |||
| c5ffa83773 | |||
| 5da910894d | |||
| cd25e13a8e | |||
| 6c5ac1368d | |||
| 99fdd6a658 | |||
| a3c704eee2 | |||
| b623b93481 | |||
| e82c86aee9 | |||
| cb64ad3ec7 | |||
| 058e3668bf | |||
| 802c37b8cd | |||
| e9f09eca94 | |||
| d7172fe4ad | |||
| 6caae38fa1 | |||
| c107bfd157 | |||
| 0949b274e7 | |||
| b1570c3b23 | |||
| 007f5cd406 | |||
| 6994f23ee0 | |||
| 7c7a1d0c09 | |||
| 467b5475f2 | |||
| 18bcd70776 | |||
| ec905ac9bf | |||
| 9342579a82 | |||
| 603e8845b2 | |||
| d0d827cc3f | |||
| 7a8a47821c | |||
| 75f873c0ce | |||
| 3b71b8cdf5 | |||
| 150e8c0828 | |||
| a025c2788e | |||
| 66ab1eb6d8 | |||
| f0b87a3a3b | |||
| e39ed02b8a | |||
| c40a632b39 | |||
| a767576a3c | |||
| 6dc42541fe | |||
| 59ce423533 | |||
| 66c904248d | |||
| 602512594d | |||
| 3223d21f20 | |||
| 1f30b64e0f | |||
| 3290c8dc2e | |||
| 4462741284 | |||
| af9f7a3c69 | |||
| ffb025358a | |||
| ddf55cd1c7 | |||
| 5f0bb32c99 | |||
| 95ff270ad5 | |||
| c1f592ab9d | |||
| 3f75252fae | |||
| 0ada9405cc | |||
| 32791298bc | |||
| 735a813c7c | |||
| f9621c44c8 | |||
| 9462c5ad97 | |||
| 47ef3598ad | |||
| 566c7d0aab | |||
| de456462e4 | |||
| dd96ee34b8 | |||
| 604e7b7c03 | |||
| 9b7ca323a2 | |||
| 89cb9e96f0 | |||
| a5e0e8ed09 | |||
| d338825b0d | |||
| 4b614517f1 | |||
| 1f03ab4f0b | |||
| 79c04e52e8 | |||
| be5cab19dd | |||
| 5d53ec6ddf | |||
| a1f8f95393 |
+2
-1
@@ -4,7 +4,8 @@
|
||||
imap jk <Esc>la
|
||||
imap kj <Esc>i
|
||||
|
||||
nmap <C-n> }
|
||||
"nmap <C-n> }
|
||||
nmap <C-n> :e<CR>
|
||||
nmap <C-p> {
|
||||
|
||||
" these break some behaviors like dj
|
||||
|
||||
Vendored
+9
-7
@@ -1,14 +1,13 @@
|
||||
{
|
||||
"theme": "system",
|
||||
"cssTheme": "Minimal",
|
||||
"baseFontSize": 22,
|
||||
"baseFontSize": 26,
|
||||
"enabledCssSnippets": [
|
||||
"pdf_darkmode",
|
||||
"query_header_title",
|
||||
"hide_excalibrain_ui",
|
||||
"tabs_on_multiple_rown",
|
||||
"darkmode",
|
||||
"breadcrumbs",
|
||||
"[ui] Ultra Compact Tab Header",
|
||||
"Daily Note Outline",
|
||||
"Tasks - Compact",
|
||||
@@ -21,7 +20,6 @@
|
||||
"MySnippets",
|
||||
"Omnisearch",
|
||||
"omts-compact_tabs",
|
||||
"omts-Tasks - Compact",
|
||||
"omts-Day Planner (Ivan Lednev)",
|
||||
"omts-[ui] Compact Sidebar",
|
||||
"latex_mathjax",
|
||||
@@ -33,13 +31,17 @@
|
||||
"stacked_tabs",
|
||||
"vertical_stacked_tabs",
|
||||
"custom_callouts",
|
||||
"general_interface",
|
||||
"checkboxes",
|
||||
"headers",
|
||||
"omts-[editor] Compact Right Sidebar notes",
|
||||
"omts-Excalidraw - Compact",
|
||||
"dark_pdf",
|
||||
"breadcrumbs",
|
||||
"checkboxes",
|
||||
"general_interface",
|
||||
"headers",
|
||||
"omts-Tasks - Compact",
|
||||
"popup_preview_size",
|
||||
"dark_pdf"
|
||||
"linktree",
|
||||
"pdf_export"
|
||||
],
|
||||
"interfaceFontFamily": "CMU Bright,CMU Serif,FiraCode Nerd Font",
|
||||
"textFontFamily": "CMU Sans Serif,CMU Serif,FiraCode Nerd Font",
|
||||
|
||||
Vendored
+16
-4
@@ -3,7 +3,6 @@
|
||||
"obsidian-latex-suite",
|
||||
"obsidian-style-settings",
|
||||
"obsidian-vimrc-support",
|
||||
"breadcrumbs",
|
||||
"obsidian-hider",
|
||||
"txt-as-md-obsidian",
|
||||
"obsidian-tasks-plugin",
|
||||
@@ -20,13 +19,26 @@
|
||||
"obsidian-spaced-repetition",
|
||||
"pane-relief",
|
||||
"obsidian-minimal-settings",
|
||||
"auto-template-trigger",
|
||||
"wikilinks-to-mdlinks-obsidian",
|
||||
"obsidian-pandoc-reference-list",
|
||||
"obsidian-kanban",
|
||||
"header-enhancer",
|
||||
"obsidian42-brat",
|
||||
"pdf-plus",
|
||||
"lazy-plugins",
|
||||
"calendar"
|
||||
"breadcrumbs",
|
||||
"obsidian-day-planner",
|
||||
"obsidian-advanced-slides",
|
||||
"calendar",
|
||||
"obsidian-completr",
|
||||
"dataview",
|
||||
"default-template",
|
||||
"obsidian-excalidraw-plugin",
|
||||
"github-sync",
|
||||
"note-aliases",
|
||||
"share-note",
|
||||
"templater-obsidian",
|
||||
"link-tree",
|
||||
"obsidian-sequence-hotkeys",
|
||||
"notebook-navigator",
|
||||
"obsidian-pandoc"
|
||||
]
|
||||
Vendored
+1
-1
@@ -130,6 +130,6 @@
|
||||
"repelStrength": 5.263671875,
|
||||
"linkStrength": 1,
|
||||
"linkDistance": 30,
|
||||
"scale": 0.13320413080202398,
|
||||
"scale": 0.1345612381098431,
|
||||
"close": true
|
||||
}
|
||||
Vendored
+9
-1
@@ -1061,5 +1061,13 @@
|
||||
"key": "W"
|
||||
}
|
||||
],
|
||||
"obsidian-completr:completr-bypass-tab-key": []
|
||||
"obsidian-completr:completr-bypass-tab-key": [],
|
||||
"obsidian-excalidraw-plugin:insert-LaTeX-symbol": [
|
||||
{
|
||||
"modifiers": [
|
||||
"Alt"
|
||||
],
|
||||
"key": "L"
|
||||
}
|
||||
]
|
||||
}
|
||||
+30
-431
@@ -1,105 +1,4 @@
|
||||
{
|
||||
"altLinkFields": [],
|
||||
"CSVPaths": "",
|
||||
"dateFormat": "YYYY-MM-DD",
|
||||
"dataviewNoteField": "up",
|
||||
"dateNoteAddMonth": "",
|
||||
"dateNoteAddYear": "",
|
||||
"enableAlphaSort": true,
|
||||
"limitWriteBCCheckboxes": [
|
||||
"up",
|
||||
"next",
|
||||
"prev",
|
||||
"author",
|
||||
"source",
|
||||
"same",
|
||||
"opposes",
|
||||
"same_source",
|
||||
"wrote",
|
||||
"",
|
||||
"same_author",
|
||||
"excerpt",
|
||||
"includes",
|
||||
"used_in",
|
||||
"citation"
|
||||
],
|
||||
"CHECKBOX_STATES_OVERWRITTEN": false,
|
||||
"indexNotes": [],
|
||||
"namingSystemField": "",
|
||||
"namingSystemRegex": "",
|
||||
"namingSystemSplit": ".",
|
||||
"namingSystemEndsWithDelimiter": false,
|
||||
"useAllMetadata": true,
|
||||
"openMatrixOnLoad": true,
|
||||
"openDuckOnLoad": false,
|
||||
"openDownOnLoad": true,
|
||||
"parseJugglLinksWithoutJuggl": false,
|
||||
"showNameOrType": true,
|
||||
"showRelationType": true,
|
||||
"regexNoteField": "",
|
||||
"rlLeaf": false,
|
||||
"showAllPathsIfNoneToIndexNote": false,
|
||||
"showAllAliases": true,
|
||||
"showBCsInEditLPMode": true,
|
||||
"showImpliedRelations": true,
|
||||
"showTrail": false,
|
||||
"showJuggl": false,
|
||||
"sortByNameShowAlias": false,
|
||||
"squareDirectionsOrder": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4
|
||||
],
|
||||
"limitTrailCheckboxes": [
|
||||
"up",
|
||||
"author",
|
||||
"supports",
|
||||
"opposes",
|
||||
"source",
|
||||
""
|
||||
],
|
||||
"limitJumpToFirstFields": [
|
||||
"up",
|
||||
"sibling",
|
||||
"down",
|
||||
"next",
|
||||
"prev",
|
||||
"extercept",
|
||||
"includes",
|
||||
"supports",
|
||||
"supported_by",
|
||||
"refutes",
|
||||
"refuted_by",
|
||||
"opposes",
|
||||
"source",
|
||||
"wrote",
|
||||
"author",
|
||||
"",
|
||||
"same_author",
|
||||
"excerpt",
|
||||
"citation"
|
||||
],
|
||||
"showAll": "All",
|
||||
"threadIntoNewPane": true,
|
||||
"threadingDirTemplates": {
|
||||
"up": "",
|
||||
"same": "",
|
||||
"down": "",
|
||||
"next": "",
|
||||
"prev": ""
|
||||
},
|
||||
"trailSeperator": "→",
|
||||
"treatCurrNodeAsImpliedSibling": false,
|
||||
"showWriteAllBCsCmd": false,
|
||||
"visGraph": "Force Directed Graph",
|
||||
"visRelation": "Child",
|
||||
"visClosed": "Closed",
|
||||
"visAll": "No Unlinked",
|
||||
"showUpInJuggl": false,
|
||||
"gridHeatmap": true,
|
||||
"heatmapColour": "#3b3b3b",
|
||||
"is_dirty": false,
|
||||
"edge_fields": [
|
||||
{
|
||||
@@ -117,44 +16,17 @@
|
||||
{
|
||||
"label": "prev"
|
||||
},
|
||||
{
|
||||
"label": "sibling"
|
||||
},
|
||||
{
|
||||
"label": "author"
|
||||
},
|
||||
{
|
||||
"label": "wrote"
|
||||
},
|
||||
{
|
||||
"label": "same_author"
|
||||
},
|
||||
{
|
||||
"label": "supports"
|
||||
},
|
||||
{
|
||||
"label": "supported_by"
|
||||
},
|
||||
{
|
||||
"label": "refuted_by"
|
||||
},
|
||||
{
|
||||
"label": "refutes"
|
||||
},
|
||||
{
|
||||
"label": "opposes"
|
||||
},
|
||||
{
|
||||
"label": "source"
|
||||
},
|
||||
{
|
||||
"label": "includes"
|
||||
"label": "wrote"
|
||||
},
|
||||
{
|
||||
"label": "citation"
|
||||
},
|
||||
{
|
||||
"label": "same_source"
|
||||
"label": "part"
|
||||
}
|
||||
],
|
||||
"edge_field_groups": [
|
||||
@@ -163,8 +35,6 @@
|
||||
"fields": [
|
||||
"up",
|
||||
"author",
|
||||
"supports",
|
||||
"opposes",
|
||||
"source"
|
||||
]
|
||||
},
|
||||
@@ -173,32 +43,25 @@
|
||||
"fields": [
|
||||
"down",
|
||||
"wrote",
|
||||
"supported_by",
|
||||
"includes",
|
||||
"citation"
|
||||
"part"
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": "sames",
|
||||
"fields": [
|
||||
"same",
|
||||
"sibling",
|
||||
"same_author",
|
||||
"same_source"
|
||||
"same"
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": "nexts",
|
||||
"fields": [
|
||||
"next",
|
||||
"refutes"
|
||||
"next"
|
||||
]
|
||||
},
|
||||
{
|
||||
"label": "prevs",
|
||||
"fields": [
|
||||
"prev",
|
||||
"refuted_by"
|
||||
"prev"
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -260,279 +123,26 @@
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "sibling",
|
||||
"chain": [
|
||||
{
|
||||
"field": "sibling"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "sibling"
|
||||
},
|
||||
{
|
||||
"field": "sibling"
|
||||
}
|
||||
],
|
||||
"close_reversed": false,
|
||||
"close_field": "sibling"
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "sibling"
|
||||
},
|
||||
{
|
||||
"field": "up"
|
||||
}
|
||||
],
|
||||
"close_reversed": false,
|
||||
"close_field": "up"
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "wrote",
|
||||
"chain": [
|
||||
{
|
||||
"field": "author"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "author",
|
||||
"chain": [
|
||||
{
|
||||
"field": "wrote"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "same_author",
|
||||
"chain": [
|
||||
{
|
||||
"field": "same_author"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "same_author"
|
||||
},
|
||||
{
|
||||
"field": "same_author"
|
||||
}
|
||||
],
|
||||
"close_reversed": false,
|
||||
"close_field": "same_author"
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "same_author"
|
||||
},
|
||||
{
|
||||
"field": "author"
|
||||
}
|
||||
],
|
||||
"close_reversed": false,
|
||||
"close_field": "author"
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "supported_by",
|
||||
"chain": [
|
||||
{
|
||||
"field": "supports"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "supports",
|
||||
"chain": [
|
||||
{
|
||||
"field": "supported_by"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "refutes",
|
||||
"chain": [
|
||||
{
|
||||
"field": "refuted_by"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "refuted_by",
|
||||
"chain": [
|
||||
{
|
||||
"field": "refutes"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "same"
|
||||
},
|
||||
{
|
||||
"field": "same"
|
||||
}
|
||||
],
|
||||
"close_reversed": false,
|
||||
"close_field": "same"
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "same"
|
||||
},
|
||||
{
|
||||
"field": "opposes"
|
||||
}
|
||||
],
|
||||
"close_reversed": false,
|
||||
"close_field": "opposes"
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "includes",
|
||||
"chain": [
|
||||
{
|
||||
"field": "source"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "source",
|
||||
"chain": [
|
||||
{
|
||||
"field": "includes"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"close_field": "same_source",
|
||||
"chain": [
|
||||
{
|
||||
"field": "same_source"
|
||||
}
|
||||
],
|
||||
"close_reversed": true
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "same_source"
|
||||
},
|
||||
{
|
||||
"field": "same_source"
|
||||
}
|
||||
],
|
||||
"close_reversed": false,
|
||||
"close_field": "same_source"
|
||||
},
|
||||
{
|
||||
"rounds": 1,
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "same_source"
|
||||
},
|
||||
{
|
||||
"field": "source"
|
||||
}
|
||||
],
|
||||
"close_reversed": false,
|
||||
"close_field": "source"
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "source"
|
||||
},
|
||||
{
|
||||
"field": "author"
|
||||
}
|
||||
],
|
||||
"rounds": 10,
|
||||
"close_reversed": false,
|
||||
"close_reversed": true,
|
||||
"close_field": "author"
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "next"
|
||||
},
|
||||
{
|
||||
"field": "up"
|
||||
"field": "author"
|
||||
}
|
||||
],
|
||||
"rounds": 10,
|
||||
"close_reversed": false,
|
||||
"close_field": "up"
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"chain": [
|
||||
{
|
||||
"field": "prev"
|
||||
},
|
||||
{
|
||||
"field": "up"
|
||||
}
|
||||
],
|
||||
"rounds": 10,
|
||||
"close_reversed": false,
|
||||
"close_field": "up"
|
||||
"close_reversed": true,
|
||||
"close_field": "wrote"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -548,10 +158,10 @@
|
||||
"default_field": "up"
|
||||
},
|
||||
"dendron_note": {
|
||||
"enabled": true,
|
||||
"enabled": false,
|
||||
"delimiter": ".",
|
||||
"default_field": "up",
|
||||
"delimiter": " . ",
|
||||
"display_trimmed": true
|
||||
"display_trimmed": false
|
||||
},
|
||||
"johnny_decimal_note": {
|
||||
"enabled": false,
|
||||
@@ -559,10 +169,10 @@
|
||||
"default_field": "up"
|
||||
},
|
||||
"date_note": {
|
||||
"enabled": true,
|
||||
"enabled": false,
|
||||
"date_format": "yyyy-MM-dd",
|
||||
"default_field": "next",
|
||||
"stretch_to_existing": true
|
||||
"stretch_to_existing": false
|
||||
}
|
||||
},
|
||||
"views": {
|
||||
@@ -575,10 +185,10 @@
|
||||
"enabled": true,
|
||||
"format": "grid",
|
||||
"selection": "all",
|
||||
"default_depth": 5,
|
||||
"default_depth": 999,
|
||||
"no_path_message": "",
|
||||
"show_controls": false,
|
||||
"merge_fields": true,
|
||||
"merge_fields": false,
|
||||
"field_group_labels": [
|
||||
"ups"
|
||||
],
|
||||
@@ -597,8 +207,7 @@
|
||||
},
|
||||
"field_group_labels": {
|
||||
"prev": [
|
||||
"prevs",
|
||||
"sames"
|
||||
"prevs"
|
||||
],
|
||||
"next": [
|
||||
"nexts"
|
||||
@@ -637,9 +246,10 @@
|
||||
"collapse": false,
|
||||
"show_attributes": [],
|
||||
"merge_fields": false,
|
||||
"lock_view": false,
|
||||
"lock_path": "désintégration audioactive.md",
|
||||
"field_group_labels": [
|
||||
"downs",
|
||||
"sames"
|
||||
"downs"
|
||||
],
|
||||
"edge_sort_id": {
|
||||
"field": "basename",
|
||||
@@ -649,9 +259,7 @@
|
||||
"ext": false,
|
||||
"folder": false,
|
||||
"alias": false
|
||||
},
|
||||
"lock_view": false,
|
||||
"lock_path": "algèbre.md"
|
||||
}
|
||||
}
|
||||
},
|
||||
"codeblocks": {
|
||||
@@ -666,32 +274,24 @@
|
||||
"rebuild_graph": {
|
||||
"notify": true,
|
||||
"trigger": {
|
||||
"note_save": true,
|
||||
"note_save": false,
|
||||
"layout_change": false
|
||||
}
|
||||
},
|
||||
"list_index": {
|
||||
"default_options": {
|
||||
"fields": [
|
||||
"down",
|
||||
"wrote",
|
||||
"supported_by",
|
||||
"includes",
|
||||
"citation"
|
||||
],
|
||||
"indent": " ",
|
||||
"fields": [],
|
||||
"indent": "\\t",
|
||||
"link_kind": "wiki",
|
||||
"show_attributes": [],
|
||||
"field_group_labels": [
|
||||
"downs"
|
||||
],
|
||||
"field_group_labels": [],
|
||||
"edge_sort_id": {
|
||||
"order": 1,
|
||||
"field": "basename"
|
||||
},
|
||||
"show_node_options": {
|
||||
"ext": false,
|
||||
"alias": false,
|
||||
"alias": true,
|
||||
"folder": false
|
||||
}
|
||||
}
|
||||
@@ -700,23 +300,22 @@
|
||||
"default_options": {
|
||||
"destination": "frontmatter",
|
||||
"included_fields": [
|
||||
"nexts",
|
||||
"ups"
|
||||
],
|
||||
"use_alias": false
|
||||
"use_alias": true
|
||||
}
|
||||
},
|
||||
"thread": {
|
||||
"default_options": {
|
||||
"destination": "frontmatter",
|
||||
"target_path_template": "{{field}} of {{current}}"
|
||||
"target_path_template": "{{source.folder}}/{{attr.field}} {{source.basename}}"
|
||||
}
|
||||
}
|
||||
},
|
||||
"suggestors": {
|
||||
"edge_field": {
|
||||
"enabled": false,
|
||||
"trigger": "\\"
|
||||
"trigger": "."
|
||||
}
|
||||
},
|
||||
"debug": {
|
||||
|
||||
+12
-10
File diff suppressed because one or more lines are too long
+12
-1
@@ -1 +1,12 @@
|
||||
{"id":"breadcrumbs","name":"Breadcrumbs","version":"4.4.3","minAppVersion":"1.0.0","description":"Add structured hierarchies to your notes","author":"SkepticMystic","authorUrl":"https://github.com/SkepticMystic/breadcrumbs","fundingUrl":"https://github.com/SkepticMystic/breadcrumbs#donations","helpUrl":"https://publish.obsidian.md/breadcrumbs-docs","isDesktopOnly":false}
|
||||
{
|
||||
"id": "breadcrumbs",
|
||||
"name": "Breadcrumbs",
|
||||
"version": "4.4.4",
|
||||
"minAppVersion": "1.0.0",
|
||||
"description": "Add structured hierarchies to your notes",
|
||||
"author": "SkepticMystic",
|
||||
"authorUrl": "https://github.com/SkepticMystic/breadcrumbs",
|
||||
"fundingUrl": "https://github.com/SkepticMystic/breadcrumbs#donations",
|
||||
"helpUrl": "https://publish.obsidian.md/breadcrumbs-docs",
|
||||
"isDesktopOnly": false
|
||||
}
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+9
-9
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"id": "cmdr",
|
||||
"name": "Commander",
|
||||
"version": "0.5.4",
|
||||
"minAppVersion": "1.4.0",
|
||||
"description": "Customize your workspace by adding commands everywhere, create Macros and supercharge your mobile toolbar.",
|
||||
"author": "jsmorabito & phibr0",
|
||||
"authorUrl": "https://github.com/phibr0",
|
||||
"fundingUrl": "https://ko-fi.com/phibr0",
|
||||
"isDesktopOnly": false
|
||||
"id": "cmdr",
|
||||
"name": "Commander",
|
||||
"version": "0.5.5",
|
||||
"minAppVersion": "1.4.0",
|
||||
"description": "Customize your workspace by adding commands everywhere, create Macros and supercharge your mobile toolbar.",
|
||||
"author": "jsmorabito & phibr0",
|
||||
"authorUrl": "https://github.com/phibr0",
|
||||
"fundingUrl": "https://ko-fi.com/phibr0",
|
||||
"isDesktopOnly": false
|
||||
}
|
||||
|
||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+9
-1
@@ -1,3 +1,11 @@
|
||||
{
|
||||
"defaultTemplate": "templates/default new note.md"
|
||||
"defaultTemplate": "templates/default new note.md",
|
||||
"folderTemplates": {
|
||||
"s": "",
|
||||
"so": "",
|
||||
"sou": "",
|
||||
"sour": "",
|
||||
"sources": ""
|
||||
},
|
||||
"ignorePaths": []
|
||||
}
|
||||
+4
-4
File diff suppressed because one or more lines are too long
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "editing-toolbar",
|
||||
"name": "Editing Toolbar",
|
||||
"version": "3.2.7",
|
||||
"version": "4.0.5",
|
||||
"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",
|
||||
|
||||
+2014
-1506
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"remoteURL": "https://gitea.dariow.fr/oskar/cours",
|
||||
"gitLocation": "",
|
||||
"syncinterval": 30,
|
||||
"syncinterval": 60,
|
||||
"isSyncOnLoad": true,
|
||||
"checkStatusOnLoad": true
|
||||
}
|
||||
+1
-1
@@ -16,7 +16,7 @@
|
||||
"yamlDefaultStartNumber": "1",
|
||||
"yamlDefaultSeparator": ".",
|
||||
"globalAutoNumberingEnabled": true,
|
||||
"perDocumentStates": "{\"suite finies d'entiers.md\":false,\"fonction récursive primitive.md\":false,\"fonction d'ackermann de cori et lascar.md\":true,\"désintégration audioactive.md\":false}",
|
||||
"perDocumentStates": "{\"suite finies d'entiers.md\":false,\"fonction récursive primitive.md\":false,\"fonction d'ackermann de cori et lascar.md\":true,\"désintégration audioactive.md\":false,\"sources/0 - cours/LOGOS S2/le savoir en mathématiques/(Camerini) La Lettre 12 et ses cercles non-concentriques.md\":false}",
|
||||
"isSeparateHeaderFont": false,
|
||||
"headerFontFamily": "inherit",
|
||||
"headerFontSize": "inherit",
|
||||
|
||||
-362
@@ -1,362 +0,0 @@
|
||||
{
|
||||
"dualConfigs": false,
|
||||
"showConsoleLog": false,
|
||||
"desktop": {
|
||||
"shortDelaySeconds": 5,
|
||||
"longDelaySeconds": 15,
|
||||
"delayBetweenPlugins": 40,
|
||||
"defaultStartupType": null,
|
||||
"showDescriptions": true,
|
||||
"enableDependencies": false,
|
||||
"plugins": {
|
||||
"3d-graph": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-advanced-slides": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-asciimath": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"auto-template-trigger": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"obsidian-banners": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"better-fn": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"math-in-callout": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian42-brat": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"breadcrumbs": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"calendar": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"canvas-presentation": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"cmdr": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-completr": {
|
||||
"startupType": "short"
|
||||
},
|
||||
"obsidian-contextual-typography": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"contribution-graph": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"crumbs-obsidian": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-custom-frames": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-daily-note-outline": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"dataview": {
|
||||
"startupType": "short"
|
||||
},
|
||||
"obsidian-day-planner": {
|
||||
"startupType": "short"
|
||||
},
|
||||
"default-template": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"desk": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-desmos": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"dynamic-outline": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"dynamic-text-concealer": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"editing-toolbar": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-enhancing-export": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"excalibrain": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-excalidraw-plugin": {
|
||||
"startupType": "short"
|
||||
},
|
||||
"extended-graph": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-latex": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"obsidian-footnotes": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"garble-text": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-git": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"github-sync": {
|
||||
"startupType": "long"
|
||||
},
|
||||
"graph-link-types": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"header-enhancer": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"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": "instant"
|
||||
},
|
||||
"languagetool": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"obsidian-latex-suite": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"latex-to-unicode": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"math-booster": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-list-callouts": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"lovely-mindmap": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-markmind": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"mathlinks": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"maximise-active-pane-obsidian": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-meta-bind-plugin": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"metaedit": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-mind-map": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-minimal-settings": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"mysnippets-plugin": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"nldates-obsidian": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"graph-nested-tags": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"nlp": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"inline-math": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"note-aliases": {
|
||||
"startupType": "short"
|
||||
},
|
||||
"number-headings-obsidian": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-better-internal-link-inserter": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-functionplot": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-ocr": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"omnisearch": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-outliner": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-pandoc": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-pandoc-reference-list": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"pane-relief": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"url-into-selection": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-path-finder": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"break-page": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"pdf-plus": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"persistent-graph": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-pocket": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"podnotes": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"qmd-as-md-obsidian": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"quick-preview": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"darlal-switcher-plus": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"quickadd": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"obsidian-quickshare": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"restore-tab-key": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-rollover-daily-todos": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"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": "instant"
|
||||
},
|
||||
"obsidian-spaced-repetition": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"obsidian-style-settings": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"supercharged-links-obsidian": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"sync-graph-settings": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"ob-table-enhancer": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-plugin-toc": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"tag-word-cloud": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"tag-wrangler": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"obsidian-tasks-plugin": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"tasks-calendar-wrapper": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"templater-obsidian": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"terminal": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"text-snippets-obsidian": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"themed-discord-rpc": {
|
||||
"startupType": "long"
|
||||
},
|
||||
"obsidian-tikzjax": {
|
||||
"startupType": "short"
|
||||
},
|
||||
"time-ruler": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"txt-as-md-obsidian": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"unicode-search": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"various-complements": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-vault-statistics-plugin": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"vertical-tabs-view": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"obsidian-vimrc-support": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"wikilinks-to-mdlinks-obsidian": {
|
||||
"startupType": "instant"
|
||||
},
|
||||
"wordcraft": {
|
||||
"startupType": "disabled"
|
||||
},
|
||||
"zotlit": {
|
||||
"startupType": "disabled"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
-342
@@ -1,342 +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.21",
|
||||
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,
|
||||
enableDependencies: false,
|
||||
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.pluginSettings = {};
|
||||
this.app = app;
|
||||
this.lazyPlugin = plugin;
|
||||
this.pluginSettings = this.lazyPlugin.settings.plugins;
|
||||
}
|
||||
async display() {
|
||||
const { containerEl } = this;
|
||||
this.containerEl = containerEl;
|
||||
this.lazyPlugin.updateManifests();
|
||||
await this.lazyPlugin.loadSettings();
|
||||
this.buildDom();
|
||||
}
|
||||
/**
|
||||
* Build the Settings modal DOM elements
|
||||
*/
|
||||
buildDom() {
|
||||
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) => {
|
||||
this.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));
|
||||
});
|
||||
new import_obsidian.Setting(this.containerEl).addText((text) => text.setPlaceholder("Type to filter list").onChange((value) => {
|
||||
this.filterString = value;
|
||||
this.buildPluginList();
|
||||
}));
|
||||
this.pluginListContainer = this.containerEl.createEl("div");
|
||||
this.buildPluginList();
|
||||
}
|
||||
buildPluginList() {
|
||||
this.pluginListContainer.textContent = "";
|
||||
this.lazyPlugin.manifests.forEach((plugin) => {
|
||||
const currentValue = this.lazyPlugin.getPluginStartup(plugin.id);
|
||||
if (this.filterMethod && currentValue !== this.filterMethod)
|
||||
return;
|
||||
if (this.filterString && !plugin.name.toLowerCase().includes(this.filterString.toLowerCase()))
|
||||
return;
|
||||
new import_obsidian.Setting(this.pluginListContainer).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.filterMethod = value;
|
||||
this.buildPluginList();
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
// 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.updateManifests();
|
||||
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 = JSON.parse(JSON.stringify(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();
|
||||
}
|
||||
updateManifests() {
|
||||
this.manifests = Object.values(this.app.plugins.manifests).filter((plugin) => (
|
||||
// Filter out the Lazy Loader plugin
|
||||
plugin.id !== lazyPluginId && // Filter out desktop-only plugins from mobile
|
||||
!(import_obsidian2.Platform.isMobile && plugin.isDesktopOnly)
|
||||
)).sort((a, b) => a.name.localeCompare(b.name));
|
||||
}
|
||||
/*
|
||||
* 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
@@ -1,11 +0,0 @@
|
||||
{
|
||||
"id": "lazy-plugins",
|
||||
"name": "Lazy Plugin Loader",
|
||||
"version": "1.0.21",
|
||||
"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
@@ -1,4 +0,0 @@
|
||||
.lazy-plugin-filter {
|
||||
margin: 4px;
|
||||
font-size: 90%;
|
||||
}
|
||||
Vendored
+46904
File diff suppressed because one or more lines are too long
+11
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"id": "link-tree",
|
||||
"name": "Link Tree",
|
||||
"version": "1.0.0",
|
||||
"minAppVersion": "0.15.0",
|
||||
"description": "View file links and backlinks as a recursively expandable, filterable list with editable text, combining the structure of outliners like Dynalist & WorkFlowy with the flexibility of Obsidian.",
|
||||
"author": "Joshua Reinier",
|
||||
"authorUrl": "https://joshuareinier.com",
|
||||
"fundingUrl": "https://joshuareinier.com",
|
||||
"isDesktopOnly": false
|
||||
}
|
||||
+790
@@ -0,0 +1,790 @@
|
||||
/* src/plugins/obsidian-link-tree/src/styles.css */
|
||||
*,
|
||||
::before,
|
||||
::after {
|
||||
--tw-border-spacing-x: 0;
|
||||
--tw-border-spacing-y: 0;
|
||||
--tw-translate-x: 0;
|
||||
--tw-translate-y: 0;
|
||||
--tw-rotate: 0;
|
||||
--tw-skew-x: 0;
|
||||
--tw-skew-y: 0;
|
||||
--tw-scale-x: 1;
|
||||
--tw-scale-y: 1;
|
||||
--tw-pan-x: ;
|
||||
--tw-pan-y: ;
|
||||
--tw-pinch-zoom: ;
|
||||
--tw-scroll-snap-strictness: proximity;
|
||||
--tw-gradient-from-position: ;
|
||||
--tw-gradient-via-position: ;
|
||||
--tw-gradient-to-position: ;
|
||||
--tw-ordinal: ;
|
||||
--tw-slashed-zero: ;
|
||||
--tw-numeric-figure: ;
|
||||
--tw-numeric-spacing: ;
|
||||
--tw-numeric-fraction: ;
|
||||
--tw-ring-inset: ;
|
||||
--tw-ring-offset-width: 0px;
|
||||
--tw-ring-offset-color: #fff;
|
||||
--tw-ring-color: rgb(59 130 246 / 0.5);
|
||||
--tw-ring-offset-shadow: 0 0 #0000;
|
||||
--tw-ring-shadow: 0 0 #0000;
|
||||
--tw-shadow: 0 0 #0000;
|
||||
--tw-shadow-colored: 0 0 #0000;
|
||||
--tw-blur: ;
|
||||
--tw-brightness: ;
|
||||
--tw-contrast: ;
|
||||
--tw-grayscale: ;
|
||||
--tw-hue-rotate: ;
|
||||
--tw-invert: ;
|
||||
--tw-saturate: ;
|
||||
--tw-sepia: ;
|
||||
--tw-drop-shadow: ;
|
||||
--tw-backdrop-blur: ;
|
||||
--tw-backdrop-brightness: ;
|
||||
--tw-backdrop-contrast: ;
|
||||
--tw-backdrop-grayscale: ;
|
||||
--tw-backdrop-hue-rotate: ;
|
||||
--tw-backdrop-invert: ;
|
||||
--tw-backdrop-opacity: ;
|
||||
--tw-backdrop-saturate: ;
|
||||
--tw-backdrop-sepia: ;
|
||||
}
|
||||
::backdrop {
|
||||
--tw-border-spacing-x: 0;
|
||||
--tw-border-spacing-y: 0;
|
||||
--tw-translate-x: 0;
|
||||
--tw-translate-y: 0;
|
||||
--tw-rotate: 0;
|
||||
--tw-skew-x: 0;
|
||||
--tw-skew-y: 0;
|
||||
--tw-scale-x: 1;
|
||||
--tw-scale-y: 1;
|
||||
--tw-pan-x: ;
|
||||
--tw-pan-y: ;
|
||||
--tw-pinch-zoom: ;
|
||||
--tw-scroll-snap-strictness: proximity;
|
||||
--tw-gradient-from-position: ;
|
||||
--tw-gradient-via-position: ;
|
||||
--tw-gradient-to-position: ;
|
||||
--tw-ordinal: ;
|
||||
--tw-slashed-zero: ;
|
||||
--tw-numeric-figure: ;
|
||||
--tw-numeric-spacing: ;
|
||||
--tw-numeric-fraction: ;
|
||||
--tw-ring-inset: ;
|
||||
--tw-ring-offset-width: 0px;
|
||||
--tw-ring-offset-color: #fff;
|
||||
--tw-ring-color: rgb(59 130 246 / 0.5);
|
||||
--tw-ring-offset-shadow: 0 0 #0000;
|
||||
--tw-ring-shadow: 0 0 #0000;
|
||||
--tw-shadow: 0 0 #0000;
|
||||
--tw-shadow-colored: 0 0 #0000;
|
||||
--tw-blur: ;
|
||||
--tw-brightness: ;
|
||||
--tw-contrast: ;
|
||||
--tw-grayscale: ;
|
||||
--tw-hue-rotate: ;
|
||||
--tw-invert: ;
|
||||
--tw-saturate: ;
|
||||
--tw-sepia: ;
|
||||
--tw-drop-shadow: ;
|
||||
--tw-backdrop-blur: ;
|
||||
--tw-backdrop-brightness: ;
|
||||
--tw-backdrop-contrast: ;
|
||||
--tw-backdrop-grayscale: ;
|
||||
--tw-backdrop-hue-rotate: ;
|
||||
--tw-backdrop-invert: ;
|
||||
--tw-backdrop-opacity: ;
|
||||
--tw-backdrop-saturate: ;
|
||||
--tw-backdrop-sepia: ;
|
||||
}
|
||||
.fixed {
|
||||
position: fixed;
|
||||
}
|
||||
.\!absolute {
|
||||
position: absolute !important;
|
||||
}
|
||||
.absolute {
|
||||
position: absolute;
|
||||
}
|
||||
.relative {
|
||||
position: relative;
|
||||
}
|
||||
.sticky {
|
||||
position: sticky;
|
||||
}
|
||||
.left-0 {
|
||||
left: 0px;
|
||||
}
|
||||
.left-1\/2 {
|
||||
left: 50%;
|
||||
}
|
||||
.top-0 {
|
||||
top: 0px;
|
||||
}
|
||||
.top-1\/2 {
|
||||
top: 50%;
|
||||
}
|
||||
.top-4 {
|
||||
top: 1rem;
|
||||
}
|
||||
.z-10 {
|
||||
z-index: 10;
|
||||
}
|
||||
.z-30 {
|
||||
z-index: 30;
|
||||
}
|
||||
.z-40 {
|
||||
z-index: 40;
|
||||
}
|
||||
.\!mx-0 {
|
||||
margin-left: 0px !important;
|
||||
margin-right: 0px !important;
|
||||
}
|
||||
.mx-1 {
|
||||
margin-left: 0.25rem;
|
||||
margin-right: 0.25rem;
|
||||
}
|
||||
.my-0 {
|
||||
margin-top: 0px;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
.my-1 {
|
||||
margin-top: 0.25rem;
|
||||
margin-bottom: 0.25rem;
|
||||
}
|
||||
.my-2 {
|
||||
margin-top: 0.5rem;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
.my-4 {
|
||||
margin-top: 1rem;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
.-mt-1 {
|
||||
margin-top: -0.25rem;
|
||||
}
|
||||
.ml-1 {
|
||||
margin-left: 0.25rem;
|
||||
}
|
||||
.ml-2 {
|
||||
margin-left: 0.5rem;
|
||||
}
|
||||
.mr-1 {
|
||||
margin-right: 0.25rem;
|
||||
}
|
||||
.mr-2 {
|
||||
margin-right: 0.5rem;
|
||||
}
|
||||
.mt-1 {
|
||||
margin-top: 0.25rem;
|
||||
}
|
||||
.mt-2 {
|
||||
margin-top: 0.5rem;
|
||||
}
|
||||
.block {
|
||||
display: block;
|
||||
}
|
||||
.inline {
|
||||
display: inline;
|
||||
}
|
||||
.flex {
|
||||
display: flex;
|
||||
}
|
||||
.grid {
|
||||
display: grid;
|
||||
}
|
||||
.hidden {
|
||||
display: none;
|
||||
}
|
||||
.aspect-square {
|
||||
aspect-ratio: 1 / 1;
|
||||
}
|
||||
.\!h-fit {
|
||||
height: -moz-fit-content !important;
|
||||
height: fit-content !important;
|
||||
}
|
||||
.h-0 {
|
||||
height: 0px;
|
||||
}
|
||||
.h-0\.5 {
|
||||
height: 0.125rem;
|
||||
}
|
||||
.h-1 {
|
||||
height: 0.25rem;
|
||||
}
|
||||
.h-1\.5 {
|
||||
height: 0.375rem;
|
||||
}
|
||||
.h-12 {
|
||||
height: 3rem;
|
||||
}
|
||||
.h-2 {
|
||||
height: 0.5rem;
|
||||
}
|
||||
.h-3 {
|
||||
height: 0.75rem;
|
||||
}
|
||||
.h-4 {
|
||||
height: 1rem;
|
||||
}
|
||||
.h-6 {
|
||||
height: 1.5rem;
|
||||
}
|
||||
.h-\[16px\] {
|
||||
height: 16px;
|
||||
}
|
||||
.h-\[28px\] {
|
||||
height: 28px;
|
||||
}
|
||||
.h-\[75vh\] {
|
||||
height: 75vh;
|
||||
}
|
||||
.h-full {
|
||||
height: 100%;
|
||||
}
|
||||
.h-line {
|
||||
height: calc(var(--line-height-normal) * 1em);
|
||||
}
|
||||
.max-h-\[50\%\] {
|
||||
max-height: 50%;
|
||||
}
|
||||
.max-h-\[calc\(28px\*2\+2px\)\] {
|
||||
max-height: calc(28px * 2 + 2px);
|
||||
}
|
||||
.min-h-\[12px\] {
|
||||
min-height: 12px;
|
||||
}
|
||||
.min-h-\[4px\] {
|
||||
min-height: 4px;
|
||||
}
|
||||
.min-h-line {
|
||||
min-height: var(--font-text-size);
|
||||
}
|
||||
.\!w-8 {
|
||||
width: 2rem !important;
|
||||
}
|
||||
.\!w-full {
|
||||
width: 100% !important;
|
||||
}
|
||||
.w-1 {
|
||||
width: 0.25rem;
|
||||
}
|
||||
.w-1\.5 {
|
||||
width: 0.375rem;
|
||||
}
|
||||
.w-16 {
|
||||
width: 4rem;
|
||||
}
|
||||
.w-2 {
|
||||
width: 0.5rem;
|
||||
}
|
||||
.w-3 {
|
||||
width: 0.75rem;
|
||||
}
|
||||
.w-4 {
|
||||
width: 1rem;
|
||||
}
|
||||
.w-6 {
|
||||
width: 1.5rem;
|
||||
}
|
||||
.w-7 {
|
||||
width: 1.75rem;
|
||||
}
|
||||
.w-8 {
|
||||
width: 2rem;
|
||||
}
|
||||
.w-\[4em\] {
|
||||
width: 4em;
|
||||
}
|
||||
.w-fit {
|
||||
width: -moz-fit-content;
|
||||
width: fit-content;
|
||||
}
|
||||
.w-full {
|
||||
width: 100%;
|
||||
}
|
||||
.min-w-\[24px\] {
|
||||
min-width: 24px;
|
||||
}
|
||||
.max-w-\[75\%\] {
|
||||
max-width: 75%;
|
||||
}
|
||||
.flex-none {
|
||||
flex: none;
|
||||
}
|
||||
.grow {
|
||||
flex-grow: 1;
|
||||
}
|
||||
.-translate-x-1\/2 {
|
||||
--tw-translate-x: -50%;
|
||||
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
||||
}
|
||||
.-translate-y-1\/2 {
|
||||
--tw-translate-y: -50%;
|
||||
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
||||
}
|
||||
.cursor-grab {
|
||||
cursor: grab;
|
||||
}
|
||||
.cursor-ns-resize {
|
||||
cursor: ns-resize;
|
||||
}
|
||||
.cursor-pointer {
|
||||
cursor: pointer;
|
||||
}
|
||||
.select-none {
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
.snap-x {
|
||||
scroll-snap-type: x var(--tw-scroll-snap-strictness);
|
||||
}
|
||||
.snap-y {
|
||||
scroll-snap-type: y var(--tw-scroll-snap-strictness);
|
||||
}
|
||||
.snap-mandatory {
|
||||
--tw-scroll-snap-strictness: mandatory ;
|
||||
}
|
||||
.grid-cols-2 {
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
}
|
||||
.flex-col {
|
||||
flex-direction: column;
|
||||
}
|
||||
.flex-wrap {
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.items-center {
|
||||
align-items: center;
|
||||
}
|
||||
.justify-end {
|
||||
justify-content: flex-end;
|
||||
}
|
||||
.justify-center {
|
||||
justify-content: center;
|
||||
}
|
||||
.justify-around {
|
||||
justify-content: space-around;
|
||||
}
|
||||
.space-x-1 > :not([hidden]) ~ :not([hidden]) {
|
||||
--tw-space-x-reverse: 0;
|
||||
margin-right: calc(0.25rem * var(--tw-space-x-reverse));
|
||||
margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));
|
||||
}
|
||||
.space-x-2 > :not([hidden]) ~ :not([hidden]) {
|
||||
--tw-space-x-reverse: 0;
|
||||
margin-right: calc(0.5rem * var(--tw-space-x-reverse));
|
||||
margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
|
||||
}
|
||||
.space-x-4 > :not([hidden]) ~ :not([hidden]) {
|
||||
--tw-space-x-reverse: 0;
|
||||
margin-right: calc(1rem * var(--tw-space-x-reverse));
|
||||
margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
|
||||
}
|
||||
.space-y-2 > :not([hidden]) ~ :not([hidden]) {
|
||||
--tw-space-y-reverse: 0;
|
||||
margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
|
||||
margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
|
||||
}
|
||||
.overflow-hidden {
|
||||
overflow: hidden;
|
||||
}
|
||||
.\!overflow-x-auto {
|
||||
overflow-x: auto !important;
|
||||
}
|
||||
.overflow-x-auto {
|
||||
overflow-x: auto;
|
||||
}
|
||||
.overflow-y-auto {
|
||||
overflow-y: auto;
|
||||
}
|
||||
.overflow-x-hidden {
|
||||
overflow-x: hidden;
|
||||
}
|
||||
.overflow-y-clip {
|
||||
overflow-y: clip;
|
||||
}
|
||||
.truncate {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.whitespace-nowrap {
|
||||
white-space: nowrap;
|
||||
}
|
||||
.break-words {
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
.rounded {
|
||||
border-radius: 0.25rem;
|
||||
}
|
||||
.rounded-checkbox {
|
||||
border-radius: var(--checkbox-radius);
|
||||
}
|
||||
.rounded-full {
|
||||
border-radius: 9999px;
|
||||
}
|
||||
.rounded-icon {
|
||||
border-radius: var(--clickable-icon-radius);
|
||||
}
|
||||
.rounded-lg {
|
||||
border-radius: 0.5rem;
|
||||
}
|
||||
.border {
|
||||
border-width: 1px;
|
||||
}
|
||||
.border-t {
|
||||
border-top-width: 1px;
|
||||
}
|
||||
.border-solid {
|
||||
border-style: solid;
|
||||
}
|
||||
.\!border-none {
|
||||
border-style: none !important;
|
||||
}
|
||||
.border-none {
|
||||
border-style: none;
|
||||
}
|
||||
.border-faint {
|
||||
border-color: var(--text-faint);
|
||||
}
|
||||
.border-muted {
|
||||
border-color: var(--text-muted);
|
||||
}
|
||||
.\!bg-accent {
|
||||
background-color: var(--text-accent) !important;
|
||||
}
|
||||
.\!bg-selection {
|
||||
background-color: var(--text-selection) !important;
|
||||
}
|
||||
.bg-faint {
|
||||
background-color: var(--text-faint);
|
||||
}
|
||||
.bg-gray-500\/5 {
|
||||
background-color: rgb(107 114 128 / 0.05);
|
||||
}
|
||||
.bg-muted {
|
||||
background-color: var(--text-muted);
|
||||
}
|
||||
.bg-primary {
|
||||
background-color: var(--background-primary);
|
||||
}
|
||||
.bg-primary-alt {
|
||||
background-color: var(--background-primary-alt);
|
||||
}
|
||||
.bg-red-500\/20 {
|
||||
background-color: rgb(239 68 68 / 0.2);
|
||||
}
|
||||
.bg-red-800\/50 {
|
||||
background-color: rgb(153 27 27 / 0.5);
|
||||
}
|
||||
.bg-secondary-alt {
|
||||
background-color: var(--background-secondary-alt);
|
||||
}
|
||||
.bg-selection {
|
||||
background-color: var(--text-selection);
|
||||
}
|
||||
.bg-transparent {
|
||||
background-color: transparent;
|
||||
}
|
||||
.p-0 {
|
||||
padding: 0px;
|
||||
}
|
||||
.p-0\.5 {
|
||||
padding: 0.125rem;
|
||||
}
|
||||
.p-1 {
|
||||
padding: 0.25rem;
|
||||
}
|
||||
.p-4 {
|
||||
padding: 1rem;
|
||||
}
|
||||
.px-1 {
|
||||
padding-left: 0.25rem;
|
||||
padding-right: 0.25rem;
|
||||
}
|
||||
.px-4 {
|
||||
padding-left: 1rem;
|
||||
padding-right: 1rem;
|
||||
}
|
||||
.py-0 {
|
||||
padding-top: 0px;
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
.py-0\.5 {
|
||||
padding-top: 0.125rem;
|
||||
padding-bottom: 0.125rem;
|
||||
}
|
||||
.py-1 {
|
||||
padding-top: 0.25rem;
|
||||
padding-bottom: 0.25rem;
|
||||
}
|
||||
.py-2 {
|
||||
padding-top: 0.5rem;
|
||||
padding-bottom: 0.5rem;
|
||||
}
|
||||
.pb-0 {
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
.pb-0\.5 {
|
||||
padding-bottom: 0.125rem;
|
||||
}
|
||||
.pb-1 {
|
||||
padding-bottom: 0.25rem;
|
||||
}
|
||||
.pb-2 {
|
||||
padding-bottom: 0.5rem;
|
||||
}
|
||||
.pb-4 {
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
.pl-1 {
|
||||
padding-left: 0.25rem;
|
||||
}
|
||||
.pl-2 {
|
||||
padding-left: 0.5rem;
|
||||
}
|
||||
.pl-6 {
|
||||
padding-left: 1.5rem;
|
||||
}
|
||||
.pl-7 {
|
||||
padding-left: 1.75rem;
|
||||
}
|
||||
.pr-2 {
|
||||
padding-right: 0.5rem;
|
||||
}
|
||||
.pt-4 {
|
||||
padding-top: 1rem;
|
||||
}
|
||||
.text-center {
|
||||
text-align: center;
|
||||
}
|
||||
.text-right {
|
||||
text-align: right;
|
||||
}
|
||||
.font-menu {
|
||||
font-family: var(--font-interface);
|
||||
}
|
||||
.font-sans {
|
||||
font-family: var(--font-text);
|
||||
}
|
||||
.font-serif {
|
||||
font-family: var(--font-text);
|
||||
}
|
||||
.\!text-xs {
|
||||
font-size: 0.75rem !important;
|
||||
line-height: 1rem !important;
|
||||
}
|
||||
.text-base {
|
||||
font-size: var(--font-text-size);
|
||||
}
|
||||
.text-lg {
|
||||
font-size: 1.125rem;
|
||||
line-height: 1.75rem;
|
||||
}
|
||||
.text-sm {
|
||||
font-size: 0.875rem;
|
||||
line-height: 1.25rem;
|
||||
}
|
||||
.text-xs {
|
||||
font-size: 0.75rem;
|
||||
line-height: 1rem;
|
||||
}
|
||||
.font-bold {
|
||||
font-weight: 700;
|
||||
}
|
||||
.leading-line {
|
||||
line-height: var(--line-height-normal);
|
||||
}
|
||||
.text-accent {
|
||||
color: var(--text-accent);
|
||||
}
|
||||
.text-faint {
|
||||
color: var(--text-faint);
|
||||
}
|
||||
.text-muted {
|
||||
color: var(--text-muted);
|
||||
}
|
||||
.text-normal {
|
||||
color: var(--text-normal);
|
||||
}
|
||||
.line-through {
|
||||
text-decoration-line: line-through;
|
||||
}
|
||||
.opacity-0 {
|
||||
opacity: 0;
|
||||
}
|
||||
.opacity-40 {
|
||||
opacity: 0.4;
|
||||
}
|
||||
.opacity-50 {
|
||||
opacity: 0.5;
|
||||
}
|
||||
.opacity-75 {
|
||||
opacity: 0.75;
|
||||
}
|
||||
.\!shadow-none {
|
||||
--tw-shadow: 0 0 #0000 !important;
|
||||
--tw-shadow-colored: 0 0 #0000 !important;
|
||||
box-shadow:
|
||||
var(--tw-ring-offset-shadow, 0 0 #0000),
|
||||
var(--tw-ring-shadow, 0 0 #0000),
|
||||
var(--tw-shadow) !important;
|
||||
}
|
||||
.shadow-none {
|
||||
--tw-shadow: 0 0 #0000;
|
||||
--tw-shadow-colored: 0 0 #0000;
|
||||
box-shadow:
|
||||
var(--tw-ring-offset-shadow, 0 0 #0000),
|
||||
var(--tw-ring-shadow, 0 0 #0000),
|
||||
var(--tw-shadow);
|
||||
}
|
||||
.invert {
|
||||
--tw-invert: invert(100%);
|
||||
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
||||
}
|
||||
.filter {
|
||||
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
||||
}
|
||||
.backdrop-blur {
|
||||
--tw-backdrop-blur: blur(8px);
|
||||
-webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
|
||||
backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
|
||||
}
|
||||
.transition {
|
||||
transition-property:
|
||||
color,
|
||||
background-color,
|
||||
border-color,
|
||||
text-decoration-color,
|
||||
fill,
|
||||
stroke,
|
||||
opacity,
|
||||
box-shadow,
|
||||
transform,
|
||||
filter,
|
||||
-webkit-backdrop-filter;
|
||||
transition-property:
|
||||
color,
|
||||
background-color,
|
||||
border-color,
|
||||
text-decoration-color,
|
||||
fill,
|
||||
stroke,
|
||||
opacity,
|
||||
box-shadow,
|
||||
transform,
|
||||
filter,
|
||||
backdrop-filter;
|
||||
transition-property:
|
||||
color,
|
||||
background-color,
|
||||
border-color,
|
||||
text-decoration-color,
|
||||
fill,
|
||||
stroke,
|
||||
opacity,
|
||||
box-shadow,
|
||||
transform,
|
||||
filter,
|
||||
backdrop-filter,
|
||||
-webkit-backdrop-filter;
|
||||
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
||||
transition-duration: 150ms;
|
||||
}
|
||||
.transition-colors {
|
||||
transition-property:
|
||||
color,
|
||||
background-color,
|
||||
border-color,
|
||||
text-decoration-color,
|
||||
fill,
|
||||
stroke;
|
||||
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
||||
transition-duration: 150ms;
|
||||
}
|
||||
.transition-opacity {
|
||||
transition-property: opacity;
|
||||
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
||||
transition-duration: 150ms;
|
||||
}
|
||||
.duration-1000 {
|
||||
transition-duration: 1000ms;
|
||||
}
|
||||
.duration-300 {
|
||||
transition-duration: 300ms;
|
||||
}
|
||||
.ease-in-out {
|
||||
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
||||
}
|
||||
.ease-linear {
|
||||
transition-timing-function: linear;
|
||||
}
|
||||
.hover\:border-b:hover {
|
||||
border-bottom-width: 1px;
|
||||
}
|
||||
.hover\:border-normal:hover {
|
||||
border-color: var(--text-normal);
|
||||
}
|
||||
.hover\:underline:hover {
|
||||
text-decoration-line: underline;
|
||||
}
|
||||
.active\:\!w-full:active {
|
||||
width: 100% !important;
|
||||
}
|
||||
.group:hover .group-hover\:opacity-100 {
|
||||
opacity: 1;
|
||||
}
|
||||
.child\:relative > * {
|
||||
position: relative;
|
||||
}
|
||||
.child\:h-full > * {
|
||||
height: 100%;
|
||||
}
|
||||
.child\:w-1\/2 > * {
|
||||
width: 50%;
|
||||
}
|
||||
.child\:w-1\/3 > * {
|
||||
width: 33.333333%;
|
||||
}
|
||||
.child\:w-1\/4 > * {
|
||||
width: 25%;
|
||||
}
|
||||
.child\:w-\[calc\(100\%\/7\)\] > * {
|
||||
width: calc(100% / 7);
|
||||
}
|
||||
.child\:w-full > * {
|
||||
width: 100%;
|
||||
}
|
||||
.child\:flex-none > * {
|
||||
flex: none;
|
||||
}
|
||||
.child\:snap-start > * {
|
||||
scroll-snap-align: start;
|
||||
}
|
||||
.child\:truncate > * {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.child\:p-2 > * {
|
||||
padding: 0.5rem;
|
||||
}
|
||||
.child\:px-1 > * {
|
||||
padding-left: 0.25rem;
|
||||
padding-right: 0.25rem;
|
||||
}
|
||||
.child\:pb-0 > * {
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
@media (hover: hover) {
|
||||
.mouse\:hover\:border:hover {
|
||||
border-width: 1px;
|
||||
}
|
||||
.mouse\:hover\:border-solid:hover {
|
||||
border-style: solid;
|
||||
}
|
||||
}
|
||||
+539
@@ -0,0 +1,539 @@
|
||||
{
|
||||
"vaultProfiles": [
|
||||
{
|
||||
"id": "default",
|
||||
"name": "Default",
|
||||
"fileVisibility": "supported",
|
||||
"propertyKeys": [],
|
||||
"hiddenFolders": [],
|
||||
"hiddenTags": [],
|
||||
"hiddenFileNames": [],
|
||||
"hiddenFileTags": [],
|
||||
"hiddenFileProperties": [],
|
||||
"navigationBanner": null,
|
||||
"periodicNotesFolder": "daily",
|
||||
"shortcuts": [
|
||||
{
|
||||
"type": "note",
|
||||
"path": "S2 LOGOS.md"
|
||||
},
|
||||
{
|
||||
"type": "note",
|
||||
"path": "désintégration audioactive.md"
|
||||
}
|
||||
],
|
||||
"navRainbow": {
|
||||
"mode": "foreground",
|
||||
"balanceHueLuminance": true,
|
||||
"separateThemeColors": false,
|
||||
"shortcuts": {
|
||||
"enabled": false,
|
||||
"firstColor": "#ef4444",
|
||||
"lastColor": "#8b5cf6",
|
||||
"darkFirstColor": "#ef4444",
|
||||
"darkLastColor": "#8b5cf6",
|
||||
"transitionStyle": "rgb"
|
||||
},
|
||||
"recent": {
|
||||
"enabled": false,
|
||||
"firstColor": "#ef4444",
|
||||
"lastColor": "#8b5cf6",
|
||||
"darkFirstColor": "#ef4444",
|
||||
"darkLastColor": "#8b5cf6",
|
||||
"transitionStyle": "rgb"
|
||||
},
|
||||
"folders": {
|
||||
"enabled": true,
|
||||
"firstColor": "#ef4444",
|
||||
"lastColor": "#8b5cf6",
|
||||
"darkFirstColor": "#fb7185",
|
||||
"darkLastColor": "#c084fc",
|
||||
"transitionStyle": "hue",
|
||||
"scope": "root"
|
||||
},
|
||||
"tags": {
|
||||
"enabled": true,
|
||||
"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",
|
||||
"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
|
||||
},
|
||||
"dualPane": true,
|
||||
"dualPaneOrientation": "horizontal",
|
||||
"showTooltips": false,
|
||||
"showTooltipPath": true,
|
||||
"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,
|
||||
"descendants": true,
|
||||
"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": {},
|
||||
"checkForUpdatesOnStart": true,
|
||||
"pinNavigationBanner": true,
|
||||
"showNoteCount": true,
|
||||
"separateNoteCounts": true,
|
||||
"showIndentGuides": true,
|
||||
"rootLevelSpacing": 0,
|
||||
"navIndent": 16,
|
||||
"navItemHeight": 28,
|
||||
"navItemHeightScaleText": true,
|
||||
"collapseBehavior": "all",
|
||||
"smartCollapse": true,
|
||||
"autoSelectFirstFileOnFocusChange": false,
|
||||
"autoExpandNavItems": true,
|
||||
"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",
|
||||
"folderNoteName": "",
|
||||
"folderNoteNamePattern": "",
|
||||
"folderNoteTemplate": null,
|
||||
"enableFolderNoteLinks": true,
|
||||
"hideFolderNoteInList": true,
|
||||
"pinCreatedFolderNote": false,
|
||||
"openFolderNotesInNewTab": false,
|
||||
"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": true,
|
||||
"defaultFolderSort": "modified-desc",
|
||||
"propertySortKey": "",
|
||||
"propertySortSecondary": "title",
|
||||
"revealFileOnListChanges": true,
|
||||
"listPaneTitle": "header",
|
||||
"noteGrouping": "date",
|
||||
"showSelectedNavigationPills": false,
|
||||
"filterPinnedByFolder": false,
|
||||
"showPinnedGroupHeader": true,
|
||||
"showPinnedIcon": true,
|
||||
"optimizeNoteHeight": true,
|
||||
"compactItemHeight": 28,
|
||||
"compactItemHeightScaleText": true,
|
||||
"showQuickActions": true,
|
||||
"quickActionRevealInFolder": false,
|
||||
"quickActionAddTag": true,
|
||||
"quickActionAddToShortcuts": true,
|
||||
"quickActionPinNote": true,
|
||||
"quickActionOpenInNewTab": false,
|
||||
"useFrontmatterMetadata": false,
|
||||
"frontmatterIconField": "icon",
|
||||
"frontmatterColorField": "color",
|
||||
"frontmatterBackgroundField": "background",
|
||||
"frontmatterNameField": "",
|
||||
"frontmatterCreatedField": "",
|
||||
"frontmatterModifiedField": "",
|
||||
"frontmatterDateFormat": "",
|
||||
"showFileIconUnfinishedTask": false,
|
||||
"showFileBackgroundUnfinishedTask": false,
|
||||
"unfinishedTaskBackgroundColor": "#ef000050",
|
||||
"showFileIcons": true,
|
||||
"showFilenameMatchIcons": false,
|
||||
"fileNameIconMap": {},
|
||||
"showCategoryIcons": false,
|
||||
"fileTypeIconMap": {},
|
||||
"fileNameRows": 1,
|
||||
"showFilePreview": true,
|
||||
"skipHeadingsInPreview": true,
|
||||
"skipCodeBlocksInPreview": true,
|
||||
"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,
|
||||
"notePropertyType": "none",
|
||||
"showFileDate": true,
|
||||
"alphabeticalDateMode": "modified",
|
||||
"showParentFolder": true,
|
||||
"parentFolderClickRevealsFile": false,
|
||||
"showParentFolderColor": false,
|
||||
"showParentFolderIcon": false,
|
||||
"calendarEnabled": true,
|
||||
"calendarPlacement": "left-sidebar",
|
||||
"calendarConfirmBeforeCreate": true,
|
||||
"calendarLocale": "fr",
|
||||
"calendarWeekendDays": "sat-sun",
|
||||
"calendarMonthHeadingFormat": "full",
|
||||
"calendarHighlightToday": true,
|
||||
"calendarShowFeatureImage": true,
|
||||
"calendarMonthHighlights": {},
|
||||
"calendarShowWeekNumber": false,
|
||||
"calendarShowQuarter": false,
|
||||
"calendarShowYearCalendar": true,
|
||||
"calendarLeftPlacement": "navigation",
|
||||
"calendarWeeksToShow": 6,
|
||||
"calendarIntegrationMode": "daily-notes",
|
||||
"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": []
|
||||
}
|
||||
],
|
||||
"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: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": {
|
||||
"sources": {
|
||||
"titleRows": 2
|
||||
}
|
||||
},
|
||||
"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": "2.5.7",
|
||||
"rootFolderOrder": [
|
||||
"sources",
|
||||
"attachments",
|
||||
"blog",
|
||||
"daily",
|
||||
"env",
|
||||
"Excalidraw",
|
||||
"exports",
|
||||
"gists",
|
||||
"informatique",
|
||||
"kanban",
|
||||
"media",
|
||||
"quickadd_scripts",
|
||||
"templates"
|
||||
],
|
||||
"rootTagOrder": [
|
||||
"__untagged__",
|
||||
"s",
|
||||
"t",
|
||||
"task",
|
||||
"zotero",
|
||||
"excalidraw",
|
||||
"flashcards",
|
||||
"not-done",
|
||||
"dataview-test",
|
||||
"devoir-fait",
|
||||
"howto",
|
||||
"micrometa",
|
||||
"obsidan_export",
|
||||
"pocket"
|
||||
],
|
||||
"rootPropertyOrder": []
|
||||
}
|
||||
+793
File diff suppressed because one or more lines are too long
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"id": "notebook-navigator",
|
||||
"name": "Notebook Navigator",
|
||||
"version": "2.5.7",
|
||||
"minAppVersion": "1.8.7",
|
||||
"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
|
||||
}
|
||||
+9397
File diff suppressed because it is too large
Load Diff
@@ -627,8 +627,7 @@ p.align-center {
|
||||
--dbg-size: 1px;
|
||||
border: 1px solid red;
|
||||
}
|
||||
.reset-margin,
|
||||
.reset-margin > * {
|
||||
.reset-margin {
|
||||
--r-block-margin: 0;
|
||||
--r-heading-margin: 0;
|
||||
}
|
||||
|
||||
@@ -75,13 +75,13 @@
|
||||
--r-selection-color: #fff;
|
||||
}
|
||||
.reveal-viewport {
|
||||
background: #1c1e20;
|
||||
background: -moz-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, #555a5f), color-stop(100%, #1c1e20));
|
||||
background: -webkit-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: -o-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: -ms-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: rgb(28, 30, 32);
|
||||
background: -moz-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, rgb(85, 90, 95)), color-stop(100%, rgb(28, 30, 32)));
|
||||
background: -webkit-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: -o-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: -ms-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background-color: var(--r-background-color);
|
||||
}
|
||||
.reveal {
|
||||
@@ -179,8 +179,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -360,6 +360,9 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
.reveal .slides {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
+8
-8
@@ -1,21 +1,21 @@
|
||||
{
|
||||
"port": "",
|
||||
"port": "3123",
|
||||
"autoReload": true,
|
||||
"exportDirectory": "/presentations",
|
||||
"enableChalkboard": true,
|
||||
"enableChalkboard": false,
|
||||
"enableOverview": true,
|
||||
"enableMenu": true,
|
||||
"enablePointer": false,
|
||||
"enablePointer": true,
|
||||
"enableTimeBar": false,
|
||||
"theme": "black",
|
||||
"theme": "serif",
|
||||
"highlightTheme": "zenburn",
|
||||
"transition": "fade",
|
||||
"transition": "slide",
|
||||
"transitionSpeed": "normal",
|
||||
"controls": false,
|
||||
"controls": true,
|
||||
"progress": true,
|
||||
"slideNumber": true,
|
||||
"showGrid": false,
|
||||
"autoComplete": "inPreview",
|
||||
"autoComplete": "never",
|
||||
"paneMode": "tab",
|
||||
"motm": ""
|
||||
"motm": "2026-03-29T19:04:49.274Z"
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -57,13 +57,13 @@
|
||||
--r-selection-color: #fff;
|
||||
}
|
||||
.reveal-viewport {
|
||||
background: #f7f2d3;
|
||||
background: -moz-radial-gradient(center, circle cover, white 0%, #f7f2d3 100%);
|
||||
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, white), color-stop(100%, #f7f2d3));
|
||||
background: -webkit-radial-gradient(center, circle cover, white 0%, #f7f2d3 100%);
|
||||
background: -o-radial-gradient(center, circle cover, white 0%, #f7f2d3 100%);
|
||||
background: -ms-radial-gradient(center, circle cover, white 0%, #f7f2d3 100%);
|
||||
background: radial-gradient(center, circle cover, white 0%, #f7f2d3 100%);
|
||||
background: rgb(247, 242, 211);
|
||||
background: -moz-radial-gradient(center, circle cover, rgb(255, 255, 255) 0%, rgb(247, 242, 211) 100%);
|
||||
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, rgb(255, 255, 255)), color-stop(100%, rgb(247, 242, 211)));
|
||||
background: -webkit-radial-gradient(center, circle cover, rgb(255, 255, 255) 0%, rgb(247, 242, 211) 100%);
|
||||
background: -o-radial-gradient(center, circle cover, rgb(255, 255, 255) 0%, rgb(247, 242, 211) 100%);
|
||||
background: -ms-radial-gradient(center, circle cover, rgb(255, 255, 255) 0%, rgb(247, 242, 211) 100%);
|
||||
background: radial-gradient(center, circle cover, rgb(255, 255, 255) 0%, rgb(247, 242, 211) 100%);
|
||||
background-color: var(--r-background-color);
|
||||
}
|
||||
.reveal {
|
||||
@@ -161,8 +161,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -342,3 +342,6 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -146,8 +146,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -327,3 +327,6 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -151,8 +151,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -332,6 +332,9 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
.reveal p {
|
||||
font-weight: 300;
|
||||
text-shadow: 1px 1px #222;
|
||||
|
||||
@@ -146,8 +146,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -327,6 +327,9 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
.reveal table th,
|
||||
.reveal table td {
|
||||
vertical-align: top;
|
||||
|
||||
@@ -57,13 +57,13 @@
|
||||
--r-selection-color: #fff;
|
||||
}
|
||||
.reveal-viewport {
|
||||
background: #1c1e20;
|
||||
background: -moz-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, #555a5f), color-stop(100%, #1c1e20));
|
||||
background: -webkit-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: -o-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: -ms-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: rgb(28, 30, 32);
|
||||
background: -moz-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, rgb(85, 90, 95)), color-stop(100%, rgb(28, 30, 32)));
|
||||
background: -webkit-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: -o-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: -ms-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background-color: var(--r-background-color);
|
||||
}
|
||||
.reveal {
|
||||
@@ -161,8 +161,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -342,3 +342,6 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -75,13 +75,13 @@
|
||||
--r-selection-color: #fff;
|
||||
}
|
||||
.reveal-viewport {
|
||||
background: #1c1e20;
|
||||
background: -moz-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, #555a5f), color-stop(100%, #1c1e20));
|
||||
background: -webkit-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: -o-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: -ms-radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: radial-gradient(center, circle cover, #555a5f 0%, #1c1e20 100%);
|
||||
background: rgb(28, 30, 32);
|
||||
background: -moz-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%, rgb(85, 90, 95)), color-stop(100%, rgb(28, 30, 32)));
|
||||
background: -webkit-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: -o-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: -ms-radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background: radial-gradient(center, circle cover, rgb(85, 90, 95) 0%, rgb(28, 30, 32) 100%);
|
||||
background-color: var(--r-background-color);
|
||||
}
|
||||
.reveal {
|
||||
@@ -179,8 +179,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -360,6 +360,9 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
.reveal .slides {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
@@ -148,8 +148,8 @@ html * {
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -329,3 +329,6 @@ html * {
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -144,8 +144,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -325,3 +325,6 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -152,8 +152,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -333,3 +333,6 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -144,8 +144,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -325,3 +325,6 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -150,8 +150,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -331,3 +331,6 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -139,8 +139,8 @@ html * {
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -320,3 +320,6 @@ html * {
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -146,8 +146,8 @@
|
||||
.reveal img,
|
||||
.reveal video,
|
||||
.reveal iframe {
|
||||
max-width: 95%;
|
||||
max-height: 95%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
.reveal strong,
|
||||
.reveal b {
|
||||
@@ -327,3 +327,6 @@
|
||||
canvas[data-chart] {
|
||||
padding: 0.5em;
|
||||
}
|
||||
.reveal .hljs {
|
||||
min-height: 50%;
|
||||
}
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"version": "1.15.0"
|
||||
"version": "1.20.0"
|
||||
}
|
||||
+144
@@ -0,0 +1,144 @@
|
||||
var ElapsedTimeBar = {
|
||||
// default value
|
||||
barColor: 'rgb(200,0,0)',
|
||||
pausedBarColor: 'rgba(200,0,0,.6)',
|
||||
|
||||
isPaused: false,
|
||||
isFinished: false,
|
||||
|
||||
allottedTime: null,
|
||||
timeProgressBar: null,
|
||||
startTime: null,
|
||||
pauseTime: null,
|
||||
pauseTimeDuration: 0,
|
||||
|
||||
/**
|
||||
* initialize elements
|
||||
*/
|
||||
handleReady() {
|
||||
var config = Reveal.getConfig();
|
||||
|
||||
// activate this plugin if config.allottedTime exists.
|
||||
if (!config.allottedTime) {
|
||||
console.warn('Failed to start ElapsedTimeBar plugin. "allottedTime" property is required.');
|
||||
return;
|
||||
}
|
||||
|
||||
// set configurations
|
||||
this.barColor = config.barColor || this.barColor;
|
||||
this.pausedBarColor = config.pausedBarColor || this.pausedBarColor;
|
||||
|
||||
// calc barHeight from config.barHeight or page-progress container
|
||||
var barHeight;
|
||||
var pageProgressContainer = document.querySelector('.progress');
|
||||
if (config.progressBarHeight) {
|
||||
barHeight = parseInt(config.progressBarHeight, 10) + 'px';
|
||||
|
||||
// override height of page-progress container
|
||||
pageProgressContainer && (pageProgressContainer.style.height = barHeight);
|
||||
} else if (config.progress && pageProgressContainer) {
|
||||
// get height from page-progress container
|
||||
barHeight = pageProgressContainer.getBoundingClientRect().height + 'px';
|
||||
} else {
|
||||
// default
|
||||
barHeight = '3px';
|
||||
}
|
||||
|
||||
// create container of time-progress
|
||||
var timeProgressContainer = document.createElement('div');
|
||||
timeProgressContainer.classList.add('progress');
|
||||
Object.entries({
|
||||
display: 'block',
|
||||
position: 'fixed',
|
||||
bottom: config.progress ? barHeight : 0,
|
||||
width: '100%',
|
||||
height: barHeight
|
||||
}).forEach(([k, v]) => {
|
||||
timeProgressContainer.style[k] = v;
|
||||
});
|
||||
document.querySelector('.reveal').appendChild(timeProgressContainer);
|
||||
|
||||
// create content of time-progress
|
||||
this.timeProgressBar = document.createElement('div');
|
||||
Object.entries({
|
||||
height: '100%',
|
||||
willChange: 'width'
|
||||
}).forEach(([k, v]) => {
|
||||
this.timeProgressBar.style[k] = v;
|
||||
});
|
||||
timeProgressContainer.appendChild(this.timeProgressBar);
|
||||
|
||||
// start timer
|
||||
this.start(config.allottedTime);
|
||||
},
|
||||
|
||||
/**
|
||||
* update repeatedly using requestAnimationFrame.
|
||||
*/
|
||||
loop() {
|
||||
if (this.isPaused) return;
|
||||
var now = +new Date();
|
||||
var elapsedTime = now - this.startTime - this.pauseTimeDuration;
|
||||
if (elapsedTime > this.allottedTime) {
|
||||
this.timeProgressBar.style.width = '100%';
|
||||
this.isFinished = true;
|
||||
} else {
|
||||
this.timeProgressBar.style.width = elapsedTime / this.allottedTime * 100 + '%';
|
||||
requestAnimationFrame(this.loop.bind(this));
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* set color of progress bar
|
||||
*/
|
||||
setBarColor() {
|
||||
if (this.isPaused) {
|
||||
this.timeProgressBar.style.backgroundColor = this.pausedBarColor;
|
||||
} else {
|
||||
this.timeProgressBar.style.backgroundColor = this.barColor;
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* start(reset) timer with new allotted time.
|
||||
* @param {number} allottedTime
|
||||
* @param {number} [elapsedTime=0]
|
||||
*/
|
||||
start(allottedTime, elapsedTime = 0) {
|
||||
this.isFinished = false;
|
||||
this.isPaused = false;
|
||||
this.allottedTime = allottedTime;
|
||||
this.startTime = +new Date() - elapsedTime;
|
||||
this.pauseTimeDuration = 0;
|
||||
this.setBarColor();
|
||||
this.loop();
|
||||
},
|
||||
|
||||
reset() {
|
||||
this.start(this.allottedTime);
|
||||
},
|
||||
|
||||
pause() {
|
||||
if (this.isPaused) return;
|
||||
this.isPaused = true;
|
||||
this.pauseTime = +new Date();
|
||||
this.setBarColor();
|
||||
},
|
||||
|
||||
resume() {
|
||||
if (!this.isPaused) return;
|
||||
|
||||
// add paused time duration
|
||||
this.isPaused = false;
|
||||
this.pauseTimeDuration += new Date() - this.pauseTime;
|
||||
this.pauseTime = null;
|
||||
this.setBarColor();
|
||||
this.loop();
|
||||
}
|
||||
};
|
||||
|
||||
if (Reveal.isReady()) {
|
||||
ElapsedTimeBar.handleReady();
|
||||
} else {
|
||||
Reveal.addEventListener('ready', () => ElapsedTimeBar.handleReady());
|
||||
}
|
||||
@@ -106,7 +106,7 @@ const Plugin = {
|
||||
|
||||
var scrollState = { currentBlock: block };
|
||||
|
||||
// If there is at least one highlight step, generate
|
||||
// If there is more than one highlight step, generate
|
||||
// fragments
|
||||
var highlightSteps = Plugin.deserializeHighlightSteps( block.getAttribute( 'data-line-numbers' ) );
|
||||
if( highlightSteps.length > 1 ) {
|
||||
@@ -142,7 +142,7 @@ const Plugin = {
|
||||
|
||||
} );
|
||||
|
||||
block.removeAttribute( 'data-fragment-index' )
|
||||
block.removeAttribute( 'data-fragment-index' );
|
||||
block.setAttribute( 'data-line-numbers', Plugin.serializeHighlightSteps( [ highlightSteps[0] ] ) );
|
||||
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -4,7 +4,7 @@
|
||||
* of external markdown documents.
|
||||
*/
|
||||
|
||||
import marked from 'marked'
|
||||
import { marked } from 'marked';
|
||||
|
||||
const DEFAULT_SLIDE_SEPARATOR = '\r?\n---\r?\n',
|
||||
DEFAULT_NOTES_SEPARATOR = 'notes?:',
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -56,7 +56,7 @@ export const MathJax3 = () => {
|
||||
let revealOptions = deck.getConfig().mathjax3 || {};
|
||||
let options = {...defaultOptions, ...revealOptions};
|
||||
options.tex = {...defaultOptions.tex, ...revealOptions.tex}
|
||||
options.options = {...options.options, ...defaultOptions.options}
|
||||
options.options = {...defaultOptions.options, ...revealOptions.options}
|
||||
options.startup = {...defaultOptions.startup, ...revealOptions.startup}
|
||||
|
||||
let url = options.mathjax || 'https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js';
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -4,16 +4,20 @@
|
||||
|
||||
import mermaid from "mermaid";
|
||||
|
||||
mermaid.mermaidAPI.initialize({
|
||||
// The node size will be calculated incorrectly if set `startOnLoad: start`,
|
||||
// so we need to manually render.
|
||||
startOnLoad: false,
|
||||
});
|
||||
|
||||
const Plugin = {
|
||||
id: "mermaid",
|
||||
|
||||
init: function (reveal) {
|
||||
|
||||
let { ...mermaidConfig } = reveal.getConfig().mermaid || {};
|
||||
|
||||
mermaid.mermaidAPI.initialize({
|
||||
// The node size will be calculated incorrectly if set `startOnLoad: start`,
|
||||
// so we need to manually render.
|
||||
startOnLoad: false,
|
||||
...mermaidConfig,
|
||||
});
|
||||
|
||||
const mermaidEls = reveal.getRevealElement().querySelectorAll(".mermaid");
|
||||
|
||||
Array.from(mermaidEls).forEach(function (el) {
|
||||
@@ -30,8 +34,16 @@ const Plugin = {
|
||||
insertSvg
|
||||
);
|
||||
} catch (error) {
|
||||
console.error(error, { graphDefinition, el });
|
||||
el.innerHTML = error.message;
|
||||
let errorStr = "";
|
||||
if (error?.str) {
|
||||
// From mermaid 9.1.4, error.message does not exists anymore
|
||||
errorStr = error.str;
|
||||
}
|
||||
if (error?.message) {
|
||||
errorStr = error.message;
|
||||
}
|
||||
console.error(errorStr, { error, graphDefinition, el });
|
||||
el.innerHTML = errorStr;
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+170
-118
@@ -1,6 +1,6 @@
|
||||
import speakerViewHTML from './speaker-view.html';
|
||||
|
||||
import marked from 'marked';
|
||||
import { marked } from 'marked';
|
||||
|
||||
/**
|
||||
* Handles opening of and synchronization with the reveal.js
|
||||
@@ -15,141 +15,172 @@ import marked from 'marked';
|
||||
*/
|
||||
const Plugin = () => {
|
||||
|
||||
let popup = null;
|
||||
let connectInterval;
|
||||
let speakerWindow = null;
|
||||
let deck;
|
||||
|
||||
let deck;
|
||||
/**
|
||||
* Opens a new speaker view window.
|
||||
*/
|
||||
function openSpeakerWindow() {
|
||||
|
||||
function openNotes() {
|
||||
// If a window is already open, focus it
|
||||
if( speakerWindow && !speakerWindow.closed ) {
|
||||
speakerWindow.focus();
|
||||
}
|
||||
else {
|
||||
speakerWindow = window.open( 'about:blank', 'reveal.js - Notes', 'width=1100,height=700' );
|
||||
speakerWindow.marked = marked;
|
||||
speakerWindow.document.write( speakerViewHTML );
|
||||
|
||||
if (popup && !popup.closed) {
|
||||
popup.focus();
|
||||
return;
|
||||
}
|
||||
if( !speakerWindow ) {
|
||||
alert( 'Speaker view popup failed to open. Please make sure popups are allowed and reopen the speaker view.' );
|
||||
return;
|
||||
}
|
||||
|
||||
popup = window.open( 'about:blank', 'reveal.js - Notes', 'width=1100,height=700' );
|
||||
popup.marked = marked;
|
||||
popup.document.write( speakerViewHTML );
|
||||
|
||||
if( !popup ) {
|
||||
alert( 'Speaker view popup failed to open. Please make sure popups are allowed and reopen the speaker view.' );
|
||||
return;
|
||||
connect();
|
||||
}
|
||||
|
||||
/**
|
||||
* Connect to the notes window through a postmessage handshake.
|
||||
* Using postmessage enables us to work in situations where the
|
||||
* origins differ, such as a presentation being opened from the
|
||||
* file system.
|
||||
*/
|
||||
function connect() {
|
||||
// Keep trying to connect until we get a 'connected' message back
|
||||
let connectInterval = setInterval( function() {
|
||||
popup.postMessage( JSON.stringify( {
|
||||
namespace: 'reveal-notes',
|
||||
type: 'connect',
|
||||
url: window.location.protocol + '//' + window.location.host + window.location.pathname + window.location.search,
|
||||
state: deck.getState()
|
||||
} ), '*' );
|
||||
}, 500 );
|
||||
}
|
||||
|
||||
window.addEventListener( 'message', function( event ) {
|
||||
let data = JSON.parse( event.data );
|
||||
if( data && data.namespace === 'reveal-notes' && data.type === 'connected' ) {
|
||||
clearInterval( connectInterval );
|
||||
onConnected();
|
||||
}
|
||||
if( data && data.namespace === 'reveal-notes' && data.type === 'call' ) {
|
||||
callRevealApi( data.methodName, data.arguments, data.callId );
|
||||
}
|
||||
} );
|
||||
/**
|
||||
* Reconnect with an existing speaker view window.
|
||||
*/
|
||||
function reconnectSpeakerWindow( reconnectWindow ) {
|
||||
|
||||
if( speakerWindow && !speakerWindow.closed ) {
|
||||
speakerWindow.focus();
|
||||
}
|
||||
else {
|
||||
speakerWindow = reconnectWindow;
|
||||
window.addEventListener( 'message', onPostMessage );
|
||||
onConnected();
|
||||
}
|
||||
|
||||
/**
|
||||
* Calls the specified Reveal.js method with the provided argument
|
||||
* and then pushes the result to the notes frame.
|
||||
*/
|
||||
function callRevealApi( methodName, methodArguments, callId ) {
|
||||
}
|
||||
|
||||
let result = deck[methodName].apply( deck, methodArguments );
|
||||
popup.postMessage( JSON.stringify( {
|
||||
/**
|
||||
* Connect to the notes window through a postmessage handshake.
|
||||
* Using postmessage enables us to work in situations where the
|
||||
* origins differ, such as a presentation being opened from the
|
||||
* file system.
|
||||
*/
|
||||
function connect() {
|
||||
|
||||
const presentationURL = deck.getConfig().url;
|
||||
|
||||
const url = typeof presentationURL === 'string' ? presentationURL :
|
||||
window.location.protocol + '//' + window.location.host + window.location.pathname + window.location.search;
|
||||
|
||||
// Keep trying to connect until we get a 'connected' message back
|
||||
connectInterval = setInterval( function() {
|
||||
speakerWindow.postMessage( JSON.stringify( {
|
||||
namespace: 'reveal-notes',
|
||||
type: 'return',
|
||||
result: result,
|
||||
callId: callId
|
||||
type: 'connect',
|
||||
state: deck.getState(),
|
||||
url
|
||||
} ), '*' );
|
||||
}, 500 );
|
||||
|
||||
window.addEventListener( 'message', onPostMessage );
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Calls the specified Reveal.js method with the provided argument
|
||||
* and then pushes the result to the notes frame.
|
||||
*/
|
||||
function callRevealApi( methodName, methodArguments, callId ) {
|
||||
|
||||
let result = deck[methodName].apply( deck, methodArguments );
|
||||
speakerWindow.postMessage( JSON.stringify( {
|
||||
namespace: 'reveal-notes',
|
||||
type: 'return',
|
||||
result,
|
||||
callId
|
||||
} ), '*' );
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Posts the current slide data to the notes window.
|
||||
*/
|
||||
function post( event ) {
|
||||
|
||||
let slideElement = deck.getCurrentSlide(),
|
||||
notesElement = slideElement.querySelector( 'aside.notes' ),
|
||||
fragmentElement = slideElement.querySelector( '.current-fragment' );
|
||||
|
||||
let messageData = {
|
||||
namespace: 'reveal-notes',
|
||||
type: 'state',
|
||||
notes: '',
|
||||
markdown: false,
|
||||
whitespace: 'normal',
|
||||
state: deck.getState()
|
||||
};
|
||||
|
||||
// Look for notes defined in a slide attribute
|
||||
if( slideElement.hasAttribute( 'data-notes' ) ) {
|
||||
messageData.notes = slideElement.getAttribute( 'data-notes' );
|
||||
messageData.whitespace = 'pre-wrap';
|
||||
}
|
||||
|
||||
/**
|
||||
* Posts the current slide data to the notes window
|
||||
*/
|
||||
function post( event ) {
|
||||
|
||||
let slideElement = deck.getCurrentSlide(),
|
||||
notesElement = slideElement.querySelector( 'aside.notes' ),
|
||||
fragmentElement = slideElement.querySelector( '.current-fragment' );
|
||||
|
||||
let messageData = {
|
||||
namespace: 'reveal-notes',
|
||||
type: 'state',
|
||||
notes: '',
|
||||
markdown: false,
|
||||
whitespace: 'normal',
|
||||
state: deck.getState()
|
||||
};
|
||||
|
||||
// Look for notes defined in a slide attribute
|
||||
if( slideElement.hasAttribute( 'data-notes' ) ) {
|
||||
messageData.notes = slideElement.getAttribute( 'data-notes' );
|
||||
// Look for notes defined in a fragment
|
||||
if( fragmentElement ) {
|
||||
let fragmentNotes = fragmentElement.querySelector( 'aside.notes' );
|
||||
if( fragmentNotes ) {
|
||||
notesElement = fragmentNotes;
|
||||
}
|
||||
else if( fragmentElement.hasAttribute( 'data-notes' ) ) {
|
||||
messageData.notes = fragmentElement.getAttribute( 'data-notes' );
|
||||
messageData.whitespace = 'pre-wrap';
|
||||
|
||||
// In case there are slide notes
|
||||
notesElement = null;
|
||||
}
|
||||
|
||||
// Look for notes defined in a fragment
|
||||
if( fragmentElement ) {
|
||||
let fragmentNotes = fragmentElement.querySelector( 'aside.notes' );
|
||||
if( fragmentNotes ) {
|
||||
notesElement = fragmentNotes;
|
||||
}
|
||||
else if( fragmentElement.hasAttribute( 'data-notes' ) ) {
|
||||
messageData.notes = fragmentElement.getAttribute( 'data-notes' );
|
||||
messageData.whitespace = 'pre-wrap';
|
||||
|
||||
// In case there are slide notes
|
||||
notesElement = null;
|
||||
}
|
||||
}
|
||||
|
||||
// Look for notes defined in an aside element
|
||||
if( notesElement ) {
|
||||
messageData.notes = notesElement.innerHTML;
|
||||
messageData.markdown = typeof notesElement.getAttribute( 'data-markdown' ) === 'string';
|
||||
}
|
||||
|
||||
popup.postMessage( JSON.stringify( messageData ), '*' );
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Called once we have established a connection to the notes
|
||||
* window.
|
||||
*/
|
||||
function onConnected() {
|
||||
|
||||
// Monitor events that trigger a change in state
|
||||
deck.on( 'slidechanged', post );
|
||||
deck.on( 'fragmentshown', post );
|
||||
deck.on( 'fragmenthidden', post );
|
||||
deck.on( 'overviewhidden', post );
|
||||
deck.on( 'overviewshown', post );
|
||||
deck.on( 'paused', post );
|
||||
deck.on( 'resumed', post );
|
||||
|
||||
// Post the initial state
|
||||
post();
|
||||
|
||||
// Look for notes defined in an aside element
|
||||
if( notesElement ) {
|
||||
messageData.notes = notesElement.innerHTML;
|
||||
messageData.markdown = typeof notesElement.getAttribute( 'data-markdown' ) === 'string';
|
||||
}
|
||||
|
||||
connect();
|
||||
speakerWindow.postMessage( JSON.stringify( messageData ), '*' );
|
||||
|
||||
}
|
||||
|
||||
function onPostMessage( event ) {
|
||||
|
||||
let data = JSON.parse( event.data );
|
||||
if( data && data.namespace === 'reveal-notes' && data.type === 'connected' ) {
|
||||
clearInterval( connectInterval );
|
||||
onConnected();
|
||||
}
|
||||
else if( data && data.namespace === 'reveal-notes' && data.type === 'call' ) {
|
||||
callRevealApi( data.methodName, data.arguments, data.callId );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Called once we have established a connection to the notes
|
||||
* window.
|
||||
*/
|
||||
function onConnected() {
|
||||
|
||||
// Monitor events that trigger a change in state
|
||||
deck.on( 'slidechanged', post );
|
||||
deck.on( 'fragmentshown', post );
|
||||
deck.on( 'fragmenthidden', post );
|
||||
deck.on( 'overviewhidden', post );
|
||||
deck.on( 'overviewshown', post );
|
||||
deck.on( 'paused', post );
|
||||
deck.on( 'resumed', post );
|
||||
|
||||
// Post the initial state
|
||||
post();
|
||||
|
||||
}
|
||||
|
||||
@@ -164,19 +195,40 @@ const Plugin = () => {
|
||||
|
||||
// If the there's a 'notes' query set, open directly
|
||||
if( window.location.search.match( /(\?|\&)notes/gi ) !== null ) {
|
||||
openNotes();
|
||||
openSpeakerWindow();
|
||||
}
|
||||
else {
|
||||
// Keep listening for speaker view hearbeats. If we receive a
|
||||
// heartbeat from an orphaned window, reconnect it. This ensures
|
||||
// that we remain connected to the notes even if the presentation
|
||||
// is reloaded.
|
||||
window.addEventListener( 'message', event => {
|
||||
|
||||
if( !speakerWindow && typeof event.data === 'string' ) {
|
||||
let data;
|
||||
|
||||
try {
|
||||
data = JSON.parse( event.data );
|
||||
}
|
||||
catch( error ) {}
|
||||
|
||||
if( data && data.namespace === 'reveal-notes' && data.type === 'heartbeat' ) {
|
||||
reconnectSpeakerWindow( event.source );
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Open the notes when the 's' key is hit
|
||||
deck.addKeyBinding({keyCode: 83, key: 'S', description: 'Speaker notes view'}, function() {
|
||||
openNotes();
|
||||
openSpeakerWindow();
|
||||
} );
|
||||
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
open: openNotes
|
||||
open: openSpeakerWindow
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
<!--
|
||||
NOTE: You need to build the notes plugin after making changes to this file.
|
||||
-->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
@@ -347,7 +350,8 @@
|
||||
layoutDropdown,
|
||||
pendingCalls = {},
|
||||
lastRevealApiCallId = 0,
|
||||
connected = false;
|
||||
connected = false,
|
||||
whitelistedWindows = [window.opener];
|
||||
|
||||
var SPEAKER_LAYOUTS = {
|
||||
'default': 'Default',
|
||||
@@ -362,9 +366,14 @@
|
||||
var connectionTimeout = setTimeout( function() {
|
||||
connectionStatus.innerHTML = 'Error connecting to main window.<br>Please try closing and reopening the speaker view.';
|
||||
}, 5000 );
|
||||
|
||||
;
|
||||
window.addEventListener( 'message', function( event ) {
|
||||
|
||||
// Validate the origin of this message to prevent XSS
|
||||
if( window.location.origin !== event.origin && whitelistedWindows.indexOf( event.source ) === -1 ) {
|
||||
return;
|
||||
}
|
||||
|
||||
clearTimeout( connectionTimeout );
|
||||
connectionStatus.style.display = 'none';
|
||||
|
||||
@@ -395,13 +404,21 @@
|
||||
}
|
||||
else if( /slidechanged|fragmentshown|fragmenthidden|paused|resumed/.test( data.eventName ) && currentState !== JSON.stringify( data.state ) ) {
|
||||
|
||||
window.opener.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ]} ), '*' );
|
||||
dispatchStateToMainWindow( data.state );
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
} );
|
||||
|
||||
/**
|
||||
* Updates the presentation in the main window to match the state
|
||||
* of the presentation in the notes window.
|
||||
*/
|
||||
const dispatchStateToMainWindow = debounce(( state ) => {
|
||||
window.opener.postMessage( JSON.stringify({ method: 'setState', args: [ state ]} ), '*' );
|
||||
}, 500);
|
||||
|
||||
/**
|
||||
* Asynchronously calls the Reveal.js API of the main frame.
|
||||
*/
|
||||
@@ -432,6 +449,7 @@
|
||||
setupKeyboard();
|
||||
setupNotes();
|
||||
setupTimer();
|
||||
setupHeartbeat();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -521,6 +539,8 @@
|
||||
upcomingSlide.setAttribute( 'src', upcomingURL );
|
||||
document.querySelector( '#upcoming-slide' ).appendChild( upcomingSlide );
|
||||
|
||||
whitelistedWindows.push( currentSlide.contentWindow, upcomingSlide.contentWindow );
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -533,6 +553,18 @@
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* We send out a heartbeat at all times to ensure we can
|
||||
* reconnect with the main presentation window after reloads.
|
||||
*/
|
||||
function setupHeartbeat() {
|
||||
|
||||
setInterval( () => {
|
||||
window.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'heartbeat'} ), '*' );
|
||||
}, 1000 );
|
||||
|
||||
}
|
||||
|
||||
function getTimings( callback ) {
|
||||
|
||||
callRevealApi( 'getSlidesAttributes', [], function ( slideAttributes ) {
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
.cursor-dot,.cursor-dot-outline{pointer-events:none;position:absolute;top:0;left:0;border-radius:50%;opacity:0;transform:translate(-50%,-50%);transition:opacity 0.3s ease-in-out,transform 0.3s ease-in-out;}.cursor-dot{width:12px;height:12px;background-color:red;z-index:1;}.no-cursor{cursor:none;}.no-cursor a,.no-cursor div,.no-cursor span{cursor:none;}
|
||||
@@ -0,0 +1 @@
|
||||
var RevealPointer=function(){"use strict";var e={backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,pausebreak:19,capslock:20,esc:27,space:32,pageup:33,pagedown:34,end:35,home:36,leftarrow:37,uparrow:38,rightarrow:39,downarrow:40,insert:45,delete:46,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,a:65,b:66,c:67,d:68,e:69,f:70,g:71,h:72,i:73,j:74,k:75,l:76,m:77,n:78,o:79,p:80,q:81,r:82,s:83,t:84,u:85,v:86,w:87,x:88,y:89,z:90,leftwindowkey:91,rightwindowkey:92,selectkey:93,numpad0:96,numpad1:97,numpad2:98,numpad3:99,numpad4:100,numpad5:101,numpad6:102,numpad7:103,numpad8:104,numpad9:105,multiply:106,add:107,subtract:109,decimalpoint:110,divide:111,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,numlock:144,scrolllock:145,semicolon:186,equalsign:187,comma:188,dash:189,period:190,forwardslash:191,graveaccent:192,openbracket:219,backslash:220,closebracket:221,singlequote:222};return function(){var t={},o=!1,n=null,a={x:0,y:0,isVisible:!1},i={x:0,y:0,scale:1};function l(o){var n;null==(t=o.pointer||{}).key?t.key="q":t.key=t.key.toLowerCase(),null!=t.pointerSize&&"number"==typeof t.pointerSize||(t.pointerSize=12),null!=t.tailLength&&"number"==typeof t.tailLength||(t.tailLength=10),null!=t.color&&"string"==typeof t.color||(t.color="red"),null!=t.alwaysVisible&&"boolean"==typeof t.alwaysVisible||(t.alwaysVisible=!1),null!=t.opacity&&"number"==typeof t.opacity||(t.opacity=.8),t.keyCode=(n=t.key,e[n])}function r(){n.style.top="".concat((a.y-i.y)/i.scale,"px"),n.style.left="".concat((a.x-i.x)/i.scale,"px"),a.isVisible?n.style.opacity=t.opacity.toString():n.style.opacity="0",1!==i.scale?(n.style.width="".concat(t.pointerSize/i.scale,"px"),n.style.height="".concat(t.pointerSize/i.scale,"px")):(n.style.width="".concat(t.pointerSize,"px"),n.style.height="".concat(t.pointerSize,"px"))}function c(e){a.x=e.pageX,a.y=e.pageY;var t=document.body.style.transform;""!==t?(i.x=Number.parseInt(/translate\((.*)px,/gm.exec(t)[1]),i.y=Number.parseInt(/px,\s(.*)px\)/gm.exec(t)[1]),i.scale=Number.parseFloat(/scale\((.)\)/gm.exec(t)[1])):(i.x=0,i.y=0,i.scale=1),requestAnimationFrame(r)}function s(){(o=!o)?(document.addEventListener("mousemove",c),document.body.classList.add("no-cursor"),a.isVisible=!0):(document.removeEventListener("mousemove",c),document.body.classList.remove("no-cursor"),a.isVisible=!1,requestAnimationFrame(r))}return{id:"pointer",init:function(e){var o;l(e.getConfig()),t.alwaysVisible?s():e.addKeyBinding({keyCode:t.keyCode,key:t.key},(function(){s()})),e.on("pointerColorChange",(function(e){var o;o=e.color,null!=n&&(n.style.backgroundColor=null!=o?o:t.color)})),(o=document.createElement("div")).className="cursor-dot",o.style.width="".concat(t.pointerSize,"px"),o.style.height="".concat(t.pointerSize,"px"),o.style.backgroundColor=t.color,t.alwaysVisible&&(o.style.opacity="0.8"),document.body.appendChild(o),n=o}}}}();
|
||||
@@ -25,6 +25,12 @@ const Plugin = {
|
||||
}
|
||||
} );
|
||||
|
||||
},
|
||||
|
||||
destroy: () => {
|
||||
|
||||
zoom.reset();
|
||||
|
||||
}
|
||||
|
||||
};
|
||||
@@ -52,19 +58,11 @@ var zoom = (function(){
|
||||
panUpdateInterval = -1;
|
||||
|
||||
// Check for transform support so that we can fallback otherwise
|
||||
var supportsTransforms = 'WebkitTransform' in document.body.style ||
|
||||
'MozTransform' in document.body.style ||
|
||||
'msTransform' in document.body.style ||
|
||||
'OTransform' in document.body.style ||
|
||||
'transform' in document.body.style;
|
||||
var supportsTransforms = 'transform' in document.body.style;
|
||||
|
||||
if( supportsTransforms ) {
|
||||
// The easing that will be applied when we zoom in/out
|
||||
document.body.style.transition = 'transform 0.8s ease';
|
||||
document.body.style.OTransition = '-o-transform 0.8s ease';
|
||||
document.body.style.msTransition = '-ms-transform 0.8s ease';
|
||||
document.body.style.MozTransition = '-moz-transform 0.8s ease';
|
||||
document.body.style.WebkitTransition = '-webkit-transform 0.8s ease';
|
||||
}
|
||||
|
||||
// Zoom out if the user hits escape
|
||||
@@ -105,10 +103,6 @@ var zoom = (function(){
|
||||
// Reset
|
||||
if( scale === 1 ) {
|
||||
document.body.style.transform = '';
|
||||
document.body.style.OTransform = '';
|
||||
document.body.style.msTransform = '';
|
||||
document.body.style.MozTransform = '';
|
||||
document.body.style.WebkitTransform = '';
|
||||
}
|
||||
// Scale
|
||||
else {
|
||||
@@ -116,16 +110,7 @@ var zoom = (function(){
|
||||
transform = 'translate('+ -rect.x +'px,'+ -rect.y +'px) scale('+ scale +')';
|
||||
|
||||
document.body.style.transformOrigin = origin;
|
||||
document.body.style.OTransformOrigin = origin;
|
||||
document.body.style.msTransformOrigin = origin;
|
||||
document.body.style.MozTransformOrigin = origin;
|
||||
document.body.style.WebkitTransformOrigin = origin;
|
||||
|
||||
document.body.style.transform = transform;
|
||||
document.body.style.OTransform = transform;
|
||||
document.body.style.msTransform = transform;
|
||||
document.body.style.MozTransform = transform;
|
||||
document.body.style.WebkitTransform = transform;
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/*!
|
||||
* reveal.js Zoom plugin
|
||||
*/
|
||||
var e={id:"zoom",init:function(e){e.getRevealElement().addEventListener("mousedown",(function(o){var n=/Linux/.test(window.navigator.platform)?"ctrl":"alt",i=(e.getConfig().zoomKey?e.getConfig().zoomKey:n)+"Key",d=e.getConfig().zoomLevel?e.getConfig().zoomLevel:2;o[i]&&!e.isOverview()&&(o.preventDefault(),t.to({x:o.clientX,y:o.clientY,scale:d,pan:!1}))}))}},t=function(){var e=1,o=0,n=0,i=-1,d=-1,s="WebkitTransform"in document.body.style||"MozTransform"in document.body.style||"msTransform"in document.body.style||"OTransform"in document.body.style||"transform"in document.body.style;function r(t,o){var n=y();if(t.width=t.width||1,t.height=t.height||1,t.x-=(window.innerWidth-t.width*o)/2,t.y-=(window.innerHeight-t.height*o)/2,s)if(1===o)document.body.style.transform="",document.body.style.OTransform="",document.body.style.msTransform="",document.body.style.MozTransform="",document.body.style.WebkitTransform="";else{var i=n.x+"px "+n.y+"px",d="translate("+-t.x+"px,"+-t.y+"px) scale("+o+")";document.body.style.transformOrigin=i,document.body.style.OTransformOrigin=i,document.body.style.msTransformOrigin=i,document.body.style.MozTransformOrigin=i,document.body.style.WebkitTransformOrigin=i,document.body.style.transform=d,document.body.style.OTransform=d,document.body.style.msTransform=d,document.body.style.MozTransform=d,document.body.style.WebkitTransform=d}else 1===o?(document.body.style.position="",document.body.style.left="",document.body.style.top="",document.body.style.width="",document.body.style.height="",document.body.style.zoom=""):(document.body.style.position="relative",document.body.style.left=-(n.x+t.x)/o+"px",document.body.style.top=-(n.y+t.y)/o+"px",document.body.style.width=100*o+"%",document.body.style.height=100*o+"%",document.body.style.zoom=o);e=o,document.documentElement.classList&&(1!==e?document.documentElement.classList.add("zoomed"):document.documentElement.classList.remove("zoomed"))}function m(){var t=.12*window.innerWidth,i=.12*window.innerHeight,d=y();n<i?window.scroll(d.x,d.y-14/e*(1-n/i)):n>window.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-n)/i)*(14/e)),o<t?window.scroll(d.x-14/e*(1-o/t),d.y):o>window.innerWidth-t&&window.scroll(d.x+(1-(window.innerWidth-o)/t)*(14/e),d.y)}function y(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return s&&(document.body.style.transition="transform 0.8s ease",document.body.style.OTransition="-o-transform 0.8s ease",document.body.style.msTransition="-ms-transform 0.8s ease",document.body.style.MozTransition="-moz-transform 0.8s ease",document.body.style.WebkitTransition="-webkit-transform 0.8s ease"),document.addEventListener("keyup",(function(o){1!==e&&27===o.keyCode&&t.out()})),document.addEventListener("mousemove",(function(t){1!==e&&(o=t.clientX,n=t.clientY)})),{to:function(o){if(1!==e)t.out();else{if(o.x=o.x||0,o.y=o.y||0,o.element){var n=o.element.getBoundingClientRect();o.x=n.left-20,o.y=n.top-20,o.width=n.width+40,o.height=n.height+40}void 0!==o.width&&void 0!==o.height&&(o.scale=Math.max(Math.min(window.innerWidth/o.width,window.innerHeight/o.height),1)),o.scale>1&&(o.x*=o.scale,o.y*=o.scale,r(o,o.scale),!1!==o.pan&&(i=setTimeout((function(){d=setInterval(m,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),r({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();export default function(){return e}
|
||||
var e={id:"zoom",init:function(e){e.getRevealElement().addEventListener("mousedown",(function(n){var o=/Linux/.test(window.navigator.platform)?"ctrl":"alt",i=(e.getConfig().zoomKey?e.getConfig().zoomKey:o)+"Key",d=e.getConfig().zoomLevel?e.getConfig().zoomLevel:2;n[i]&&!e.isOverview()&&(n.preventDefault(),t.to({x:n.clientX,y:n.clientY,scale:d,pan:!1}))}))},destroy:function(){t.reset()}},t=function(){var e=1,n=0,o=0,i=-1,d=-1,l="transform"in document.body.style;function s(t,n){var o=r();if(t.width=t.width||1,t.height=t.height||1,t.x-=(window.innerWidth-t.width*n)/2,t.y-=(window.innerHeight-t.height*n)/2,l)if(1===n)document.body.style.transform="";else{var i=o.x+"px "+o.y+"px",d="translate("+-t.x+"px,"+-t.y+"px) scale("+n+")";document.body.style.transformOrigin=i,document.body.style.transform=d}else 1===n?(document.body.style.position="",document.body.style.left="",document.body.style.top="",document.body.style.width="",document.body.style.height="",document.body.style.zoom=""):(document.body.style.position="relative",document.body.style.left=-(o.x+t.x)/n+"px",document.body.style.top=-(o.y+t.y)/n+"px",document.body.style.width=100*n+"%",document.body.style.height=100*n+"%",document.body.style.zoom=n);e=n,document.documentElement.classList&&(1!==e?document.documentElement.classList.add("zoomed"):document.documentElement.classList.remove("zoomed"))}function c(){var t=.12*window.innerWidth,i=.12*window.innerHeight,d=r();o<i?window.scroll(d.x,d.y-14/e*(1-o/i)):o>window.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-o)/i)*(14/e)),n<t?window.scroll(d.x-14/e*(1-n/t),d.y):n>window.innerWidth-t&&window.scroll(d.x+(1-(window.innerWidth-n)/t)*(14/e),d.y)}function r(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return l&&(document.body.style.transition="transform 0.8s ease"),document.addEventListener("keyup",(function(n){1!==e&&27===n.keyCode&&t.out()})),document.addEventListener("mousemove",(function(t){1!==e&&(n=t.clientX,o=t.clientY)})),{to:function(n){if(1!==e)t.out();else{if(n.x=n.x||0,n.y=n.y||0,n.element){var o=n.element.getBoundingClientRect();n.x=o.left-20,n.y=o.top-20,n.width=o.width+40,n.height=o.height+40}void 0!==n.width&&void 0!==n.height&&(n.scale=Math.max(Math.min(window.innerWidth/n.width,window.innerHeight/n.height),1)),n.scale>1&&(n.x*=n.scale,n.y*=n.scale,s(n,n.scale),!1!==n.pan&&(i=setTimeout((function(){d=setInterval(c,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),s({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();export default function(){return e}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o():"function"==typeof define&&define.amd?define(o):(e="undefined"!=typeof globalThis?globalThis:e||self).RevealZoom=o()}(this,(function(){"use strict";
|
||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).RevealZoom=t()}(this,(function(){"use strict";
|
||||
/*!
|
||||
* reveal.js Zoom plugin
|
||||
*/var e={id:"zoom",init:function(e){e.getRevealElement().addEventListener("mousedown",(function(t){var n=/Linux/.test(window.navigator.platform)?"ctrl":"alt",i=(e.getConfig().zoomKey?e.getConfig().zoomKey:n)+"Key",d=e.getConfig().zoomLevel?e.getConfig().zoomLevel:2;t[i]&&!e.isOverview()&&(t.preventDefault(),o.to({x:t.clientX,y:t.clientY,scale:d,pan:!1}))}))}},o=function(){var e=1,t=0,n=0,i=-1,d=-1,s="WebkitTransform"in document.body.style||"MozTransform"in document.body.style||"msTransform"in document.body.style||"OTransform"in document.body.style||"transform"in document.body.style;function r(o,t){var n=l();if(o.width=o.width||1,o.height=o.height||1,o.x-=(window.innerWidth-o.width*t)/2,o.y-=(window.innerHeight-o.height*t)/2,s)if(1===t)document.body.style.transform="",document.body.style.OTransform="",document.body.style.msTransform="",document.body.style.MozTransform="",document.body.style.WebkitTransform="";else{var i=n.x+"px "+n.y+"px",d="translate("+-o.x+"px,"+-o.y+"px) scale("+t+")";document.body.style.transformOrigin=i,document.body.style.OTransformOrigin=i,document.body.style.msTransformOrigin=i,document.body.style.MozTransformOrigin=i,document.body.style.WebkitTransformOrigin=i,document.body.style.transform=d,document.body.style.OTransform=d,document.body.style.msTransform=d,document.body.style.MozTransform=d,document.body.style.WebkitTransform=d}else 1===t?(document.body.style.position="",document.body.style.left="",document.body.style.top="",document.body.style.width="",document.body.style.height="",document.body.style.zoom=""):(document.body.style.position="relative",document.body.style.left=-(n.x+o.x)/t+"px",document.body.style.top=-(n.y+o.y)/t+"px",document.body.style.width=100*t+"%",document.body.style.height=100*t+"%",document.body.style.zoom=t);e=t,document.documentElement.classList&&(1!==e?document.documentElement.classList.add("zoomed"):document.documentElement.classList.remove("zoomed"))}function m(){var o=.12*window.innerWidth,i=.12*window.innerHeight,d=l();n<i?window.scroll(d.x,d.y-14/e*(1-n/i)):n>window.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-n)/i)*(14/e)),t<o?window.scroll(d.x-14/e*(1-t/o),d.y):t>window.innerWidth-o&&window.scroll(d.x+(1-(window.innerWidth-t)/o)*(14/e),d.y)}function l(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return s&&(document.body.style.transition="transform 0.8s ease",document.body.style.OTransition="-o-transform 0.8s ease",document.body.style.msTransition="-ms-transform 0.8s ease",document.body.style.MozTransition="-moz-transform 0.8s ease",document.body.style.WebkitTransition="-webkit-transform 0.8s ease"),document.addEventListener("keyup",(function(t){1!==e&&27===t.keyCode&&o.out()})),document.addEventListener("mousemove",(function(o){1!==e&&(t=o.clientX,n=o.clientY)})),{to:function(t){if(1!==e)o.out();else{if(t.x=t.x||0,t.y=t.y||0,t.element){var n=t.element.getBoundingClientRect();t.x=n.left-20,t.y=n.top-20,t.width=n.width+40,t.height=n.height+40}void 0!==t.width&&void 0!==t.height&&(t.scale=Math.max(Math.min(window.innerWidth/t.width,window.innerHeight/t.height),1)),t.scale>1&&(t.x*=t.scale,t.y*=t.scale,r(t,t.scale),!1!==t.pan&&(i=setTimeout((function(){d=setInterval(m,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),r({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();return function(){return e}}));
|
||||
*/var e={id:"zoom",init:function(e){e.getRevealElement().addEventListener("mousedown",(function(o){var n=/Linux/.test(window.navigator.platform)?"ctrl":"alt",i=(e.getConfig().zoomKey?e.getConfig().zoomKey:n)+"Key",d=e.getConfig().zoomLevel?e.getConfig().zoomLevel:2;o[i]&&!e.isOverview()&&(o.preventDefault(),t.to({x:o.clientX,y:o.clientY,scale:d,pan:!1}))}))},destroy:function(){t.reset()}},t=function(){var e=1,o=0,n=0,i=-1,d=-1,l="transform"in document.body.style;function s(t,o){var n=r();if(t.width=t.width||1,t.height=t.height||1,t.x-=(window.innerWidth-t.width*o)/2,t.y-=(window.innerHeight-t.height*o)/2,l)if(1===o)document.body.style.transform="";else{var i=n.x+"px "+n.y+"px",d="translate("+-t.x+"px,"+-t.y+"px) scale("+o+")";document.body.style.transformOrigin=i,document.body.style.transform=d}else 1===o?(document.body.style.position="",document.body.style.left="",document.body.style.top="",document.body.style.width="",document.body.style.height="",document.body.style.zoom=""):(document.body.style.position="relative",document.body.style.left=-(n.x+t.x)/o+"px",document.body.style.top=-(n.y+t.y)/o+"px",document.body.style.width=100*o+"%",document.body.style.height=100*o+"%",document.body.style.zoom=o);e=o,document.documentElement.classList&&(1!==e?document.documentElement.classList.add("zoomed"):document.documentElement.classList.remove("zoomed"))}function c(){var t=.12*window.innerWidth,i=.12*window.innerHeight,d=r();n<i?window.scroll(d.x,d.y-14/e*(1-n/i)):n>window.innerHeight-i&&window.scroll(d.x,d.y+(1-(window.innerHeight-n)/i)*(14/e)),o<t?window.scroll(d.x-14/e*(1-o/t),d.y):o>window.innerWidth-t&&window.scroll(d.x+(1-(window.innerWidth-o)/t)*(14/e),d.y)}function r(){return{x:void 0!==window.scrollX?window.scrollX:window.pageXOffset,y:void 0!==window.scrollY?window.scrollY:window.pageYOffset}}return l&&(document.body.style.transition="transform 0.8s ease"),document.addEventListener("keyup",(function(o){1!==e&&27===o.keyCode&&t.out()})),document.addEventListener("mousemove",(function(t){1!==e&&(o=t.clientX,n=t.clientY)})),{to:function(o){if(1!==e)t.out();else{if(o.x=o.x||0,o.y=o.y||0,o.element){var n=o.element.getBoundingClientRect();o.x=n.left-20,o.y=n.top-20,o.width=n.width+40,o.height=n.height+40}void 0!==o.width&&void 0!==o.height&&(o.scale=Math.max(Math.min(window.innerWidth/o.width,window.innerHeight/o.height),1)),o.scale>1&&(o.x*=o.scale,o.y*=o.scale,s(o,o.scale),!1!==o.pan&&(i=setTimeout((function(){d=setInterval(c,1e3/60)}),800)))}},out:function(){clearTimeout(i),clearInterval(d),s({x:0,y:0},1),e=1},magnify:function(e){this.to(e)},reset:function(){this.out()},zoomLevel:function(){return e}}}();return function(){return e}}));
|
||||
|
||||
@@ -16,6 +16,10 @@
|
||||
<link rel="stylesheet" href="{{{base}}}plugin/chalkboard/style.css">
|
||||
{{/enableChalkboard}}
|
||||
|
||||
{{#enablePointer}}
|
||||
<link rel="stylesheet" href="{{{base}}}plugin/reveal-pointer/pointer.css" />
|
||||
{{/enablePointer}}
|
||||
|
||||
{{#cssPaths}}
|
||||
<link rel="stylesheet" href="{{{base}}}{{{.}}}" />
|
||||
{{/cssPaths}}
|
||||
@@ -113,6 +117,14 @@
|
||||
{{#enableChalkboard}}
|
||||
<script src="{{{base}}}plugin/chalkboard/plugin.js"></script>
|
||||
{{/enableChalkboard}}
|
||||
{{#enablePointer}}
|
||||
<script src="{{{base}}}plugin/reveal-pointer/pointer.js"></script>
|
||||
{{/enablePointer}}
|
||||
{{#timeForPresentation}}
|
||||
{{#enableTimeBar}}
|
||||
<script src="{{{base}}}plugin/elapsed-time-bar/elapsed-time-bar.js"></script>
|
||||
{{/enableTimeBar}}
|
||||
{{/timeForPresentation}}
|
||||
|
||||
<script>
|
||||
function extend() {
|
||||
@@ -144,8 +156,9 @@
|
||||
}
|
||||
|
||||
var bgColor = getComputedStyle(document.documentElement).getPropertyValue('--r-background-color').trim();
|
||||
var isLight = isLight(bgColor);
|
||||
|
||||
if(isLight(bgColor)){
|
||||
if(isLight){
|
||||
document.body.classList.add('has-light-background');
|
||||
} else {
|
||||
document.body.classList.add('has-dark-background');
|
||||
@@ -172,14 +185,38 @@
|
||||
{{#enableMenu}}
|
||||
RevealMenu,
|
||||
{{/enableMenu}}
|
||||
{{#enablePointer}}
|
||||
RevealPointer,
|
||||
{{/enablePointer}}
|
||||
{{#enableChalkboard}}
|
||||
RevealChalkboard,
|
||||
{{/enableChalkboard}}
|
||||
{{#timeForPresentation}}
|
||||
{{#enableTimeBar}}
|
||||
ElapsedTimeBar
|
||||
{{/enableTimeBar}}
|
||||
{{/timeForPresentation}}
|
||||
],
|
||||
|
||||
|
||||
{{#timeForPresentation}}
|
||||
allottedTime: {{{.}}} * 1000,
|
||||
{{/timeForPresentation}}
|
||||
|
||||
mathjax3: {
|
||||
mathjax: '{{{base}}}plugin/math/mathjax/tex-mml-chtml.js',
|
||||
},
|
||||
markdown: {
|
||||
gfm: true,
|
||||
mangle: true,
|
||||
pedantic: false,
|
||||
smartLists: false,
|
||||
smartypants: false,
|
||||
},
|
||||
|
||||
mermaid: {
|
||||
theme: isLight ? 'default' : 'dark',
|
||||
},
|
||||
|
||||
{{#enableCustomControls}}
|
||||
customcontrols: {
|
||||
@@ -221,4 +258,6 @@
|
||||
Reveal.initialize(options);
|
||||
</script>
|
||||
</body>
|
||||
|
||||
<!-- created with {{! ignore me }}Advanced Slides -->
|
||||
</html>
|
||||
|
||||
+2
-2
File diff suppressed because one or more lines are too long
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "obsidian-asciimath",
|
||||
"name": "asciimath",
|
||||
"version": "0.8.1",
|
||||
"version": "0.8.2",
|
||||
"minAppVersion": "0.15.0",
|
||||
"description": "Add asciimath support for Obsidian.",
|
||||
"author": "widcardw",
|
||||
|
||||
-78600
File diff suppressed because it is too large
Load Diff
+3
-3
File diff suppressed because one or more lines are too long
+6
-6
@@ -34,7 +34,7 @@
|
||||
"allowImageCache": true,
|
||||
"allowImageCacheInScene": true,
|
||||
"displayExportedImageIfAvailable": false,
|
||||
"previewMatchObsidianTheme": false,
|
||||
"previewMatchObsidianTheme": true,
|
||||
"width": "400",
|
||||
"height": "",
|
||||
"overrideObsidianFontSize": false,
|
||||
@@ -45,7 +45,7 @@
|
||||
"phoneUIMode": "mobile",
|
||||
"iframeMatchExcalidrawTheme": true,
|
||||
"matchTheme": true,
|
||||
"matchThemeAlways": false,
|
||||
"matchThemeAlways": true,
|
||||
"matchThemeTrigger": true,
|
||||
"defaultMode": "normal",
|
||||
"defaultPenMode": "never",
|
||||
@@ -85,7 +85,7 @@
|
||||
"iframelyAllowed": true,
|
||||
"pngExportScale": 1,
|
||||
"exportWithTheme": true,
|
||||
"exportWithBackground": true,
|
||||
"exportWithBackground": false,
|
||||
"exportPaddingSVG": 10,
|
||||
"exportEmbedScene": false,
|
||||
"keepInSync": true,
|
||||
@@ -113,7 +113,7 @@
|
||||
"library2": {
|
||||
"type": "excalidrawlib",
|
||||
"version": 2,
|
||||
"source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag/2.21.2",
|
||||
"source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag/2.22.0",
|
||||
"libraryItems": []
|
||||
},
|
||||
"imageElementNotice": true,
|
||||
@@ -149,11 +149,11 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"previousRelease": "2.21.2",
|
||||
"previousRelease": "2.22.0",
|
||||
"showReleaseNotes": true,
|
||||
"compareManifestToPluginVersion": true,
|
||||
"showNewVersionNotification": true,
|
||||
"latexBoilerplate": "\\color{blue}",
|
||||
"latexBoilerplate": "",
|
||||
"latexPreambleLocation": "preamble.sty",
|
||||
"taskboneEnabled": false,
|
||||
"taskboneAPIkey": "",
|
||||
|
||||
+2
-2
File diff suppressed because one or more lines are too long
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "obsidian-excalidraw-plugin",
|
||||
"name": "Excalidraw",
|
||||
"version": "2.21.2",
|
||||
"version": "2.22.0",
|
||||
"minAppVersion": "1.5.7",
|
||||
"description": "Sketch Your Mind. An Obsidian plugin to edit and view Excalidraw drawings. Enter the world of 4D Visual PKM.",
|
||||
"author": "Zsolt Viczian",
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+254
-254
File diff suppressed because one or more lines are too long
+1
-1
@@ -6,5 +6,5 @@
|
||||
"description": "Integrate Git version control with automatic backup and other advanced features.",
|
||||
"isDesktopOnly": false,
|
||||
"fundingUrl": "https://ko-fi.com/vinzent",
|
||||
"version": "2.38.0"
|
||||
"version": "2.38.1"
|
||||
}
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+93
-37
File diff suppressed because one or more lines are too long
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "obsidian-latex-suite",
|
||||
"name": "Latex Suite",
|
||||
"version": "1.11.0",
|
||||
"version": "1.11.3",
|
||||
"minAppVersion": "1.0.0",
|
||||
"description": "Make typesetting LaTeX math as fast as handwriting through snippets, text expansion, and editor enhancements",
|
||||
"author": "artisticat",
|
||||
|
||||
+5
-5
File diff suppressed because one or more lines are too long
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "obsidian-markmind",
|
||||
"name": "Markmind",
|
||||
"version": "3.4.6",
|
||||
"version": "3.4.7",
|
||||
"minAppVersion": "0.9.12",
|
||||
"description": "This is a mindmap , outline tool for obsidian.",
|
||||
"author": "Mark",
|
||||
|
||||
+10
-1
@@ -3794,7 +3794,7 @@ span.mm-sline .line {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin-right:4px;
|
||||
margin-right: 4px;
|
||||
cursor: pointer;
|
||||
border-radius: 5px;
|
||||
background-color: #333;
|
||||
@@ -3814,4 +3814,13 @@ span.mm-sline .line {
|
||||
|
||||
.theme-light .cm-mindmap-mobile div svg {
|
||||
fill: #333;
|
||||
}
|
||||
|
||||
|
||||
.mm-node-size .mm-node-edit {
|
||||
max-width: none !important;
|
||||
}
|
||||
|
||||
.mm-node-size .mm-node-icon {
|
||||
display: flex;
|
||||
}
|
||||
+1
-1
@@ -8,7 +8,7 @@
|
||||
"lineWidth": 40,
|
||||
"lineWidthWide": 50,
|
||||
"maxWidth": 98,
|
||||
"textNormal": 22,
|
||||
"textNormal": 26,
|
||||
"textSmall": 18,
|
||||
"imgGrid": false,
|
||||
"imgWidth": "img-default-width",
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
{
|
||||
"id": 1,
|
||||
"name": "Ma bibliothèque",
|
||||
"lastUpdate": 1774723941998
|
||||
"lastUpdate": 1776186666489
|
||||
}
|
||||
],
|
||||
"renderCitations": true,
|
||||
|
||||
@@ -41,6 +41,195 @@
|
||||
"C-KeyN",
|
||||
"KeyQ"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:split-horizontal",
|
||||
"chords": [
|
||||
"C-KeyZ",
|
||||
"KeyS"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:split-vertical",
|
||||
"chords": [
|
||||
"C-KeyZ",
|
||||
"KeyV"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "editor:focus-top",
|
||||
"chords": [
|
||||
"C-KeyZ",
|
||||
"C-KeyK"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "editor:focus-top",
|
||||
"chords": [
|
||||
"C-KeyZ",
|
||||
"KeyK"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "editor:focus-bottom",
|
||||
"chords": [
|
||||
"C-KeyZ",
|
||||
"C-KeyJ"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "editor:focus-bottom",
|
||||
"chords": [
|
||||
"C-KeyZ",
|
||||
"KeyJ"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "editor:focus-left",
|
||||
"chords": [
|
||||
"C-KeyZ",
|
||||
"KeyH"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "editor:focus-right",
|
||||
"chords": [
|
||||
"C-KeyZ",
|
||||
"C-KeyL"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "editor:focus-right",
|
||||
"chords": [
|
||||
"C-KeyZ",
|
||||
"KeyL"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:next-tab",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"ArrowRight"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:previous-tab",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"ArrowLeft"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-1",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"Numpad1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-1",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"S-Digit1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-2",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"Numpad2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-2",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"S-Digit2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-3",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"Numpad3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-3",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"S-Digit3"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-4",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"Numpad4"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-4",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"S-Digit4"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-5",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"Numpad5"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-5",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"S-Digit5"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-6",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"Numpad6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-6",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"S-Digit6"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-7",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"Numpad7"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-7",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"S-Digit7"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-8",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"Numpad8"
|
||||
]
|
||||
},
|
||||
{
|
||||
"command": "workspace:goto-tab-8",
|
||||
"chords": [
|
||||
"C-KeyB",
|
||||
"S-Digit8"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
+1
-1
@@ -35,7 +35,7 @@
|
||||
"minimal-style@@code-background@@dark": "#1E1E1E",
|
||||
"minimal-style@@window-title-off": false,
|
||||
"minimal-style@@code-normal@@dark": "#BCBCBC",
|
||||
"minimal-style@@image-muted": 0.7,
|
||||
"minimal-style@@image-muted": 1,
|
||||
"minimal-style@@col-alt": false,
|
||||
"supercharged-links@@f1e2-3136-color": "#008A88",
|
||||
"supercharged-links@@591a-86c0-decoration": "initial",
|
||||
|
||||
Vendored
+21
-13
@@ -5,12 +5,12 @@
|
||||
"template": "{{file.basename}}, p.{{pageLabel}}"
|
||||
},
|
||||
{
|
||||
"name": "Page",
|
||||
"template": "p.{{pageLabel}}"
|
||||
"name": "Title",
|
||||
"template": "{{file.basename}}"
|
||||
},
|
||||
{
|
||||
"name": "Text",
|
||||
"template": "{{text}}"
|
||||
"name": "Page",
|
||||
"template": "p.{{pageLabel}}"
|
||||
},
|
||||
{
|
||||
"name": "Emoji",
|
||||
@@ -18,10 +18,14 @@
|
||||
},
|
||||
{
|
||||
"name": "APA",
|
||||
"template": "({{properties.author.toString().slice(2, -2).split('|')[0]}}, {{properties.year}})"
|
||||
"template": "({{properties.author.toString().replace('[[','').replace(/\\|.*]]/g,'')}}, {{properties.year}})"
|
||||
},
|
||||
{
|
||||
"name": "Text",
|
||||
"template": "{{text}}"
|
||||
}
|
||||
],
|
||||
"defaultDisplayTextFormatIndex": 0,
|
||||
"defaultDisplayTextFormatIndex": 1,
|
||||
"syncDisplayTextFormat": true,
|
||||
"syncDefaultDisplayTextFormat": false,
|
||||
"copyCommands": [
|
||||
@@ -48,6 +52,10 @@
|
||||
{
|
||||
"name": "source:: [[|source]]",
|
||||
"template": "source:: [[{{linktext}}|source]]"
|
||||
},
|
||||
{
|
||||
"name": "bullet point",
|
||||
"template": " - \" <span style='display: inline-block; vertical-align: baseline; padding: 0.6ex; height: 0px; margin-bottom: -2pt; border: 2pt solid var(--text-normal); background: {{ ({\"yellow\": \"#F9CF04\", \"red\": \"#EA5151\", \"note\": \"#2F6DDE\", \"important\": \"#BA60E5\", \"\": \"transparent\"})[color.toString()]}}; border-radius: 100%'></span> {{text}} {{linkWithDisplay}}"
|
||||
}
|
||||
],
|
||||
"useAnotherCopyTemplateWhenNoSelection": false,
|
||||
@@ -83,10 +91,10 @@
|
||||
"colors": {
|
||||
"Yellow": "#ffd000",
|
||||
"Red": "#ea5252",
|
||||
"Note": "#086ddd",
|
||||
"Important": "#bb61e5"
|
||||
"Definition": "#086ddd",
|
||||
"Exemple": "#7c4cff"
|
||||
},
|
||||
"defaultColor": "",
|
||||
"defaultColor": "Yellow",
|
||||
"defaultColorPaletteItemIndex": 0,
|
||||
"syncColorPaletteItem": true,
|
||||
"syncDefaultColorPaletteItem": false,
|
||||
@@ -102,7 +110,7 @@
|
||||
"singleMDLeafInSidebar": true,
|
||||
"alwaysUseSidebar": true,
|
||||
"ignoreExistingMarkdownTabIn": [],
|
||||
"defaultColorPaletteActionIndex": 2,
|
||||
"defaultColorPaletteActionIndex": 3,
|
||||
"syncColorPaletteAction": true,
|
||||
"syncDefaultColorPaletteAction": false,
|
||||
"proxyMDProperty": "pdf",
|
||||
@@ -113,7 +121,7 @@
|
||||
"enableHoverPDFInternalLink": true,
|
||||
"recordPDFInternalLinkHistory": true,
|
||||
"alwaysRecordHistory": true,
|
||||
"renderMarkdownInStickyNote": false,
|
||||
"renderMarkdownInStickyNote": true,
|
||||
"enablePDFEdit": true,
|
||||
"author": "Oscar Plaisant",
|
||||
"writeHighlightToFileOpacity": 0.2,
|
||||
@@ -225,7 +233,7 @@
|
||||
"clearSelectionAfterAutoPaste": true,
|
||||
"respectCursorPositionWhenAutoPaste": true,
|
||||
"blankLineAboveAppendedContent": true,
|
||||
"autoCopy": false,
|
||||
"autoCopy": true,
|
||||
"autoFocus": false,
|
||||
"autoPaste": false,
|
||||
"autoFocusTarget": "last-active-and-open-then-last-paste",
|
||||
@@ -279,7 +287,7 @@
|
||||
"showBacklinkIconForAnnotation": false,
|
||||
"showBacklinkIconForOffset": true,
|
||||
"showBacklinkIconForRect": false,
|
||||
"showBoundingRectForBacklinkedAnnot": false,
|
||||
"showBoundingRectForBacklinkedAnnot": true,
|
||||
"hideReplyAnnotation": false,
|
||||
"hideStampAnnotation": false,
|
||||
"searchLinkHighlightAll": "true",
|
||||
|
||||
+19
-19
File diff suppressed because one or more lines are too long
+2
-2
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"id": "templater-obsidian",
|
||||
"name": "Templater",
|
||||
"version": "2.18.1",
|
||||
"version": "2.19.0",
|
||||
"description": "Create and use templates",
|
||||
"minAppVersion": "1.5.0",
|
||||
"minAppVersion": "1.12.2",
|
||||
"author": "SilentVoid",
|
||||
"authorUrl": "https://github.com/SilentVoid13",
|
||||
"helpUrl": "https://silentvoid13.github.io/Templater/",
|
||||
|
||||
+15
-2
@@ -15,6 +15,7 @@
|
||||
"delayMilliSeconds": 20,
|
||||
"disableSuggestionsDuringImeOn": true,
|
||||
"disableSuggestionsInMathBlock": true,
|
||||
"disableSuggestionsInCodeBlock": false,
|
||||
"insertSpaceAfterCompletion": false,
|
||||
"firstCharactersDisableSuggestions": ":/^",
|
||||
"patternsToSuppressTrigger": [
|
||||
@@ -31,7 +32,7 @@
|
||||
"select": [
|
||||
{
|
||||
"modifiers": [],
|
||||
"key": "Tab",
|
||||
"key": "Enter",
|
||||
"hideHotkeyGuide": false
|
||||
}
|
||||
],
|
||||
@@ -40,10 +41,12 @@
|
||||
"modifiers": [
|
||||
"Shift"
|
||||
],
|
||||
"key": "Tab",
|
||||
"key": "Enter",
|
||||
"hideHotkeyGuide": false
|
||||
}
|
||||
],
|
||||
"select with custom alias and add to aliases": [],
|
||||
"select with query alias": [],
|
||||
"up": [
|
||||
{
|
||||
"modifiers": [],
|
||||
@@ -78,6 +81,7 @@
|
||||
"currentVaultMinNumberOfCharacters": 2,
|
||||
"includeCurrentVaultPathPrefixPatterns": "",
|
||||
"excludeCurrentVaultPathPrefixPatterns": "",
|
||||
"excludeCurrentVaultPathGlobPatterns": [],
|
||||
"includeCurrentVaultOnlyFilesUnderCurrentDirectory": false,
|
||||
"excludeCurrentVaultWordPatterns": [],
|
||||
"enableCustomDictionaryComplement": false,
|
||||
@@ -90,7 +94,11 @@
|
||||
"displayedTextSuffix": " => ...",
|
||||
"enableInternalLinkComplement": true,
|
||||
"suggestInternalLinkWithAlias": true,
|
||||
"preserveFirstLetterCaseOnInternalLink": false,
|
||||
"excludeInternalLinkPathPrefixPatterns": "",
|
||||
"excludeInternalLinkPathGlobPatterns": [],
|
||||
"excludeSelfInternalLink": false,
|
||||
"excludeExistingInActiveFileInternalLinks": false,
|
||||
"updateInternalLinksOnSave": true,
|
||||
"insertAliasTransformedFromDisplayedInternalLink": {
|
||||
"enabled": false,
|
||||
@@ -98,9 +106,14 @@
|
||||
"after": ""
|
||||
},
|
||||
"frontMatterKeyForExclusionInternalLink": "",
|
||||
"tagsForExclusionInternalLink": [],
|
||||
"enableFrontMatterComplement": true,
|
||||
"frontMatterComplementMatchStrategy": "inherit",
|
||||
"insertCommaAfterFrontMatterCompletion": false,
|
||||
"currentFileMinNumberOfCharactersForTrigger": 0,
|
||||
"currentVaultMinNumberOfCharactersForTrigger": 0,
|
||||
"customDictionaryMinNumberOfCharactersForTrigger": 0,
|
||||
"internalLinkMinNumberOfCharactersForTrigger": 2,
|
||||
"intelligentSuggestionPrioritization": {
|
||||
"enabled": true,
|
||||
"historyFilePath": "",
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+83
-14
@@ -1059,6 +1059,29 @@ var AppHelper = class {
|
||||
}
|
||||
return !!((_c = (_b = cm5or6 == null ? void 0 : cm5or6.display) == null ? void 0 : _b.input) == null ? void 0 : _c.composing);
|
||||
}
|
||||
/**
|
||||
* Unsafe method
|
||||
*/
|
||||
getVisibleLineRange() {
|
||||
var _a;
|
||||
const markdownView = this.unsafeApp.workspace.getActiveViewOfType(import_obsidian.MarkdownView);
|
||||
if (!markdownView) {
|
||||
return null;
|
||||
}
|
||||
const cm = markdownView.editor.cm;
|
||||
if (!(cm == null ? void 0 : cm.visibleRanges) || !((_a = cm == null ? void 0 : cm.state) == null ? void 0 : _a.doc)) {
|
||||
return null;
|
||||
}
|
||||
const visibleRanges = cm.visibleRanges;
|
||||
if (visibleRanges.length === 0) {
|
||||
return null;
|
||||
}
|
||||
const first = visibleRanges[0];
|
||||
const last = visibleRanges[visibleRanges.length - 1];
|
||||
const fromLine = cm.state.doc.lineAt(first.from).number - 1;
|
||||
const toLine = cm.state.doc.lineAt(last.to).number - 1;
|
||||
return { from: fromLine, to: toLine };
|
||||
}
|
||||
isMobile() {
|
||||
return this.unsafeApp.isMobile;
|
||||
}
|
||||
@@ -7245,6 +7268,7 @@ var AutoCompleteSuggest = class _AutoCompleteSuggest extends import_obsidian7.Ed
|
||||
this.previousLinksCacheInActiveFile = /* @__PURE__ */ new Set();
|
||||
this.keymapEventHandler = [];
|
||||
this.spareEditorSuggestContext = null;
|
||||
this.predictableCycleState = null;
|
||||
this.appHelper = new AppHelper(app);
|
||||
this.statusBar = statusBar;
|
||||
}
|
||||
@@ -7310,6 +7334,7 @@ var AutoCompleteSuggest = class _AutoCompleteSuggest extends import_obsidian7.Ed
|
||||
ins.activeLeafChangeRef = app.workspace.on(
|
||||
"active-leaf-change",
|
||||
async (_) => {
|
||||
ins.predictableCycleState = null;
|
||||
await ins.refreshCurrentFileTokens();
|
||||
ins.refreshInternalLinkTokens();
|
||||
ins.updateFrontMatterToken();
|
||||
@@ -7345,32 +7370,76 @@ var AutoCompleteSuggest = class _AutoCompleteSuggest extends import_obsidian7.Ed
|
||||
return;
|
||||
}
|
||||
const cursor = editor.getCursor();
|
||||
if (this.predictableCycleState) {
|
||||
const state = this.predictableCycleState;
|
||||
const currentCandidate = state.candidates[state.currentIndex];
|
||||
const expectedCh = state.replacementStartCh + currentCandidate.length;
|
||||
if (cursor.line === state.line && cursor.ch === expectedCh) {
|
||||
state.currentIndex = (state.currentIndex + 1) % state.candidates.length;
|
||||
const nextCandidate = state.candidates[state.currentIndex];
|
||||
editor.replaceRange(
|
||||
nextCandidate,
|
||||
{ line: state.line, ch: state.replacementStartCh },
|
||||
cursor
|
||||
);
|
||||
this.close();
|
||||
this.debounceClose();
|
||||
return;
|
||||
}
|
||||
this.predictableCycleState = null;
|
||||
}
|
||||
const currentToken = this.tokenizer.tokenize(editor.getLine(cursor.line).slice(0, cursor.ch)).last();
|
||||
if (!currentToken) {
|
||||
return;
|
||||
}
|
||||
let suggestion = this.tokenizer.tokenize(
|
||||
editor.getRange({ line: Math.max(cursor.line - 50, 0), ch: 0 }, cursor)
|
||||
).reverse().slice(1).find((x) => x.startsWith(currentToken));
|
||||
if (!suggestion) {
|
||||
suggestion = this.tokenizer.tokenize(
|
||||
editor.getRange(cursor, {
|
||||
line: Math.min(cursor.line + 50, editor.lineCount() - 1),
|
||||
ch: 0
|
||||
})
|
||||
).find((x) => x.startsWith(currentToken));
|
||||
}
|
||||
if (!suggestion) {
|
||||
const candidates = this.collectPredictableCandidates(
|
||||
editor,
|
||||
cursor,
|
||||
currentToken
|
||||
);
|
||||
if (candidates.length <= 1) {
|
||||
return;
|
||||
}
|
||||
const replacementStartCh = cursor.ch - currentToken.length;
|
||||
this.predictableCycleState = {
|
||||
originalToken: currentToken,
|
||||
replacementStartCh,
|
||||
line: cursor.line,
|
||||
candidates,
|
||||
currentIndex: 0
|
||||
};
|
||||
const suggestion = candidates[0];
|
||||
editor.replaceRange(
|
||||
suggestion,
|
||||
{ line: cursor.line, ch: cursor.ch - currentToken.length },
|
||||
{ line: cursor.line, ch: cursor.ch }
|
||||
{ line: cursor.line, ch: replacementStartCh },
|
||||
cursor
|
||||
);
|
||||
this.close();
|
||||
this.debounceClose();
|
||||
}
|
||||
collectPredictableCandidates(editor, cursor, originalToken) {
|
||||
var _a, _b;
|
||||
const seen = /* @__PURE__ */ new Set();
|
||||
const candidates = [];
|
||||
const addIfNew = (token) => {
|
||||
if (token.startsWith(originalToken) && token !== originalToken && !seen.has(token)) {
|
||||
seen.add(token);
|
||||
candidates.push(token);
|
||||
}
|
||||
};
|
||||
const visibleRange = this.appHelper.getVisibleLineRange();
|
||||
const rangeStart = (_a = visibleRange == null ? void 0 : visibleRange.from) != null ? _a : Math.max(cursor.line - 50, 0);
|
||||
const rangeEnd = (_b = visibleRange == null ? void 0 : visibleRange.to) != null ? _b : Math.min(cursor.line + 50, editor.lineCount() - 1);
|
||||
const textAbove = editor.getRange({ line: rangeStart, ch: 0 }, cursor);
|
||||
this.tokenizer.tokenize(textAbove).reverse().slice(1).forEach(addIfNew);
|
||||
const textBelow = editor.getRange(cursor, {
|
||||
line: rangeEnd,
|
||||
ch: editor.getLine(rangeEnd).length
|
||||
});
|
||||
this.tokenizer.tokenize(textBelow).forEach(addIfNew);
|
||||
candidates.push(originalToken);
|
||||
return candidates;
|
||||
}
|
||||
unregister() {
|
||||
this.app.vault.offref(this.modifyEventRef);
|
||||
this.app.workspace.offref(this.activeLeafChangeRef);
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"id": "various-complements",
|
||||
"name": "Various Complements",
|
||||
"version": "11.0.0",
|
||||
"version": "11.1.0",
|
||||
"minAppVersion": "1.11.4",
|
||||
"description": "This plugin enables you to complete words like the auto-completion of IDE",
|
||||
"author": "tadashi-aikawa",
|
||||
|
||||
Vendored
+18
-5
@@ -5,17 +5,30 @@
|
||||
/* pdfs, figures... */
|
||||
|
||||
|
||||
.theme-dark .pdf-cropped-embed, /* PDF++ rectangle highlights */
|
||||
.theme-dark .pdfViewer > .page {
|
||||
.theme-dark .pdf-cropped-embed, /* PDF++ rectangle highlights embeds */
|
||||
.theme-dark .pdfViewer > .page,
|
||||
.pdf-thumbnail-view .thumbnail,
|
||||
.pdf-thumbnail-view .thumbnail::after
|
||||
{
|
||||
filter: invert(0.7)
|
||||
brightness(0.85)
|
||||
contrast(1.6)
|
||||
/* brightness(0.85) */
|
||||
/* contrast(1.6) */
|
||||
brightness(1.2)
|
||||
contrast(2.5)
|
||||
hue-rotate(180deg)
|
||||
saturate(150%)
|
||||
saturate(100%)
|
||||
/* blur(0.5px) /1* blur makes the white text less agressive *1/ */
|
||||
;
|
||||
}
|
||||
|
||||
.pdf-thumbnail-view .thumbnail::after {
|
||||
filter: invert(1)
|
||||
brightness(1)
|
||||
contrast(1.5)
|
||||
blur(0.5px) /* blur for better antialiasing */
|
||||
;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Vendored
+8
@@ -0,0 +1,8 @@
|
||||
|
||||
|
||||
|
||||
.workspace-leaf-content[data-type="link-tree"] #link-tree {
|
||||
/* color: red; */
|
||||
font-size: var(--font-adaptive-small);
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user