chore(vault): track .obsidian plugin configs (incl. obsidian-git settings)
This commit is contained in:
Vendored
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"attachmentFolderPath": "Attachments",
|
||||||
|
"promptDelete": false,
|
||||||
|
"alwaysUpdateLinks": true,
|
||||||
|
"newFileLocation": "root",
|
||||||
|
"newFileFolderPath": "0 - 收集/卡片笔记",
|
||||||
|
"trashOption": "system",
|
||||||
|
"pdfExportSettings": {
|
||||||
|
"includeName": true,
|
||||||
|
"pageSize": "Letter",
|
||||||
|
"landscape": false,
|
||||||
|
"margin": "0",
|
||||||
|
"downscalePercent": 100
|
||||||
|
},
|
||||||
|
"vimMode": false,
|
||||||
|
"newLinkFormat": "shortest",
|
||||||
|
"useMarkdownLinks": false,
|
||||||
|
"showUnsupportedFiles": true,
|
||||||
|
"openBehavior": "daily"
|
||||||
|
}
|
||||||
Vendored
+14
@@ -0,0 +1,14 @@
|
|||||||
|
{
|
||||||
|
"accentColor": "",
|
||||||
|
"cssTheme": "Lime_百草霜",
|
||||||
|
"translucency": false,
|
||||||
|
"enabledCssSnippets": [
|
||||||
|
"IFPM-frame",
|
||||||
|
"IFPM-title-center",
|
||||||
|
"IFPM-title-top"
|
||||||
|
],
|
||||||
|
"baseFontSize": 20,
|
||||||
|
"theme": "system",
|
||||||
|
"nativeMenus": false,
|
||||||
|
"baseFontSizeAction": false
|
||||||
|
}
|
||||||
Vendored
+3
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"backlinkInDocument": true
|
||||||
|
}
|
||||||
Vendored
+10
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"type": "group",
|
||||||
|
"ctime": 1768359897129,
|
||||||
|
"items": [],
|
||||||
|
"title": "知识管理"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Vendored
+13
@@ -0,0 +1,13 @@
|
|||||||
|
[
|
||||||
|
"obsidian-clipper",
|
||||||
|
"obsidian-linter",
|
||||||
|
"obsidian-local-images-plus",
|
||||||
|
"templater-obsidian",
|
||||||
|
"obsidian-opencode",
|
||||||
|
"pkmer",
|
||||||
|
"maps",
|
||||||
|
"marp",
|
||||||
|
"various-complements",
|
||||||
|
"obsidian-custom-frames",
|
||||||
|
"obsidian-git"
|
||||||
|
]
|
||||||
+31
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"file-explorer": true,
|
||||||
|
"global-search": true,
|
||||||
|
"switcher": true,
|
||||||
|
"graph": true,
|
||||||
|
"backlink": true,
|
||||||
|
"canvas": true,
|
||||||
|
"outgoing-link": true,
|
||||||
|
"tag-pane": true,
|
||||||
|
"page-preview": true,
|
||||||
|
"daily-notes": true,
|
||||||
|
"templates": false,
|
||||||
|
"note-composer": true,
|
||||||
|
"command-palette": true,
|
||||||
|
"slash-command": false,
|
||||||
|
"editor-status": true,
|
||||||
|
"starred": true,
|
||||||
|
"markdown-importer": true,
|
||||||
|
"zk-prefixer": true,
|
||||||
|
"random-note": false,
|
||||||
|
"outline": true,
|
||||||
|
"word-count": true,
|
||||||
|
"slides": false,
|
||||||
|
"audio-recorder": false,
|
||||||
|
"workspaces": false,
|
||||||
|
"file-recovery": true,
|
||||||
|
"publish": false,
|
||||||
|
"sync": false,
|
||||||
|
"bookmarks": true,
|
||||||
|
"properties": true
|
||||||
|
}
|
||||||
Vendored
+34
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"file-explorer": true,
|
||||||
|
"global-search": true,
|
||||||
|
"switcher": true,
|
||||||
|
"graph": true,
|
||||||
|
"backlink": true,
|
||||||
|
"canvas": true,
|
||||||
|
"outgoing-link": true,
|
||||||
|
"tag-pane": true,
|
||||||
|
"page-preview": true,
|
||||||
|
"daily-notes": true,
|
||||||
|
"templates": true,
|
||||||
|
"note-composer": true,
|
||||||
|
"command-palette": true,
|
||||||
|
"slash-command": true,
|
||||||
|
"editor-status": true,
|
||||||
|
"starred": true,
|
||||||
|
"markdown-importer": true,
|
||||||
|
"zk-prefixer": true,
|
||||||
|
"random-note": true,
|
||||||
|
"outline": true,
|
||||||
|
"word-count": true,
|
||||||
|
"slides": true,
|
||||||
|
"audio-recorder": false,
|
||||||
|
"workspaces": true,
|
||||||
|
"file-recovery": true,
|
||||||
|
"publish": false,
|
||||||
|
"sync": false,
|
||||||
|
"bookmarks": true,
|
||||||
|
"properties": true,
|
||||||
|
"webviewer": true,
|
||||||
|
"footnotes": true,
|
||||||
|
"bases": true
|
||||||
|
}
|
||||||
Vendored
+4
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"folder": "Daily",
|
||||||
|
"template": "Templates/Daily Note Template"
|
||||||
|
}
|
||||||
Vendored
+22
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"collapse-filter": false,
|
||||||
|
"search": "",
|
||||||
|
"showTags": false,
|
||||||
|
"showAttachments": false,
|
||||||
|
"hideUnresolved": false,
|
||||||
|
"showOrphans": true,
|
||||||
|
"collapse-color-groups": false,
|
||||||
|
"colorGroups": [],
|
||||||
|
"collapse-display": false,
|
||||||
|
"showArrow": true,
|
||||||
|
"textFadeMultiplier": 0,
|
||||||
|
"nodeSizeMultiplier": 1,
|
||||||
|
"lineSizeMultiplier": 1,
|
||||||
|
"collapse-forces": false,
|
||||||
|
"centerStrength": 0.705983612201336,
|
||||||
|
"repelStrength": 14.9142739103491,
|
||||||
|
"linkStrength": 1,
|
||||||
|
"linkDistance": 157,
|
||||||
|
"scale": 0.1166089094258543,
|
||||||
|
"close": true
|
||||||
|
}
|
||||||
Vendored
+153
@@ -0,0 +1,153 @@
|
|||||||
|
{
|
||||||
|
"insert-current-time": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt"
|
||||||
|
],
|
||||||
|
"key": "T"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"insert-current-date": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt"
|
||||||
|
],
|
||||||
|
"key": "D"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"obsidian-read-it-later:save-clipboard-to-notice": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Mod"
|
||||||
|
],
|
||||||
|
"key": "R"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"editor:save-file": [],
|
||||||
|
"dida-sync:sync-current-file": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Mod",
|
||||||
|
"Shift"
|
||||||
|
],
|
||||||
|
"key": "D"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"insert-template": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt"
|
||||||
|
],
|
||||||
|
"key": "M"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"mantou-ai:question_for_mantou": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt",
|
||||||
|
"Meta"
|
||||||
|
],
|
||||||
|
"key": "I"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ai-zhipu:generate": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt",
|
||||||
|
"Mod"
|
||||||
|
],
|
||||||
|
"key": "I"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"obsidian-better-command-palette:open-better-commmand-palette": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Mod"
|
||||||
|
],
|
||||||
|
"key": "P"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"command-palette:open": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Mod"
|
||||||
|
],
|
||||||
|
"key": "P"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"workspace:split-vertical": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Mod"
|
||||||
|
],
|
||||||
|
"key": "\\"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"workspace:split-horizontal": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Mod"
|
||||||
|
],
|
||||||
|
"key": "-"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"file-explorer:new-file": [],
|
||||||
|
"note-chain:chain_insert_node": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt"
|
||||||
|
],
|
||||||
|
"key": "I"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"note-chain:chain_move_donw_node": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt"
|
||||||
|
],
|
||||||
|
"key": "ArrowDown"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"note-chain:chain_move_up_node": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt"
|
||||||
|
],
|
||||||
|
"key": "ArrowUp"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"note-chain:cmd_open_prev_note_of_right_leaf": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt"
|
||||||
|
],
|
||||||
|
"key": "ArrowLeft"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"note-chain:cmd_open_next_note_of_right_leaf": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Alt"
|
||||||
|
],
|
||||||
|
"key": "ArrowRight"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"zk-prefixer": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Mod"
|
||||||
|
],
|
||||||
|
"key": "N"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"random-note": [
|
||||||
|
{
|
||||||
|
"modifiers": [
|
||||||
|
"Meta",
|
||||||
|
"Shift"
|
||||||
|
],
|
||||||
|
"key": "N"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"file-explorer:new-file-in-new-pane": []
|
||||||
|
}
|
||||||
Vendored
+4
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"askBeforeMerging": false,
|
||||||
|
"template": ""
|
||||||
|
}
|
||||||
+7370
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"advanced-canvas","name":"Advanced Canvas","version":"5.6.5","minAppVersion":"1.1.0","description":"Supercharge your canvas experience! Create presentations, flowcharts and more!","author":"Developer-Mike","authorUrl":"https://github.com/Developer-Mike","fundingUrl":"https://ko-fi.com/X8X27IA08","isDesktopOnly":false}
|
||||||
+508
@@ -0,0 +1,508 @@
|
|||||||
|
/* src/styles.scss */
|
||||||
|
.properties-field > .setting-item-info {
|
||||||
|
flex: 0;
|
||||||
|
margin: 0;
|
||||||
|
padding: var(--size-4-1) var(--size-4-2);
|
||||||
|
border: var(--input-border-width) solid var(--background-modifier-border);
|
||||||
|
border-radius: var(--input-radius) 0 0 var(--input-radius);
|
||||||
|
}
|
||||||
|
.properties-field > .setting-item-control > input {
|
||||||
|
width: 100%;
|
||||||
|
border-radius: 0 var(--input-radius) var(--input-radius) 0;
|
||||||
|
}
|
||||||
|
.ac-settings-heading {
|
||||||
|
border-bottom: 1px solid var(--color-accent);
|
||||||
|
}
|
||||||
|
.ac-settings-heading:not(:first-child) {
|
||||||
|
margin-top: var(--size-4-10) !important;
|
||||||
|
}
|
||||||
|
.ac-settings-heading:has(.checkbox-container:not(.is-enabled)) {
|
||||||
|
border-bottom-color: var(--background-modifier-border-hover);
|
||||||
|
}
|
||||||
|
.ac-settings-heading .setting-item-description {
|
||||||
|
margin-inline-end: 20px;
|
||||||
|
}
|
||||||
|
.settings-header-children {
|
||||||
|
transform-origin: top center;
|
||||||
|
transform: scaleY(1);
|
||||||
|
transition: transform 0.2s ease-in-out;
|
||||||
|
}
|
||||||
|
.settings-header-children details {
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: initial;
|
||||||
|
}
|
||||||
|
.ac-settings-heading:has(.checkbox-container:not(.is-enabled)) + .settings-header-children {
|
||||||
|
opacity: 0.5;
|
||||||
|
pointer-events: none;
|
||||||
|
height: 0;
|
||||||
|
transform: scaleY(0);
|
||||||
|
}
|
||||||
|
details.setting-item[open] > summary {
|
||||||
|
margin-bottom: 0.75em;
|
||||||
|
}
|
||||||
|
details.setting-item > *:not(summary) {
|
||||||
|
padding-left: 1em;
|
||||||
|
border-left: 1px solid var(--color-accent);
|
||||||
|
}
|
||||||
|
.kofi-banner {
|
||||||
|
position: relative;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
padding: var(--size-4-3);
|
||||||
|
background-color: var(--background-secondary);
|
||||||
|
border: 1px solid var(--divider-color);
|
||||||
|
border-radius: var(--radius-s);
|
||||||
|
}
|
||||||
|
.kofi-banner h1 {
|
||||||
|
margin: 0;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: var(--font-ui-large);
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.kofi-banner .progress-container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
justify-items: center;
|
||||||
|
}
|
||||||
|
.kofi-banner .progress-container progress {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
.kofi-banner .progress-container progress::-webkit-progress-bar {
|
||||||
|
background-color: var(--background-modifier-border);
|
||||||
|
border-radius: var(--input-radius);
|
||||||
|
}
|
||||||
|
.kofi-banner .progress-container progress::-webkit-progress-value {
|
||||||
|
background-color: var(--color-accent);
|
||||||
|
border-radius: var(--input-radius);
|
||||||
|
}
|
||||||
|
.kofi-banner .progress-container .hourly-rate {
|
||||||
|
margin-left: 10px;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.kofi-banner .ac-kofi-button {
|
||||||
|
align-self: flex-end;
|
||||||
|
width: min-content;
|
||||||
|
height: min-content;
|
||||||
|
line-height: 0;
|
||||||
|
}
|
||||||
|
.kofi-banner .ac-kofi-button img {
|
||||||
|
min-width: 100px;
|
||||||
|
width: 25%;
|
||||||
|
max-width: 200px;
|
||||||
|
}
|
||||||
|
.canvas-wrapper > .document-search-container {
|
||||||
|
transform: translateZ(0);
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.canvas-wrapper:not(.mod-readonly) .show-while-readonly {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.canvas-control-item[data-toggled=true] {
|
||||||
|
background-color: var(--color-accent);
|
||||||
|
}
|
||||||
|
.canvas-control-item[data-toggled=true] svg {
|
||||||
|
stroke: var(--text-on-accent);
|
||||||
|
}
|
||||||
|
.reactive-node,
|
||||||
|
.canvas-node[data-shape=database],
|
||||||
|
.canvas-node[data-shape=document],
|
||||||
|
.canvas-node[data-shape=predefined-process],
|
||||||
|
.canvas-node[data-shape=diamond] {
|
||||||
|
--border-color: rgb(var(--canvas-color));
|
||||||
|
--border-width: 3px;
|
||||||
|
--box-shadow: none;
|
||||||
|
}
|
||||||
|
.reactive-node.is-focused,
|
||||||
|
.is-focused.canvas-node[data-shape=database],
|
||||||
|
.is-focused.canvas-node[data-shape=document],
|
||||||
|
.is-focused.canvas-node[data-shape=predefined-process],
|
||||||
|
.is-focused.canvas-node[data-shape=diamond],
|
||||||
|
.reactive-node.is-selected,
|
||||||
|
.is-selected.canvas-node[data-shape=database],
|
||||||
|
.is-selected.canvas-node[data-shape=document],
|
||||||
|
.is-selected.canvas-node[data-shape=predefined-process],
|
||||||
|
.is-selected.canvas-node[data-shape=diamond] {
|
||||||
|
--border-color: var(--color-accent);
|
||||||
|
--border-width: 5px;
|
||||||
|
--box-shadow: var(--shadow-border-accent);
|
||||||
|
}
|
||||||
|
.reactive-node.is-themed,
|
||||||
|
.is-themed.canvas-node[data-shape=database],
|
||||||
|
.is-themed.canvas-node[data-shape=document],
|
||||||
|
.is-themed.canvas-node[data-shape=predefined-process],
|
||||||
|
.is-themed.canvas-node[data-shape=diamond] {
|
||||||
|
--border-color: rgba(var(--canvas-color), 0.7);
|
||||||
|
}
|
||||||
|
.reactive-node.is-themed.is-focused,
|
||||||
|
.is-themed.is-focused.canvas-node[data-shape=database],
|
||||||
|
.is-themed.is-focused.canvas-node[data-shape=document],
|
||||||
|
.is-themed.is-focused.canvas-node[data-shape=predefined-process],
|
||||||
|
.is-themed.is-focused.canvas-node[data-shape=diamond],
|
||||||
|
.reactive-node.is-themed.is-selected,
|
||||||
|
.is-themed.is-selected.canvas-node[data-shape=database],
|
||||||
|
.is-themed.is-selected.canvas-node[data-shape=document],
|
||||||
|
.is-themed.is-selected.canvas-node[data-shape=predefined-process],
|
||||||
|
.is-themed.is-selected.canvas-node[data-shape=diamond] {
|
||||||
|
--border-color: rgb(var(--canvas-color));
|
||||||
|
--box-shadow: var(--shadow-border-themed);
|
||||||
|
}
|
||||||
|
.canvas-node[data-text-align=center] .markdown-preview-view {
|
||||||
|
scrollbar-gutter: auto;
|
||||||
|
}
|
||||||
|
.canvas-node[data-text-align=center] .markdown-preview-view .markdown-preview-section {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
min-height: 0 !important;
|
||||||
|
text-align: center;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
.canvas-node[data-text-align=right] {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape] .canvas-node-container .markdown-preview-view.markdown-rendered {
|
||||||
|
transform: unset;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=pill] .canvas-node-container {
|
||||||
|
border-radius: 5000px;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=diamond] {
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=diamond].is-focused,
|
||||||
|
.canvas-node[data-shape=diamond].is-selected {
|
||||||
|
border-radius: var(--radius-m);
|
||||||
|
outline: 2px solid var(--color-accent);
|
||||||
|
outline-offset: 5px;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=diamond] .canvas-node-container {
|
||||||
|
border: none;
|
||||||
|
box-shadow: none !important;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=diamond] .canvas-node-container:not(:has(.embed-iframe)) {
|
||||||
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 141.42135624 141.42135624' preserveAspectRatio='none'%3E%3Cstyle%3E rect %7B transform-origin: center; transform: rotate(45deg) scale(1.05); %7D %3C/style%3E%3Crect rx='8' x='20.71067812' y='20.71067812' width='100' height='100' /%3E%3C/svg%3E");
|
||||||
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 141.42135624 141.42135624' preserveAspectRatio='none'%3E%3Cstyle%3E rect %7B transform-origin: center; transform: rotate(45deg) scale(1.05); %7D %3C/style%3E%3Crect rx='8' x='20.71067812' y='20.71067812' width='100' height='100' /%3E%3C/svg%3E");
|
||||||
|
mask-repeat: no-repeat;
|
||||||
|
-webkit-mask-repeat: no-repeat;
|
||||||
|
mask-size: 100%;
|
||||||
|
-webkit-mask-size: 100%;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=diamond] .canvas-node-container .canvas-node-placeholder::after {
|
||||||
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 141.42135624 141.42135624' preserveAspectRatio='none'%3E%3Cstyle%3E rect %7B transform-origin: center; transform: rotate(45deg) scale(1.05); %7D %3C/style%3E%3Crect rx='8' x='20.71067812' y='20.71067812' width='100' height='100' /%3E%3C/svg%3E");
|
||||||
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 141.42135624 141.42135624' preserveAspectRatio='none'%3E%3Cstyle%3E rect %7B transform-origin: center; transform: rotate(45deg) scale(1.05); %7D %3C/style%3E%3Crect rx='8' x='20.71067812' y='20.71067812' width='100' height='100' /%3E%3C/svg%3E");
|
||||||
|
mask-repeat: no-repeat;
|
||||||
|
-webkit-mask-repeat: no-repeat;
|
||||||
|
mask-size: 100%;
|
||||||
|
-webkit-mask-size: 100%;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=diamond]::before {
|
||||||
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 141.42135624 141.42135624' preserveAspectRatio='none'%3E%3Cstyle%3E rect %7B transform-origin: center; transform: rotate(45deg) scale(1.05); %7D %3C/style%3E%3Crect rx='8' x='20.71067812' y='20.71067812' width='100' height='100' /%3E%3C/svg%3E");
|
||||||
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 141.42135624 141.42135624' preserveAspectRatio='none'%3E%3Cstyle%3E rect %7B transform-origin: center; transform: rotate(45deg) scale(1.05); %7D %3C/style%3E%3Crect rx='8' x='20.71067812' y='20.71067812' width='100' height='100' /%3E%3C/svg%3E");
|
||||||
|
mask-repeat: no-repeat;
|
||||||
|
-webkit-mask-repeat: no-repeat;
|
||||||
|
mask-size: 100%;
|
||||||
|
-webkit-mask-size: 100%;
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
top: calc(var(--border-width) * -1);
|
||||||
|
left: calc(var(--border-width) * -1);
|
||||||
|
width: calc(100% + var(--border-width) * 2);
|
||||||
|
height: calc(100% + var(--border-width) * 2);
|
||||||
|
background-color: var(--border-color);
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=parallelogram] .canvas-node-container {
|
||||||
|
transform: skewX(-20deg);
|
||||||
|
backface-visibility: hidden;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=parallelogram] .canvas-node-container .canvas-node-content .markdown-embed-content {
|
||||||
|
transform: skewX(20deg);
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=circle] .canvas-node-container {
|
||||||
|
border-radius: 50%;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=circle] .canvas-node-container .markdown-preview-view {
|
||||||
|
overflow-y: initial;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=predefined-process] .canvas-node-container .canvas-node-content {
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=predefined-process] .canvas-node-container::before,
|
||||||
|
.canvas-node[data-shape=predefined-process] .canvas-node-container::after {
|
||||||
|
content: "";
|
||||||
|
z-index: 1;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
width: 0;
|
||||||
|
height: 100%;
|
||||||
|
border-left: var(--border-width) solid var(--border-color);
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=predefined-process] .canvas-node-container::before {
|
||||||
|
left: calc(10px - var(--border-width));
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=predefined-process] .canvas-node-container::after {
|
||||||
|
right: calc(10px - var(--border-width));
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=document] {
|
||||||
|
--border-width: 2.5px;
|
||||||
|
filter: drop-shadow(0 var(--border-width) 0 var(--border-color)) drop-shadow(0 calc(var(--border-width) * -1) 0 var(--border-color));
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=document] .canvas-node-container {
|
||||||
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 75 45' preserveAspectRatio='none'%3E%3Cpath d='M75 0 75 39.375Q56.25 29.25 37.5 39.375 18.75 49.5 0 39.375L0 0Z' /%3E%3C/svg%3E");
|
||||||
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 75 45' preserveAspectRatio='none'%3E%3Cpath d='M75 0 75 39.375Q56.25 29.25 37.5 39.375 18.75 49.5 0 39.375L0 0Z' /%3E%3C/svg%3E");
|
||||||
|
mask-repeat: no-repeat;
|
||||||
|
-webkit-mask-repeat: no-repeat;
|
||||||
|
mask-size: 100%;
|
||||||
|
-webkit-mask-size: 100%;
|
||||||
|
border: var(--border-width) solid var(--border-color);
|
||||||
|
border-top: none;
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=document].is-focused,
|
||||||
|
.canvas-node[data-shape=document].is-selected {
|
||||||
|
--border-width: 4px;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database] {
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database] .canvas-node-container {
|
||||||
|
border: var(--border-width) solid var(--border-color);
|
||||||
|
border-bottom: 0;
|
||||||
|
border-top: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
box-shadow: none !important;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database] .canvas-node-container .canvas-node-placeholder {
|
||||||
|
transform: translateY(25px);
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database]::before,
|
||||||
|
.canvas-node[data-shape=database]::after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
box-sizing: border-box;
|
||||||
|
width: 100%;
|
||||||
|
height: 50px;
|
||||||
|
border-radius: 50%;
|
||||||
|
border: var(--border-width) solid var(--border-color);
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database]::after {
|
||||||
|
top: -25px;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database]::before {
|
||||||
|
bottom: -25px;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database].is-themed .canvas-node-content {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database].is-themed:not(:has(.embed-iframe)) .canvas-node-container,
|
||||||
|
.canvas-node[data-shape=database].is-themed:not(:has(.embed-iframe))::after,
|
||||||
|
.canvas-node[data-shape=database].is-themed:not(:has(.embed-iframe))::before {
|
||||||
|
box-shadow: inset 0 0 0 1000px rgba(var(--canvas-color), 0.07) !important;
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database] .canvas-node-content:not(:has(.embed-iframe)) {
|
||||||
|
transform: translateY(20px);
|
||||||
|
}
|
||||||
|
.canvas-node[data-shape=database]:has(.embed-iframe)::after {
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
.canvas-node[data-border=dashed] .canvas-node-container {
|
||||||
|
box-shadow: none;
|
||||||
|
border-style: dashed;
|
||||||
|
}
|
||||||
|
.canvas-node[data-border=dotted] .canvas-node-container {
|
||||||
|
box-shadow: none;
|
||||||
|
border-style: dotted;
|
||||||
|
}
|
||||||
|
.canvas-node[data-border=invisible] {
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
.canvas-node[data-border=invisible]:not(.is-focused):not(.is-selected) .canvas-node-container {
|
||||||
|
border-color: transparent !important;
|
||||||
|
}
|
||||||
|
.canvas-node[data-border=invisible] .canvas-node-label {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.canvas-node[data-border=invisible] .canvas-node-container {
|
||||||
|
background-color: transparent;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
.canvas-node[data-border][data-shape=predefined-process] {
|
||||||
|
--border-width: 2px;
|
||||||
|
}
|
||||||
|
.canvas-node[data-border][data-shape=predefined-process] .is-focused,
|
||||||
|
.canvas-node[data-border][data-shape=predefined-process] .is-selected {
|
||||||
|
--border-width: 2px;
|
||||||
|
}
|
||||||
|
.canvas-node[data-border=dashed][data-shape=predefined-process] .canvas-node-container::before,
|
||||||
|
.canvas-node[data-border=dashed][data-shape=predefined-process] .canvas-node-container::after {
|
||||||
|
border-left: var(--border-width) dashed var(--border-color);
|
||||||
|
}
|
||||||
|
.canvas-node[data-border=dotted][data-shape=predefined-process] .canvas-node-container::before,
|
||||||
|
.canvas-node[data-border=dotted][data-shape=predefined-process] .canvas-node-container::after {
|
||||||
|
border-left: var(--border-width) dotted var(--border-color);
|
||||||
|
}
|
||||||
|
.canvas-node[data-border][data-shape=document] .canvas-node-container {
|
||||||
|
border-top: none;
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
.canvas-edges path[data-path=dotted] {
|
||||||
|
stroke-dasharray: calc(3px * var(--zoom-multiplier));
|
||||||
|
}
|
||||||
|
.canvas-edges path[data-path=short-dashed] {
|
||||||
|
stroke-dasharray: 9px;
|
||||||
|
}
|
||||||
|
.canvas-edges path[data-path=long-dashed] {
|
||||||
|
stroke-dasharray: 18px;
|
||||||
|
}
|
||||||
|
.canvas-edges [data-arrow=triangle-outline] polygon,
|
||||||
|
.canvas-edges [data-arrow=diamond-outline] polygon,
|
||||||
|
.canvas-edges [data-arrow=circle-outline] polygon {
|
||||||
|
fill: var(--canvas-background);
|
||||||
|
stroke: rgb(var(--canvas-color));
|
||||||
|
stroke-width: calc(3px * var(--zoom-multiplier));
|
||||||
|
}
|
||||||
|
.canvas-edges [data-arrow=thin-triangle] polygon {
|
||||||
|
fill: transparent;
|
||||||
|
stroke: rgb(var(--canvas-color));
|
||||||
|
stroke-width: calc(4px * var(--zoom-multiplier));
|
||||||
|
}
|
||||||
|
.canvas.is-exporting {
|
||||||
|
--zoom-multiplier: 1;
|
||||||
|
}
|
||||||
|
.canvas.is-exporting * {
|
||||||
|
pointer-events: none !important;
|
||||||
|
transition: none !important;
|
||||||
|
}
|
||||||
|
.canvas.is-exporting .collapse-button {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.canvas.is-exporting #watermark-ac {
|
||||||
|
z-index: 9999999;
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-collapsible-groups-feature-enabled=true] .canvas.is-exporting .canvas-node .canvas-group-label {
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
.progress-bar-modal-ac {
|
||||||
|
margin-top: 0.75em;
|
||||||
|
}
|
||||||
|
.progress-bar-modal-ac.error .setting-progress-bar {
|
||||||
|
color: var(--color-error);
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-disable-font-size-relative-to-zoom=true] {
|
||||||
|
--zoom-multiplier: 1 !important;
|
||||||
|
}
|
||||||
|
.canvas-wrapper.mod-readonly[data-hide-background-grid-when-in-readonly=true] .canvas-background {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
.collapse-button {
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
top: calc(-1 * var(--size-4-1) * var(--zoom-multiplier));
|
||||||
|
padding: var(--size-4-1) var(--size-4-2);
|
||||||
|
transform-origin: bottom left;
|
||||||
|
transform: translate(0, -100%) scale(var(--zoom-multiplier));
|
||||||
|
border-radius: var(--radius-s);
|
||||||
|
color: var(--text-muted);
|
||||||
|
background-color: rgba(var(--canvas-color), 0.1);
|
||||||
|
font-size: 1.5em;
|
||||||
|
line-height: 1;
|
||||||
|
pointer-events: initial;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: transform 500ms cubic-bezier(0.16, 1, 0.3, 1);
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-collapsible-groups-feature-enabled=true] .canvas-node .canvas-group-label {
|
||||||
|
left: calc(40px * var(--zoom-multiplier));
|
||||||
|
}
|
||||||
|
.canvas-node[data-collapsed] .canvas-node-container {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.canvas-node[data-collapsed] .canvas-group-label {
|
||||||
|
max-width: initial;
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-collapsed-group-preview-on-drag=true][data-is-dragging] .canvas-node[data-collapsed] .canvas-node-container {
|
||||||
|
display: block;
|
||||||
|
opacity: 0.5;
|
||||||
|
border-style: dashed;
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-collapsed-group-preview-on-drag=true][data-is-dragging] .canvas-node[data-collapsed] .canvas-node-container .canvas-node-content {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
.canvas-node-interaction-layer[data-target-collapsed] .canvas-node-resizer {
|
||||||
|
pointer-events: none;
|
||||||
|
cursor: inherit;
|
||||||
|
}
|
||||||
|
.canvas-node-interaction-layer[data-target-collapsed] .canvas-node-resizer .canvas-node-connection-point {
|
||||||
|
display: none;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-allow-floating-edge-creation=true] .canvas.is-connecting .canvas-node:not(.canvas-node-group)::after {
|
||||||
|
all: unset;
|
||||||
|
content: "";
|
||||||
|
z-index: 100;
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
width: max(10px, 100% - 50px * var(--zoom-multiplier) * 2);
|
||||||
|
height: max(10px, 100% - 50px * var(--zoom-multiplier) * 2);
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
border-radius: var(--radius-m);
|
||||||
|
outline: calc(4px * var(--zoom-multiplier)) dashed hsla(var(--color-accent-hsl), 0.5);
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-allow-floating-edge-creation=true] .canvas.is-connecting .canvas-node:not(.canvas-node-group).hovering-floating-edge-zone::after {
|
||||||
|
outline-color: var(--color-accent);
|
||||||
|
outline-style: solid;
|
||||||
|
background-color: hsla(var(--color-accent-hsl), 0.1);
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-focus-mode-enabled=true] .canvas:has(.canvas-node.is-focused) .canvas-node:not(.is-focused) {
|
||||||
|
filter: blur(5px);
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-focus-mode-enabled=true] .canvas:has(.canvas-node.is-focused) .canvas-edges {
|
||||||
|
filter: blur(5px);
|
||||||
|
}
|
||||||
|
.canvas-wrapper[data-focus-mode-enabled=true] .canvas:has(.canvas-node.is-focused) .canvas-path-label-wrapper {
|
||||||
|
filter: blur(5px);
|
||||||
|
}
|
||||||
|
.canvas-wrapper.presentation-mode .canvas-controls {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
.canvas-wrapper.presentation-mode .canvas-card-menu {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
.canvas-wrapper:not(.presentation-mode) .canvas-node[data-is-start-node=true]::before {
|
||||||
|
content: "Start";
|
||||||
|
position: absolute;
|
||||||
|
top: calc(-1 * var(--size-4-1) * var(--zoom-multiplier));
|
||||||
|
right: 0;
|
||||||
|
transform: translate(0, -100%) scale(var(--zoom-multiplier));
|
||||||
|
transform-origin: bottom right;
|
||||||
|
max-width: calc(100% / var(--zoom-multiplier));
|
||||||
|
padding: var(--size-4-1) var(--size-4-2);
|
||||||
|
font-size: 1em;
|
||||||
|
border-radius: var(--radius-s);
|
||||||
|
color: var(--color-green);
|
||||||
|
background-color: rgba(var(--color-green-rgb), 0.1);
|
||||||
|
}
|
||||||
|
.canvas-node[data-is-portal-loaded=true] {
|
||||||
|
pointer-events: all;
|
||||||
|
}
|
||||||
|
.canvas-node[data-is-portal-loaded=true]:not(.is-focused) {
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
.canvas-node[data-is-portal-loaded=true]:not(.is-focused) .canvas-node-label {
|
||||||
|
pointer-events: all;
|
||||||
|
}
|
||||||
|
.canvas-node[data-is-portal-loaded=true] .canvas-node-container {
|
||||||
|
background-color: transparent;
|
||||||
|
border-style: dashed;
|
||||||
|
}
|
||||||
|
.canvas-node[data-is-portal-loaded=true] .canvas-node-container .canvas-node-content {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.canvas-node-interaction-layer[data-is-from-portal=true] .canvas-node-resizer {
|
||||||
|
pointer-events: none;
|
||||||
|
cursor: inherit;
|
||||||
|
}
|
||||||
|
.canvas-node-interaction-layer[data-is-from-portal=true] .canvas-node-resizer .canvas-node-connection-point {
|
||||||
|
pointer-events: all;
|
||||||
|
}
|
||||||
Vendored
+27
@@ -0,0 +1,27 @@
|
|||||||
|
{
|
||||||
|
"renderNullAs": "\\-",
|
||||||
|
"taskCompletionTracking": false,
|
||||||
|
"taskCompletionUseEmojiShorthand": false,
|
||||||
|
"taskCompletionText": "completion",
|
||||||
|
"taskCompletionDateFormat": "yyyy-MM-dd",
|
||||||
|
"recursiveSubTaskCompletion": false,
|
||||||
|
"warnOnEmptyResult": true,
|
||||||
|
"refreshEnabled": true,
|
||||||
|
"refreshInterval": 100,
|
||||||
|
"defaultDateFormat": "yyyy-MM-dd",
|
||||||
|
"defaultDateTimeFormat": "yyyy-MM-dd HH:mm:ss",
|
||||||
|
"maxRecursiveRenderDepth": 4,
|
||||||
|
"tableIdColumnName": "File",
|
||||||
|
"tableGroupColumnName": "Group",
|
||||||
|
"showResultCount": true,
|
||||||
|
"allowHtml": true,
|
||||||
|
"inlineQueryPrefix": "=",
|
||||||
|
"inlineJsQueryPrefix": "$=",
|
||||||
|
"inlineQueriesInCodeblocks": true,
|
||||||
|
"enableInlineDataview": true,
|
||||||
|
"enableDataviewJs": true,
|
||||||
|
"enableInlineDataviewJs": true,
|
||||||
|
"prettyRenderInlineFields": true,
|
||||||
|
"prettyRenderInlineFieldsInLivePreview": true,
|
||||||
|
"dataviewJsKeyword": "dataviewjs"
|
||||||
|
}
|
||||||
Vendored
+20876
File diff suppressed because one or more lines are too long
+1
@@ -0,0 +1 @@
|
|||||||
|
{"id":"dataview","name":"Dataview","version":"0.5.68","minAppVersion":"0.13.11","description":"Complex data views for the data-obsessed.","author":"Michael Brenan <blacksmithgu@gmail.com>","authorUrl":"https://github.com/blacksmithgu","helpUrl":"https://blacksmithgu.github.io/obsidian-dataview/","isDesktopOnly":false}
|
||||||
+141
@@ -0,0 +1,141 @@
|
|||||||
|
.block-language-dataview {
|
||||||
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************/
|
||||||
|
/** Table Views **/
|
||||||
|
/*****************/
|
||||||
|
|
||||||
|
/* List View Default Styling; rendered internally as a table. */
|
||||||
|
.table-view-table {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-view-table > thead > tr, .table-view-table > tbody > tr {
|
||||||
|
margin-top: 1em;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-view-table > tbody > tr:hover {
|
||||||
|
background-color: var(--table-row-background-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-view-table > thead > tr > th {
|
||||||
|
font-weight: 700;
|
||||||
|
font-size: larger;
|
||||||
|
border-top: none;
|
||||||
|
border-left: none;
|
||||||
|
border-right: none;
|
||||||
|
border-bottom: solid;
|
||||||
|
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-view-table > tbody > tr > td {
|
||||||
|
text-align: left;
|
||||||
|
border: none;
|
||||||
|
font-weight: 400;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-view-table ul, .table-view-table ol {
|
||||||
|
margin-block-start: 0.2em !important;
|
||||||
|
margin-block-end: 0.2em !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Rendered value styling for any view. */
|
||||||
|
.dataview-result-list-root-ul {
|
||||||
|
padding: 0em !important;
|
||||||
|
margin: 0em !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dataview-result-list-ul {
|
||||||
|
margin-block-start: 0.2em !important;
|
||||||
|
margin-block-end: 0.2em !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Generic grouping styling. */
|
||||||
|
.dataview.result-group {
|
||||||
|
padding-left: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*******************/
|
||||||
|
/** Inline Fields **/
|
||||||
|
/*******************/
|
||||||
|
|
||||||
|
.dataview.inline-field-key {
|
||||||
|
padding-left: 8px;
|
||||||
|
padding-right: 8px;
|
||||||
|
font-family: var(--font-monospace);
|
||||||
|
background-color: var(--background-primary-alt);
|
||||||
|
color: var(--nav-item-color-selected);
|
||||||
|
}
|
||||||
|
|
||||||
|
.dataview.inline-field-value {
|
||||||
|
padding-left: 8px;
|
||||||
|
padding-right: 8px;
|
||||||
|
font-family: var(--font-monospace);
|
||||||
|
background-color: var(--background-secondary-alt);
|
||||||
|
color: var(--nav-item-color-selected);
|
||||||
|
}
|
||||||
|
|
||||||
|
.dataview.inline-field-standalone-value {
|
||||||
|
padding-left: 8px;
|
||||||
|
padding-right: 8px;
|
||||||
|
font-family: var(--font-monospace);
|
||||||
|
background-color: var(--background-secondary-alt);
|
||||||
|
color: var(--nav-item-color-selected);
|
||||||
|
}
|
||||||
|
|
||||||
|
/***************/
|
||||||
|
/** Task View **/
|
||||||
|
/***************/
|
||||||
|
|
||||||
|
.dataview.task-list-item, .dataview.task-list-basic-item {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
transition: 0.4s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dataview.task-list-item:hover, .dataview.task-list-basic-item:hover {
|
||||||
|
background-color: var(--text-selection);
|
||||||
|
box-shadow: -40px 0 0 var(--text-selection);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*****************/
|
||||||
|
/** Error Views **/
|
||||||
|
/*****************/
|
||||||
|
|
||||||
|
div.dataview-error-box {
|
||||||
|
width: 100%;
|
||||||
|
min-height: 150px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
border: 4px dashed var(--background-secondary);
|
||||||
|
}
|
||||||
|
|
||||||
|
.dataview-error-message {
|
||||||
|
color: var(--text-muted);
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*************************/
|
||||||
|
/** Additional Metadata **/
|
||||||
|
/*************************/
|
||||||
|
|
||||||
|
.dataview.small-text {
|
||||||
|
font-size: smaller;
|
||||||
|
color: var(--text-muted);
|
||||||
|
margin-left: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dataview.small-text::before {
|
||||||
|
content: "(";
|
||||||
|
}
|
||||||
|
|
||||||
|
.dataview.small-text::after {
|
||||||
|
content: ")";
|
||||||
|
}
|
||||||
+19
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"isBT": false,
|
||||||
|
"isShowNum": false,
|
||||||
|
"linkWords": "",
|
||||||
|
"maxScroll": 50,
|
||||||
|
"version": "0.6.6",
|
||||||
|
"hColor": "",
|
||||||
|
"bColor": "",
|
||||||
|
"hColor1": "#F36208",
|
||||||
|
"hColor2": "#81B300",
|
||||||
|
"hColor3": "#2485E3",
|
||||||
|
"hColor4": "#C32E94",
|
||||||
|
"hColor5": "#13C6C3",
|
||||||
|
"bColor1": "#FFB78B",
|
||||||
|
"bColor2": "#CDF469",
|
||||||
|
"bColor3": "#A0CCF6",
|
||||||
|
"bColor4": "#F0A7D8",
|
||||||
|
"bColor5": "#ADEFEF"
|
||||||
|
}
|
||||||
+5005
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"id":"Enhanced-editing",
|
||||||
|
"name":"增强编辑",
|
||||||
|
"version":"0.6.6",
|
||||||
|
"minAppVersion":"0.14.0",
|
||||||
|
"description":"增强大量文本编辑功能,如(允许批量)转换内部链接、转换Markdown或Html语法(支持格式刷)、智能化补充括号、智能化粘贴表格或代码、(批量)增减空行或空格、修复错误语法或标点等。",
|
||||||
|
"author":"obsidian-canzi",
|
||||||
|
"authorUrl":"https://github.com/obsidian-canzi/Enhanced-editing",
|
||||||
|
"isDesktopOnly":false
|
||||||
|
}
|
||||||
Vendored
+34
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"tileSets": [
|
||||||
|
{
|
||||||
|
"id": "tencent-vector",
|
||||||
|
"name": "腾讯矢量",
|
||||||
|
"lightTiles": "http://127.0.0.1:18090/tile?z={z}&x={x}&y={y}&type=vector",
|
||||||
|
"darkTiles": "http://127.0.0.1:18090/tile?z={z}&x={x}&y={y}&type=vector"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "gaode-satellite",
|
||||||
|
"name": "高德卫星影像",
|
||||||
|
"lightTiles": "http://127.0.0.1:18090/tile?z={z}&x={x}&y={y}&type=sate",
|
||||||
|
"darkTiles": "http://127.0.0.1:18090/tile?z={z}&x={x}&y={y}&type=sate"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "esri-imagery",
|
||||||
|
"name": "ESRI World Imagery",
|
||||||
|
"lightTiles": "http://127.0.0.1:18090/tile?z={z}&x={x}&y={y}&type=esri",
|
||||||
|
"darkTiles": "http://127.0.0.1:18090/tile?z={z}&x={x}&y={y}&type=esri"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "tencent-traffic",
|
||||||
|
"name": "腾讯路况",
|
||||||
|
"lightTiles": "http://127.0.0.1:18090/tile?z={z}&x={x}&y={y}&type=traffic",
|
||||||
|
"darkTiles": "http://127.0.0.1:18090/tile?z={z}&x={x}&y={y}&type=traffic"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "openfreemap-bright",
|
||||||
|
"name": "OpenFreeMap 亮色",
|
||||||
|
"lightTiles": "https://tiles.openfreemap.org/styles/bright",
|
||||||
|
"darkTiles": "https://tiles.openfreemap.org/styles/dark"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Vendored
+761
File diff suppressed because one or more lines are too long
Vendored
+1
@@ -0,0 +1 @@
|
|||||||
|
{"id":"maps","name":"Maps","version":"0.1.6","minAppVersion":"1.10.0","description":"Adds a map layout to bases so you can display notes as an interactive map view.","author":"Obsidian","authorUrl":"https://obsidian.md","fundingUrl":"https://obsidian.md/pricing","isDesktopOnly":false}
|
||||||
Vendored
+477
@@ -0,0 +1,477 @@
|
|||||||
|
body {
|
||||||
|
--bases-map-embed-height: 400px;
|
||||||
|
--bases-map-marker-background: var(--interactive-accent);
|
||||||
|
--bases-map-marker-icon-color: white;
|
||||||
|
--bases-map-blend-mode: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Settings styles */
|
||||||
|
.map-tileset-list {
|
||||||
|
margin: 1em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mobile-option-setting-item-description {
|
||||||
|
font-size: var(--font-smaller);
|
||||||
|
color: var(--text-muted);
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
margin-top: 0.25em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bases-view[data-view-type="map"] {
|
||||||
|
--bases-embed-border-width: 0px;
|
||||||
|
--bases-view-padding: 0;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="bases"] {
|
||||||
|
.bases-map {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.bases-map-container {
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bases-map {
|
||||||
|
width: 100%;
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
height: var(--bases-map-embed-height);
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
-webkit-tap-highlight-color: rgb(0, 0, 0, 0);
|
||||||
|
|
||||||
|
canvas {
|
||||||
|
mix-blend-mode: var(--bases-map-blend-mode);
|
||||||
|
}
|
||||||
|
|
||||||
|
&.is-loading {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
&::before {
|
||||||
|
color: var(--text-muted);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.bases-map-popup {
|
||||||
|
min-width: 200px;
|
||||||
|
max-width: 300px;
|
||||||
|
|
||||||
|
.bases-map-popup-title {
|
||||||
|
--link-weight: calc(var(--font-weight) + var(--bold-modifier));
|
||||||
|
font-size: var(--font-ui-medium);
|
||||||
|
padding: var(--size-4-2);
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: var(--text-normal);
|
||||||
|
text-decoration: none;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
color: var(--text-accent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.bases-map-popup-properties {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: var(--size-4-2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.bases-map-popup-property {
|
||||||
|
font-size: var(--font-ui-small);
|
||||||
|
&:last-child {
|
||||||
|
padding-bottom: var(--size-4-2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.bases-map-popup-property-label {
|
||||||
|
font-size: var(--font-ui-smaller);
|
||||||
|
color: var(--text-muted);
|
||||||
|
padding: 0 var(--size-4-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.bases-map-popup-property-value {
|
||||||
|
color: var(--text-normal);
|
||||||
|
word-break: break-word;
|
||||||
|
padding: 0 var(--size-4-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-attrib {
|
||||||
|
background-color: rgba(var(--mono-rgb-0), 0.8);
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: var(--font-ui-smaller);
|
||||||
|
padding: 1px 8px;
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: var(--text-muted);
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
a:hover {
|
||||||
|
color: var(--text-muted);
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-content {
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
color: var(--text-normal);
|
||||||
|
border-radius: var(--radius-m);
|
||||||
|
box-shadow: var(--shadow-s);
|
||||||
|
border: var(--modal-border-width) solid var(--modal-border-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-canvas {
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-group button.maplibregl-ctrl-compass {
|
||||||
|
touch-action: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-canvas-container.maplibregl-interactive,
|
||||||
|
.maplibregl-ctrl-group button.maplibregl-ctrl-compass {
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-canvas-container.maplibregl-interactive.maplibregl-track-pointer {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-canvas-container.maplibregl-touch-zoom-rotate,
|
||||||
|
.maplibregl-canvas-container.maplibregl-touch-zoom-rotate .maplibregl-canvas {
|
||||||
|
touch-action: pan-x pan-y;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-canvas-container.maplibregl-touch-drag-pan,
|
||||||
|
.maplibregl-canvas-container.maplibregl-touch-drag-pan .maplibregl-canvas {
|
||||||
|
touch-action: pinch-zoom;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan,
|
||||||
|
.maplibregl-canvas-container.maplibregl-touch-zoom-rotate.maplibregl-touch-drag-pan .maplibregl-canvas {
|
||||||
|
touch-action: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures,
|
||||||
|
.maplibregl-canvas-container.maplibregl-touch-drag-pan.maplibregl-cooperative-gestures .maplibregl-canvas {
|
||||||
|
touch-action: pan-x pan-y;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-top-left,
|
||||||
|
.maplibregl-ctrl-top-right,
|
||||||
|
.maplibregl-ctrl-bottom-left,
|
||||||
|
.maplibregl-ctrl-bottom-right {
|
||||||
|
position: absolute;
|
||||||
|
pointer-events: none;
|
||||||
|
z-index: 2;
|
||||||
|
display: flex;
|
||||||
|
gap: var(--size-4-1);
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-top-left {
|
||||||
|
top: var(--size-4-2);
|
||||||
|
left: var(--size-4-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-top-right {
|
||||||
|
top: var(--size-4-2);
|
||||||
|
right: var(--size-4-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-bottom-left {
|
||||||
|
bottom: var(--size-4-2);
|
||||||
|
left: var(--size-4-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-bottom-right {
|
||||||
|
right: var(--size-4-2);
|
||||||
|
bottom: var(--size-4-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl {
|
||||||
|
pointer-events: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl button .maplibregl-ctrl-icon {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: center center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl button:disabled {
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl button:disabled .maplibregl-ctrl-icon {
|
||||||
|
opacity: 0.25;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-group button:focus:only-child {
|
||||||
|
border-radius: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl button.maplibregl-ctrl-geolocate.maplibregl-ctrl-geolocate-waiting .maplibregl-ctrl-icon {
|
||||||
|
animation: maplibregl-spin 2s infinite linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes maplibregl-spin {
|
||||||
|
0% { transform: rotate(0deg); }
|
||||||
|
100% { transform: rotate(360deg); }
|
||||||
|
}
|
||||||
|
|
||||||
|
a.maplibregl-ctrl-logo {
|
||||||
|
width: 88px;
|
||||||
|
height: 23px;
|
||||||
|
margin: 0 0 -4px -4px;
|
||||||
|
display: block;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
cursor: pointer;
|
||||||
|
overflow: hidden;
|
||||||
|
background-image: svg-load("svg/maplibregl-ctrl-logo.svg");
|
||||||
|
}
|
||||||
|
|
||||||
|
a.maplibregl-ctrl-logo.maplibregl-compact {
|
||||||
|
width: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl.maplibregl-ctrl-attrib {
|
||||||
|
padding: 0 5px;
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen {
|
||||||
|
.maplibregl-ctrl-attrib.maplibregl-compact {
|
||||||
|
min-height: 20px;
|
||||||
|
padding: 2px 24px 2px 0;
|
||||||
|
margin: 10px;
|
||||||
|
position: relative;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
background-color: rgba(var(--mono-rgb-0), 0.2);
|
||||||
|
color: var(--text-faint);
|
||||||
|
border-radius: 12px;
|
||||||
|
box-sizing: content-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-attrib.maplibregl-compact-show {
|
||||||
|
padding: 2px 28px 2px 8px;
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-top-left > .maplibregl-ctrl-attrib.maplibregl-compact-show,
|
||||||
|
.maplibregl-ctrl-bottom-left > .maplibregl-ctrl-attrib.maplibregl-compact-show {
|
||||||
|
padding: 2px 8px 2px 28px;
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-attrib-button {
|
||||||
|
display: none;
|
||||||
|
cursor: pointer;
|
||||||
|
position: absolute;
|
||||||
|
background-image: svg-load("svg/maplibregl-ctrl-attrib.svg");
|
||||||
|
background-color: rgb(255, 255, 255, 0.5);
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
border-radius: 12px;
|
||||||
|
outline: none;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button {
|
||||||
|
appearance: none;
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button,
|
||||||
|
.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button {
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,
|
||||||
|
.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button {
|
||||||
|
background-color: rgb(0, 0, 0, 0.05);
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-bottom-right > .maplibregl-ctrl-attrib.maplibregl-compact::after {
|
||||||
|
bottom: 0;
|
||||||
|
right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-top-right > .maplibregl-ctrl-attrib.maplibregl-compact::after {
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-top-left > .maplibregl-ctrl-attrib.maplibregl-compact::after {
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-bottom-left > .maplibregl-ctrl-attrib.maplibregl-compact::after {
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (forced-colors: active) {
|
||||||
|
.maplibregl-ctrl-attrib.maplibregl-compact::after {
|
||||||
|
background-image: svg-load("svg/maplibregl-ctrl-attrib.svg", fill=#fff);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (forced-colors: active) and (prefers-color-scheme: light) {
|
||||||
|
.maplibregl-ctrl-attrib.maplibregl-compact::after {
|
||||||
|
background-image: svg-load("svg/maplibregl-ctrl-attrib.svg");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-attrib-empty {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-ctrl-scale {
|
||||||
|
background-color: rgb(255, 255, 255, 0.75);
|
||||||
|
border-width: medium 2px 2px;
|
||||||
|
border-style: none solid solid;
|
||||||
|
border-color: #333;
|
||||||
|
padding: 0 5px;
|
||||||
|
color: #333;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
display: flex;
|
||||||
|
will-change: transform;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-anchor-top,
|
||||||
|
.maplibregl-popup-anchor-top-left,
|
||||||
|
.maplibregl-popup-anchor-top-right {
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-anchor-bottom,
|
||||||
|
.maplibregl-popup-anchor-bottom-left,
|
||||||
|
.maplibregl-popup-anchor-bottom-right {
|
||||||
|
flex-direction: column-reverse;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-anchor-left {
|
||||||
|
flex-direction: row;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-anchor-right {
|
||||||
|
flex-direction: row-reverse;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-close-button {
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
border: 0;
|
||||||
|
border-radius: 0 3px 0 0;
|
||||||
|
cursor: pointer;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-close-button:hover {
|
||||||
|
background-color: rgb(0, 0, 0, 0.05);
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-content {
|
||||||
|
position: relative;
|
||||||
|
pointer-events: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-anchor-top-left .maplibregl-popup-content {
|
||||||
|
border-top-left-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-anchor-top-right .maplibregl-popup-content {
|
||||||
|
border-top-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content {
|
||||||
|
border-bottom-left-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content {
|
||||||
|
border-bottom-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-track-pointer {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-popup-track-pointer * {
|
||||||
|
pointer-events: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-map:hover .maplibregl-popup-track-pointer {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-map:active .maplibregl-popup-track-pointer {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-marker {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
will-change: transform;
|
||||||
|
transition: opacity 0.2s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-crosshair,
|
||||||
|
.maplibregl-crosshair .maplibregl-interactive,
|
||||||
|
.maplibregl-crosshair .maplibregl-interactive:active {
|
||||||
|
cursor: crosshair;
|
||||||
|
}
|
||||||
|
|
||||||
|
.maplibregl-boxzoom {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
background: var(--background-primary);
|
||||||
|
border: 2px dotted #202020;
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
Vendored
+5
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"autoReload": true,
|
||||||
|
"createNewSplitTab": true,
|
||||||
|
"themeDir": "Templates/MarpTheme"
|
||||||
|
}
|
||||||
Vendored
+3447
File diff suppressed because one or more lines are too long
Vendored
+1
@@ -0,0 +1 @@
|
|||||||
|
{"id":"marp","name":"Marp","version":"1.5.0","minAppVersion":"1.0.0","description":"Plugin for using Marp on Obsidian.","author":"JichouP","authorUrl":"https://github.com/JichouP","isDesktopOnly":true}
|
||||||
+31
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"__VERSION__": 2,
|
||||||
|
"release.previous-version": "4.1.5",
|
||||||
|
"release.show-release-notes": true,
|
||||||
|
"playback.default-volume": 100,
|
||||||
|
"playback.speed-step": 0.1,
|
||||||
|
"playback.preserve-pitch": true,
|
||||||
|
"playback.track.default-enabled": false,
|
||||||
|
"playback.track.folder-path": null,
|
||||||
|
"playback.track.default-languages": [],
|
||||||
|
"playback.screenshot.format": "image/jpeg",
|
||||||
|
"playback.screenshot.quality": 0.8,
|
||||||
|
"playback.screenshot.folder-path": null,
|
||||||
|
"note.embed.load-strategy": "eager",
|
||||||
|
"note.embed.handle-hosted": true,
|
||||||
|
"note.embed.handle-direct-url": true,
|
||||||
|
"link.click-behavior": "split",
|
||||||
|
"link.altclick-behavior": "window",
|
||||||
|
"link.handle-hosted": true,
|
||||||
|
"link.handle-direct-url": true,
|
||||||
|
"link.hosted-prefer": "browser",
|
||||||
|
"note.template.timestamp": "\n- {{TIMESTAMP}} ",
|
||||||
|
"note.template.timestamp-offset": 0,
|
||||||
|
"note.template.timestamp-embed": "\n- !{{CLIP}} ",
|
||||||
|
"note.template.timestamp-embed-linktext": "{{TIMESTAMP}}|400",
|
||||||
|
"note.template.screenshot": "\n- !{{SCREENSHOT}} {{TIMESTAMP}} ",
|
||||||
|
"note.template.screenshot-embed": "{{TITLE}}{{DURATION}}|50",
|
||||||
|
"note.template.insert-at": "after-cursor",
|
||||||
|
"media-lib.folder-path": "media-lib",
|
||||||
|
"cache.cover-image.max-size-mb": 100
|
||||||
|
}
|
||||||
+1164
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"author":"AidenLx","minAppVersion":"1.8.9","name":"Media Extended","version":"4.1.5","authorUrl":"https://aidenlx.site","fundingUrl":{"GitHub Sponsor":"https://github.com/sponsors/aidenlx"},"description":"Media(Video/Audio) Playback Enhancement for Obsidian.md","id":"media-extended","isDesktopOnly":true}
|
||||||
+26
File diff suppressed because one or more lines are too long
+2631
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1 @@
|
|||||||
|
{"id":"mermaid-tools","name":"Mermaid Tools","version":"1.3.0","minAppVersion":"1.4.0","description":"Improved Mermaid.js experience for Obsidian: visual toolbar with common elements & more","author":"dartungar","authorUrl":"https://dartungar.com","fundingUrl":"https://www.paypal.com/paypalme/dartungar","isDesktopOnly":false}
|
||||||
+149
@@ -0,0 +1,149 @@
|
|||||||
|
.mermaid-toolbar-container, .mermaid-toolbar-container * {
|
||||||
|
max-width: 100%;
|
||||||
|
max-height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-toolbar-top-row {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
gap: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-toolbar-elements-container {
|
||||||
|
padding-top: 1rem;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-toolbar-element {
|
||||||
|
font-size: var(--font-ui-small);
|
||||||
|
cursor: pointer;
|
||||||
|
padding: 2px 2px 2px 5px;
|
||||||
|
border-radius: 3px;
|
||||||
|
flex: 1 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-toolbar-element:hover {
|
||||||
|
background-color: var(--interactive-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-element-category-header::before {
|
||||||
|
content: "▼ ";
|
||||||
|
font-size: 70%;
|
||||||
|
padding-bottom: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-element-category-header.collapsed::before {
|
||||||
|
content: "▶ ";
|
||||||
|
font-size: 70%;
|
||||||
|
padding-bottom: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-element-container {
|
||||||
|
padding-top: 6px;
|
||||||
|
border-bottom: var(--border-width) solid var(--color-base-35);
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-edit-element-modal > div {
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-edit-element-modal label {
|
||||||
|
margin-right: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Custom Category Management Styles */
|
||||||
|
.mermaid-tools-category-management {
|
||||||
|
margin-bottom: 2rem;
|
||||||
|
padding: 1rem;
|
||||||
|
border: 1px solid var(--color-base-25);
|
||||||
|
border-radius: 8px;
|
||||||
|
background-color: var(--color-base-00);
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-category-management h3 {
|
||||||
|
margin-top: 1rem;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
color: var(--text-accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-category-management button.mod-cta {
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Edit Category Modal Styles */
|
||||||
|
.mermaid-tools-edit-category-modal {
|
||||||
|
min-width: 500px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-edit-category-modal .setting-item {
|
||||||
|
padding: 8px 0;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-edit-category-modal .setting-item-info {
|
||||||
|
flex-grow: 1;
|
||||||
|
margin-right: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-edit-category-modal .setting-item-name {
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--text-normal);
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-edit-category-modal .setting-item-description {
|
||||||
|
color: var(--text-muted);
|
||||||
|
font-size: var(--font-ui-smaller);
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-edit-category-modal input,
|
||||||
|
.mermaid-tools-edit-category-modal textarea {
|
||||||
|
width: 100%;
|
||||||
|
padding: 4px 8px;
|
||||||
|
border: 1px solid var(--color-base-30);
|
||||||
|
border-radius: 4px;
|
||||||
|
background-color: var(--color-base-00);
|
||||||
|
color: var(--text-normal);
|
||||||
|
}
|
||||||
|
|
||||||
|
.mermaid-tools-edit-category-modal input:focus,
|
||||||
|
.mermaid-tools-edit-category-modal textarea:focus {
|
||||||
|
border-color: var(--color-accent);
|
||||||
|
outline: none;
|
||||||
|
box-shadow: 0 0 0 2px var(--color-accent-2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-button-container {
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
gap: 10px;
|
||||||
|
margin-top: 20px;
|
||||||
|
padding-top: 16px;
|
||||||
|
border-top: 1px solid var(--color-base-25);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-button-container button {
|
||||||
|
padding: 6px 16px;
|
||||||
|
border: 1px solid var(--color-base-30);
|
||||||
|
border-radius: 4px;
|
||||||
|
background-color: var(--color-base-10);
|
||||||
|
color: var(--text-normal);
|
||||||
|
cursor: pointer;
|
||||||
|
font-size: var(--font-ui-small);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-button-container button:hover {
|
||||||
|
background-color: var(--color-base-20);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-button-container button.mod-cta {
|
||||||
|
background-color: var(--color-accent);
|
||||||
|
color: var(--text-on-accent);
|
||||||
|
border-color: var(--color-accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-button-container button.mod-cta:hover {
|
||||||
|
background-color: var(--color-accent-hover);
|
||||||
|
}
|
||||||
Vendored
+25
@@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"ProgressProperties": {
|
||||||
|
"enabled": false,
|
||||||
|
"properties": []
|
||||||
|
},
|
||||||
|
"IgnoredProperties": {
|
||||||
|
"enabled": false,
|
||||||
|
"properties": []
|
||||||
|
},
|
||||||
|
"AutoProperties": {
|
||||||
|
"enabled": false,
|
||||||
|
"properties": []
|
||||||
|
},
|
||||||
|
"EditMode": {
|
||||||
|
"mode": "All Single",
|
||||||
|
"properties": []
|
||||||
|
},
|
||||||
|
"KanbanHelper": {
|
||||||
|
"enabled": true,
|
||||||
|
"boards": []
|
||||||
|
},
|
||||||
|
"UIElements": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
}
|
||||||
Vendored
+5538
File diff suppressed because it is too large
Load Diff
+1
@@ -0,0 +1 @@
|
|||||||
|
{"id":"metaedit","name":"MetaEdit","version":"1.8.2","minAppVersion":"1.4.1","description":"MetaEdit helps you manage your metadata.","author":"Christian B. B. Houmann","authorUrl":"https://bagerbach.com","isDesktopOnly":false}
|
||||||
+15
@@ -0,0 +1,15 @@
|
|||||||
|
.centerSettingContent {
|
||||||
|
display: grid;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.not-a-button {
|
||||||
|
background: none;
|
||||||
|
color: inherit;
|
||||||
|
border: none;
|
||||||
|
padding: 0;
|
||||||
|
font: inherit;
|
||||||
|
cursor: pointer;
|
||||||
|
outline: inherit;
|
||||||
|
}
|
||||||
+12
@@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"autosuggestToggleLink": true,
|
||||||
|
"autocompleteTriggerPhrase": "@",
|
||||||
|
"isAutosuggestEnabled": true,
|
||||||
|
"format": "YYYY-MM-DD",
|
||||||
|
"timeFormat": "HH:mm",
|
||||||
|
"separator": " ",
|
||||||
|
"weekStart": "locale-default",
|
||||||
|
"modalToggleTime": false,
|
||||||
|
"modalToggleLink": false,
|
||||||
|
"modalMomentFormat": "YYYY-MM-DD HH:mm"
|
||||||
|
}
|
||||||
+9560
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"nldates-obsidian","name":"Natural Language Dates","description":"Create date-links based on natural language","version":"0.6.2","author":"Argentina Ortega Sainz","authorUrl":"https://argentinaos.com/","isDesktopOnly":false,"minAppVersion":"1.0.0"}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"includeFirstLineAsNoteHeading": false,
|
||||||
|
"excludeFirstLineInNote": false,
|
||||||
|
"openNewNote": true,
|
||||||
|
"headingFormat": "#",
|
||||||
|
"newFileLocation": 2,
|
||||||
|
"customFolder": "MyNotes",
|
||||||
|
"fileNamePrefix": "",
|
||||||
|
"transcludeByDefault": false,
|
||||||
|
"noteLinkTemplate": "",
|
||||||
|
"refactoredNoteTemplate": "",
|
||||||
|
"normalizeHeaderLevels": false
|
||||||
|
}
|
||||||
+6816
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"note-refactor-obsidian","name":"Note Refactor","version":"1.8.2","description":"Extract note content into new notes and split notes","isDesktopOnly":false,"js":"main.js","css":"style.css","author":"lynchjames"}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
.note-refactor-filename .setting-item-info {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.note-refactor-filename .setting-item-name {
|
||||||
|
padding-top: 10px;
|
||||||
|
}
|
||||||
+32
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"obsidian-advanced-uri","name":"Advanced URI","description":"Advanced modes for Obsidian URI","isDesktopOnly":false,"js":"main.js","fundingUrl":"https://ko-fi.com/vinzent","version":"1.46.0","author":"Vinzent","authorUrl":"https://github.com/Vinzent03"}
|
||||||
+32
@@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"clippers": [
|
||||||
|
{
|
||||||
|
"type": "daily",
|
||||||
|
"name": "",
|
||||||
|
"clipperId": "7d99b9d7-0fc4-4cc8-826c-57d3aef58746",
|
||||||
|
"createdAt": "2025-10-04T13:36:43.957Z",
|
||||||
|
"vaultName": "2023card",
|
||||||
|
"notePath": "",
|
||||||
|
"heading": "",
|
||||||
|
"headingLevel": 1,
|
||||||
|
"tags": "clips",
|
||||||
|
"timestampFormat": "HH:mm",
|
||||||
|
"dateFormat": "YYYY-MM-DD",
|
||||||
|
"openOnWrite": false,
|
||||||
|
"position": "append",
|
||||||
|
"entryTemplateLocation": "Templates/Clipping Template.md",
|
||||||
|
"markdownSettings": {
|
||||||
|
"h1": "##",
|
||||||
|
"h2": "##",
|
||||||
|
"h3": "###",
|
||||||
|
"h4": "####",
|
||||||
|
"h5": "#####",
|
||||||
|
"h6": "######"
|
||||||
|
},
|
||||||
|
"advancedStorage": true,
|
||||||
|
"advancedStorageFolder": "clippings",
|
||||||
|
"captureComments": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"version": 2
|
||||||
|
}
|
||||||
+15896
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"obsidian-clipper","name":"Clipper","version":"1.0.0-beta.9","minAppVersion":"0.15.0","description":"This plugin helps you capture highlights from the web.","author":"John Christopher","authorUrl":"https://github.com/jgchristopher/","fundingUrl":"https://www.buymeacoffee.com/jgchristopher","isDesktopOnly":false}
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Error><Code>AuthenticationFailed</Code><Message>Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.
|
||||||
|
RequestId:5b831c36-801e-0056-4963-f410ba000000
|
||||||
|
Time:2025-07-14T02:00:13.5995331Z</Message></Error>
|
||||||
+42
@@ -0,0 +1,42 @@
|
|||||||
|
{
|
||||||
|
"domain": "cubox.pro",
|
||||||
|
"apiKey": "akzEwIcniNJ",
|
||||||
|
"folderFilter": [
|
||||||
|
"all_folders"
|
||||||
|
],
|
||||||
|
"typeFilter": [
|
||||||
|
"Article",
|
||||||
|
"Snippet",
|
||||||
|
"Memo",
|
||||||
|
"Image",
|
||||||
|
"Audio",
|
||||||
|
"Video",
|
||||||
|
"File"
|
||||||
|
],
|
||||||
|
"statusFilter": [
|
||||||
|
"annotated",
|
||||||
|
"starred"
|
||||||
|
],
|
||||||
|
"isRead": false,
|
||||||
|
"isStarred": true,
|
||||||
|
"isAnnotated": false,
|
||||||
|
"tagsFilter": [
|
||||||
|
"all_items"
|
||||||
|
],
|
||||||
|
"syncFrequency": 0,
|
||||||
|
"targetFolder": "cubox",
|
||||||
|
"filenameTemplate": "{{{title}}}-{{{create_time}}}",
|
||||||
|
"frontMatterVariables": [
|
||||||
|
"id",
|
||||||
|
"cubox_url",
|
||||||
|
"url",
|
||||||
|
"tags"
|
||||||
|
],
|
||||||
|
"contentTemplate": "# {{{title}}}\n\n{{{description}}}\n\n[Read in Cubox]({{{cubox_url}}}) \n[Read Original]({{{url}}}) \n\n---\n\n{{#highlights.length}}\n## Annotations \n\n{{#highlights}}\n> {{{text}}} \n\n{{#note}}\n{{{note}}}\n{{/note}}\n[Link️]({{{cubox_url}}}) \n\n{{/highlights}}\n{{/highlights.length}}",
|
||||||
|
"highlightInContent": true,
|
||||||
|
"dateFormat": "yyyy-MM-dd",
|
||||||
|
"lastSyncTime": 1766283645451,
|
||||||
|
"lastSyncCardId": "7400425612076125087",
|
||||||
|
"lastCardUpdateTime": "2025-12-17T11:44:00.171+0800",
|
||||||
|
"syncing": false
|
||||||
|
}
|
||||||
+131
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"id": "cubox-sync",
|
||||||
|
"name": "Cubox",
|
||||||
|
"version": "1.0.6",
|
||||||
|
"minAppVersion": "0.15.0",
|
||||||
|
"description": "Sync your Cubox articles & annotations",
|
||||||
|
"author": "delphi-2015",
|
||||||
|
"isDesktopOnly": false
|
||||||
|
}
|
||||||
+213
@@ -0,0 +1,213 @@
|
|||||||
|
/*
|
||||||
|
|
||||||
|
This CSS file will be included with your plugin, and
|
||||||
|
available in the app when your plugin is enabled.
|
||||||
|
|
||||||
|
If your plugin does not need CSS, delete this file.
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
.modal-footer {
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
padding: 16px;
|
||||||
|
border-top: 1px solid var(--background-modifier-border);
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-footer button {
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-footer button.mod-cta {
|
||||||
|
background-color: var(--interactive-accent);
|
||||||
|
color: var(--text-on-accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 变量列表样式优化 */
|
||||||
|
.cubox-variables-container {
|
||||||
|
margin: 20px 0;
|
||||||
|
color: var(--text-muted);
|
||||||
|
}
|
||||||
|
|
||||||
|
.cubox-variables-title {
|
||||||
|
font-weight: 500;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: var(--text-normal);
|
||||||
|
}
|
||||||
|
|
||||||
|
.cubox-variables-list {
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 15px;
|
||||||
|
list-style-type: disc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cubox-variables-list li {
|
||||||
|
margin-bottom: 4px;
|
||||||
|
line-height: 1.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
.highlight-sublist {
|
||||||
|
margin-top: 4px;
|
||||||
|
padding-left: 15px;
|
||||||
|
list-style-type: disc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cubox-reference {
|
||||||
|
margin-top: 10px;
|
||||||
|
font-size: 1.0em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reference-link {
|
||||||
|
color: var(--text-accent);
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.reference-link:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Modal Dialog Styles */
|
||||||
|
.cubox-modal {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cubox-list-container {
|
||||||
|
flex-grow: 1;
|
||||||
|
overflow-y: auto;
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-right: 10px;
|
||||||
|
overflow-anchor: none;
|
||||||
|
scroll-behavior: auto;
|
||||||
|
height: 100%;
|
||||||
|
max-height: 65vh;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Setting item styles for modal dialogs */
|
||||||
|
.cubox-list-container .setting-item {
|
||||||
|
position: relative;
|
||||||
|
padding-left: 36px;
|
||||||
|
border-radius: 4px;
|
||||||
|
transition: background-color 0.1s ease;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
min-height: 40px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cubox-list-container .setting-item:hover {
|
||||||
|
background-color: var(--background-modifier-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Setting item name styles */
|
||||||
|
.cubox-list-container .setting-item-name {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Custom checkbox styles */
|
||||||
|
.cubox-list-container .setting-item::before {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
width: 16px;
|
||||||
|
height: 16px;
|
||||||
|
border: 1px solid var(--checkbox-border-color, var(--background-modifier-border));
|
||||||
|
border-radius: 3px;
|
||||||
|
background-color: var(--checkbox-color, var(--background-primary));
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* First child checkbox positioning */
|
||||||
|
.cubox-list-container .setting-item:first-child::before {
|
||||||
|
left: 10px;
|
||||||
|
top: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Other items checkbox positioning */
|
||||||
|
.cubox-list-container .setting-item:not(:first-child)::before {
|
||||||
|
left: 10px;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Selected checkbox state */
|
||||||
|
.cubox-list-container .setting-item.is-selected::before {
|
||||||
|
background-color: var(--checkbox-color-checked, var(--interactive-accent));
|
||||||
|
border-color: var(--checkbox-border-color-checked, var(--interactive-accent));
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Checkmark for selected items */
|
||||||
|
.cubox-list-container .setting-item.is-selected::after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
width: 5px;
|
||||||
|
height: 9px;
|
||||||
|
border-right: 2px solid var(--text-on-accent);
|
||||||
|
border-bottom: 2px solid var(--text-on-accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* First child checkmark positioning */
|
||||||
|
.cubox-list-container .setting-item:first-child.is-selected::after {
|
||||||
|
left: 14px;
|
||||||
|
top: 13px;
|
||||||
|
transform: rotate(45deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Other items checkmark positioning */
|
||||||
|
.cubox-list-container .setting-item:not(:first-child).is-selected::after {
|
||||||
|
left: 14px;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-60%) rotate(45deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* First item special styling */
|
||||||
|
.cubox-list-container .setting-item:first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
padding-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cubox-list-container .setting-item:first-child .setting-item-name {
|
||||||
|
margin-top: 0;
|
||||||
|
padding-top: 0;
|
||||||
|
position: relative;
|
||||||
|
top: 6px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Disabled state styling */
|
||||||
|
.cubox-list-container .setting-item.is-disabled {
|
||||||
|
opacity: 0.3;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cubox-list-container .setting-item.is-disabled::before {
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
border-color: var(--background-modifier-border);
|
||||||
|
}
|
||||||
|
|
||||||
|
.cubox-list-container .setting-item.is-disabled::after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
width: 8px;
|
||||||
|
height: 2px;
|
||||||
|
background-color: var(--text-muted);
|
||||||
|
left: 14px;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Consistent line height for all items */
|
||||||
|
.cubox-list-container .setting-item-heading,
|
||||||
|
.cubox-list-container .setting-item-name {
|
||||||
|
line-height: normal;
|
||||||
|
margin: auto 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Override first row bold font for type modal */
|
||||||
|
.type-list-container .setting-item:first-child .setting-item-name {
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
{
|
||||||
|
"frames": [
|
||||||
|
{
|
||||||
|
"url": "https://forum.obsidian.md/",
|
||||||
|
"displayName": "Obsidian Forum",
|
||||||
|
"icon": "edit",
|
||||||
|
"hideOnMobile": true,
|
||||||
|
"addRibbonIcon": true,
|
||||||
|
"openInCenter": true,
|
||||||
|
"zoomLevel": 1,
|
||||||
|
"forceIframe": false,
|
||||||
|
"customCss": "",
|
||||||
|
"customJs": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://dida365.com/webapp/#q/all/kanban",
|
||||||
|
"displayName": "滴答清单",
|
||||||
|
"icon": "",
|
||||||
|
"hideOnMobile": true,
|
||||||
|
"addRibbonIcon": false,
|
||||||
|
"openInCenter": false,
|
||||||
|
"zoomLevel": 1,
|
||||||
|
"forceIframe": false,
|
||||||
|
"customCss": "",
|
||||||
|
"customJs": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://chat.deepseek.com/",
|
||||||
|
"displayName": "deepseek",
|
||||||
|
"icon": "eye",
|
||||||
|
"hideOnMobile": true,
|
||||||
|
"addRibbonIcon": true,
|
||||||
|
"openInCenter": false,
|
||||||
|
"zoomLevel": 1,
|
||||||
|
"forceIframe": false,
|
||||||
|
"customCss": "",
|
||||||
|
"customJs": ""
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"padding": 5
|
||||||
|
}
|
||||||
+655
@@ -0,0 +1,655 @@
|
|||||||
|
/*
|
||||||
|
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
||||||
|
if you want to view the source, please visit the github repository of this plugin
|
||||||
|
*/
|
||||||
|
var __create = Object.create;
|
||||||
|
var __defProp = Object.defineProperty;
|
||||||
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
||||||
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
||||||
|
var __getProtoOf = Object.getPrototypeOf;
|
||||||
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
||||||
|
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
||||||
|
var __export = (target, all) => {
|
||||||
|
__markAsModule(target);
|
||||||
|
for (var name in all)
|
||||||
|
__defProp(target, name, { get: all[name], enumerable: true });
|
||||||
|
};
|
||||||
|
var __reExport = (target, module2, desc) => {
|
||||||
|
if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
||||||
|
for (let key of __getOwnPropNames(module2))
|
||||||
|
if (!__hasOwnProp.call(target, key) && key !== "default")
|
||||||
|
__defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
||||||
|
}
|
||||||
|
return target;
|
||||||
|
};
|
||||||
|
var __toModule = (module2) => {
|
||||||
|
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
||||||
|
};
|
||||||
|
var __async = (__this, __arguments, generator) => {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
var fulfilled = (value) => {
|
||||||
|
try {
|
||||||
|
step(generator.next(value));
|
||||||
|
} catch (e) {
|
||||||
|
reject(e);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
var rejected = (value) => {
|
||||||
|
try {
|
||||||
|
step(generator.throw(value));
|
||||||
|
} catch (e) {
|
||||||
|
reject(e);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
||||||
|
step((generator = generator.apply(__this, __arguments)).next());
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
// src/main.ts
|
||||||
|
__export(exports, {
|
||||||
|
default: () => CustomFramesPlugin
|
||||||
|
});
|
||||||
|
var import_obsidian4 = __toModule(require("obsidian"));
|
||||||
|
|
||||||
|
// src/frame.ts
|
||||||
|
var import_obsidian = __toModule(require("obsidian"));
|
||||||
|
|
||||||
|
// src/settings.ts
|
||||||
|
var defaultSettings = {
|
||||||
|
frames: [],
|
||||||
|
padding: 5
|
||||||
|
};
|
||||||
|
var presets = {
|
||||||
|
"obsidian": {
|
||||||
|
url: "https://forum.obsidian.md/",
|
||||||
|
displayName: "Obsidian Forum",
|
||||||
|
icon: "edit",
|
||||||
|
hideOnMobile: true,
|
||||||
|
addRibbonIcon: true,
|
||||||
|
openInCenter: true,
|
||||||
|
zoomLevel: 1,
|
||||||
|
forceIframe: false,
|
||||||
|
customCss: "",
|
||||||
|
customJs: ""
|
||||||
|
},
|
||||||
|
"detexify": {
|
||||||
|
url: "https://detexify.kirelabs.org/classify.html",
|
||||||
|
displayName: "Detexify",
|
||||||
|
icon: "type",
|
||||||
|
hideOnMobile: true,
|
||||||
|
addRibbonIcon: true,
|
||||||
|
openInCenter: false,
|
||||||
|
zoomLevel: 0.95,
|
||||||
|
forceIframe: false,
|
||||||
|
customCss: `/* hide info clutter and ad banner */
|
||||||
|
#classify--info-area,
|
||||||
|
.adsbygoogle {
|
||||||
|
display: none !important
|
||||||
|
}`,
|
||||||
|
customJs: ""
|
||||||
|
},
|
||||||
|
"calendar": {
|
||||||
|
url: "https://calendar.google.com/calendar",
|
||||||
|
displayName: "Google Calendar",
|
||||||
|
icon: "calendar",
|
||||||
|
hideOnMobile: true,
|
||||||
|
addRibbonIcon: true,
|
||||||
|
openInCenter: true,
|
||||||
|
zoomLevel: 1,
|
||||||
|
forceIframe: false,
|
||||||
|
customCss: `/* hide the menu bar "Calendar" text and remove minimum width */
|
||||||
|
div[style*="min-width: 238px"] {
|
||||||
|
min-width: 0 !important;
|
||||||
|
padding-right: 0 !important;
|
||||||
|
}
|
||||||
|
div[style*="min-width: 238px"] span[role*="heading"] {
|
||||||
|
display: none !important;
|
||||||
|
}`,
|
||||||
|
customJs: ""
|
||||||
|
},
|
||||||
|
"keep": {
|
||||||
|
url: "https://keep.google.com",
|
||||||
|
displayName: "Google Keep",
|
||||||
|
icon: "files",
|
||||||
|
hideOnMobile: true,
|
||||||
|
addRibbonIcon: false,
|
||||||
|
openInCenter: false,
|
||||||
|
zoomLevel: 1,
|
||||||
|
forceIframe: false,
|
||||||
|
customCss: `/* hide the menu bar, the "Keep" text and the Google Apps button */
|
||||||
|
html > body > div:nth-child(2) > div:nth-child(2) > div:first-child,
|
||||||
|
html > body > div:first-child > header:first-child > div > div:first-child > div > div:first-child > a:first-child > span,
|
||||||
|
html > body > div:first-child > header:first-child > div:nth-child(2) > div:first-child > div:first-child,
|
||||||
|
html > body > div:first-child > header:first-child > div:nth-child(2) > div:nth-child(3) > div:first-child > div:first-child > div:first-child {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
html > body > div:first-child > header:first-child > div > div:first-child > div > div:first-child > a:first-child {
|
||||||
|
cursor: default;
|
||||||
|
}`,
|
||||||
|
customJs: ""
|
||||||
|
},
|
||||||
|
"todoist": {
|
||||||
|
url: "https://todoist.com",
|
||||||
|
displayName: "Todoist",
|
||||||
|
icon: "list-checks",
|
||||||
|
hideOnMobile: true,
|
||||||
|
addRibbonIcon: false,
|
||||||
|
openInCenter: false,
|
||||||
|
zoomLevel: 1,
|
||||||
|
forceIframe: false,
|
||||||
|
customCss: `/* hide the help, home, search, and productivity overview buttons, create extra space, and prevent toast pop-up from acting weird */
|
||||||
|
[aria-label="Go to Home view"], #quick_find, [aria-label="Productivity"], [aria-label="Help & Feedback"] {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.view_content {
|
||||||
|
padding-left: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.view_header {
|
||||||
|
padding-left: 15px;
|
||||||
|
padding-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.undo_toast {
|
||||||
|
width: 95%;
|
||||||
|
}`,
|
||||||
|
customJs: ""
|
||||||
|
},
|
||||||
|
"notion": {
|
||||||
|
url: "https://www.notion.so/",
|
||||||
|
displayName: "Notion",
|
||||||
|
icon: "box",
|
||||||
|
hideOnMobile: true,
|
||||||
|
addRibbonIcon: true,
|
||||||
|
openInCenter: true,
|
||||||
|
zoomLevel: 1,
|
||||||
|
forceIframe: false,
|
||||||
|
customCss: "",
|
||||||
|
customJs: ""
|
||||||
|
},
|
||||||
|
"twitter": {
|
||||||
|
url: "https://twitter.com",
|
||||||
|
displayName: "Twitter",
|
||||||
|
icon: "twitter",
|
||||||
|
hideOnMobile: true,
|
||||||
|
addRibbonIcon: false,
|
||||||
|
openInCenter: false,
|
||||||
|
zoomLevel: 1,
|
||||||
|
forceIframe: false,
|
||||||
|
customCss: "",
|
||||||
|
customJs: ""
|
||||||
|
},
|
||||||
|
"tasks": {
|
||||||
|
url: "https://tasks.google.com/embed/?origin=https://calendar.google.com&fullWidth=1",
|
||||||
|
displayName: "Google Tasks",
|
||||||
|
icon: "list-checks",
|
||||||
|
hideOnMobile: true,
|
||||||
|
addRibbonIcon: false,
|
||||||
|
openInCenter: false,
|
||||||
|
zoomLevel: 1,
|
||||||
|
forceIframe: false,
|
||||||
|
customCss: "",
|
||||||
|
customJs: ""
|
||||||
|
},
|
||||||
|
"readwise-daily-review": {
|
||||||
|
"url": "https://readwise.io/dailyreview",
|
||||||
|
"displayName": "Readwise Daily Review",
|
||||||
|
"icon": "highlighter",
|
||||||
|
"hideOnMobile": true,
|
||||||
|
"addRibbonIcon": false,
|
||||||
|
"openInCenter": false,
|
||||||
|
"zoomLevel": 1,
|
||||||
|
"forceIframe": false,
|
||||||
|
"customCss": ".fixed-nav {\n display: none !important;\n}",
|
||||||
|
"customJs": ""
|
||||||
|
}
|
||||||
|
};
|
||||||
|
function getIcon(settings) {
|
||||||
|
return settings.icon ? `lucide-${settings.icon}` : "documents";
|
||||||
|
}
|
||||||
|
function getId(settings) {
|
||||||
|
return settings.displayName.toLowerCase().replace(/\s/g, "-");
|
||||||
|
}
|
||||||
|
|
||||||
|
// src/frame.ts
|
||||||
|
var CustomFrame = class {
|
||||||
|
constructor(settings, data) {
|
||||||
|
this.settings = settings;
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
create(parent, additionalStyle = void 0, urlSuffix = void 0) {
|
||||||
|
let style = `padding: ${this.settings.padding}px;`;
|
||||||
|
if (additionalStyle)
|
||||||
|
style += additionalStyle;
|
||||||
|
if (import_obsidian.Platform.isDesktopApp && !this.data.forceIframe) {
|
||||||
|
let frameDoc = parent.doc;
|
||||||
|
this.frame = frameDoc.createElement("webview");
|
||||||
|
this.frame.partition = "persist:vault-" + app.appId;
|
||||||
|
parent.appendChild(this.frame);
|
||||||
|
this.frame.setAttribute("allowpopups", "");
|
||||||
|
this.frame.addEventListener("dom-ready", () => {
|
||||||
|
this.frame.setZoomFactor(this.data.zoomLevel);
|
||||||
|
this.frame.insertCSS(this.data.customCss);
|
||||||
|
this.frame.executeJavaScript(this.data.customJs);
|
||||||
|
});
|
||||||
|
this.frame.addEventListener("destroyed", () => {
|
||||||
|
if (frameDoc != parent.doc) {
|
||||||
|
this.frame.detach();
|
||||||
|
this.create(parent, additionalStyle, urlSuffix);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.frame = parent.doc.createElement("iframe");
|
||||||
|
parent.appendChild(this.frame);
|
||||||
|
this.frame.setAttribute("sandbox", "allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts allow-top-navigation-by-user-activation allow-downloads");
|
||||||
|
this.frame.setAttribute("allow", "encrypted-media; fullscreen; oversized-images; picture-in-picture; sync-xhr; geolocation;");
|
||||||
|
style += `transform: scale(${this.data.zoomLevel}); transform-origin: 0 0;`;
|
||||||
|
}
|
||||||
|
this.frame.addClass("custom-frames-frame");
|
||||||
|
this.frame.addClass(`custom-frames-${getId(this.data)}`);
|
||||||
|
this.frame.setAttribute("style", style);
|
||||||
|
let src = new URL(this.data.url);
|
||||||
|
if (urlSuffix) {
|
||||||
|
let suffix = new URL(urlSuffix, src.origin);
|
||||||
|
suffix.searchParams.forEach((value, key) => {
|
||||||
|
src.searchParams.set(key, value);
|
||||||
|
});
|
||||||
|
if (suffix.pathname !== "/") {
|
||||||
|
src.pathname += suffix.pathname;
|
||||||
|
}
|
||||||
|
src.hash = suffix.hash || src.hash;
|
||||||
|
}
|
||||||
|
this.frame.setAttribute("src", src.toString());
|
||||||
|
}
|
||||||
|
refresh() {
|
||||||
|
if (this.frame instanceof HTMLIFrameElement) {
|
||||||
|
this.frame.contentWindow.location.reload();
|
||||||
|
} else {
|
||||||
|
this.frame.reload();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return() {
|
||||||
|
if (this.frame instanceof HTMLIFrameElement) {
|
||||||
|
this.frame.contentWindow.open(this.data.url);
|
||||||
|
} else {
|
||||||
|
this.frame.loadURL(this.data.url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
goBack() {
|
||||||
|
if (this.frame instanceof HTMLIFrameElement) {
|
||||||
|
this.frame.contentWindow.history.back();
|
||||||
|
} else {
|
||||||
|
this.frame.goBack();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
goForward() {
|
||||||
|
if (this.frame instanceof HTMLIFrameElement) {
|
||||||
|
this.frame.contentWindow.history.forward();
|
||||||
|
} else {
|
||||||
|
this.frame.goForward();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
toggleDevTools() {
|
||||||
|
if (!(this.frame instanceof HTMLIFrameElement)) {
|
||||||
|
if (!this.frame.isDevToolsOpened()) {
|
||||||
|
this.frame.openDevTools();
|
||||||
|
} else {
|
||||||
|
this.frame.closeDevTools();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
getCurrentUrl() {
|
||||||
|
return this.frame instanceof HTMLIFrameElement ? this.frame.contentWindow.location.href : this.frame.getURL();
|
||||||
|
}
|
||||||
|
focus() {
|
||||||
|
if (this.frame instanceof HTMLIFrameElement) {
|
||||||
|
this.frame.contentWindow.focus();
|
||||||
|
} else {
|
||||||
|
this.frame.focus();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// src/settings-tab.ts
|
||||||
|
var import_obsidian2 = __toModule(require("obsidian"));
|
||||||
|
var CustomFramesSettingTab = class extends import_obsidian2.PluginSettingTab {
|
||||||
|
constructor(app2, plugin) {
|
||||||
|
super(app2, plugin);
|
||||||
|
this.plugin = plugin;
|
||||||
|
}
|
||||||
|
display() {
|
||||||
|
this.containerEl.empty();
|
||||||
|
this.containerEl.createEl("h2", { text: "Custom Frames Settings" });
|
||||||
|
this.containerEl.createEl("p", {
|
||||||
|
text: "Please note that Obsidian has to be restarted or reloaded for most of these settings to take effect.",
|
||||||
|
cls: "mod-warning"
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(this.containerEl).setName("Frame Padding").setDesc("The padding that should be left around the inside of custom frame panes, in pixels.").addText((t) => {
|
||||||
|
t.inputEl.type = "number";
|
||||||
|
t.setValue(String(this.plugin.settings.padding));
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
this.plugin.settings.padding = v.length ? Number(v) : defaultSettings.padding;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
for (let frame of this.plugin.settings.frames) {
|
||||||
|
let heading = this.containerEl.createEl("h3", { text: frame.displayName || "Unnamed Frame" });
|
||||||
|
let toggle = new import_obsidian2.ButtonComponent(this.containerEl).setButtonText("Show Settings").setClass("custom-frames-show").onClick(() => __async(this, null, function* () {
|
||||||
|
content.hidden = !content.hidden;
|
||||||
|
toggle.setButtonText(content.hidden ? "Show Settings" : "Hide Settings");
|
||||||
|
}));
|
||||||
|
let content = this.containerEl.createDiv();
|
||||||
|
content.hidden = true;
|
||||||
|
new import_obsidian2.Setting(content).setName("Display Name").setDesc("The display name that this frame should have.").addText((t) => {
|
||||||
|
t.setValue(frame.displayName);
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.displayName = v;
|
||||||
|
heading.setText(frame.displayName || "Unnamed Frame");
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(content).setName("Icon").setDesc(createFragment((f) => {
|
||||||
|
f.createSpan({ text: "The icon that this frame's pane should have. The names of any " });
|
||||||
|
f.createEl("a", { text: "Lucide icons", href: "https://lucide.dev/" });
|
||||||
|
f.createSpan({ text: " can be used." });
|
||||||
|
})).addText((t) => {
|
||||||
|
t.setValue(frame.icon);
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.icon = v;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(content).setName("URL").setDesc("The URL that should be opened in this frame.").addText((t) => {
|
||||||
|
t.setValue(frame.url);
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.url = v;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(content).setName("Disable on Mobile").setDesc("Custom Frames is a lot more restricted on mobile devices and doesn't allow for the same types of content to be displayed. If a frame doesn't work as expected on mobile, it can be disabled.").addToggle((t) => {
|
||||||
|
t.setValue(frame.hideOnMobile);
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.hideOnMobile = v;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(content).setName("Add Ribbon Icon").setDesc("Whether a button to open this frame should be added to the ribbon.").addToggle((t) => {
|
||||||
|
t.setValue(frame.addRibbonIcon);
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.addRibbonIcon = v;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(content).setName("Open in Center").setDesc("Whether this frame should be opened in the unpinned center editor rather than one of the panes on the side. This is useful for sites that don't work well in a narrow view, or sites that don't require a note to be open when viewed.").addToggle((t) => {
|
||||||
|
t.setValue(frame.openInCenter);
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.openInCenter = v;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(content).setName("Force iframe").setDesc(createFragment((f) => {
|
||||||
|
f.createSpan({ text: "Whether this frame should use iframes on desktop as opposed to Electron webviews." });
|
||||||
|
f.createEl("br");
|
||||||
|
f.createEl("em", { text: "Only enable this setting if the frame is causing issues or frequent crashes. This setting causes all Desktop-only settings to be ignored." });
|
||||||
|
})).addToggle((t) => {
|
||||||
|
t.setValue(frame.forceIframe);
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.forceIframe = v;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(content).setName("Page Zoom").setDesc("The zoom that this frame's page should be displayed with, as a percentage.").addText((t) => {
|
||||||
|
t.inputEl.type = "number";
|
||||||
|
t.setValue(String(frame.zoomLevel * 100));
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.zoomLevel = v.length ? Number(v) / 100 : 1;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(content).setName("Additional CSS").setDesc(createFragment((f) => {
|
||||||
|
f.createSpan({ text: "A snippet of additional CSS that should be applied to this frame." });
|
||||||
|
f.createEl("br");
|
||||||
|
f.createEl("em", { text: "Note that this is only applied on Desktop." });
|
||||||
|
})).addTextArea((t) => {
|
||||||
|
t.inputEl.rows = 5;
|
||||||
|
t.inputEl.cols = 50;
|
||||||
|
t.setValue(frame.customCss);
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.customCss = v;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.Setting(content).setName("Additional JavaScript").setDesc(createFragment((f) => {
|
||||||
|
f.createSpan({ text: "A snippet of additional JavaScript that should be applied to this frame." });
|
||||||
|
f.createEl("br");
|
||||||
|
f.createEl("em", { text: "Note that this is only applied on Desktop." });
|
||||||
|
})).addTextArea((t) => {
|
||||||
|
t.inputEl.rows = 5;
|
||||||
|
t.inputEl.cols = 50;
|
||||||
|
t.setValue(frame.customJs);
|
||||||
|
t.onChange((v) => __async(this, null, function* () {
|
||||||
|
frame.customJs = v;
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
}));
|
||||||
|
});
|
||||||
|
new import_obsidian2.ButtonComponent(content).setButtonText("Remove Frame").onClick(() => __async(this, null, function* () {
|
||||||
|
this.plugin.settings.frames.remove(frame);
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
this.display();
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
this.containerEl.createEl("hr");
|
||||||
|
this.containerEl.createEl("p", { text: `Create a new frame, either from a preset shipped with the plugin, or a custom one that you can edit yourself. Each frame's pane can be opened using the "Custom Frames: Open" command.` });
|
||||||
|
let addDiv = this.containerEl.createDiv();
|
||||||
|
let dropdown = new import_obsidian2.DropdownComponent(addDiv);
|
||||||
|
dropdown.addOption("new", "Custom");
|
||||||
|
for (let [key, value] of Object.entries(presets).sort((a, b) => a[1].displayName.localeCompare(b[1].displayName)))
|
||||||
|
dropdown.addOption(key, value.displayName);
|
||||||
|
new import_obsidian2.ButtonComponent(addDiv).setButtonText("Add Frame").setClass("custom-frames-add").onClick(() => __async(this, null, function* () {
|
||||||
|
let option = dropdown.getValue();
|
||||||
|
if (option == "new") {
|
||||||
|
this.plugin.settings.frames.push({
|
||||||
|
url: "",
|
||||||
|
displayName: "New Frame",
|
||||||
|
icon: "",
|
||||||
|
hideOnMobile: true,
|
||||||
|
addRibbonIcon: false,
|
||||||
|
openInCenter: false,
|
||||||
|
zoomLevel: 1,
|
||||||
|
forceIframe: false,
|
||||||
|
customCss: "",
|
||||||
|
customJs: ""
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.plugin.settings.frames.push(presets[option]);
|
||||||
|
}
|
||||||
|
yield this.plugin.saveSettings();
|
||||||
|
this.display();
|
||||||
|
}));
|
||||||
|
let disclaimer = this.containerEl.createEl("p", { cls: "mod-warning" });
|
||||||
|
disclaimer.createSpan({ text: "Please be advised that, when adding a site as a custom frame, you potentially expose personal information you enter to other plugins you have installed. For more information, see " });
|
||||||
|
disclaimer.createEl("a", {
|
||||||
|
text: "this discussion",
|
||||||
|
href: "https://github.com/Ellpeck/ObsidianCustomFrames/issues/54#issuecomment-1210879685",
|
||||||
|
cls: "mod-warning"
|
||||||
|
});
|
||||||
|
disclaimer.createSpan({ text: "." });
|
||||||
|
this.containerEl.createEl("hr");
|
||||||
|
this.containerEl.createEl("p", { text: "Need help using the plugin? Feel free to join the Discord server!" });
|
||||||
|
this.containerEl.createEl("a", { href: "https://link.ellpeck.de/discordweb" }).createEl("img", {
|
||||||
|
attr: { src: "https://ellpeck.de/res/discord-wide.png" },
|
||||||
|
cls: "custom-frames-support"
|
||||||
|
});
|
||||||
|
this.containerEl.createEl("p", { text: "If you like this plugin and want to support its development, you can do so through my website by clicking this fancy image!" });
|
||||||
|
this.containerEl.createEl("a", { href: "https://ellpeck.de/support" }).createEl("img", {
|
||||||
|
attr: { src: "https://ellpeck.de/res/generalsupport-wide.png" },
|
||||||
|
cls: "custom-frames-support"
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// src/view.ts
|
||||||
|
var import_obsidian3 = __toModule(require("obsidian"));
|
||||||
|
var _CustomFrameView = class extends import_obsidian3.ItemView {
|
||||||
|
constructor(leaf, settings, data, name) {
|
||||||
|
super(leaf);
|
||||||
|
this.data = data;
|
||||||
|
this.name = name;
|
||||||
|
this.frame = new CustomFrame(settings, data);
|
||||||
|
this.navigation = data.openInCenter;
|
||||||
|
for (let action of _CustomFrameView.actions)
|
||||||
|
this.addAction(action.icon, action.name, () => action.action(this));
|
||||||
|
}
|
||||||
|
onload() {
|
||||||
|
this.contentEl.empty();
|
||||||
|
this.contentEl.addClass("custom-frames-view");
|
||||||
|
this.frame.create(this.contentEl);
|
||||||
|
}
|
||||||
|
onPaneMenu(menu, source) {
|
||||||
|
super.onPaneMenu(menu, source);
|
||||||
|
for (let action of _CustomFrameView.actions) {
|
||||||
|
menu.addItem((i) => {
|
||||||
|
i.setTitle(action.name);
|
||||||
|
i.setIcon(action.icon);
|
||||||
|
i.onClick(() => action.action(this));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
getViewType() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
getDisplayText() {
|
||||||
|
return this.data.displayName;
|
||||||
|
}
|
||||||
|
getIcon() {
|
||||||
|
return getIcon(this.data);
|
||||||
|
}
|
||||||
|
focus() {
|
||||||
|
this.frame.focus();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
var CustomFrameView = _CustomFrameView;
|
||||||
|
CustomFrameView.actions = [
|
||||||
|
{
|
||||||
|
name: "Return to original page",
|
||||||
|
icon: "home",
|
||||||
|
action: (v) => v.frame.return()
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Open dev tools",
|
||||||
|
icon: "binary",
|
||||||
|
action: (v) => v.frame.toggleDevTools()
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Copy link",
|
||||||
|
icon: "link",
|
||||||
|
action: (v) => navigator.clipboard.writeText(v.frame.getCurrentUrl())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Open in browser",
|
||||||
|
icon: "globe",
|
||||||
|
action: (v) => open(v.frame.getCurrentUrl())
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Refresh",
|
||||||
|
icon: "refresh-cw",
|
||||||
|
action: (v) => v.frame.refresh()
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Go forward",
|
||||||
|
icon: "arrow-right",
|
||||||
|
action: (v) => v.frame.goForward()
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Go back",
|
||||||
|
icon: "arrow-left",
|
||||||
|
action: (v) => v.frame.goBack()
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
// src/main.ts
|
||||||
|
var CustomFramesPlugin = class extends import_obsidian4.Plugin {
|
||||||
|
onload() {
|
||||||
|
return __async(this, null, function* () {
|
||||||
|
yield this.loadSettings();
|
||||||
|
for (let frame of this.settings.frames) {
|
||||||
|
if (!frame.url || !frame.displayName)
|
||||||
|
continue;
|
||||||
|
let name = `custom-frames-${getId(frame)}`;
|
||||||
|
if (import_obsidian4.Platform.isMobileApp && frame.hideOnMobile) {
|
||||||
|
console.log(`Skipping frame ${name} which is hidden on mobile`);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
console.log(`Registering frame ${name} for URL ${frame.url}`);
|
||||||
|
this.registerView(name, (l) => new CustomFrameView(l, this.settings, frame, name));
|
||||||
|
this.addCommand({
|
||||||
|
id: `open-${name}`,
|
||||||
|
name: `Open ${frame.displayName}`,
|
||||||
|
callback: () => this.openLeaf(name, frame.openInCenter, false)
|
||||||
|
});
|
||||||
|
if (frame.addRibbonIcon)
|
||||||
|
this.addRibbonIcon(getIcon(frame), `Open ${frame.displayName}`, (e) => this.openLeaf(name, frame.openInCenter, import_obsidian4.Platform.isMacOS ? e.metaKey : e.ctrlKey));
|
||||||
|
} catch (e) {
|
||||||
|
console.error(`Couldn't register frame ${name}, is there already one with the same name?`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.addSettingTab(new CustomFramesSettingTab(this.app, this));
|
||||||
|
this.registerMarkdownCodeBlockProcessor("custom-frames", (s, e) => {
|
||||||
|
e.empty();
|
||||||
|
e.addClass("custom-frames-view-file");
|
||||||
|
let frameMatch = /frame:([^\n]+)/gi.exec(s);
|
||||||
|
let frameName = frameMatch && frameMatch[1].trim();
|
||||||
|
if (!frameName) {
|
||||||
|
e.createSpan({ text: "Couldn't parse frame name" });
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let data = this.settings.frames.find((f) => f.displayName == frameName);
|
||||||
|
if (!data) {
|
||||||
|
e.createSpan({ text: `Couldn't find a frame with name ${frameName}` });
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (import_obsidian4.Platform.isMobileApp && data.hideOnMobile) {
|
||||||
|
e.createSpan({ text: `${frameName} is hidden on mobile` });
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let styleMatch = /style:([^\n]+)/gi.exec(s);
|
||||||
|
let style = styleMatch && styleMatch[1].trim();
|
||||||
|
style || (style = "height: 600px;");
|
||||||
|
let urlSuffixMatch = /urlsuffix:([^\n]+)/gi.exec(s);
|
||||||
|
let urlSuffix = urlSuffixMatch && urlSuffixMatch[1].trim();
|
||||||
|
urlSuffix || (urlSuffix = "");
|
||||||
|
let frame = new CustomFrame(this.settings, data);
|
||||||
|
frame.create(e, style, urlSuffix);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
loadSettings() {
|
||||||
|
return __async(this, null, function* () {
|
||||||
|
this.settings = Object.assign({}, defaultSettings, yield this.loadData());
|
||||||
|
});
|
||||||
|
}
|
||||||
|
saveSettings() {
|
||||||
|
return __async(this, null, function* () {
|
||||||
|
yield this.saveData(this.settings);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
openLeaf(name, center, split) {
|
||||||
|
return __async(this, null, function* () {
|
||||||
|
let leaf;
|
||||||
|
if (center) {
|
||||||
|
leaf = this.app.workspace.getLeaf(split);
|
||||||
|
yield leaf.setViewState({ type: name, active: true });
|
||||||
|
} else {
|
||||||
|
if (!this.app.workspace.getLeavesOfType(name).length)
|
||||||
|
yield this.app.workspace.getRightLeaf(false).setViewState({ type: name, active: true });
|
||||||
|
leaf = this.app.workspace.getLeavesOfType(name)[0];
|
||||||
|
this.app.workspace.revealLeaf(leaf);
|
||||||
|
}
|
||||||
|
if (leaf.view instanceof CustomFrameView)
|
||||||
|
leaf.view.focus();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
{"id":"obsidian-custom-frames","name":"Custom Frames","version":"2.5.0","minAppVersion":"1.2.0","description":"A plugin that turns web apps into panes using iframes with custom styling. Also comes with presets for Google Keep, Todoist and more.","author":"Ellpeck","authorUrl":"https://ellpeck.de","fundingUrl":"https://ellpeck.de/support","isDesktopOnly":false}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
.custom-frames-view {
|
||||||
|
padding: 0 !important;
|
||||||
|
overflow: hidden !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-frames-view-file {
|
||||||
|
padding: 0;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-frames-frame {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
border: none;
|
||||||
|
background-color: white;
|
||||||
|
background-clip: content-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-frames-add {
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-frames-show {
|
||||||
|
margin-bottom: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-frames-support {
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
{
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"name": "Markdown"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Markdown (Hugo)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "TextBundle"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Typst"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "PDF"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Word (.docx)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "OpenOffice"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "RTF"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Epub"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Latex"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Media Wiki"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "reStructuredText"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Textile"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "OPML"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Bibliography"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "PowerPoint (.pptx)"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"pandocPath": {
|
||||||
|
"win32": "D:\\Applications\\Scoop\\apps\\pandoc\\current\\pandoc.exe"
|
||||||
|
},
|
||||||
|
"defaultExportDirectoryMode": "Same",
|
||||||
|
"openExportedFile": true,
|
||||||
|
"env": {},
|
||||||
|
"showExportProgressBar": true,
|
||||||
|
"lastEditName": "Word (.docx)"
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
-- credits to tarleb — StackExchange: https://tex.stackexchange.com/questions/392070/pandoc-markdown-create-self-contained-bib-file-from-cited-references
|
||||||
|
function Pandoc(d)
|
||||||
|
d.meta.references = pandoc.utils.references(d)
|
||||||
|
d.meta.bibliography = nil
|
||||||
|
return d
|
||||||
|
end
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
package.path=package.path..";" ..debug.getinfo(1).source:match("(.*[/\\])"):sub(2) .. "?.lua"
|
||||||
|
|
||||||
|
Mode='hugo'
|
||||||
|
|
||||||
|
require('markdown')
|
||||||
@@ -0,0 +1,237 @@
|
|||||||
|
package.path=debug.getinfo(1).source:gsub('@',''):sub(0):match('(.*[/\\])'):sub(0) .. '?.lua' .. ';' .. package.path
|
||||||
|
|
||||||
|
require("polyfill")
|
||||||
|
local url = require('url')
|
||||||
|
|
||||||
|
local pandoc=pandoc
|
||||||
|
local PANDOC_STATE=PANDOC_STATE
|
||||||
|
|
||||||
|
PANDOC_VERSION:must_be_at_least '3.1.7'
|
||||||
|
|
||||||
|
os.text = pandoc.text
|
||||||
|
|
||||||
|
local PATH = pandoc.path
|
||||||
|
local doc_dir = nil
|
||||||
|
local media_dir = nil
|
||||||
|
|
||||||
|
if Mode == nil then
|
||||||
|
Mode = 'default'
|
||||||
|
end
|
||||||
|
|
||||||
|
-- print("Mode: "..Mode)
|
||||||
|
|
||||||
|
if PANDOC_STATE.output_file then
|
||||||
|
local output_file = PANDOC_STATE.output_file
|
||||||
|
doc_dir = PATH.directory(output_file)
|
||||||
|
if PANDOC_WRITER_OPTIONS.variables["media_dir"] then
|
||||||
|
media_dir = tostring(PANDOC_WRITER_OPTIONS.variables["media_dir"])
|
||||||
|
else
|
||||||
|
media_dir = PATH.split_extension(output_file)
|
||||||
|
if Mode ~= 'hugo' then
|
||||||
|
media_dir = media_dir .. '-media'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
assert(doc_dir, "doc_dir is nil")
|
||||||
|
assert(media_dir, "media_dir is nil")
|
||||||
|
|
||||||
|
|
||||||
|
local function get_absolute_path(file_path)
|
||||||
|
if PATH.is_absolute(file_path) then
|
||||||
|
return file_path
|
||||||
|
end
|
||||||
|
for _, dir in pairs(PANDOC_STATE.resource_path) do
|
||||||
|
local full_path = PATH.join({dir, file_path})
|
||||||
|
if os.exists(full_path) then
|
||||||
|
return full_path
|
||||||
|
end
|
||||||
|
end
|
||||||
|
for _, file in pairs(PANDOC_STATE.input_files) do
|
||||||
|
if not PATH.is_absolute(file) then
|
||||||
|
file = PATH.join({pandoc.system.get_working_directory(), file_path})
|
||||||
|
end
|
||||||
|
local dir = PATH.directory(file)
|
||||||
|
local full_path = PATH.join({dir, file_path})
|
||||||
|
if os.exists(full_path) then
|
||||||
|
return full_path
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
|
||||||
|
local function get_output_file(file_path)
|
||||||
|
if media_dir then
|
||||||
|
local new_file_name = pandoc.utils.sha1(file_path)
|
||||||
|
local _, new_file_ext = PATH.split_extension(file_path)
|
||||||
|
file_path = new_file_name .. new_file_ext
|
||||||
|
local full_path = PATH.join({media_dir, file_path})
|
||||||
|
return full_path
|
||||||
|
else
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function extract_media(file_path)
|
||||||
|
os.mkdir(media_dir)
|
||||||
|
file_path = url.decode(file_path)
|
||||||
|
local abs_path = get_absolute_path(file_path)
|
||||||
|
local file = get_output_file(file_path)
|
||||||
|
if abs_path and file then
|
||||||
|
if not os.exists(file) then
|
||||||
|
os.copy(abs_path, file)
|
||||||
|
end
|
||||||
|
local rel_path = PATH.make_relative(file, doc_dir, false)
|
||||||
|
local parts = PATH.split(rel_path)
|
||||||
|
for i,v in ipairs(parts) do
|
||||||
|
parts[i] = url.encode(v)
|
||||||
|
end
|
||||||
|
local encoded_rel_path = table.concat(parts, "/")
|
||||||
|
if Mode == 'hugo' then
|
||||||
|
encoded_rel_path = '../' .. encoded_rel_path
|
||||||
|
end
|
||||||
|
return encoded_rel_path
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local function raw(s)
|
||||||
|
return pandoc.RawInline('markdown', s)
|
||||||
|
end
|
||||||
|
|
||||||
|
function Image(el)
|
||||||
|
local src = extract_media(el.src)
|
||||||
|
if src then
|
||||||
|
el.src = src
|
||||||
|
end
|
||||||
|
return el
|
||||||
|
end
|
||||||
|
|
||||||
|
function Space()
|
||||||
|
return raw(' ')
|
||||||
|
end
|
||||||
|
|
||||||
|
function SoftBreak()
|
||||||
|
return raw('\n')
|
||||||
|
end
|
||||||
|
|
||||||
|
function RawInline(el)
|
||||||
|
if el.format == "html" then
|
||||||
|
el.format = 'markdown'
|
||||||
|
el.text = string.gsub(el.text, '<img[^>]+>', function(img)
|
||||||
|
return string.gsub(img, 'src="([^"]+)"', function(url)
|
||||||
|
if string.find(url, '^[Hh][Tt][Tt][Pp][Ss]?://') == nil then
|
||||||
|
local extract_media_url = extract_media(url)
|
||||||
|
if extract_media_url then
|
||||||
|
return 'src="' .. extract_media_url .. '"'
|
||||||
|
end
|
||||||
|
return '123'
|
||||||
|
end
|
||||||
|
return 'src="' .. url .. '"'
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
return el
|
||||||
|
end
|
||||||
|
|
||||||
|
function RawBlock(el)
|
||||||
|
if el.format == "html" then
|
||||||
|
el.format = 'markdown'
|
||||||
|
end
|
||||||
|
return el
|
||||||
|
end
|
||||||
|
|
||||||
|
function Math(el)
|
||||||
|
if Mode == 'hugo' then
|
||||||
|
if el.mathtype == 'DisplayMath' then
|
||||||
|
return raw('{{< mathjax >}}\n$$' .. el.text .. '$$\n{{</mathjax >}}')
|
||||||
|
else
|
||||||
|
el.text = string.gsub(el.text, '\\[\\{\\}]', function (v)
|
||||||
|
return '\\' .. v
|
||||||
|
end)
|
||||||
|
el.text = string.gsub(el.text, '_', function (v)
|
||||||
|
return '\\' .. v
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return el
|
||||||
|
end
|
||||||
|
|
||||||
|
local function headerLink(input)
|
||||||
|
-- github style section link
|
||||||
|
return "#"..input:gsub(' ', '-')
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
local function insertLink(content, linkDescription)
|
||||||
|
local descriptionText = table.concat(linkDescription, "")
|
||||||
|
|
||||||
|
if string.find(descriptionText, '|') then
|
||||||
|
local target, desc = descriptionText:match("(.*)|(.*)")
|
||||||
|
table.insert(content, pandoc.Link(desc, headerLink(target)))
|
||||||
|
else
|
||||||
|
table.insert(content, pandoc.Link(descriptionText, headerLink(descriptionText)))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function Para(el)
|
||||||
|
local content = el.content
|
||||||
|
content = ProcessMath(content)
|
||||||
|
content = ProcessInternalLinks(content)
|
||||||
|
el.content = content
|
||||||
|
return el
|
||||||
|
end
|
||||||
|
|
||||||
|
function ProcessMath(elements)
|
||||||
|
local content = {}
|
||||||
|
local in_display_math = false
|
||||||
|
for _, item in pairs(elements) do
|
||||||
|
if item.t == 'Str'and item.text == "$$" then
|
||||||
|
in_display_math = not in_display_math
|
||||||
|
else
|
||||||
|
if in_display_math then
|
||||||
|
if item.t == 'RawInline' and item.format == 'tex' then
|
||||||
|
local n = pandoc.Math('DisplayMath', '\n' .. item.text .. '\n')
|
||||||
|
table.insert(content, Math(n))
|
||||||
|
else
|
||||||
|
table.insert(content, item)
|
||||||
|
end
|
||||||
|
else
|
||||||
|
table.insert(content, item)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return content
|
||||||
|
end
|
||||||
|
|
||||||
|
function ProcessInternalLinks(elements)
|
||||||
|
local content = {}
|
||||||
|
local in_section_link = false
|
||||||
|
local linkDescription = {}
|
||||||
|
|
||||||
|
for _, item in pairs(elements) do
|
||||||
|
if item.t == 'Str' and string.starts_with(item.text, '[[#') then
|
||||||
|
in_section_link = true
|
||||||
|
table.insert(linkDescription, string.sub(item.text, 4))
|
||||||
|
elseif in_section_link then
|
||||||
|
if string.ends_with(item.text, ']]') then
|
||||||
|
table.insert(linkDescription, string.sub(item.text, 1, -3))
|
||||||
|
insertLink(content, linkDescription)
|
||||||
|
in_section_link = false
|
||||||
|
linkDescription = {}
|
||||||
|
else
|
||||||
|
table.insert(linkDescription, item.text)
|
||||||
|
end
|
||||||
|
else
|
||||||
|
table.insert(content, item)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return content
|
||||||
|
end
|
||||||
|
|
||||||
|
function Plain(el)
|
||||||
|
el.content = ProcessInternalLinks(el.content)
|
||||||
|
return el
|
||||||
|
end
|
||||||
|
|
||||||
|
function Pandoc(el)
|
||||||
|
return el
|
||||||
|
end
|
||||||
@@ -0,0 +1,68 @@
|
|||||||
|
traverse = 'topdown'
|
||||||
|
|
||||||
|
math_block_text = nil
|
||||||
|
function process(el)
|
||||||
|
|
||||||
|
-- MathBlock start or end
|
||||||
|
if el.t == 'Str' and el.text == '$$' then
|
||||||
|
if math_block_text == nil then -- start
|
||||||
|
math_block_text = ''
|
||||||
|
else -- end
|
||||||
|
local math_block = pandoc.Math('DisplayMath', '\n' .. math_block_text .. '\n')
|
||||||
|
math_block_text = nil
|
||||||
|
return math_block
|
||||||
|
end
|
||||||
|
return {}
|
||||||
|
end
|
||||||
|
|
||||||
|
if math_block_text then
|
||||||
|
if (el.t == 'RawInline' or el.t == 'RawBlock') and el.format == 'tex' then
|
||||||
|
math_block_text = math_block_text .. el.text
|
||||||
|
return {}
|
||||||
|
elseif el.t == 'Str' then
|
||||||
|
math_block_text = math_block_text .. el.text
|
||||||
|
return {}
|
||||||
|
elseif el.t == 'SoftBreak' or el.t == 'BulletList' then
|
||||||
|
return {}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return el
|
||||||
|
end
|
||||||
|
|
||||||
|
function RawInline(el)
|
||||||
|
return process(el)
|
||||||
|
end
|
||||||
|
|
||||||
|
function RawBlock(el)
|
||||||
|
return process(el)
|
||||||
|
end
|
||||||
|
|
||||||
|
function Str(el)
|
||||||
|
return process(el)
|
||||||
|
end
|
||||||
|
|
||||||
|
function SoftBreak(el)
|
||||||
|
return process(el)
|
||||||
|
end
|
||||||
|
|
||||||
|
function Header(el)
|
||||||
|
return process(el)
|
||||||
|
end
|
||||||
|
|
||||||
|
function Para(el)
|
||||||
|
return process(el)
|
||||||
|
end
|
||||||
|
|
||||||
|
function Plain(el)
|
||||||
|
return process(el)
|
||||||
|
end
|
||||||
|
|
||||||
|
function BulletList(el)
|
||||||
|
return process(el)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -0,0 +1,50 @@
|
|||||||
|
-- minimum supported version for full environment
|
||||||
|
-- support is 3.8.unkown yet to be released but probably 3
|
||||||
|
local environment_fully_supported_version = pandoc.types.Version('3.8.3')
|
||||||
|
local environment_partially_supported_version = pandoc.types.Version('3.8.0')
|
||||||
|
local is_partially_supported = PANDOC_VERSION >= environment_partially_supported_version
|
||||||
|
local problamatic_environments = {
|
||||||
|
displaymath = true,
|
||||||
|
math = true,
|
||||||
|
equation = true,
|
||||||
|
["equation*"] = true,
|
||||||
|
gather = true,
|
||||||
|
["gather*"] = true,
|
||||||
|
multline = true,
|
||||||
|
["multline*"] = true,
|
||||||
|
eqnarray = true,
|
||||||
|
["eqnarray*"] = true,
|
||||||
|
align = true,
|
||||||
|
["align*"] = true,
|
||||||
|
alignat = true,
|
||||||
|
["alignat*"] = true,
|
||||||
|
flalign = true,
|
||||||
|
["flalign*"] = true,
|
||||||
|
}
|
||||||
|
if is_partially_supported then
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
Math = function(elem)
|
||||||
|
if elem.text:find("^%s*\\begin{") ~= nil then
|
||||||
|
local replacement = pandoc.text:gsub(elem.text, "^%s*\\begin{(.-)}", "\\begin{%1}"):gsub("\\end{(.-)}%s*$", "\\end{%1}")
|
||||||
|
return pandoc.Math(replacement, elem.mathtype)
|
||||||
|
else
|
||||||
|
return elem
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
elseif not environment_fully_supported_version then
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
Math = function(elem)
|
||||||
|
local result = elem.text:match("^%s*\\begin{(%a+%*?)}")
|
||||||
|
if result ~= nil and problamatic_environments[result] ~= nil then
|
||||||
|
return pandoc.RawInline('tex', elem.text)
|
||||||
|
else
|
||||||
|
return elem
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
end
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
os.platform = nil
|
||||||
|
if os.platform == nil then
|
||||||
|
local libExt = package.cpath:match("%p[\\|/]?\\.%p(%a+)")
|
||||||
|
if libExt == 'dll' then
|
||||||
|
os.platform = "Windows"
|
||||||
|
elseif libExt == 'so' then
|
||||||
|
os.platform = "Linux"
|
||||||
|
elseif libExt == 'dylib' then
|
||||||
|
os.platform = "MacOS"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
os.copy = function(src, dest)
|
||||||
|
if os.platform == "Windows" then
|
||||||
|
src = string.gsub(src, "/", "\\")
|
||||||
|
src = os.text.toencoding(src)
|
||||||
|
dest = os.text.toencoding(dest)
|
||||||
|
os.execute('copy "' .. src .. '" "' .. dest .. '" >NUL')
|
||||||
|
else
|
||||||
|
os.execute('cp "' .. src .. '" "' .. dest .. '"')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
os.mkdir = function(dir)
|
||||||
|
if os.exists(dir) then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
if os.platform == "Windows" then
|
||||||
|
dir = os.text.toencoding(dir)
|
||||||
|
os.execute('mkdir "' .. dir .. '"')
|
||||||
|
else
|
||||||
|
os.execute('mkdir -p "' .. dir .. '"')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
os.exists = function(path)
|
||||||
|
if os.platform == "Windows" then
|
||||||
|
path = string.gsub(path, "/", "\\")
|
||||||
|
path = os.text.toencoding(path)
|
||||||
|
local _, _, code = os.execute('if exist "' .. path .. '" (exit 0) else (exit 1)')
|
||||||
|
return code == 0
|
||||||
|
else
|
||||||
|
local _, _, code = os.execute('test -e "' .. path .. '"')
|
||||||
|
return code == 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
string.starts_with = function(str, start)
|
||||||
|
return str:sub(1, #start) == start
|
||||||
|
end
|
||||||
|
|
||||||
|
string.ends_with = function(str, ending)
|
||||||
|
return ending == "" or str:sub(-#ending) == ending
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
return {
|
||||||
|
os = os,
|
||||||
|
string = string
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
local function encode (str)
|
||||||
|
str = string.gsub (str, "([^0-9a-zA-Z !'()*._~-])", -- locale independent
|
||||||
|
function (c) return string.format ("%%%02X", string.byte(c)) end)
|
||||||
|
str = string.gsub (str, " ", "%%20")
|
||||||
|
return str
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
local function decode (str)
|
||||||
|
str = string.gsub (str, "%%20", " ")
|
||||||
|
str = string.gsub (str, "%%(%x%x)", function(h) return string.char(tonumber(h,16)) end)
|
||||||
|
return str
|
||||||
|
end
|
||||||
|
|
||||||
|
return {
|
||||||
|
encode = encode,
|
||||||
|
decode = decode
|
||||||
|
}
|
||||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"obsidian-enhancing-export","name":"Enhancing Export","version":"1.10.11","minAppVersion":"1.6.3","description":"This is a enhancing export plugin for Obsidian. It allows to export to formats like Html, DOCX, ePub and PDF or Markdown(Hugo) etc.","author":"YISH","authorUrl":"https://github.com/mokeyish","isDesktopOnly":true}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
.setting-item.ex-setting-item{border-top:unset;padding-top:0}*[hidden]{display:none}
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,373 @@
|
|||||||
|
% partial rewrite of the LaTeX2e package for submissions to the
|
||||||
|
% Conference on Neural Information Processing Systems (NeurIPS):
|
||||||
|
%
|
||||||
|
% - uses more LaTeX conventions
|
||||||
|
% - line numbers at submission time replaced with aligned numbers from
|
||||||
|
% lineno package
|
||||||
|
% - \nipsfinalcopy replaced with [final] package option
|
||||||
|
% - automatically loads times package for authors
|
||||||
|
% - loads natbib automatically; this can be suppressed with the
|
||||||
|
% [nonatbib] package option
|
||||||
|
% - adds foot line to first page identifying the conference
|
||||||
|
% - adds preprint option for submission to e.g. arXiv
|
||||||
|
% - conference acronym modified
|
||||||
|
%
|
||||||
|
% Roman Garnett (garnett@wustl.edu) and the many authors of
|
||||||
|
% nips15submit_e.sty, including MK and drstrip@sandia
|
||||||
|
%
|
||||||
|
% last revision: March 2023
|
||||||
|
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{neurips}[2023/03/31 NeurIPS 2023 submission/camera-ready style file]
|
||||||
|
|
||||||
|
% declare final option, which creates camera-ready copy
|
||||||
|
\newif\if@neuripsfinal\@neuripsfinalfalse
|
||||||
|
\DeclareOption{final}{
|
||||||
|
\@neuripsfinaltrue
|
||||||
|
}
|
||||||
|
|
||||||
|
% declare nonatbib option, which does not load natbib in case of
|
||||||
|
% package clash (users can pass options to natbib via
|
||||||
|
% \PassOptionsToPackage)
|
||||||
|
\newif\if@natbib\@natbibtrue
|
||||||
|
\DeclareOption{nonatbib}{
|
||||||
|
\@natbibfalse
|
||||||
|
}
|
||||||
|
|
||||||
|
% declare preprint option, which creates a preprint version ready for
|
||||||
|
% upload to, e.g., arXiv
|
||||||
|
\newif\if@preprint\@preprintfalse
|
||||||
|
\DeclareOption{preprint}{
|
||||||
|
\@preprinttrue
|
||||||
|
}
|
||||||
|
|
||||||
|
\ProcessOptions\relax
|
||||||
|
|
||||||
|
% determine whether this is an anonymized submission
|
||||||
|
\newif\if@submission\@submissiontrue
|
||||||
|
\if@neuripsfinal\@submissionfalse\fi
|
||||||
|
\if@preprint\@submissionfalse\fi
|
||||||
|
|
||||||
|
% fonts
|
||||||
|
\renewcommand{\rmdefault}{ptm}
|
||||||
|
\renewcommand{\sfdefault}{phv}
|
||||||
|
|
||||||
|
% change this every year for notice string at bottom
|
||||||
|
\newcommand{\@neuripsordinal}{}
|
||||||
|
\newcommand{\@neuripsyear}{\the\year}
|
||||||
|
\newcommand{\@neuripslocation}{}
|
||||||
|
|
||||||
|
% acknowledgments
|
||||||
|
\usepackage{environ}
|
||||||
|
\newcommand{\acksection}{\section*{Acknowledgments and Disclosure of Funding}}
|
||||||
|
\NewEnviron{ack}{%
|
||||||
|
\acksection
|
||||||
|
\BODY
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
% load natbib unless told otherwise
|
||||||
|
\if@natbib
|
||||||
|
\RequirePackage{natbib}
|
||||||
|
\fi
|
||||||
|
|
||||||
|
% set page geometry
|
||||||
|
\usepackage[verbose=true,letterpaper]{geometry}
|
||||||
|
\AtBeginDocument{
|
||||||
|
\newgeometry{
|
||||||
|
textheight=9in,
|
||||||
|
textwidth=5.5in,
|
||||||
|
top=1in,
|
||||||
|
headheight=12pt,
|
||||||
|
headsep=25pt,
|
||||||
|
footskip=30pt
|
||||||
|
}
|
||||||
|
\@ifpackageloaded{fullpage}
|
||||||
|
{\PackageWarning{neurips_2023}{fullpage package not allowed! Overwriting formatting.}}
|
||||||
|
{}
|
||||||
|
}
|
||||||
|
|
||||||
|
\widowpenalty=10000
|
||||||
|
\clubpenalty=10000
|
||||||
|
\flushbottom
|
||||||
|
\sloppy
|
||||||
|
|
||||||
|
|
||||||
|
% font sizes with reduced leading
|
||||||
|
\renewcommand{\normalsize}{%
|
||||||
|
\@setfontsize\normalsize\@xpt\@xipt
|
||||||
|
\abovedisplayskip 7\p@ \@plus 2\p@ \@minus 5\p@
|
||||||
|
\abovedisplayshortskip \z@ \@plus 3\p@
|
||||||
|
\belowdisplayskip \abovedisplayskip
|
||||||
|
\belowdisplayshortskip 4\p@ \@plus 3\p@ \@minus 3\p@
|
||||||
|
}
|
||||||
|
\normalsize
|
||||||
|
\renewcommand{\small}{%
|
||||||
|
\@setfontsize\small\@ixpt\@xpt
|
||||||
|
\abovedisplayskip 6\p@ \@plus 1.5\p@ \@minus 4\p@
|
||||||
|
\abovedisplayshortskip \z@ \@plus 2\p@
|
||||||
|
\belowdisplayskip \abovedisplayskip
|
||||||
|
\belowdisplayshortskip 3\p@ \@plus 2\p@ \@minus 2\p@
|
||||||
|
}
|
||||||
|
\renewcommand{\footnotesize}{\@setfontsize\footnotesize\@ixpt\@xpt}
|
||||||
|
\renewcommand{\scriptsize}{\@setfontsize\scriptsize\@viipt\@viiipt}
|
||||||
|
\renewcommand{\tiny}{\@setfontsize\tiny\@vipt\@viipt}
|
||||||
|
\renewcommand{\large}{\@setfontsize\large\@xiipt{14}}
|
||||||
|
\renewcommand{\Large}{\@setfontsize\Large\@xivpt{16}}
|
||||||
|
\renewcommand{\LARGE}{\@setfontsize\LARGE\@xviipt{20}}
|
||||||
|
\renewcommand{\huge}{\@setfontsize\huge\@xxpt{23}}
|
||||||
|
\renewcommand{\Huge}{\@setfontsize\Huge\@xxvpt{28}}
|
||||||
|
|
||||||
|
% sections with less space
|
||||||
|
\providecommand{\section}{}
|
||||||
|
\renewcommand{\section}{%
|
||||||
|
\@startsection{section}{1}{\z@}%
|
||||||
|
{-2.0ex \@plus -0.5ex \@minus -0.2ex}%
|
||||||
|
{ 1.5ex \@plus 0.3ex \@minus 0.2ex}%
|
||||||
|
{\large\bf\raggedright}%
|
||||||
|
}
|
||||||
|
\providecommand{\subsection}{}
|
||||||
|
\renewcommand{\subsection}{%
|
||||||
|
\@startsection{subsection}{2}{\z@}%
|
||||||
|
{-1.8ex \@plus -0.5ex \@minus -0.2ex}%
|
||||||
|
{ 0.8ex \@plus 0.2ex}%
|
||||||
|
{\normalsize\bf\raggedright}%
|
||||||
|
}
|
||||||
|
\providecommand{\subsubsection}{}
|
||||||
|
\renewcommand{\subsubsection}{%
|
||||||
|
\@startsection{subsubsection}{3}{\z@}%
|
||||||
|
{-1.5ex \@plus -0.5ex \@minus -0.2ex}%
|
||||||
|
{ 0.5ex \@plus 0.2ex}%
|
||||||
|
{\normalsize\bf\raggedright}%
|
||||||
|
}
|
||||||
|
\providecommand{\paragraph}{}
|
||||||
|
\renewcommand{\paragraph}{%
|
||||||
|
\@startsection{paragraph}{4}{\z@}%
|
||||||
|
{1.5ex \@plus 0.5ex \@minus 0.2ex}%
|
||||||
|
{-1em}%
|
||||||
|
{\normalsize\bf}%
|
||||||
|
}
|
||||||
|
\providecommand{\subparagraph}{}
|
||||||
|
\renewcommand{\subparagraph}{%
|
||||||
|
\@startsection{subparagraph}{5}{\z@}%
|
||||||
|
{1.5ex \@plus 0.5ex \@minus 0.2ex}%
|
||||||
|
{-1em}%
|
||||||
|
{\normalsize\bf}%
|
||||||
|
}
|
||||||
|
\providecommand{\subsubsubsection}{}
|
||||||
|
\renewcommand{\subsubsubsection}{%
|
||||||
|
\vskip5pt{\noindent\normalsize\rm\raggedright}%
|
||||||
|
}
|
||||||
|
|
||||||
|
% float placement
|
||||||
|
\renewcommand{\topfraction }{0.85}
|
||||||
|
\renewcommand{\bottomfraction }{0.4}
|
||||||
|
\renewcommand{\textfraction }{0.1}
|
||||||
|
\renewcommand{\floatpagefraction}{0.7}
|
||||||
|
|
||||||
|
\newlength{\@neuripsabovecaptionskip}\setlength{\@neuripsabovecaptionskip}{7\p@}
|
||||||
|
\newlength{\@neuripsbelowcaptionskip}\setlength{\@neuripsbelowcaptionskip}{\z@}
|
||||||
|
|
||||||
|
\setlength{\abovecaptionskip}{\@neuripsabovecaptionskip}
|
||||||
|
\setlength{\belowcaptionskip}{\@neuripsbelowcaptionskip}
|
||||||
|
|
||||||
|
% swap above/belowcaptionskip lengths for tables
|
||||||
|
\renewenvironment{table}
|
||||||
|
{\setlength{\abovecaptionskip}{\@neuripsbelowcaptionskip}%
|
||||||
|
\setlength{\belowcaptionskip}{\@neuripsabovecaptionskip}%
|
||||||
|
\@float{table}}
|
||||||
|
{\end@float}
|
||||||
|
|
||||||
|
% footnote formatting
|
||||||
|
\setlength{\footnotesep }{6.65\p@}
|
||||||
|
\setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@}
|
||||||
|
\renewcommand{\footnoterule}{\kern-3\p@ \hrule width 12pc \kern 2.6\p@}
|
||||||
|
\setcounter{footnote}{0}
|
||||||
|
|
||||||
|
% paragraph formatting
|
||||||
|
\setlength{\parindent}{\z@}
|
||||||
|
\setlength{\parskip }{5.5\p@}
|
||||||
|
|
||||||
|
% list formatting
|
||||||
|
\setlength{\topsep }{4\p@ \@plus 1\p@ \@minus 2\p@}
|
||||||
|
\setlength{\partopsep }{1\p@ \@plus 0.5\p@ \@minus 0.5\p@}
|
||||||
|
\setlength{\itemsep }{2\p@ \@plus 1\p@ \@minus 0.5\p@}
|
||||||
|
\setlength{\parsep }{2\p@ \@plus 1\p@ \@minus 0.5\p@}
|
||||||
|
\setlength{\leftmargin }{3pc}
|
||||||
|
\setlength{\leftmargini }{\leftmargin}
|
||||||
|
\setlength{\leftmarginii }{2em}
|
||||||
|
\setlength{\leftmarginiii}{1.5em}
|
||||||
|
\setlength{\leftmarginiv }{1.0em}
|
||||||
|
\setlength{\leftmarginv }{0.5em}
|
||||||
|
\def\@listi {\leftmargin\leftmargini}
|
||||||
|
\def\@listii {\leftmargin\leftmarginii
|
||||||
|
\labelwidth\leftmarginii
|
||||||
|
\advance\labelwidth-\labelsep
|
||||||
|
\topsep 2\p@ \@plus 1\p@ \@minus 0.5\p@
|
||||||
|
\parsep 1\p@ \@plus 0.5\p@ \@minus 0.5\p@
|
||||||
|
\itemsep \parsep}
|
||||||
|
\def\@listiii{\leftmargin\leftmarginiii
|
||||||
|
\labelwidth\leftmarginiii
|
||||||
|
\advance\labelwidth-\labelsep
|
||||||
|
\topsep 1\p@ \@plus 0.5\p@ \@minus 0.5\p@
|
||||||
|
\parsep \z@
|
||||||
|
\partopsep 0.5\p@ \@plus 0\p@ \@minus 0.5\p@
|
||||||
|
\itemsep \topsep}
|
||||||
|
\def\@listiv {\leftmargin\leftmarginiv
|
||||||
|
\labelwidth\leftmarginiv
|
||||||
|
\advance\labelwidth-\labelsep}
|
||||||
|
\def\@listv {\leftmargin\leftmarginv
|
||||||
|
\labelwidth\leftmarginv
|
||||||
|
\advance\labelwidth-\labelsep}
|
||||||
|
\def\@listvi {\leftmargin\leftmarginvi
|
||||||
|
\labelwidth\leftmarginvi
|
||||||
|
\advance\labelwidth-\labelsep}
|
||||||
|
|
||||||
|
% create title
|
||||||
|
\providecommand{\maketitle}{}
|
||||||
|
\renewcommand{\maketitle}{%
|
||||||
|
\par
|
||||||
|
\begingroup
|
||||||
|
\renewcommand{\thefootnote}{\fnsymbol{footnote}}
|
||||||
|
% for perfect author name centering
|
||||||
|
\renewcommand{\@makefnmark}{\hbox to \z@{$^{\@thefnmark}$\hss}}
|
||||||
|
% The footnote-mark was overlapping the footnote-text,
|
||||||
|
% added the following to fix this problem (MK)
|
||||||
|
\long\def\@makefntext##1{%
|
||||||
|
\parindent 1em\noindent
|
||||||
|
\hbox to 1.8em{\hss $\m@th ^{\@thefnmark}$}##1
|
||||||
|
}
|
||||||
|
\thispagestyle{empty}
|
||||||
|
\@maketitle
|
||||||
|
\@thanks
|
||||||
|
\@notice
|
||||||
|
\endgroup
|
||||||
|
\let\maketitle\relax
|
||||||
|
\let\thanks\relax
|
||||||
|
}
|
||||||
|
|
||||||
|
% rules for title box at top of first page
|
||||||
|
\newcommand{\@toptitlebar}{
|
||||||
|
\hrule height 4\p@
|
||||||
|
\vskip 0.25in
|
||||||
|
\vskip -\parskip%
|
||||||
|
}
|
||||||
|
\newcommand{\@bottomtitlebar}{
|
||||||
|
\vskip 0.29in
|
||||||
|
\vskip -\parskip
|
||||||
|
\hrule height 1\p@
|
||||||
|
\vskip 0.09in%
|
||||||
|
}
|
||||||
|
|
||||||
|
% create title (includes both anonymized and non-anonymized versions)
|
||||||
|
\providecommand{\@maketitle}{}
|
||||||
|
\renewcommand{\@maketitle}{%
|
||||||
|
\vbox{%
|
||||||
|
\hsize\textwidth
|
||||||
|
\linewidth\hsize
|
||||||
|
\vskip 0.1in
|
||||||
|
\@toptitlebar
|
||||||
|
\centering
|
||||||
|
{\LARGE\bf \@title\par}
|
||||||
|
\@bottomtitlebar
|
||||||
|
\if@submission
|
||||||
|
\begin{tabular}[t]{c}\bf\rule{\z@}{24\p@}
|
||||||
|
Anonymous Author(s) \\
|
||||||
|
Affiliation \\
|
||||||
|
Address \\
|
||||||
|
\texttt{email} \\
|
||||||
|
\end{tabular}%
|
||||||
|
\else
|
||||||
|
\def\And{%
|
||||||
|
\end{tabular}\hfil\linebreak[0]\hfil%
|
||||||
|
\begin{tabular}[t]{c}\bf\rule{\z@}{24\p@}\ignorespaces%
|
||||||
|
}
|
||||||
|
\def\AND{%
|
||||||
|
\end{tabular}\hfil\linebreak[4]\hfil%
|
||||||
|
\begin{tabular}[t]{c}\bf\rule{\z@}{24\p@}\ignorespaces%
|
||||||
|
}
|
||||||
|
\begin{tabular}[t]{c}\bf\rule{\z@}{24\p@}\@author\end{tabular}%
|
||||||
|
\fi
|
||||||
|
\vskip 0.3in \@minus 0.1in
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
% add conference notice to bottom of first page
|
||||||
|
\newcommand{\ftype@noticebox}{8}
|
||||||
|
\newcommand{\@notice}{%
|
||||||
|
% give a bit of extra room back to authors on first page
|
||||||
|
\enlargethispage{2\baselineskip}%
|
||||||
|
\@float{noticebox}[b]%
|
||||||
|
\footnotesize\@noticestring%
|
||||||
|
\end@float%
|
||||||
|
}
|
||||||
|
|
||||||
|
% abstract styling
|
||||||
|
\renewenvironment{abstract}%
|
||||||
|
{%
|
||||||
|
\vskip 0.075in%
|
||||||
|
\centerline%
|
||||||
|
{\large\bf Abstract}%
|
||||||
|
\vspace{0.5ex}%
|
||||||
|
\begin{quote}%
|
||||||
|
}
|
||||||
|
{
|
||||||
|
\par%
|
||||||
|
\end{quote}%
|
||||||
|
\vskip 1ex%
|
||||||
|
}
|
||||||
|
|
||||||
|
% handle tweaks for camera-ready copy vs. submission copy
|
||||||
|
\if@preprint
|
||||||
|
\newcommand{\@noticestring}{%
|
||||||
|
Preprint. Under review.%
|
||||||
|
}
|
||||||
|
\else
|
||||||
|
\if@neuripsfinal
|
||||||
|
\newcommand{\@noticestring}{%
|
||||||
|
(\@neuripsyear) \@title
|
||||||
|
}
|
||||||
|
\else
|
||||||
|
\newcommand{\@noticestring}{%
|
||||||
|
(\@neuripsyear) \@title %
|
||||||
|
}
|
||||||
|
|
||||||
|
% hide the acknowledgements
|
||||||
|
\NewEnviron{hide}{}
|
||||||
|
\let\ack\hide
|
||||||
|
\let\endack\endhide
|
||||||
|
|
||||||
|
% line numbers for submission
|
||||||
|
\RequirePackage{lineno}
|
||||||
|
\linenumbers
|
||||||
|
|
||||||
|
% fix incompatibilities between lineno and amsmath, if required, by
|
||||||
|
% transparently wrapping linenomath environments around amsmath
|
||||||
|
% environments
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\@ifpackageloaded{amsmath}{%
|
||||||
|
\newcommand*\patchAmsMathEnvironmentForLineno[1]{%
|
||||||
|
\expandafter\let\csname old#1\expandafter\endcsname\csname #1\endcsname
|
||||||
|
\expandafter\let\csname oldend#1\expandafter\endcsname\csname end#1\endcsname
|
||||||
|
\renewenvironment{#1}%
|
||||||
|
{\linenomath\csname old#1\endcsname}%
|
||||||
|
{\csname oldend#1\endcsname\endlinenomath}%
|
||||||
|
}%
|
||||||
|
\newcommand*\patchBothAmsMathEnvironmentsForLineno[1]{%
|
||||||
|
\patchAmsMathEnvironmentForLineno{#1}%
|
||||||
|
\patchAmsMathEnvironmentForLineno{#1*}%
|
||||||
|
}%
|
||||||
|
\patchBothAmsMathEnvironmentsForLineno{equation}%
|
||||||
|
\patchBothAmsMathEnvironmentsForLineno{align}%
|
||||||
|
\patchBothAmsMathEnvironmentsForLineno{flalign}%
|
||||||
|
\patchBothAmsMathEnvironmentsForLineno{alignat}%
|
||||||
|
\patchBothAmsMathEnvironmentsForLineno{gather}%
|
||||||
|
\patchBothAmsMathEnvironmentsForLineno{multline}%
|
||||||
|
}
|
||||||
|
{}
|
||||||
|
}
|
||||||
|
\fi
|
||||||
|
\fi
|
||||||
|
|
||||||
|
|
||||||
|
\endinput
|
||||||
@@ -0,0 +1,187 @@
|
|||||||
|
% This template was tested with Pandoc 3.4 and pandoc-crossref v0.3.18.0. It should be backwards compatible with older version of pandoc..
|
||||||
|
\documentclass{article}
|
||||||
|
|
||||||
|
|
||||||
|
% if you need to pass options to natbib, use, e.g.:
|
||||||
|
% \PassOptionsToPackage{numbers, compress}{natbib}
|
||||||
|
% before loading neurips_2023
|
||||||
|
|
||||||
|
|
||||||
|
% ready for submission
|
||||||
|
\usepackage[final,nonatbib]{neurips}
|
||||||
|
|
||||||
|
|
||||||
|
% to compile a preprint version, e.g., for submission to arXiv, add add the
|
||||||
|
% [preprint] option:
|
||||||
|
% \usepackage[preprint]{neurips_2023}
|
||||||
|
|
||||||
|
|
||||||
|
% to compile a camera-ready version, add the [final] option, e.g.:
|
||||||
|
% \usepackage[final]{neurips_2023}
|
||||||
|
|
||||||
|
|
||||||
|
% to avoid loading the natbib package, add option nonatbib:
|
||||||
|
% \usepackage[nonatbib]{neurips_2023}
|
||||||
|
|
||||||
|
|
||||||
|
\usepackage[utf8]{inputenc} % allow utf-8 input
|
||||||
|
\usepackage[T1]{fontenc} % use 8-bit T1 fonts
|
||||||
|
\usepackage{hyperref} % hyperlinks
|
||||||
|
\usepackage{url} % simple URL typesetting
|
||||||
|
\usepackage{booktabs} % professional-quality tables
|
||||||
|
\usepackage{amsfonts} % blackboard math symbols
|
||||||
|
\usepackage{nicefrac} % compact symbols for 1/2, etc.
|
||||||
|
\usepackage{microtype} % microtypography
|
||||||
|
\usepackage{xcolor} % colors
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\usepackage{longtable} % Add support for Pandoc's longtable if needed
|
||||||
|
\usepackage{array} % For table alignment improvements
|
||||||
|
\usepackage{amsmath}
|
||||||
|
\usepackage{textcomp}
|
||||||
|
\setlength{\LTcapwidth}{\textwidth} % To make captions fit within page width
|
||||||
|
|
||||||
|
\makeatletter
|
||||||
|
\newsavebox\pandoc@box
|
||||||
|
\newcommand*\pandocbounded[1]{% scales image to fit in text height/width
|
||||||
|
\sbox\pandoc@box{#1}%
|
||||||
|
\Gscale@div\@tempa{\textheight}{\dimexpr\ht\pandoc@box+\dp\pandoc@box\relax}%
|
||||||
|
\Gscale@div\@tempb{\linewidth}{\wd\pandoc@box}%
|
||||||
|
\ifdim\@tempb\p@<\@tempa\p@\let\@tempa\@tempb\fi% select the smaller of both
|
||||||
|
\ifdim\@tempa\p@<\p@\scalebox{\@tempa}{\usebox\pandoc@box}%
|
||||||
|
\else\usebox{\pandoc@box}%
|
||||||
|
\fi%
|
||||||
|
}
|
||||||
|
\makeatother
|
||||||
|
\makeatletter
|
||||||
|
\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi}
|
||||||
|
\def\maxheight{\ifdim\Gin@nat@height>\textheight\textheight\else\Gin@nat@height\fi}
|
||||||
|
\makeatother
|
||||||
|
% Scale images if necessary, so that they will not overflow the page
|
||||||
|
% margins by default, and it is still possible to overwrite the defaults
|
||||||
|
% using explicit options in \includegraphics[width, height, ...]{}
|
||||||
|
\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio}
|
||||||
|
% Set default figure placement to htbp
|
||||||
|
\makeatletter
|
||||||
|
\def\fps@figure{htbp}
|
||||||
|
\makeatother
|
||||||
|
|
||||||
|
$if(csl-refs)$
|
||||||
|
% definitions for citeproc citations
|
||||||
|
\NewDocumentCommand\citeproctext{}{}
|
||||||
|
\NewDocumentCommand\citeproc{mm}{%
|
||||||
|
\begingroup\def\citeproctext{#2}\cite{#1}\endgroup}
|
||||||
|
\makeatletter
|
||||||
|
% allow citations to break across lines
|
||||||
|
\let\@cite@ofmt\@firstofone
|
||||||
|
% avoid brackets around text for \cite:
|
||||||
|
\def\@biblabel#1{}
|
||||||
|
\def\@cite#1#2{{#1\if@tempswa , #2\fi}}
|
||||||
|
\makeatother
|
||||||
|
\newlength{\cslhangindent}
|
||||||
|
\setlength{\cslhangindent}{1.5em}
|
||||||
|
\newlength{\csllabelwidth}
|
||||||
|
\setlength{\csllabelwidth}{3em}
|
||||||
|
\newenvironment{CSLReferences}[2] % #1 hanging-indent, #2 entry-spacing
|
||||||
|
{\begin{list}{}{%
|
||||||
|
\setlength{\itemindent}{0pt}
|
||||||
|
\setlength{\leftmargin}{0pt}
|
||||||
|
\setlength{\parsep}{0pt}
|
||||||
|
% turn on hanging indent if param 1 is 1
|
||||||
|
\ifodd #1
|
||||||
|
\setlength{\leftmargin}{\cslhangindent}
|
||||||
|
\setlength{\itemindent}{-1\cslhangindent}
|
||||||
|
\fi
|
||||||
|
% set entry spacing
|
||||||
|
\setlength{\itemsep}{#2\baselineskip}}}
|
||||||
|
{\end{list}}
|
||||||
|
\usepackage{calc}
|
||||||
|
\newcommand{\CSLBlock}[1]{\hfill\break\parbox[t]{\linewidth}{\strut\ignorespaces#1\strut}}
|
||||||
|
\newcommand{\CSLLeftMargin}[1]{\parbox[t]{\csllabelwidth}{\strut#1\strut}}
|
||||||
|
\newcommand{\CSLRightInline}[1]{\parbox[t]{\linewidth - \csllabelwidth}{\strut#1\strut}}
|
||||||
|
\newcommand{\CSLIndent}[1]{\hspace{\cslhangindent}#1}
|
||||||
|
$endif$
|
||||||
|
\providecommand{\tightlist}{%
|
||||||
|
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
|
||||||
|
\title{$title$}
|
||||||
|
|
||||||
|
|
||||||
|
% Iterate through the authors except last to add \And.
|
||||||
|
|
||||||
|
\author{%
|
||||||
|
$for(authors/allbutlast)$
|
||||||
|
$authors.name$\\$authors.affiliation$\\$authors.institution$\\$authors.email$\\$authors.address$ \And
|
||||||
|
$endfor$
|
||||||
|
$for(authors/last)$
|
||||||
|
$authors.name$\\$authors.affiliation$\\$authors.institution$\\$authors.email$\\$authors.address$
|
||||||
|
$endfor$
|
||||||
|
}
|
||||||
|
|
||||||
|
% \author{%
|
||||||
|
% David S.~Hippocampus \\
|
||||||
|
% Department of Computer Science\\
|
||||||
|
% Cranberry-Lemon University\\
|
||||||
|
% Pittsburgh, PA 15213 \\
|
||||||
|
% \texttt{hippo@cs.cranberry-lemon.edu} \\
|
||||||
|
% % examples of more authors
|
||||||
|
% % \And
|
||||||
|
% % Coauthor \\
|
||||||
|
% % Affiliation \\
|
||||||
|
% % Address \\
|
||||||
|
% % \texttt{email} \\
|
||||||
|
% % \AND
|
||||||
|
% % Coauthor \\
|
||||||
|
% % Affiliation \\
|
||||||
|
% % Address \\
|
||||||
|
% % \texttt{email} \\
|
||||||
|
% % \And
|
||||||
|
% % Coauthor \\
|
||||||
|
% % Affiliation \\
|
||||||
|
% % Address \\
|
||||||
|
% % \texttt{email} \\
|
||||||
|
% % \And
|
||||||
|
% % Coauthor \\
|
||||||
|
% % Affiliation \\
|
||||||
|
% % Address \\
|
||||||
|
% % \texttt{email} \\
|
||||||
|
% }
|
||||||
|
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
|
||||||
|
\maketitle
|
||||||
|
|
||||||
|
|
||||||
|
\begin{abstract}
|
||||||
|
$if(abstract)$
|
||||||
|
$abstract$
|
||||||
|
$else$
|
||||||
|
Add your abstract at the beginning of your markdown file like this
|
||||||
|
\begin{verbatim}
|
||||||
|
---
|
||||||
|
title: "Your Title"
|
||||||
|
abstract: "your abstract here"
|
||||||
|
authors:
|
||||||
|
- name: Leonardo V. Castorina
|
||||||
|
affiliation: School of Informatics
|
||||||
|
institution: University of Edinburgh
|
||||||
|
email: justanemail@domain.ext
|
||||||
|
address: Edinburgh
|
||||||
|
- name: Coauthor
|
||||||
|
affiliation: Affiliation
|
||||||
|
institution: Institution
|
||||||
|
email: coauthor@example.com
|
||||||
|
address: Address
|
||||||
|
---
|
||||||
|
\end{verbatim}
|
||||||
|
This is called YAML frontmatter. If you set your abstract correctly you should not see this message.
|
||||||
|
$endif$
|
||||||
|
\end{abstract}
|
||||||
|
|
||||||
|
|
||||||
|
$body$
|
||||||
|
|
||||||
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
|
|
||||||
|
|
||||||
|
\end{document}
|
||||||
+208703
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"obsidian-excalidraw-plugin","name":"Excalidraw","version":"2.18.1","minAppVersion":"1.5.7","description":"An Obsidian plugin to edit and view Excalidraw drawings","author":"Zsolt Viczian","authorUrl":"https://excalidraw-obsidian.online","fundingUrl":"https://ko-fi.com/zsolt","helpUrl":"https://github.com/zsviczian/obsidian-excalidraw-plugin#readme","isDesktopOnly":false}
|
||||||
File diff suppressed because one or more lines are too long
+57
@@ -0,0 +1,57 @@
|
|||||||
|
{
|
||||||
|
"commitMessage": "chore(vault): backup {{date}}",
|
||||||
|
"commitDateFormat": "YYYY-MM-DD HH:mm:ss",
|
||||||
|
"autoSaveInterval": 15,
|
||||||
|
"autoPushInterval": 0,
|
||||||
|
"autoPullInterval": 30,
|
||||||
|
"autoPullOnBoot": true,
|
||||||
|
"disablePush": false,
|
||||||
|
"pullBeforePush": true,
|
||||||
|
"disablePopups": false,
|
||||||
|
"disablePopupsForNoChanges": false,
|
||||||
|
"listChangedFilesInMessageBody": false,
|
||||||
|
"showStatusBar": true,
|
||||||
|
"updateSubmodules": false,
|
||||||
|
"syncMethod": "rebase",
|
||||||
|
"customMessageOnAutoBackup": false,
|
||||||
|
"autoBackupAfterFileChange": true,
|
||||||
|
"treeStructure": false,
|
||||||
|
"refreshSourceControl": true,
|
||||||
|
"differentIntervalCommitAndPush": false,
|
||||||
|
"changedFilesInStatusBar": false,
|
||||||
|
"showedMobileNotice": true,
|
||||||
|
"refreshSourceControlTimer": 7000,
|
||||||
|
"showBranchStatusBar": true,
|
||||||
|
"setLastSaveToLastCommit": true,
|
||||||
|
"submoduleRecurseCheckout": false,
|
||||||
|
"gitDir": "",
|
||||||
|
"showFileMenu": true,
|
||||||
|
"authorInHistoryView": "hide",
|
||||||
|
"dateInHistoryView": false,
|
||||||
|
"lineAuthor": {
|
||||||
|
"show": false,
|
||||||
|
"followMovement": "inactive",
|
||||||
|
"authorDisplay": "initials",
|
||||||
|
"showCommitHash": false,
|
||||||
|
"dateTimeFormatOptions": "date",
|
||||||
|
"dateTimeFormatCustomString": "YYYY-MM-DD HH:mm",
|
||||||
|
"dateTimeTimezone": "viewer-local",
|
||||||
|
"coloringMaxAge": "1y",
|
||||||
|
"colorNew": {
|
||||||
|
"r": 255,
|
||||||
|
"g": 150,
|
||||||
|
"b": 150
|
||||||
|
},
|
||||||
|
"colorOld": {
|
||||||
|
"r": 120,
|
||||||
|
"g": 160,
|
||||||
|
"b": 255
|
||||||
|
},
|
||||||
|
"textColorCss": "var(--text-muted)",
|
||||||
|
"ignoreWhitespace": false,
|
||||||
|
"gutterSpacingFallbackLength": 5,
|
||||||
|
"lastShownAuthorDisplay": "initials",
|
||||||
|
"lastShownDateTimeFormatOptions": "date"
|
||||||
|
},
|
||||||
|
"autoCommitMessage": "chore(vault): backup {{date}}"
|
||||||
|
}
|
||||||
+424
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"author":"Vinzent","authorUrl":"https://github.com/Vinzent03","id":"obsidian-git","name":"Git","description":"Integrate Git version control with automatic backup and other advanced features.","isDesktopOnly":false,"fundingUrl":"https://ko-fi.com/vinzent","version":"2.35.2"}
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
PROMPT="$1"
|
||||||
|
TEMP_FILE="$OBSIDIAN_GIT_CREDENTIALS_INPUT"
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
rm -f "$TEMP_FILE" "$TEMP_FILE.response"
|
||||||
|
}
|
||||||
|
trap cleanup EXIT
|
||||||
|
|
||||||
|
echo "$PROMPT" > "$TEMP_FILE"
|
||||||
|
|
||||||
|
while [ ! -e "$TEMP_FILE.response" ]; do
|
||||||
|
if [ ! -e "$TEMP_FILE" ]; then
|
||||||
|
echo "Trigger file got removed: Abort" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
sleep 0.1
|
||||||
|
done
|
||||||
|
|
||||||
|
RESPONSE=$(cat "$TEMP_FILE.response")
|
||||||
|
|
||||||
|
echo "$RESPONSE"
|
||||||
+629
@@ -0,0 +1,629 @@
|
|||||||
|
@keyframes loading {
|
||||||
|
0% {
|
||||||
|
transform: rotate(0deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
100% {
|
||||||
|
transform: rotate(360deg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="git-view"] .button-border {
|
||||||
|
border: 2px solid var(--interactive-accent);
|
||||||
|
border-radius: var(--radius-s);
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="git-view"] .view-content {
|
||||||
|
padding-left: 0;
|
||||||
|
padding-top: 0;
|
||||||
|
padding-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="git-history-view"] .view-content {
|
||||||
|
padding-left: 0;
|
||||||
|
padding-top: 0;
|
||||||
|
padding-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.loading {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.loading > svg {
|
||||||
|
animation: 2s linear infinite loading;
|
||||||
|
transform-origin: 50% 50%;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.obsidian-git-center {
|
||||||
|
margin: auto;
|
||||||
|
text-align: center;
|
||||||
|
width: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.obsidian-git-textarea {
|
||||||
|
display: block;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.obsidian-git-disabled {
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
.obsidian-git-center-button {
|
||||||
|
display: block;
|
||||||
|
margin: 20px auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tooltip.mod-left {
|
||||||
|
overflow-wrap: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tooltip.mod-right {
|
||||||
|
overflow-wrap: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Limits the scrollbar to the view body */
|
||||||
|
.git-view {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.git-tools {
|
||||||
|
display: flex;
|
||||||
|
margin-left: auto;
|
||||||
|
}
|
||||||
|
.git-tools .type {
|
||||||
|
padding-left: var(--size-2-1);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
width: 11px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.git-tools .type[data-type="M"] {
|
||||||
|
color: orange;
|
||||||
|
}
|
||||||
|
.git-tools .type[data-type="D"] {
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
.git-tools .buttons {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
.git-tools .buttons > * {
|
||||||
|
padding: 0 0;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="git-view"] .tree-item-self,
|
||||||
|
.workspace-leaf-content[data-type="git-history-view"] .tree-item-self {
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="git-view"]
|
||||||
|
.tree-item-self:hover
|
||||||
|
.clickable-icon,
|
||||||
|
.workspace-leaf-content[data-type="git-history-view"]
|
||||||
|
.tree-item-self:hover
|
||||||
|
.clickable-icon {
|
||||||
|
color: var(--icon-color-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Highlight an item as active if it's diff is currently opened */
|
||||||
|
.is-active .git-tools .buttons > * {
|
||||||
|
color: var(--nav-item-color-active);
|
||||||
|
}
|
||||||
|
|
||||||
|
.git-author {
|
||||||
|
color: var(--text-accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
.git-date {
|
||||||
|
color: var(--text-accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
.git-ref {
|
||||||
|
color: var(--text-accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-d-none {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-wrapper {
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-header {
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
border-bottom: 1px solid var(--interactive-accent);
|
||||||
|
font-family: var(--font-monospace);
|
||||||
|
height: 35px;
|
||||||
|
padding: 5px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-header,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-stats {
|
||||||
|
display: -webkit-box;
|
||||||
|
display: -ms-flexbox;
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-stats {
|
||||||
|
font-size: 14px;
|
||||||
|
margin-left: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-lines-added {
|
||||||
|
border: 1px solid #b4e2b4;
|
||||||
|
border-radius: 5px 0 0 5px;
|
||||||
|
color: #399839;
|
||||||
|
padding: 2px;
|
||||||
|
text-align: right;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-lines-deleted {
|
||||||
|
border: 1px solid #e9aeae;
|
||||||
|
border-radius: 0 5px 5px 0;
|
||||||
|
color: #c33;
|
||||||
|
margin-left: 1px;
|
||||||
|
padding: 2px;
|
||||||
|
text-align: left;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-name-wrapper {
|
||||||
|
-webkit-box-align: center;
|
||||||
|
-ms-flex-align: center;
|
||||||
|
align-items: center;
|
||||||
|
display: -webkit-box;
|
||||||
|
display: -ms-flexbox;
|
||||||
|
display: flex;
|
||||||
|
font-size: 15px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-name {
|
||||||
|
overflow-x: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-wrapper {
|
||||||
|
border: 1px solid var(--background-modifier-border);
|
||||||
|
border-radius: 3px;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-collapse {
|
||||||
|
-webkit-box-pack: end;
|
||||||
|
-ms-flex-pack: end;
|
||||||
|
-webkit-box-align: center;
|
||||||
|
-ms-flex-align: center;
|
||||||
|
align-items: center;
|
||||||
|
border: 1px solid var(--background-modifier-border);
|
||||||
|
border-radius: 3px;
|
||||||
|
cursor: pointer;
|
||||||
|
display: none;
|
||||||
|
font-size: 12px;
|
||||||
|
justify-content: flex-end;
|
||||||
|
padding: 4px 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-collapse.d2h-selected {
|
||||||
|
background-color: #c8e1ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-collapse-input {
|
||||||
|
margin: 0 4px 0 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-diff-table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
font-family: Menlo, Consolas, monospace;
|
||||||
|
font-size: 13px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-files-diff {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-diff {
|
||||||
|
overflow-y: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-side-diff {
|
||||||
|
display: inline-block;
|
||||||
|
margin-bottom: -8px;
|
||||||
|
margin-right: -4px;
|
||||||
|
overflow-x: scroll;
|
||||||
|
overflow-y: hidden;
|
||||||
|
width: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line {
|
||||||
|
padding: 0 8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line {
|
||||||
|
display: inline-block;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
white-space: nowrap;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line {
|
||||||
|
padding: 0 4.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line-ctn {
|
||||||
|
word-wrap: normal;
|
||||||
|
background: none;
|
||||||
|
display: inline-block;
|
||||||
|
padding: 0;
|
||||||
|
-webkit-user-select: text;
|
||||||
|
-moz-user-select: text;
|
||||||
|
-ms-user-select: text;
|
||||||
|
user-select: text;
|
||||||
|
vertical-align: middle;
|
||||||
|
white-space: pre;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-code-line del,
|
||||||
|
.theme-light
|
||||||
|
.workspace-leaf-content[data-type="diff-view"]
|
||||||
|
.d2h-code-side-line
|
||||||
|
del {
|
||||||
|
background-color: #ffb6ba;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-code-line del,
|
||||||
|
.theme-dark
|
||||||
|
.workspace-leaf-content[data-type="diff-view"]
|
||||||
|
.d2h-code-side-line
|
||||||
|
del {
|
||||||
|
background-color: #8d232881;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line del,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line ins,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line del,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-line ins {
|
||||||
|
border-radius: 0.2em;
|
||||||
|
display: inline-block;
|
||||||
|
margin-top: -1px;
|
||||||
|
text-decoration: none;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-code-line ins,
|
||||||
|
.theme-light
|
||||||
|
.workspace-leaf-content[data-type="diff-view"]
|
||||||
|
.d2h-code-side-line
|
||||||
|
ins {
|
||||||
|
background-color: #97f295;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-code-line ins,
|
||||||
|
.theme-dark
|
||||||
|
.workspace-leaf-content[data-type="diff-view"]
|
||||||
|
.d2h-code-side-line
|
||||||
|
ins {
|
||||||
|
background-color: #1d921996;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line-prefix {
|
||||||
|
word-wrap: normal;
|
||||||
|
background: none;
|
||||||
|
display: inline;
|
||||||
|
padding: 0;
|
||||||
|
white-space: pre;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .line-num1 {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .line-num1,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .line-num2 {
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
overflow: hidden;
|
||||||
|
padding: 0 0.5em;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
width: 3.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .line-num2 {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-linenumber {
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
border: solid var(--background-modifier-border);
|
||||||
|
border-width: 0 1px;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
color: var(--text-muted);
|
||||||
|
cursor: pointer;
|
||||||
|
display: inline-block;
|
||||||
|
position: absolute;
|
||||||
|
text-align: right;
|
||||||
|
width: 7.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-linenumber:after {
|
||||||
|
content: "\200b";
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-linenumber {
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
border: solid var(--background-modifier-border);
|
||||||
|
border-width: 0 1px;
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
color: var(--text-muted);
|
||||||
|
cursor: pointer;
|
||||||
|
display: inline-block;
|
||||||
|
overflow: hidden;
|
||||||
|
padding: 0 0.5em;
|
||||||
|
position: absolute;
|
||||||
|
text-align: right;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
width: 4em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-diff-tbody tr {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-linenumber:after {
|
||||||
|
content: "\200b";
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-emptyplaceholder,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-emptyplaceholder {
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
border-color: var(--background-modifier-border);
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-line-prefix,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-linenumber,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-linenumber,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-emptyplaceholder {
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-linenumber,
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-code-side-linenumber {
|
||||||
|
direction: rtl;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-del {
|
||||||
|
background-color: #fee8e9;
|
||||||
|
border-color: #e9aeae;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-light .workspace-leaf-content[data-type="diff-view"] .d2h-ins {
|
||||||
|
background-color: #dfd;
|
||||||
|
border-color: #b4e2b4;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-del {
|
||||||
|
background-color: #521b1d83;
|
||||||
|
border-color: #691d1d73;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .workspace-leaf-content[data-type="diff-view"] .d2h-ins {
|
||||||
|
background-color: rgba(30, 71, 30, 0.5);
|
||||||
|
border-color: #13501381;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-info {
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
border-color: var(--background-modifier-border);
|
||||||
|
color: var(--text-normal);
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-light
|
||||||
|
.workspace-leaf-content[data-type="diff-view"]
|
||||||
|
.d2h-file-diff
|
||||||
|
.d2h-del.d2h-change {
|
||||||
|
background-color: #fdf2d0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark
|
||||||
|
.workspace-leaf-content[data-type="diff-view"]
|
||||||
|
.d2h-file-diff
|
||||||
|
.d2h-del.d2h-change {
|
||||||
|
background-color: #55492480;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-light
|
||||||
|
.workspace-leaf-content[data-type="diff-view"]
|
||||||
|
.d2h-file-diff
|
||||||
|
.d2h-ins.d2h-change {
|
||||||
|
background-color: #ded;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark
|
||||||
|
.workspace-leaf-content[data-type="diff-view"]
|
||||||
|
.d2h-file-diff
|
||||||
|
.d2h-ins.d2h-change {
|
||||||
|
background-color: rgba(37, 78, 37, 0.418);
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-wrapper {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-wrapper a {
|
||||||
|
color: #3572b0;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"]
|
||||||
|
.d2h-file-list-wrapper
|
||||||
|
a:visited {
|
||||||
|
color: #3572b0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-header {
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-title {
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list-line {
|
||||||
|
display: -webkit-box;
|
||||||
|
display: -ms-flexbox;
|
||||||
|
display: flex;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list {
|
||||||
|
display: block;
|
||||||
|
list-style: none;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list > li {
|
||||||
|
border-bottom: 1px solid var(--background-modifier-border);
|
||||||
|
margin: 0;
|
||||||
|
padding: 5px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-list > li:last-child {
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-file-switch {
|
||||||
|
cursor: pointer;
|
||||||
|
display: none;
|
||||||
|
font-size: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-icon {
|
||||||
|
fill: currentColor;
|
||||||
|
margin-right: 10px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-deleted {
|
||||||
|
color: #c33;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-added {
|
||||||
|
color: #399839;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-changed {
|
||||||
|
color: #d0b44c;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-moved {
|
||||||
|
color: #3572b0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-tag {
|
||||||
|
background-color: var(--background-primary);
|
||||||
|
display: -webkit-box;
|
||||||
|
display: -ms-flexbox;
|
||||||
|
display: flex;
|
||||||
|
font-size: 10px;
|
||||||
|
margin-left: 5px;
|
||||||
|
padding: 0 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-deleted-tag {
|
||||||
|
border: 2px solid #c33;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-added-tag {
|
||||||
|
border: 1px solid #399839;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-changed-tag {
|
||||||
|
border: 1px solid #d0b44c;
|
||||||
|
}
|
||||||
|
|
||||||
|
.workspace-leaf-content[data-type="diff-view"] .d2h-moved-tag {
|
||||||
|
border: 1px solid #3572b0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ====================== Line Authoring Information ====================== */
|
||||||
|
|
||||||
|
.cm-gutterElement.obs-git-blame-gutter {
|
||||||
|
/* Add background color to spacing inbetween and around the gutter for better aesthetics */
|
||||||
|
border-width: 0px 2px 0.2px 2px;
|
||||||
|
border-style: solid;
|
||||||
|
border-color: var(--background-secondary);
|
||||||
|
background-color: var(--background-secondary);
|
||||||
|
}
|
||||||
|
|
||||||
|
.cm-gutterElement.obs-git-blame-gutter > div,
|
||||||
|
.line-author-settings-preview {
|
||||||
|
/* delegate text color to settings */
|
||||||
|
color: var(--obs-git-gutter-text);
|
||||||
|
font-family: monospace;
|
||||||
|
height: 100%; /* ensure, that age-based background color occupies entire parent */
|
||||||
|
text-align: right;
|
||||||
|
padding: 0px 6px 0px 6px;
|
||||||
|
white-space: pre; /* Keep spaces and do not collapse them. */
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 800px) {
|
||||||
|
/* hide git blame gutter not to superpose text */
|
||||||
|
.cm-gutterElement.obs-git-blame-gutter {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.git-unified-diff-view,
|
||||||
|
.git-split-diff-view .cm-deletedLine .cm-changedText {
|
||||||
|
background-color: #ee443330;
|
||||||
|
}
|
||||||
|
|
||||||
|
.git-unified-diff-view,
|
||||||
|
.git-split-diff-view .cm-insertedLine .cm-changedText {
|
||||||
|
background-color: #22bb2230;
|
||||||
|
}
|
||||||
|
|
||||||
|
.git-obscure-prompt[git-is-obscured="true"] #git-show-password:after {
|
||||||
|
-webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svg-icon lucide-eye"><path d="M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"></path><circle cx="12" cy="12" r="3"></circle></svg>');
|
||||||
|
}
|
||||||
|
|
||||||
|
.git-obscure-prompt[git-is-obscured="false"] #git-show-password:after {
|
||||||
|
-webkit-mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="svg-icon lucide-eye-off"><path d="M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49"></path><path d="M14.084 14.158a3 3 0 0 1-4.242-4.242"></path><path d="M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143"></path><path d="m2 2 20 20"></path></svg>');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Override styling of Codemirror merge view "collapsed lines" indicator */
|
||||||
|
.git-split-diff-view .ͼ2 .cm-collapsedLines {
|
||||||
|
background: var(--interactive-normal);
|
||||||
|
border-radius: var(--radius-m);
|
||||||
|
color: var(--text-accent);
|
||||||
|
font-size: var(--font-small);
|
||||||
|
padding: var(--size-4-1) var(--size-4-1);
|
||||||
|
}
|
||||||
|
.git-split-diff-view .ͼ2 .cm-collapsedLines:hover {
|
||||||
|
background: var(--interactive-hover);
|
||||||
|
color: var(--text-accent-hover);
|
||||||
|
}
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
"viewMode": "Pin",
|
||||||
|
"viewImageInEditor": true,
|
||||||
|
"viewImageInCPB": true,
|
||||||
|
"viewImageWithLink": true,
|
||||||
|
"viewImageOther": true,
|
||||||
|
"pinMaximum": 3,
|
||||||
|
"pinCoverMode": true,
|
||||||
|
"imageMoveSpeed": 10,
|
||||||
|
"imgTipToggle": true,
|
||||||
|
"imgFullScreenMode": "FIT",
|
||||||
|
"imgViewBackgroundColor": "#00000000",
|
||||||
|
"imageBorderToggle": false,
|
||||||
|
"imageBorderWidth": "medium",
|
||||||
|
"imageBorderStyle": "solid",
|
||||||
|
"imageBorderColor": "red",
|
||||||
|
"galleryNavbarToggle": true,
|
||||||
|
"galleryNavbarDefaultColor": "#0000001A",
|
||||||
|
"galleryNavbarHoverColor": "#0000004D",
|
||||||
|
"galleryImgBorderActive": true,
|
||||||
|
"galleryImgBorderActiveColor": "#FF0000",
|
||||||
|
"moveTheImageHotkey": "NONE",
|
||||||
|
"switchTheImageHotkey": "CTRL",
|
||||||
|
"doubleClickToolbar": "toolbar_full_screen",
|
||||||
|
"viewTriggerHotkey": "NONE"
|
||||||
|
}
|
||||||
+3292
File diff suppressed because one or more lines are too long
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"id": "obsidian-image-toolkit",
|
||||||
|
"name": "Image Toolkit",
|
||||||
|
"version": "1.4.3",
|
||||||
|
"minAppVersion": "1.8.7",
|
||||||
|
"description": "Click images to preview with zoom, move, rotate, flip, invert, and copy.",
|
||||||
|
"author": "Xiangru",
|
||||||
|
"authorUrl": "https://github.com/sissilab",
|
||||||
|
"isDesktopOnly": true
|
||||||
|
}
|
||||||
+747
@@ -0,0 +1,747 @@
|
|||||||
|
body {
|
||||||
|
--layer-image-toolkit-popup: 1024;
|
||||||
|
--layer-image-toolkit-player: 1025;
|
||||||
|
--layer-image-toolkit-notice: 1026;
|
||||||
|
--layer-menu: 1027;
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu {
|
||||||
|
z-index: var(--layer-menu);
|
||||||
|
}
|
||||||
|
|
||||||
|
.notice-container {
|
||||||
|
z-index: var(--layer-image-toolkit-notice);
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit li::before {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.image-toolkit-img-invert {
|
||||||
|
filter: invert(1) hue-rotate(180deg);
|
||||||
|
mix-blend-mode: screen;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal {
|
||||||
|
position: fixed;
|
||||||
|
font-size: 0;
|
||||||
|
line-height: 0;
|
||||||
|
top: 0;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
background: rgba(0, 0, 0, .6);
|
||||||
|
z-index: var(--layer-image-toolkit-popup);
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-pin {
|
||||||
|
position: fixed;
|
||||||
|
font-size: 0;
|
||||||
|
line-height: 0;
|
||||||
|
z-index: var(--layer-image-toolkit-popup);
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit .oit-img-container {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit .oit-img-container .oit-img-view {
|
||||||
|
max-height: none;
|
||||||
|
pointer-events: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-pin .oit-img-container .oit-img-view {
|
||||||
|
position: fixed;
|
||||||
|
pointer-events: auto;
|
||||||
|
box-shadow: 0 0 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-pin .oit-img-container .oit-img-view:hover {
|
||||||
|
box-shadow: 0 0 6px #55acc6;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit .img-default-background {
|
||||||
|
background-position: 0 0, 5px 5px !important;
|
||||||
|
background-size: 10px 10px !important;
|
||||||
|
background-image: linear-gradient(45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%, #eee 100%), linear-gradient(45deg, #eee 25%, #fff 25%, #fff 75%, #eee 75%, #eee 100%) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit .oit-img-container .oit-img-view:hover {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .img-close {
|
||||||
|
position: absolute;
|
||||||
|
width: 32px;
|
||||||
|
height: 32px;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit .oit-img-tip {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
font-size: 12px;
|
||||||
|
line-height: 20px;
|
||||||
|
height: 20px;
|
||||||
|
width: 50px;
|
||||||
|
text-align: center;
|
||||||
|
color: #fff;
|
||||||
|
border-radius: 10px;
|
||||||
|
background-color: rgba(0, 0, 0, .4);
|
||||||
|
pointer-events: none;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*region img-player*/
|
||||||
|
.oit .img-player {
|
||||||
|
display: none;
|
||||||
|
position: fixed;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
cursor: none;
|
||||||
|
background-color: #000;
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit .img-player > img {
|
||||||
|
display: inline;
|
||||||
|
float: none;
|
||||||
|
padding: 0;
|
||||||
|
max-height: none;
|
||||||
|
transform: none;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
/*endregion*/
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer {
|
||||||
|
position: absolute;
|
||||||
|
text-align: center;
|
||||||
|
bottom: 5px;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*region oit-img-title*/
|
||||||
|
.oit-normal .oit-img-footer .oit-img-title {
|
||||||
|
font-size: 12px;
|
||||||
|
line-height: 1;
|
||||||
|
display: inline-block;
|
||||||
|
max-width: 90%;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
margin: 5px;
|
||||||
|
opacity: .8;
|
||||||
|
color: #fff;
|
||||||
|
/* filter: alpha(opacity=80) */
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-title:hover {
|
||||||
|
/* opacity: 1; */
|
||||||
|
color: #fff;
|
||||||
|
font-size: 15px;
|
||||||
|
background-color: rgba(0, 0, 0, .3);
|
||||||
|
border-radius: 8px;
|
||||||
|
line-height: 1.5;
|
||||||
|
/* filter: alpha(opacity=100) */
|
||||||
|
}
|
||||||
|
/*endregion*/
|
||||||
|
|
||||||
|
/*region toolbar*/
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar {
|
||||||
|
width: 385px;
|
||||||
|
height: 30px;
|
||||||
|
margin: 0 auto 5px;
|
||||||
|
padding: 3px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar:hover {
|
||||||
|
background-color: rgba(0, 0, 0, .3);
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar > li {
|
||||||
|
float: left;
|
||||||
|
width: 25px;
|
||||||
|
height: 25px;
|
||||||
|
margin: 0 5px;
|
||||||
|
padding: 0;
|
||||||
|
line-height: 0;
|
||||||
|
border: none;
|
||||||
|
cursor: pointer;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar > li:hover {
|
||||||
|
animation: bounce .5s cubic-bezier(0.51, 0.23, 0.02, 0.96)
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes bounce {
|
||||||
|
0% {
|
||||||
|
transform: scale(1, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
50% {
|
||||||
|
transform: scale(0.85, 1.1) translateY(-5px);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_zoom_to_100::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_zoom_in::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_zoom_out::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_full_screen::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_refresh::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_rotate_left::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_rotate_right::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_scale_x::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_scale_y::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_invert_color::before,
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_copy::before {
|
||||||
|
font-size: 0;
|
||||||
|
line-height: 0;
|
||||||
|
display: block;
|
||||||
|
width: 25px;
|
||||||
|
height: 25px;
|
||||||
|
color: transparent;
|
||||||
|
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARMAAAAZCAYAAAASRcpqAAAAAXNSR0IArs4c6QAADgJJREFUeF7tXHnQftUc/3z+YJC9KVuWsZOlIiopTYakZZpIJSUiS6JkLKGFYkJJRJsKpUVEhYpItiZFUtknJGQXmRHzMZ/H97xz3vuce++5z3ufX696z8wz77zPc+75nnPu93zO57ucQ6yUlRlYmYGVGRhhBjhCG7e7JiQd2Bw0yanv2iZmqc/f7iZ8ZcBznwFJDwPwopKgWt3uBBNJ6wJYH8DjADwFwFMBfAPAtwB8H8B5JP+01JFKenkM5EEA/HH73wXwVZJnLrV9Pz+WjACCAwp9WpvkNX19lfR8AGcU6h1U89IkPQHAzgAeCuCxANYGcHl8rgZwLckL+/rR97uk7QA8EYDl+bO63weAryd5JG/qa6f0u6S7A9gwPhvE399Gu1cBuIbkZ2dp+9Z8RtKTALwXwNFj6W3L/J1BcoexxirpwwBe0dHegSQP6pPXCiaS3gng9QDuFI3cEkDyNAB3iO9+AsCL4JQ+QS2T4oX1RgB+CW3FC+RTNQttVchogImB7mjLJemFVlUkPSMqvgqA58ClE0wkPQDA3gBeA+DOPYLeRtLvb6EEmB4DYE+Sx0o6DID7sQvJH6eKku4N4H0AXtwj45cA3k3SilhdJG0D4HAA3gm7yknWv3yzkvQQAF+JTWb3aqGroGK8048BeGCI22EegCLJG5F15swxACVrz93erKnHkhTzvVnfNBbBRJJ32MckJQfwNQCXkLxFkoHk6fFJ1P4Ukrv0CWso90cBJIXwznqld6TYnbzjPh7ARrEr+tFjSe55a8vIwMRAMvNLzZUi2mkFE0meDyuRWYjLFwGcDMC7uYt3ei+0TQBsH999Mhbjb/x/1u+JHElelAaTBQWStHEsdLNRl8sCLK+L/+8K4MkAzCaeHd+ZnW5V814kHQrgzVH3gmC3Zrp/ie/uB8AsNYGt5e9L0mzIY/D3CUx6lbumT2PUkeTxfwLAPRrtjQoojYVvUUsClKw9sw6z7XHBRNKXAGwO4DsAduui7vFyzUruD2Avkh+qeTmNSZnslKXnJHkHPhHAC+L3k0hW7UjzkpEtSitzYhaDXmoDSMxsvECKYNIAEpt/R3TteJK82K0cW8Zi3Z3kFX1gImnXAI7VAFwK4F1dpoYkA/tbwiw1M+szmb3DubjtI0ka7IpF0rYBOjar/2GAIXnqMgaTNLap8fTNS816CSBNjMT/psU/M6A0gMSs2jo4HphIsgPGVO0sks8bMNBfAVjLNjZJ+1JaS24m1E60JO+C3o1dvDhMgW8VGTmYmBIOpZ3N+tkCmQKTYIHfBrDe0F0o6+cvALwMgM1T7z5TzASAfWM2PZKiHkryX33vvwF0Bh+Dy1SRdC6A5wL4Msln9rUbi+eOAVbJP2Wb/kfLlJkkJuW/kzkO/9Ig87dtXhobo30lZqi5327WzSzpQmJ8rWAC4PyMjeZdvS5t8Au7STj2TCfvZqZBckKPa0o4aq8AcAHJRH9LSmUaa8ZjJvMRkq/MK0nybvqGMGkW7VySPHk2q0y51yP55xbF7ZTRA0K1MjYleXFqqxZQ2upJWofk95p9k7Rv+C+qTYnGfL4HwH4A/gjggy1g8nYABycgGeqbagDKtiQ/1+iD37HZ1w8AbE0ymUw1qpWbZ67/VgD2Bdkxv2zMnEwPrJ8LgF01wJ5KTSAxK20JAlQBiqTjAbw01tKCDvcwk9TLkl/QQDQBpRxMXh0KVxVVKCh+msh1SwsjdpvEfK4kuU5HG6Vd+i4RSfAuuiPJ01vApFNGD5hUyWiR2+kYqwWcTDHvA8CsxL6Q7Ul+ehblzDz1Zhre7ZvMJDU703uP92rH8JEAfhbs1KaJgcDzeW2YQq8l+YEZx5BAfkGpbw9gIin3Ky74XzoiiieSfEnbHAfwO6DRVhZFJLPIo58xG2pjLlNgkhBrK5LnhTKYJWzZfHGS7LE2Xd01/SbpheGEajVDJB0B4HUlVhLyOpFd0gkAPFknkNyjZVF3yuhT5hoZHS/LgLIWSTuOFxVJZmQ/r/XAz+ofCEXbtNDHRMVLYFLacezwbvVr5O1Lulc40K0XG5I0CBpM7L+xE9VmsE3gIpsszFViqM2f0hiKzCQcoeeUlL5nE0k0f0H3+/SkRfdGYyaSdgSQ5n+RI7cDTNytnUie1tO/Equ7iaQDIZPSAJK9epjLFJjYTHEEZbVkL0tyRMcx/wmDsYCgWemlHpCBiXMRHJF5P8l9WgaTIgivJjkJqUraCcCjsvrJ5kxfnZpCl5IcqnYcv5XmZlGKLhnN7g2SMYuizfJMAMqNNfkrmRLYCW7HcFvZg+QJkuzY7gr/7kfSIeKqIsmOeOe/2Fl6XLzbxBKrHefxnPvl/rWVs0k6D2ahxFydHRGVqR20axAZcP8VwDYkHb0cXJpO7sENxAMRnrcJ4vyuKV9UD5jYnLQZPpX/lZ7r81U2gMQ+mjWHgkkxnuw4cwYm3nltm9luc77APjlr6YtJt4QjE8C0zf0CcNTs1qtCxqxKsiqek2SfUQ7Oi8TmeQRZvkupa5eRnJgrNUXSm6z4AI4iabPHG4WB3xvAIBNHkv12rblHhVwI1/1MluPRm2BVGFNyaDp/ZjtHwGrG3QC0UZhJxkqcuLkJyb+3yGnrYpGd1IBJE0i8kWXrrtrMsfPVWa5mJk5Qm5QcTBoDcj6Dw8ETypTZY87+s/9lqlSyhhVmMlSLl0H9EtCXgH0eXc3kjNX8TA7eEZlJAqXjSDrvZlHpYSau25ZmMGm3jZlIWgOA/SM3OlG0IbYrD2XKzEme/81JXhTK4QQ1JxctQqT4zenVtqXckEOkKU28dReSZPprX8dUJCcAqdZnsj9JJ0CVAKtTRp+2ZT6TVhl9bSz19x7GcDXJ3y9VxtjPZyZoiZksmJxjyw29aTIT61Ep78Xsuy0fZjkxEyfA2QdZnLcKMCkmkfYxE0lmlmaYpWJ/inFg0RGKsEamwCTZt5M8/FDo3SIU63j5AnWMMK29uxPPcNRPQODwn/MKSgs91XEuygYk/5lX6kJ2SfcMu81RoPVJ2qE5WEaXMtfKmMeCSG1KsoPaTuS2cg5Jm5hVJRjjml3p/n7XQ44DtMx7co6XfCbFzaNqAFGpr4+3MZ9JyssprqUKMCmmElSAycTl0OdTaaxZA/QUmPhMhr3wj5jBG24q5nMfl5O0B79Ywp5PeSank7THeqFIemS0Yyehw4z5b0lZO1P3+2T0gEmVjI7x2ae0RilsKembAK7vi+Y0FKUUZbl4SC5In6kxBjWPELDNZIftS9Ec2/4bk7x5CIBkAFvli7itRHMkHRIJe53mSsdcOulw/+bvqwxMLDgL795A0gfLqkpQHdfduS+c2FgsW5B0Zl1naTzTezp3VcgovKhR8kyyvqe8kJNJ9h26awPvFPL078V5k/QcAJ8H4IXuBe+FP6hkfe7KM5kpjyUSIg1UzllxmsIXBnVuFVYeA5hjHaZo1vkkt2gDhY6hFdMzVimYxECSvXZ9hMlalStzuvnRaqeVJOexOJfAxebTYaVdK1jGqdnBr3/7FDPJ//TpyDxlNDNWaxPSOjJgFzJqc4WMU8LO4Wh1anfNgyQf47dJdBpJh+DbQCe98856pYcbi70rA3YmsJLkXAsz2MGHSft0ZOzfRwQTH5+wlWCf5dTx/x4zx8ETuxCmolHZc10n3Jdu5uQTKyllw6bF7qsGrvK5m0i7dz6KzaHktHLnvAueS3LrmpckKTl8Xd2A5U/z1LBPsTrW7pKy8P4A4OEknRPQWeYhY95ncxpg4oQvH/F3MtignT0DrptJ+vBea5HkA3WTRDNnQZP0NQe9JTYTn5N6cCkfIjWQnc1xKr0THS/pbfx/TNmmc4pmeIH4kOCyK5nDfLSzOZKc4+PjFC6rN65iSGZfaS4OJ+lwfLFIcgjd/se2Mi6YWEqAhhf8szoEG0Rsn10oyZmHPopdvbtFwpoH3nWfiamzj60bTNIx/J+Go+jXfZo1towcTOZxari5u8VC96lqJwXaHHFor+h8jvfmqJqTBn35kMtGJH3auLM0Lm3y5Uq+E6V18UryQVCnezsnZMip4b85i5nkWR0K7ysQ0n0rrjbqUf6+uRj6e2bmTz06xJnZfFiSr5jwsQoX3zszuTeog5n8juR9h/Y/1U/+tSF9LkZzOl6soyf++NYt//VCNlP5YeFQV6Kkx5P0SdWqEhf3uG2fPJ4oZ9zV4Vj3RSkNu3GozDTOPhqfJO0tY8nIXuRc7jMpUeUw97xTJVPFC9EOXe/0KdPRZ3h8gMtszsXAY0f2kAObzVvgDCYe50KadYCaI3/J0V59CLFxn4kzNb04EiNyn31vi/uQMqyXPZDE4vaJaI9l9PtMJPk0d8oo9+bptefs2OZtf76aIjGZ3vVQqjB3MBnaqyyXZGbHYZfMBqBMpVUP7W/LpOaXES2S0dgVRr9pLWMIU7uxJJ+afUfPGG8A4FybQ/Lkw9p5CSZkM8d5Dl1l3jeteXE6Z2VZmjbNiZHki6k+nu53GZNNSbIT1qe7E9vMxZt1HkwyXdFR+6qn6i07MAmkth3tHBXfVZkuNpp5kIUX58Xu8JlPH1df5DykAwFaUzI6KKZtzfxId1Fcx8nNKp+IJJud6V7WdEerTUD7m/w5ZggbaZuTiPLYSe7U/EcHY5znHbBmWO6/d15HMZZt1KZjzuw4NYOcyx2wcWbH/i1/DLKXjnEHcxqPpOSIH7JUXHdvkkfN7XZ6Sb4iwMlSy+7eiaEzVQCzldvplzqJK88vyxmIzXJI35yRPbn0fW5gMqQ3K3VXZmBlBv7/Z+C/kQ6WkguncSQAAAAASUVORK5CYII=);
|
||||||
|
background-repeat: no-repeat
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_zoom_to_100::before {
|
||||||
|
content: 'Zoom to Actual Size';
|
||||||
|
background-position: 0 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_zoom_in::before {
|
||||||
|
content: 'Zoom In';
|
||||||
|
background-position: -25px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_zoom_out::before {
|
||||||
|
content: 'Zoom Out';
|
||||||
|
background-position: -50px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_full_screen::before {
|
||||||
|
content: 'Full Screen';
|
||||||
|
background-position: -75px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_refresh::before {
|
||||||
|
content: 'Refresh';
|
||||||
|
background-position: -100px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_rotate_left::before {
|
||||||
|
content: 'Rotate Left';
|
||||||
|
background-position: -125px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_rotate_right::before {
|
||||||
|
content: 'Rotate Right';
|
||||||
|
background-position: -150px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_scale_x::before {
|
||||||
|
content: 'Scale x';
|
||||||
|
background-position: -175px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_scale_y::before {
|
||||||
|
content: 'Scale y';
|
||||||
|
background-position: -200px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_invert_color::before {
|
||||||
|
content: 'Invert color';
|
||||||
|
background-position: -225px 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .oit-img-toolbar .toolbar_copy::before {
|
||||||
|
content: 'Copy';
|
||||||
|
background-position: -250px 0
|
||||||
|
}
|
||||||
|
/*endregion*/
|
||||||
|
|
||||||
|
/*region gallery-navbar*/
|
||||||
|
.oit-normal .oit-img-footer .gallery-navbar {
|
||||||
|
position: relative;
|
||||||
|
flex: 0 0 auto;
|
||||||
|
overflow: hidden;
|
||||||
|
max-width: 100%;
|
||||||
|
max-height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
height: 60px;
|
||||||
|
margin-top: 20px;
|
||||||
|
background-color: rgba(0, 0, 0, .1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .gallery-navbar:hover {
|
||||||
|
background-color: rgba(0, 0, 0, .8);
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .gallery-navbar .gallery-list {
|
||||||
|
display: flex;
|
||||||
|
transform: translateX(0px);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .gallery-navbar .gallery-list .gallery-active {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .gallery-navbar .gallery-list .img-border-active {
|
||||||
|
margin-top: 1px;
|
||||||
|
border-width: 1px;
|
||||||
|
border-style: solid;
|
||||||
|
border-color: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .gallery-navbar .gallery-list > li {
|
||||||
|
width: 48px;
|
||||||
|
height: 58px;
|
||||||
|
opacity: .3;
|
||||||
|
color: transparent;
|
||||||
|
margin: 2px 1px;
|
||||||
|
padding: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
/* transition: all 100ms linear; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.oit-normal .oit-img-footer .gallery-navbar .gallery-list img {
|
||||||
|
width: 46px;
|
||||||
|
height: 56px;
|
||||||
|
}
|
||||||
|
/*endregion*/
|
||||||
|
|
||||||
|
.hotkeys-settings-plus {
|
||||||
|
margin: 0 10px;
|
||||||
|
font-size: x-large;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*region pickr*/
|
||||||
|
.pcr-app .pcr-swatches > button {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*! Pickr 1.8.2 MIT | https://github.com/Simonwep/pickr */
|
||||||
|
.pickr {
|
||||||
|
position: relative;
|
||||||
|
overflow: visible;
|
||||||
|
transform: translateY(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr * {
|
||||||
|
box-sizing: border-box;
|
||||||
|
outline: none;
|
||||||
|
border: none;
|
||||||
|
-webkit-appearance: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-button {
|
||||||
|
position: relative;
|
||||||
|
height: 2em;
|
||||||
|
width: 2em;
|
||||||
|
padding: 0.5em;
|
||||||
|
cursor: pointer;
|
||||||
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
|
||||||
|
border-radius: .15em;
|
||||||
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" stroke="%2342445A" stroke-width="5px" stroke-linecap="round"><path d="M45,45L5,5"></path><path d="M45,5L5,45"></path></svg>') no-repeat center;
|
||||||
|
background-size: 0;
|
||||||
|
transition: all 0.3s
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-button::before {
|
||||||
|
position: absolute;
|
||||||
|
content: '';
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
||||||
|
background-size: .5em;
|
||||||
|
border-radius: .15em;
|
||||||
|
z-index: -1
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-button::before {
|
||||||
|
z-index: initial
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-button::after {
|
||||||
|
position: absolute;
|
||||||
|
content: '';
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
transition: background 0.3s;
|
||||||
|
background: var(--pcr-color);
|
||||||
|
border-radius: .15em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-button.clear {
|
||||||
|
background-size: 70%
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-button.clear::before {
|
||||||
|
opacity: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-button.clear:focus {
|
||||||
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px var(--pcr-color)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-button.disabled {
|
||||||
|
cursor: not-allowed
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr *, .pcr-app * {
|
||||||
|
box-sizing: border-box;
|
||||||
|
outline: none;
|
||||||
|
border: none;
|
||||||
|
-webkit-appearance: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr input:focus, .pickr input.pcr-active, .pickr button:focus, .pickr button.pcr-active, .pcr-app input:focus, .pcr-app input.pcr-active, .pcr-app button:focus, .pcr-app button.pcr-active {
|
||||||
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px var(--pcr-color)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-palette, .pickr .pcr-slider, .pcr-app .pcr-palette, .pcr-app .pcr-slider {
|
||||||
|
transition: box-shadow 0.3s
|
||||||
|
}
|
||||||
|
|
||||||
|
.pickr .pcr-palette:focus, .pickr .pcr-slider:focus, .pcr-app .pcr-palette:focus, .pcr-app .pcr-slider:focus {
|
||||||
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px rgba(0, 0, 0, 0.25)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app {
|
||||||
|
position: fixed;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
z-index: 10000;
|
||||||
|
border-radius: 0.1em;
|
||||||
|
background: #fff;
|
||||||
|
opacity: 0;
|
||||||
|
visibility: hidden;
|
||||||
|
transition: opacity 0.3s, visibility 0s 0.3s;
|
||||||
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
|
||||||
|
box-shadow: 0 0.15em 1.5em 0 rgba(0, 0, 0, 0.1), 0 0 1em 0 rgba(0, 0, 0, 0.03);
|
||||||
|
left: 0;
|
||||||
|
top: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app.visible {
|
||||||
|
transition: opacity 0.3s;
|
||||||
|
visibility: visible;
|
||||||
|
opacity: 1
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-swatches {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
margin-top: 0.75em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-swatches.pcr-last {
|
||||||
|
margin: 0
|
||||||
|
}
|
||||||
|
|
||||||
|
@supports (display: grid) {
|
||||||
|
.pcr-app .pcr-swatches {
|
||||||
|
display: grid;
|
||||||
|
align-items: center;
|
||||||
|
grid-template-columns: repeat(auto-fit, 1.75em)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-swatches > button {
|
||||||
|
font-size: 1em;
|
||||||
|
position: relative;
|
||||||
|
width: calc(1.75em - 10px);
|
||||||
|
height: calc(1.75em - 10px);
|
||||||
|
border-radius: 0.15em;
|
||||||
|
cursor: pointer;
|
||||||
|
margin: 2.5px;
|
||||||
|
flex-shrink: 0;
|
||||||
|
justify-self: center;
|
||||||
|
transition: all 0.15s;
|
||||||
|
overflow: hidden;
|
||||||
|
background: transparent;
|
||||||
|
z-index: 1
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-swatches > button::before {
|
||||||
|
position: absolute;
|
||||||
|
content: '';
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
||||||
|
background-size: 6px;
|
||||||
|
border-radius: .15em;
|
||||||
|
z-index: -1
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-swatches > button::after {
|
||||||
|
content: '';
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background: var(--pcr-color);
|
||||||
|
border: 1px solid rgba(0, 0, 0, 0.05);
|
||||||
|
border-radius: 0.15em;
|
||||||
|
box-sizing: border-box
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-swatches > button:hover {
|
||||||
|
filter: brightness(1.05)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-swatches > button:not(.pcr-active) {
|
||||||
|
box-shadow: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
align-items: center;
|
||||||
|
margin: 0 -0.2em 0 -0.2em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction > * {
|
||||||
|
margin: 0 0.2em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction input {
|
||||||
|
letter-spacing: 0.07em;
|
||||||
|
font-size: 0.75em;
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
color: #75797e;
|
||||||
|
background: #f1f3f4;
|
||||||
|
border-radius: .15em;
|
||||||
|
transition: all 0.15s;
|
||||||
|
padding: 0.45em 0.5em;
|
||||||
|
margin-top: 0.75em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction input:hover {
|
||||||
|
filter: brightness(0.975)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction input:focus {
|
||||||
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px rgba(66, 133, 244, 0.75)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-result {
|
||||||
|
color: #75797e;
|
||||||
|
text-align: left;
|
||||||
|
flex: 1 1 8em;
|
||||||
|
min-width: 8em;
|
||||||
|
transition: all 0.2s;
|
||||||
|
border-radius: .15em;
|
||||||
|
background: #f1f3f4;
|
||||||
|
cursor: text
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-result::-moz-selection {
|
||||||
|
background: #4285f4;
|
||||||
|
color: #fff
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-result::selection {
|
||||||
|
background: #4285f4;
|
||||||
|
color: #fff
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-type.active {
|
||||||
|
color: #fff;
|
||||||
|
background: #4285f4
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-save, .pcr-app .pcr-interaction .pcr-cancel, .pcr-app .pcr-interaction .pcr-clear {
|
||||||
|
color: #fff;
|
||||||
|
width: auto
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-save, .pcr-app .pcr-interaction .pcr-cancel, .pcr-app .pcr-interaction .pcr-clear {
|
||||||
|
color: #fff
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-save:hover, .pcr-app .pcr-interaction .pcr-cancel:hover, .pcr-app .pcr-interaction .pcr-clear:hover {
|
||||||
|
filter: brightness(0.925)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-save {
|
||||||
|
background: #4285f4
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-clear, .pcr-app .pcr-interaction .pcr-cancel {
|
||||||
|
background: #f44250
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-interaction .pcr-clear:focus, .pcr-app .pcr-interaction .pcr-cancel:focus {
|
||||||
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px rgba(244, 66, 80, 0.75)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-selection .pcr-picker {
|
||||||
|
position: absolute;
|
||||||
|
height: 18px;
|
||||||
|
width: 18px;
|
||||||
|
border: 2px solid #fff;
|
||||||
|
border-radius: 100%;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-selection .pcr-color-palette, .pcr-app .pcr-selection .pcr-color-chooser, .pcr-app .pcr-selection .pcr-color-opacity {
|
||||||
|
position: relative;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
cursor: grab;
|
||||||
|
cursor: -webkit-grab
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app .pcr-selection .pcr-color-palette:active, .pcr-app .pcr-selection .pcr-color-chooser:active, .pcr-app .pcr-selection .pcr-color-opacity:active {
|
||||||
|
cursor: grabbing;
|
||||||
|
cursor: -webkit-grabbing
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] {
|
||||||
|
width: 14.25em;
|
||||||
|
max-width: 95vw
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-swatches {
|
||||||
|
margin-top: .6em;
|
||||||
|
padding: 0 .6em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-interaction {
|
||||||
|
padding: 0 .6em .6em .6em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection {
|
||||||
|
display: grid;
|
||||||
|
grid-gap: .6em;
|
||||||
|
grid-template-columns: 1fr 4fr;
|
||||||
|
grid-template-rows: 5fr auto auto;
|
||||||
|
align-items: center;
|
||||||
|
height: 10.5em;
|
||||||
|
width: 100%;
|
||||||
|
align-self: flex-start
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-preview {
|
||||||
|
grid-area: 2 / 1 / 4 / 1;
|
||||||
|
height: 100%;
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
margin-left: .6em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-preview .pcr-last-color {
|
||||||
|
display: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-preview .pcr-current-color {
|
||||||
|
position: relative;
|
||||||
|
background: var(--pcr-color);
|
||||||
|
width: 2em;
|
||||||
|
height: 2em;
|
||||||
|
border-radius: 50em;
|
||||||
|
overflow: hidden
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-preview .pcr-current-color::before {
|
||||||
|
position: absolute;
|
||||||
|
content: '';
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
||||||
|
background-size: .5em;
|
||||||
|
border-radius: .15em;
|
||||||
|
z-index: -1
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-palette {
|
||||||
|
grid-area: 1 / 1 / 2 / 3;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
z-index: 1
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-palette .pcr-palette {
|
||||||
|
border-radius: .15em;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-palette .pcr-palette::before {
|
||||||
|
position: absolute;
|
||||||
|
content: '';
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
||||||
|
background-size: .5em;
|
||||||
|
border-radius: .15em;
|
||||||
|
z-index: -1
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser {
|
||||||
|
grid-area: 2 / 2 / 2 / 2
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity {
|
||||||
|
grid-area: 3 / 2 / 3 / 2
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser, .pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity {
|
||||||
|
height: 0.5em;
|
||||||
|
margin: 0 .6em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser .pcr-picker, .pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity .pcr-picker {
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser .pcr-slider, .pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity .pcr-slider {
|
||||||
|
flex-grow: 1;
|
||||||
|
border-radius: 50em
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-chooser .pcr-slider {
|
||||||
|
background: linear-gradient(to right, red, #ff0, lime, cyan, blue, #f0f, red)
|
||||||
|
}
|
||||||
|
|
||||||
|
.pcr-app[data-theme='nano'] .pcr-selection .pcr-color-opacity .pcr-slider {
|
||||||
|
background: linear-gradient(to right, transparent, black), url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
||||||
|
background-size: 100%, 0.25em
|
||||||
|
}
|
||||||
|
/*endregion*/
|
||||||
+149
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"obsidian-kanban","name":"Kanban","version":"2.0.49","minAppVersion":"1.0.0","description":"Create markdown-backed Kanban boards in Obsidian.","author":"mgmeyers","authorUrl":"https://github.com/mgmeyers/obsidian-kanban","helpUrl":"https://publish.obsidian.md/kanban/Obsidian+Kanban+Plugin","isDesktopOnly":false}
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+15603
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"obsidian-latex-suite","name":"Latex Suite","version":"1.9.8","minAppVersion":"1.0.0","description":"Make typesetting LaTeX math as fast as handwriting through snippets, text expansion, and editor enhancements","author":"artisticat","authorUrl":"https://github.com/artisticat1","fundingUrl":"https://ko-fi.com/artisticat","isDesktopOnly":false}
|
||||||
+235
@@ -0,0 +1,235 @@
|
|||||||
|
/* Settings panel */
|
||||||
|
|
||||||
|
.setting-item.hidden {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.setting-item.setting-item-heading .latex-suite-settings-icon {
|
||||||
|
margin-right: var(--size-4-2);
|
||||||
|
display: inline-flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
.setting-item.setting-item-heading:has(.latex-suite-settings-icon) {
|
||||||
|
border-bottom: 1px solid var(--background-modifier-border);
|
||||||
|
}
|
||||||
|
|
||||||
|
.setting-item.setting-item-heading:has(.latex-suite-settings-icon) + .setting-item {
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.setting-item.setting-item-heading:has(.latex-suite-settings-icon) ~ .setting-item:not(.setting-item-heading), .latex-suite-snippet-variables-setting + .setting-item-control {
|
||||||
|
width: calc(100% - 26px);
|
||||||
|
margin-left: 26px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.latex-suite-snippet-variables-setting .setting-item-control {
|
||||||
|
height: 120px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.latex-suite-snippet-variables-setting .setting-item-control textarea {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-text-area, .latex-suite-snippet-variables-setting {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-text-area .setting-item-info, .latex-suite-snippet-variables-setting .setting-item-info {
|
||||||
|
margin-bottom: 0.75rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-text-area .setting-item-control {
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: flex-end;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-wrapper {
|
||||||
|
width: 100%;
|
||||||
|
margin-bottom: 0.75rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-wrapper .cm-editor {
|
||||||
|
border: 1px solid var(--background-modifier-border);
|
||||||
|
border-radius: 4px;
|
||||||
|
font-size: var(--font-inputs);
|
||||||
|
height: 20em;
|
||||||
|
outline: none !important;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-wrapper .cm-line, .snippets-editor-wrapper .cm-lineNumbers {
|
||||||
|
font-family: var(--font-monospace);
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-footer {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-validity {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-validity-indicator {
|
||||||
|
color: white;
|
||||||
|
display: inline-block;
|
||||||
|
border-radius: 1em;
|
||||||
|
margin-right: 10px;
|
||||||
|
cursor: default;
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-validity-indicator svg {
|
||||||
|
width: 16px !important;
|
||||||
|
height: 16px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-validity-indicator:hover {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-validity-indicator.valid {
|
||||||
|
background-color: var(--color-green);
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-validity-indicator.invalid {
|
||||||
|
background-color: var(--color-red);
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.snippets-editor-buttons {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
}
|
||||||
|
|
||||||
|
.latex-suite-confirmation-modal .setting-item {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-input-container input.latex-suite-location-input-el {
|
||||||
|
width: initial;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Snippet color classes.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* These extra selectors enforce their color on all children, because CodeMirror does weird nesting of spans when
|
||||||
|
nesting multiple decorations. */
|
||||||
|
|
||||||
|
.latex-suite-snippet-placeholder {
|
||||||
|
border-radius: 2px;
|
||||||
|
background-color: var(--placeholder-bg);
|
||||||
|
outline: var(--placeholder-outline) solid 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.latex-suite-snippet-placeholder-0, span.latex-suite-snippet-placeholder-0 span {
|
||||||
|
--placeholder-bg: #87cefa2e;
|
||||||
|
--placeholder-outline: #87cefa6e;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .latex-suite-snippet-placeholder-0, span.latex-suite-snippet-placeholder-0 span {
|
||||||
|
--placeholder-outline: #87cefa43;
|
||||||
|
}
|
||||||
|
|
||||||
|
.latex-suite-snippet-placeholder-1, span.latex-suite-snippet-placeholder-1 span {
|
||||||
|
--placeholder-bg: #ffa50033;
|
||||||
|
--placeholder-outline: #ffa5006b;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .latex-suite-snippet-placeholder-1, span.latex-suite-snippet-placeholder-1 span {
|
||||||
|
--placeholder-outline: #ffa5004d;
|
||||||
|
}
|
||||||
|
|
||||||
|
.latex-suite-snippet-placeholder-2, span.latex-suite-snippet-placeholder-2 span {
|
||||||
|
--placeholder-bg: #00ff0022;
|
||||||
|
--placeholder-outline: #00ff0060;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .latex-suite-snippet-placeholder-2, span.latex-suite-snippet-placeholder-2 span {
|
||||||
|
--placeholder-outline: #00ff003d;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Conceal */
|
||||||
|
|
||||||
|
span.cm-math.cm-concealed-bold {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.cm-math.cm-concealed-underline {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.cm-math.cm-concealed-mathrm, sub.cm-math.cm-concealed-mathrm {
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Conceal superscripts without changing line height */
|
||||||
|
sup.cm-math {
|
||||||
|
line-height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
sup.cm-math, sub.cm-math {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Inline math tooltip styling */
|
||||||
|
|
||||||
|
.theme-light .cm-tooltip.cm-tooltip-cursor {
|
||||||
|
box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.028), 0px 3.4px 6.7px rgba(0, 0, 0, .042), 0px 5px 20px rgba(0, 0, 0, .07);
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .cm-tooltip.cm-tooltip-cursor {
|
||||||
|
box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1),
|
||||||
|
0px 3.4px 6.7px rgba(0, 0, 0, 0.15),
|
||||||
|
0px 0px 30px rgba(0, 0, 0, 0.27);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Highlight brackets */
|
||||||
|
.theme-light .latex-suite-highlighted-bracket, .theme-light .latex-suite-highlighted-bracket [class^="latex-suite-color-bracket-"] {
|
||||||
|
background-color: hsl(var(--accent-h), var(--accent-s), 40%, 0.3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .latex-suite-highlighted-bracket, .theme-dark .latex-suite-highlighted-bracket [class^="latex-suite-color-bracket-"] {
|
||||||
|
background-color: hsl(var(--accent-h), var(--accent-s), 70%, 0.6);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Color matching brackets */
|
||||||
|
|
||||||
|
.theme-light .latex-suite-color-bracket-0, .theme-light .latex-suite-color-bracket-0 .cm-bracket {
|
||||||
|
color: #527aff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .latex-suite-color-bracket-0, .theme-dark .latex-suite-color-bracket-0 .cm-bracket {
|
||||||
|
color: #47b8ff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-light .latex-suite-color-bracket-1, .theme-light .latex-suite-color-bracket-1 .cm-bracket {
|
||||||
|
color: #ff50b7;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .latex-suite-color-bracket-1, .theme-dark .latex-suite-color-bracket-1 .cm-bracket {
|
||||||
|
color: #ff55cd;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-light .latex-suite-color-bracket-2, .theme-light .latex-suite-color-bracket-2 .cm-bracket {
|
||||||
|
color: #69ba00;
|
||||||
|
}
|
||||||
|
|
||||||
|
.theme-dark .latex-suite-color-bracket-2, .theme-dark .latex-suite-color-bracket-2 .cm-bracket {
|
||||||
|
color: #73ff63;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* .latex-suite-color-bracket-3 {
|
||||||
|
color: #8de15c;
|
||||||
|
} */
|
||||||
+101
@@ -0,0 +1,101 @@
|
|||||||
|
{
|
||||||
|
"mapMarkers": [
|
||||||
|
{
|
||||||
|
"id": "kyoto",
|
||||||
|
"lastAccessed": 1763017532392,
|
||||||
|
"markers": [
|
||||||
|
{
|
||||||
|
"id": "ID_886a5a494a3b",
|
||||||
|
"type": "default",
|
||||||
|
"loc": [
|
||||||
|
35.05306927554334,
|
||||||
|
135.7276932225072
|
||||||
|
],
|
||||||
|
"layer": "real",
|
||||||
|
"mutable": true,
|
||||||
|
"command": false,
|
||||||
|
"percent": null,
|
||||||
|
"description": null,
|
||||||
|
"minZoom": null,
|
||||||
|
"maxZoom": null,
|
||||||
|
"tooltip": "hover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ID_383828298ba8",
|
||||||
|
"type": "default",
|
||||||
|
"loc": [
|
||||||
|
35.01782969969814,
|
||||||
|
135.7695581651632
|
||||||
|
],
|
||||||
|
"layer": "real",
|
||||||
|
"mutable": true,
|
||||||
|
"command": false,
|
||||||
|
"percent": null,
|
||||||
|
"description": null,
|
||||||
|
"minZoom": null,
|
||||||
|
"maxZoom": null,
|
||||||
|
"tooltip": "hover"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "ID_ab080aaa08a8",
|
||||||
|
"type": "default",
|
||||||
|
"loc": [
|
||||||
|
35.011643471558244,
|
||||||
|
135.72529113563354
|
||||||
|
],
|
||||||
|
"layer": "real",
|
||||||
|
"mutable": true,
|
||||||
|
"command": false,
|
||||||
|
"percent": null,
|
||||||
|
"description": null,
|
||||||
|
"minZoom": null,
|
||||||
|
"maxZoom": null,
|
||||||
|
"tooltip": "hover"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"overlays": [],
|
||||||
|
"shapes": [],
|
||||||
|
"files": [
|
||||||
|
"References/武汉市硚口区古田街道罗家墩122号.md",
|
||||||
|
"References/西安市航天大道1199号大华公园世家5街区.md",
|
||||||
|
"References/丈八东路8号通信学院家属院.md",
|
||||||
|
"Templates/City Template.md"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"defaultMarker": {
|
||||||
|
"type": "default",
|
||||||
|
"iconName": "map-marker",
|
||||||
|
"color": "#dddddd",
|
||||||
|
"transform": {
|
||||||
|
"size": 6,
|
||||||
|
"x": 0,
|
||||||
|
"y": -2
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"markerIcons": [],
|
||||||
|
"color": "#dddddd",
|
||||||
|
"lat": 39.983334,
|
||||||
|
"long": -82.98333,
|
||||||
|
"notePreview": false,
|
||||||
|
"layerMarkers": true,
|
||||||
|
"previousVersion": "6.0.5",
|
||||||
|
"version": {
|
||||||
|
"major": 6,
|
||||||
|
"minor": 0,
|
||||||
|
"patch": 5
|
||||||
|
},
|
||||||
|
"warnedAboutMapMarker": false,
|
||||||
|
"copyOnClick": false,
|
||||||
|
"displayMarkerTooltips": "hover",
|
||||||
|
"displayOverlayTooltips": true,
|
||||||
|
"configDirectory": null,
|
||||||
|
"mapViewEnabled": true,
|
||||||
|
"mapViewParameters": {},
|
||||||
|
"enableDraw": true,
|
||||||
|
"defaultUnitType": "imperial",
|
||||||
|
"defaultTile": "https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png",
|
||||||
|
"defaultTileDark": "https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png",
|
||||||
|
"defaultAttribution": "© <a href=\"https://www.openstreetmap.org/copyright\">OpenStreetMap</a> contributors © <a href=\"https://carto.com/attributions\">CARTO</a>",
|
||||||
|
"defaultTileSubdomains": "a,b,c,d"
|
||||||
|
}
|
||||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
|||||||
|
{"id":"obsidian-leaflet-plugin","name":"Leaflet","description":"Interactive maps inside your notes","version":"6.0.5","minAppVersion":"0.12.12","author":"Jeremy Valentine","repo":"valentine195/obsidian-leaflet-plugin","isDesktopOnly":false}
|
||||||
+1314
File diff suppressed because it is too large
Load Diff
+292
@@ -0,0 +1,292 @@
|
|||||||
|
{
|
||||||
|
"ruleConfigs": {
|
||||||
|
"add-blank-line-after-yaml": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"dedupe-yaml-array-values": {
|
||||||
|
"enabled": false,
|
||||||
|
"dedupe-alias-key": true,
|
||||||
|
"dedupe-tag-key": true,
|
||||||
|
"dedupe-array-keys": true,
|
||||||
|
"ignore-keys": ""
|
||||||
|
},
|
||||||
|
"escape-yaml-special-characters": {
|
||||||
|
"enabled": false,
|
||||||
|
"try-to-escape-single-line-arrays": false
|
||||||
|
},
|
||||||
|
"force-yaml-escape": {
|
||||||
|
"enabled": false,
|
||||||
|
"force-yaml-escape-keys": ""
|
||||||
|
},
|
||||||
|
"format-tags-in-yaml": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"format-yaml-array": {
|
||||||
|
"enabled": false,
|
||||||
|
"alias-key": true,
|
||||||
|
"tag-key": true,
|
||||||
|
"default-array-style": "single-line",
|
||||||
|
"default-array-keys": true,
|
||||||
|
"force-single-line-array-style": "",
|
||||||
|
"force-multi-line-array-style": ""
|
||||||
|
},
|
||||||
|
"insert-yaml-attributes": {
|
||||||
|
"enabled": false,
|
||||||
|
"text-to-insert": "aliases: \ntags: "
|
||||||
|
},
|
||||||
|
"move-tags-to-yaml": {
|
||||||
|
"enabled": false,
|
||||||
|
"how-to-handle-existing-tags": "Nothing",
|
||||||
|
"tags-to-ignore": ""
|
||||||
|
},
|
||||||
|
"remove-yaml-keys": {
|
||||||
|
"enabled": false,
|
||||||
|
"yaml-keys-to-remove": ""
|
||||||
|
},
|
||||||
|
"sort-yaml-array-values": {
|
||||||
|
"enabled": false,
|
||||||
|
"sort-alias-key": true,
|
||||||
|
"sort-tag-key": true,
|
||||||
|
"sort-array-keys": true,
|
||||||
|
"ignore-keys": "",
|
||||||
|
"sort-order": "Ascending Alphabetical"
|
||||||
|
},
|
||||||
|
"yaml-key-sort": {
|
||||||
|
"enabled": false,
|
||||||
|
"yaml-key-priority-sort-order": "",
|
||||||
|
"priority-keys-at-start-of-yaml": true,
|
||||||
|
"yaml-sort-order-for-other-keys": "None"
|
||||||
|
},
|
||||||
|
"yaml-timestamp": {
|
||||||
|
"enabled": false,
|
||||||
|
"date-created": true,
|
||||||
|
"date-created-key": "date created",
|
||||||
|
"date-created-source-of-truth": "file system",
|
||||||
|
"date-modified": true,
|
||||||
|
"date-modified-key": "date modified",
|
||||||
|
"date-modified-source-of-truth": "file system",
|
||||||
|
"format": "dddd, MMMM Do YYYY, h:mm:ss a",
|
||||||
|
"convert-to-utc": false,
|
||||||
|
"update-on-file-contents-updated": "never"
|
||||||
|
},
|
||||||
|
"yaml-title": {
|
||||||
|
"enabled": false,
|
||||||
|
"title-key": "title",
|
||||||
|
"mode": "first-h1-or-filename-if-h1-missing"
|
||||||
|
},
|
||||||
|
"yaml-title-alias": {
|
||||||
|
"enabled": false,
|
||||||
|
"preserve-existing-alias-section-style": true,
|
||||||
|
"keep-alias-that-matches-the-filename": false,
|
||||||
|
"use-yaml-key-to-keep-track-of-old-filename-or-heading": true,
|
||||||
|
"alias-helper-key": "linter-yaml-title-alias"
|
||||||
|
},
|
||||||
|
"capitalize-headings": {
|
||||||
|
"enabled": false,
|
||||||
|
"style": "Title Case",
|
||||||
|
"ignore-case-words": true,
|
||||||
|
"ignore-words": "macOS, iOS, iPhone, iPad, JavaScript, TypeScript, AppleScript, I",
|
||||||
|
"lowercase-words": "a, an, the, aboard, about, abt., above, abreast, absent, across, after, against, along, aloft, alongside, amid, amidst, mid, midst, among, amongst, anti, apropos, around, round, as, aslant, astride, at, atop, ontop, bar, barring, before, B4, behind, below, beneath, neath, beside, besides, between, 'tween, beyond, but, by, chez, circa, c., ca., come, concerning, contra, counting, cum, despite, spite, down, during, effective, ere, except, excepting, excluding, failing, following, for, from, in, including, inside, into, less, like, minus, modulo, mod, near, nearer, nearest, next, notwithstanding, of, o', off, offshore, on, onto, opposite, out, outside, over, o'er, pace, past, pending, per, plus, post, pre, pro, qua, re, regarding, respecting, sans, save, saving, short, since, sub, than, through, thru, throughout, thruout, till, times, to, t', touching, toward, towards, under, underneath, unlike, until, unto, up, upon, versus, vs., v., via, vice, vis-à-vis, wanting, with, w/, w., c̄, within, w/i, without, 'thout, w/o, abroad, adrift, aft, afterward, afterwards, ahead, apart, ashore, aside, away, back, backward, backwards, beforehand, downhill, downstage, downstairs, downstream, downward, downwards, downwind, east, eastward, eastwards, forth, forward, forwards, heavenward, heavenwards, hence, henceforth, here, hereby, herein, hereof, hereto, herewith, home, homeward, homewards, indoors, inward, inwards, leftward, leftwards, north, northeast, northward, northwards, northwest, now, onward, onwards, outdoors, outward, outwards, overboard, overhead, overland, overseas, rightward, rightwards, seaward, seawards, skywards, skyward, south, southeast, southwards, southward, southwest, then, thence, thenceforth, there, thereby, therein, thereof, thereto, therewith, together, underfoot, underground, uphill, upstage, upstairs, upstream, upward, upwards, upwind, west, westward, westwards, when, whence, where, whereby, wherein, whereto, wherewith, although, because, considering, given, granted, if, lest, once, provided, providing, seeing, so, supposing, though, unless, whenever, whereas, wherever, while, whilst, ago, according to, as regards, counter to, instead of, owing to, pertaining to, at the behest of, at the expense of, at the hands of, at risk of, at the risk of, at variance with, by dint of, by means of, by virtue of, by way of, for the sake of, for sake of, for lack of, for want of, from want of, in accordance with, in addition to, in case of, in charge of, in compliance with, in conformity with, in contact with, in exchange for, in favor of, in front of, in lieu of, in light of, in the light of, in line with, in place of, in point of, in quest of, in relation to, in regard to, with regard to, in respect to, with respect to, in return for, in search of, in step with, in touch with, in terms of, in the name of, in view of, on account of, on behalf of, on grounds of, on the grounds of, on the part of, on top of, with a view to, with the exception of, à la, a la, as soon as, as well as, close to, due to, far from, in case, other than, prior to, pursuant to, regardless of, subsequent to, as long as, as much as, as far as, by the time, in as much as, inasmuch, in order to, in order that, even, provide that, if only, whether, whose, whoever, why, how, or not, whatever, what, both, and, or, not only, but also, either, neither, nor, just, rather, no sooner, such, that, yet, is, it"
|
||||||
|
},
|
||||||
|
"file-name-heading": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"header-increment": {
|
||||||
|
"enabled": false,
|
||||||
|
"start-at-h2": false
|
||||||
|
},
|
||||||
|
"headings-start-line": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-trailing-punctuation-in-heading": {
|
||||||
|
"enabled": false,
|
||||||
|
"punctuation-to-remove": ".,;:!。,;:!"
|
||||||
|
},
|
||||||
|
"footnote-after-punctuation": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"move-footnotes-to-the-bottom": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"re-index-footnotes": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"auto-correct-common-misspellings": {
|
||||||
|
"enabled": false,
|
||||||
|
"ignore-words": "",
|
||||||
|
"skip-words-with-multiple-capitals": false,
|
||||||
|
"extra-auto-correct-files": []
|
||||||
|
},
|
||||||
|
"blockquote-style": {
|
||||||
|
"enabled": true,
|
||||||
|
"style": "space"
|
||||||
|
},
|
||||||
|
"convert-bullet-list-markers": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"default-language-for-code-fences": {
|
||||||
|
"enabled": true,
|
||||||
|
"default-language": ""
|
||||||
|
},
|
||||||
|
"emphasis-style": {
|
||||||
|
"enabled": true,
|
||||||
|
"style": "consistent"
|
||||||
|
},
|
||||||
|
"no-bare-urls": {
|
||||||
|
"enabled": true,
|
||||||
|
"no-bare-uris": false
|
||||||
|
},
|
||||||
|
"ordered-list-style": {
|
||||||
|
"enabled": false,
|
||||||
|
"number-style": "ascending",
|
||||||
|
"list-end-style": "."
|
||||||
|
},
|
||||||
|
"proper-ellipsis": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"quote-style": {
|
||||||
|
"enabled": false,
|
||||||
|
"single-quote-enabled": true,
|
||||||
|
"single-quote-style": "''",
|
||||||
|
"double-quote-enabled": true,
|
||||||
|
"double-quote-style": "\"\""
|
||||||
|
},
|
||||||
|
"remove-consecutive-list-markers": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-empty-list-markers": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-hyphenated-line-breaks": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-multiple-spaces": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"strong-style": {
|
||||||
|
"enabled": false,
|
||||||
|
"style": "consistent"
|
||||||
|
},
|
||||||
|
"two-spaces-between-lines-with-content": {
|
||||||
|
"enabled": false,
|
||||||
|
"line-break-indicator": " "
|
||||||
|
},
|
||||||
|
"unordered-list-style": {
|
||||||
|
"enabled": false,
|
||||||
|
"list-style": "consistent"
|
||||||
|
},
|
||||||
|
"compact-yaml": {
|
||||||
|
"enabled": false,
|
||||||
|
"inner-new-lines": false
|
||||||
|
},
|
||||||
|
"consecutive-blank-lines": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"convert-spaces-to-tabs": {
|
||||||
|
"enabled": false,
|
||||||
|
"tabsize": 4
|
||||||
|
},
|
||||||
|
"empty-line-around-blockquotes": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"empty-line-around-code-fences": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"empty-line-around-horizontal-rules": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"empty-line-around-math-blocks": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"empty-line-around-tables": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"heading-blank-lines": {
|
||||||
|
"enabled": true,
|
||||||
|
"bottom": true,
|
||||||
|
"empty-line-after-yaml": true
|
||||||
|
},
|
||||||
|
"line-break-at-document-end": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"move-math-block-indicators-to-their-own-line": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"paragraph-blank-lines": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-empty-lines-between-list-markers-and-checklists": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-link-spacing": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-space-around-characters": {
|
||||||
|
"enabled": false,
|
||||||
|
"include-fullwidth-forms": true,
|
||||||
|
"include-cjk-symbols-and-punctuation": true,
|
||||||
|
"include-dashes": true,
|
||||||
|
"other-symbols": ""
|
||||||
|
},
|
||||||
|
"remove-space-before-or-after-characters": {
|
||||||
|
"enabled": false,
|
||||||
|
"characters-to-remove-space-before": ",!?;:).’”]",
|
||||||
|
"characters-to-remove-space-after": "¿¡‘“(["
|
||||||
|
},
|
||||||
|
"space-after-list-markers": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
"space-between-chinese-japanese-or-korean-and-english-or-numbers": {
|
||||||
|
"enabled": false,
|
||||||
|
"english-symbols-punctuation-before": "-+;:'\"°%$)]",
|
||||||
|
"english-symbols-punctuation-after": "-+'\"([¥$"
|
||||||
|
},
|
||||||
|
"trailing-spaces": {
|
||||||
|
"enabled": false,
|
||||||
|
"two-space-line-break": false
|
||||||
|
},
|
||||||
|
"add-blockquote-indentation-on-paste": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"prevent-double-checklist-indicator-on-paste": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"prevent-double-list-item-indicator-on-paste": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"proper-ellipsis-on-paste": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-hyphens-on-paste": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-leading-or-trailing-whitespace-on-paste": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-leftover-footnotes-from-quote-on-paste": {
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
"remove-multiple-blank-lines-on-paste": {
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"lintOnSave": true,
|
||||||
|
"recordLintOnSaveLogs": false,
|
||||||
|
"displayChanged": true,
|
||||||
|
"lintOnFileChange": true,
|
||||||
|
"displayLintOnFileChangeNotice": false,
|
||||||
|
"settingsConvertedToConfigKeyValues": true,
|
||||||
|
"foldersToIgnore": [],
|
||||||
|
"filesToIgnore": [],
|
||||||
|
"linterLocale": "system-default",
|
||||||
|
"logLevel": "ERROR",
|
||||||
|
"lintCommands": [],
|
||||||
|
"customRegexes": [],
|
||||||
|
"commonStyles": {
|
||||||
|
"aliasArrayStyle": "single-line",
|
||||||
|
"tagArrayStyle": "single-line",
|
||||||
|
"minimumNumberOfDollarSignsToBeAMathBlock": 2,
|
||||||
|
"escapeCharacter": "\"",
|
||||||
|
"removeUnnecessaryEscapeCharsForMultiLineArrays": false
|
||||||
|
}
|
||||||
|
}
|
||||||
+433
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user