first commit

This commit is contained in:
Boris committed 2024-01-15 20:14:10 +00:00
commit 8c81ee28b7
3106 files changed
+474415

No files matched your search

+14
View File
@@ -0,0 +1,14 @@
{
"showInlineTitle": true,
"useMarkdownLinks": true,
"promptDelete": false,
"showLineNumber": true,
"attachmentFolderPath": "images",
"pdfExportSettings": {
"pageSize": "A4",
"landscape": false,
"margin": "2",
"downscalePercent": 100
},
"readableLineLength": false
}
+7
View File
@@ -0,0 +1,7 @@
{
"accentColor": "",
"theme": "obsidian",
"cssTheme": "Dracula Official",
"nativeMenus": true,
"baseFontSize": 30
}
+18
View File
@@ -0,0 +1,18 @@
{
"items": [
{
"type": "file",
"ctime": 1695299728113,
"path": "Semester 1/Web Development and HCI/Week 1/Week 1 Web Development.md",
"subpath": "#^401105",
"title": "WebDev Assessment Deadline"
},
{
"type": "file",
"ctime": 1695715480041,
"path": "Semester 1/Professional Development & Practices/Week 1/Week 1 Professional Development.md",
"subpath": "#^af5cab",
"title": "PDP Weighting"
}
]
}
+11
View File
@@ -0,0 +1,11 @@
[
"obsidian-git",
"dataview",
"obsidian-day-planner",
"obsidian-excel-to-markdown-table",
"obsidian-linter",
"omnisearch",
"cm-typewriter-scroll-obsidian",
"local-backup",
"obsidian-diagrams-net"
]
+30
View File
@@ -0,0 +1,30 @@
{
"file-explorer": true,
"global-search": true,
"switcher": true,
"graph": true,
"backlink": true,
"canvas": true,
"outgoing-link": true,
"tag-pane": true,
"properties": true,
"page-preview": true,
"daily-notes": true,
"templates": true,
"note-composer": true,
"command-palette": true,
"slash-command": false,
"editor-status": true,
"bookmarks": true,
"markdown-importer": false,
"zk-prefixer": false,
"random-note": false,
"outline": true,
"word-count": true,
"slides": false,
"audio-recorder": false,
"workspaces": false,
"file-recovery": true,
"publish": false,
"sync": false
}
+21
View File
@@ -0,0 +1,21 @@
[
"file-explorer",
"global-search",
"switcher",
"graph",
"backlink",
"canvas",
"outgoing-link",
"tag-pane",
"properties",
"page-preview",
"daily-notes",
"templates",
"note-composer",
"command-palette",
"editor-status",
"bookmarks",
"outline",
"word-count",
"file-recovery"
]
+22
View File
@@ -0,0 +1,22 @@
{
"collapse-filter": false,
"search": "",
"showTags": false,
"showAttachments": false,
"hideUnresolved": false,
"showOrphans": true,
"collapse-color-groups": false,
"colorGroups": [],
"collapse-display": true,
"showArrow": false,
"textFadeMultiplier": 0,
"nodeSizeMultiplier": 1,
"lineSizeMultiplier": 1,
"collapse-forces": true,
"centerStrength": 0.518713248970312,
"repelStrength": 10,
"linkStrength": 1,
"linkDistance": 250,
"scale": 1,
"close": true
}
+20
View File
@@ -0,0 +1,20 @@
{
"file-explorer:open": [
{
"modifiers": [
"Mod",
"Shift"
],
"key": "E"
}
],
"obsidian-diagrams-net:app:diagrams-net-new-diagram": [
{
"modifiers": [
"Mod",
"Shift"
],
"key": "D"
}
]
}
@@ -0,0 +1,6 @@
{
"enabled": false,
"typewriterOffset": 0,
"zenEnabled": true,
"zenOpacity": 0.75
}
+425
View File
@@ -0,0 +1,425 @@
'use strict';
var obsidian = require('obsidian');
var state = require('@codemirror/state');
var view = require('@codemirror/view');
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
/* global Reflect, Promise */
var extendStatics = function(d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
function __extends(d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}
function __awaiter(thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
}
function __generator(thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
}
// all credit to azu: https://github.com/azu/codemirror-typewriter-scrolling/blob/b0ac076d72c9445c96182de87d974de2e8cc56e2/typewriter-scrolling.js
var movedByMouse = false;
CodeMirror.commands.scrollSelectionToCenter = function (cm) {
var cursor = cm.getCursor('head');
var charCoords = cm.charCoords(cursor, "local");
var top = charCoords.top;
var halfLineHeight = (charCoords.bottom - top) / 2;
var halfWindowHeight = cm.getWrapperElement().offsetHeight / 2;
var scrollTo = Math.round((top - halfWindowHeight + halfLineHeight));
cm.scrollTo(null, scrollTo);
};
CodeMirror.defineOption("typewriterScrolling", false, function (cm, val, old) {
if (old && old != CodeMirror.Init) {
const linesEl = cm.getScrollerElement().querySelector('.CodeMirror-lines');
linesEl.style.paddingTop = null;
linesEl.style.paddingBottom = null;
cm.off("cursorActivity", onCursorActivity);
cm.off("refresh", onRefresh);
cm.off("mousedown", onMouseDown);
cm.off("keydown", onKeyDown);
cm.off("beforeChange", onBeforeChange);
}
if (val) {
onRefresh(cm);
cm.on("cursorActivity", onCursorActivity);
cm.on("refresh", onRefresh);
cm.on("mousedown", onMouseDown);
cm.on("keydown", onKeyDown);
cm.on("beforeChange", onBeforeChange);
}
});
function onMouseDown() {
movedByMouse = true;
}
const modiferKeys = ["Alt", "AltGraph", "CapsLock", "Control", "Fn", "FnLock", "Hyper", "Meta", "NumLock", "ScrollLock", "Shift", "Super", "Symbol", "SymbolLock"];
function onKeyDown(cm, e) {
if (!modiferKeys.includes(e.key)) {
movedByMouse = false;
}
}
function onBeforeChange() {
movedByMouse = false;
}
function onCursorActivity(cm) {
const linesEl = cm.getScrollerElement().querySelector('.CodeMirror-lines');
if (cm.getSelection().length !== 0) {
linesEl.classList.add("selecting");
}
else {
linesEl.classList.remove("selecting");
}
if(!movedByMouse) {
cm.execCommand("scrollSelectionToCenter");
}
}
function onRefresh(cm) {
const halfWindowHeight = cm.getWrapperElement().offsetHeight / 2;
const linesEl = cm.getScrollerElement().querySelector('.CodeMirror-lines');
linesEl.style.paddingTop = `${halfWindowHeight}px`;
linesEl.style.paddingBottom = `${halfWindowHeight}px`; // Thanks @walulula!
if (cm.getSelection().length === 0) {
cm.execCommand("scrollSelectionToCenter");
}
}
var allowedUserEvents = /^(select|input|delete|undo|redo)(\..+)?$/;
var disallowedUserEvents = /^(select.pointer)$/;
var typewriterOffset = state.Facet.define({
combine: function (values) { return values.length ? Math.min.apply(Math, values) : 0.5; }
});
var resetTypewriterScrollPaddingPlugin = view.ViewPlugin.fromClass(/** @class */ (function () {
function class_1(view) {
this.view = view;
}
class_1.prototype.update = function (update) {
if (this.view.contentDOM.style.paddingTop) {
this.view.contentDOM.style.paddingTop = "";
this.view.contentDOM.style.paddingBottom = (update.view.dom.clientHeight / 2) + "px";
}
};
return class_1;
}()));
var typewriterScrollPaddingPlugin = view.ViewPlugin.fromClass(/** @class */ (function () {
function class_2(view) {
this.view = view;
this.topPadding = null;
}
class_2.prototype.update = function (update) {
var offset = (update.view.dom.clientHeight * update.view.state.facet(typewriterOffset)) - (update.view.defaultLineHeight / 2);
this.topPadding = offset + "px";
if (this.topPadding != this.view.contentDOM.style.paddingTop) {
this.view.contentDOM.style.paddingTop = this.topPadding;
this.view.contentDOM.style.paddingBottom = (update.view.dom.clientHeight - offset) + "px";
}
};
return class_2;
}()));
var typewriterScrollPlugin = view.ViewPlugin.fromClass(/** @class */ (function () {
function class_3(view) {
this.view = view;
this.myUpdate = false;
}
class_3.prototype.update = function (update) {
if (this.myUpdate)
this.myUpdate = false;
else {
var userEvents = update.transactions.map(function (tr) { return tr.annotation(state.Transaction.userEvent); });
var isAllowed = userEvents.reduce(function (result, event) { return result && allowedUserEvents.test(event) && !disallowedUserEvents.test(event); }, userEvents.length > 0);
if (isAllowed) {
this.myUpdate = true;
this.centerOnHead(update);
}
}
};
class_3.prototype.centerOnHead = function (update) {
return __awaiter(this, void 0, void 0, function () {
var _this = this;
return __generator(this, function (_a) {
// can't update inside an update, so request the next animation frame
window.requestAnimationFrame(function () {
// current selection range
if (update.state.selection.ranges.length == 1) {
// only act on the one range
var head = update.state.selection.main.head;
var prevHead = update.startState.selection.main.head;
// TODO: work out line number and use that instead? Is that even possible?
// don't bother with this next part if the range (line??) hasn't changed
if (prevHead != head) {
// this is the effect that does the centering
var offset = (update.view.dom.clientHeight * update.view.state.facet(typewriterOffset)) - (update.view.defaultLineHeight / 2);
var effect = view.EditorView.scrollIntoView(head, { y: "start", yMargin: offset });
// const effect = EditorView.scrollIntoView(head, { y: "center" });
var transaction = _this.view.state.update({ effects: effect });
_this.view.dispatch(transaction);
}
}
});
return [2 /*return*/];
});
});
};
return class_3;
}()));
function typewriterScroll(options) {
if (options === void 0) { options = {}; }
return [
options.typewriterOffset == null ? [] : typewriterOffset.of(options.typewriterOffset),
typewriterScrollPaddingPlugin,
typewriterScrollPlugin
];
}
function resetTypewriterSrcoll() {
return [
resetTypewriterScrollPaddingPlugin
];
}
var DEFAULT_SETTINGS = {
enabled: true,
typewriterOffset: 0.5,
zenEnabled: false,
zenOpacity: 0.25
};
var CMTypewriterScrollPlugin = /** @class */ (function (_super) {
__extends(CMTypewriterScrollPlugin, _super);
function CMTypewriterScrollPlugin() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.extArray = [];
_this.toggleTypewriterScroll = function (newValue) {
if (newValue === void 0) { newValue = null; }
// if no value is passed in, toggle the existing value
if (newValue === null)
newValue = !_this.settings.enabled;
// assign the new value and call the correct enable / disable function
(_this.settings.enabled = newValue)
? _this.enableTypewriterScroll() : _this.disableTypewriterScroll();
// save the new settings
_this.saveData(_this.settings);
};
_this.changeTypewriterOffset = function (newValue) {
_this.settings.typewriterOffset = newValue;
if (_this.settings.enabled) {
_this.disableTypewriterScroll();
// delete the extension, so it gets recreated with the new value
delete _this.ext;
_this.enableTypewriterScroll();
}
_this.saveData(_this.settings);
};
_this.toggleZen = function (newValue) {
if (newValue === void 0) { newValue = null; }
// if no value is passed in, toggle the existing value
if (newValue === null)
newValue = !_this.settings.zenEnabled;
// assign the new value and call the correct enable / disable function
(_this.settings.zenEnabled = newValue)
? _this.enableZen() : _this.disableZen();
// save the new settings
_this.saveData(_this.settings);
};
_this.changeZenOpacity = function (newValue) {
if (newValue === void 0) { newValue = 0.25; }
_this.settings.zenOpacity = newValue;
_this.css.innerText = "body{--zen-opacity: ".concat(newValue, ";}");
// save the new settings
_this.saveData(_this.settings);
};
_this.enableTypewriterScroll = function () {
// add the class
document.body.classList.add('plugin-cm-typewriter-scroll');
// register the codemirror add on setting
_this.registerCodeMirror(function (cm) {
// @ts-ignore
cm.setOption("typewriterScrolling", true);
});
if (!_this.ext) {
_this.ext = typewriterScroll({ typewriterOffset: _this.settings.typewriterOffset });
_this.extArray = [_this.ext];
_this.registerEditorExtension(_this.extArray);
}
else {
_this.extArray.splice(0, _this.extArray.length);
_this.extArray.push(_this.ext);
_this.app.workspace.updateOptions();
}
};
_this.disableTypewriterScroll = function () {
// remove the class
document.body.classList.remove('plugin-cm-typewriter-scroll');
// remove the codemirror add on setting
_this.app.workspace.iterateCodeMirrors(function (cm) {
// @ts-ignore
cm.setOption("typewriterScrolling", false);
});
// clear out the registered extension
_this.extArray.splice(0, _this.extArray.length);
_this.extArray.push(resetTypewriterSrcoll());
_this.app.workspace.updateOptions();
};
_this.enableZen = function () {
// add the class
document.body.classList.add('plugin-cm-typewriter-scroll-zen');
};
_this.disableZen = function () {
// remove the class
document.body.classList.remove('plugin-cm-typewriter-scroll-zen');
};
return _this;
}
CMTypewriterScrollPlugin.prototype.onload = function () {
return __awaiter(this, void 0, void 0, function () {
var _a, _b, _c, _d;
return __generator(this, function (_e) {
switch (_e.label) {
case 0:
_a = this;
_c = (_b = Object).assign;
_d = [DEFAULT_SETTINGS];
return [4 /*yield*/, this.loadData()];
case 1:
_a.settings = _c.apply(_b, _d.concat([_e.sent()]));
// enable the plugin (based on settings)
if (this.settings.enabled)
this.enableTypewriterScroll();
if (this.settings.zenEnabled)
this.enableZen();
this.css = document.createElement('style');
this.css.id = 'plugin-typewriter-scroll';
this.css.setAttr('type', 'text/css');
document.getElementsByTagName("head")[0].appendChild(this.css);
this.css.innerText = "body{--zen-opacity: ".concat(this.settings.zenOpacity, ";}");
// add the settings tab
this.addSettingTab(new CMTypewriterScrollSettingTab(this.app, this));
// add the commands / keyboard shortcuts
this.addCommands();
return [2 /*return*/];
}
});
});
};
CMTypewriterScrollPlugin.prototype.onunload = function () {
// disable the plugin
this.disableTypewriterScroll();
this.disableZen();
};
CMTypewriterScrollPlugin.prototype.addCommands = function () {
var _this = this;
// add the toggle on/off command
this.addCommand({
id: 'toggle-typewriter-sroll',
name: 'Toggle On/Off',
callback: function () { _this.toggleTypewriterScroll(); }
});
// toggle zen mode
this.addCommand({
id: 'toggle-typewriter-sroll-zen',
name: 'Toggle Zen Mode On/Off',
callback: function () { _this.toggleZen(); }
});
};
return CMTypewriterScrollPlugin;
}(obsidian.Plugin));
var CMTypewriterScrollSettingTab = /** @class */ (function (_super) {
__extends(CMTypewriterScrollSettingTab, _super);
function CMTypewriterScrollSettingTab(app, plugin) {
var _this = _super.call(this, app, plugin) || this;
_this.plugin = plugin;
return _this;
}
CMTypewriterScrollSettingTab.prototype.display = function () {
var _this = this;
var containerEl = this.containerEl;
containerEl.empty();
new obsidian.Setting(containerEl)
.setName("Toggle Typewriter Scrolling")
.setDesc("Turns typewriter scrolling on or off globally")
.addToggle(function (toggle) {
return toggle.setValue(_this.plugin.settings.enabled)
.onChange(function (newValue) { _this.plugin.toggleTypewriterScroll(newValue); });
});
new obsidian.Setting(containerEl)
.setName("Center offset")
.setDesc("Positions the typewriter text at the specified percentage of the screen")
.addSlider(function (slider) {
return slider.setLimits(0, 100, 5)
.setValue(_this.plugin.settings.typewriterOffset * 100)
.onChange(function (newValue) { _this.plugin.changeTypewriterOffset(newValue / 100); });
});
new obsidian.Setting(containerEl)
.setName("Zen Mode")
.setDesc("Darkens non-active lines in the editor so you can focus on what you're typing")
.addToggle(function (toggle) {
return toggle.setValue(_this.plugin.settings.zenEnabled)
.onChange(function (newValue) { _this.plugin.toggleZen(newValue); });
});
new obsidian.Setting(containerEl)
.setName("Zen Opacity")
.setDesc("The opacity of unfocused lines in zen mode")
.addSlider(function (slider) {
return slider.setLimits(0, 100, 5)
.setValue(_this.plugin.settings.zenOpacity * 100)
.onChange(function (newValue) { _this.plugin.changeZenOpacity(newValue / 100); });
});
};
return CMTypewriterScrollSettingTab;
}(obsidian.PluginSettingTab));
module.exports = CMTypewriterScrollPlugin;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZXMiOlsibm9kZV9tb2R1bGVzL3RzbGliL3RzbGliLmVzNi5qcyIsInR5cGV3cml0ZXItc2Nyb2xsaW5nLmpzIiwiZXh0ZW5zaW9uLnRzIiwibWFpbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uXHJcblxyXG5QZXJtaXNzaW9uIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnlcclxucHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLlxyXG5cclxuVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiBBTkQgVEhFIEFVVEhPUiBESVNDTEFJTVMgQUxMIFdBUlJBTlRJRVMgV0lUSFxyXG5SRUdBUkQgVE8gVEhJUyBTT0ZUV0FSRSBJTkNMVURJTkcgQUxMIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFlcclxuQU5EIEZJVE5FU1MuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBBVVRIT1IgQkUgTElBQkxFIEZPUiBBTlkgU1BFQ0lBTCwgRElSRUNULFxyXG5JTkRJUkVDVCwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIE9SIEFOWSBEQU1BR0VTIFdIQVRTT0VWRVIgUkVTVUxUSU5HIEZST01cclxuTE9TUyBPRiBVU0UsIERBVEEgT1IgUFJPRklUUywgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIE5FR0xJR0VOQ0UgT1JcclxuT1RIRVIgVE9SVElPVVMgQUNUSU9OLCBBUklTSU5HIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFVTRSBPUlxyXG5QRVJGT1JNQU5DRSBPRiBUSElTIFNPRlRXQVJFLlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAqL1xyXG4vKiBnbG9iYWwgUmVmbGVjdCwgUHJvbWlzZSAqL1xyXG5cclxudmFyIGV4dGVuZFN0YXRpY3MgPSBmdW5jdGlvbihkLCBiKSB7XHJcbiAgICBleHRlbmRTdGF0aWNzID0gT2JqZWN0LnNldFByb3RvdHlwZU9mIHx8XHJcbiAgICAgICAgKHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24gKGQsIGIpIHsgZC5fX3Byb3RvX18gPSBiOyB9KSB8fFxyXG4gICAgICAgIGZ1bmN0aW9uIChkLCBiKSB7IGZvciAodmFyIHAgaW4gYikgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChiLCBwKSkgZFtwXSA9IGJbcF07IH07XHJcbiAgICByZXR1cm4gZXh0ZW5kU3RhdGljcyhkLCBiKTtcclxufTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2V4dGVuZHMoZCwgYikge1xyXG4gICAgaWYgKHR5cGVvZiBiICE9PSBcImZ1bmN0aW9uXCIgJiYgYiAhPT0gbnVsbClcclxuICAgICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKFwiQ2xhc3MgZXh0ZW5kcyB2YWx1ZSBcIiArIFN0cmluZyhiKSArIFwiIGlzIG5vdCBhIGNvbnN0cnVjdG9yIG9yIG51bGxcIik7XHJcbiAgICBleHRlbmRTdGF0aWNzKGQsIGIpO1xyXG4gICAgZnVuY3Rpb24gX18oKSB7IHRoaXMuY29uc3RydWN0b3IgPSBkOyB9XHJcbiAgICBkLnByb3RvdHlwZSA9IGIgPT09IG51bGwgPyBPYmplY3QuY3JlYXRlKGIpIDogKF9fLnByb3RvdHlwZSA9IGIucHJvdG90eXBlLCBuZXcgX18oKSk7XHJcbn1cclxuXHJcbmV4cG9ydCB2YXIgX19hc3NpZ24gPSBmdW5jdGlvbigpIHtcclxuICAgIF9fYXNzaWduID0gT2JqZWN0LmFzc2lnbiB8fCBmdW5jdGlvbiBfX2Fzc2lnbih0KSB7XHJcbiAgICAgICAgZm9yICh2YXIgcywgaSA9IDEsIG4gPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgbjsgaSsrKSB7XHJcbiAgICAgICAgICAgIHMgPSBhcmd1bWVudHNbaV07XHJcbiAgICAgICAgICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSkgdFtwXSA9IHNbcF07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIF9fYXNzaWduLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3Jlc3QocywgZSkge1xyXG4gICAgdmFyIHQgPSB7fTtcclxuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxyXG4gICAgICAgIHRbcF0gPSBzW3BdO1xyXG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxyXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxyXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XHJcbiAgICAgICAgfVxyXG4gICAgcmV0dXJuIHQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2RlY29yYXRlKGRlY29yYXRvcnMsIHRhcmdldCwga2V5LCBkZXNjKSB7XHJcbiAgICB2YXIgYyA9IGFyZ3VtZW50cy5sZW5ndGgsIHIgPSBjIDwgMyA/IHRhcmdldCA6IGRlc2MgPT09IG51bGwgPyBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIGtleSkgOiBkZXNjLCBkO1xyXG4gICAgaWYgKHR5cGVvZiBSZWZsZWN0ID09PSBcIm9iamVjdFwiICYmIHR5cGVvZiBSZWZsZWN0LmRlY29yYXRlID09PSBcImZ1bmN0aW9uXCIpIHIgPSBSZWZsZWN0LmRlY29yYXRlKGRlY29yYXRvcnMsIHRhcmdldCwga2V5LCBkZXNjKTtcclxuICAgIGVsc2UgZm9yICh2YXIgaSA9IGRlY29yYXRvcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIGlmIChkID0gZGVjb3JhdG9yc1tpXSkgciA9IChjIDwgMyA/IGQocikgOiBjID4gMyA/IGQodGFyZ2V0LCBrZXksIHIpIDogZCh0YXJnZXQsIGtleSkpIHx8IHI7XHJcbiAgICByZXR1cm4gYyA+IDMgJiYgciAmJiBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHIpLCByO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19wYXJhbShwYXJhbUluZGV4LCBkZWNvcmF0b3IpIHtcclxuICAgIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0LCBrZXkpIHsgZGVjb3JhdG9yKHRhcmdldCwga2V5LCBwYXJhbUluZGV4KTsgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19tZXRhZGF0YShtZXRhZGF0YUtleSwgbWV0YWRhdGFWYWx1ZSkge1xyXG4gICAgaWYgKHR5cGVvZiBSZWZsZWN0ID09PSBcIm9iamVjdFwiICYmIHR5cGVvZiBSZWZsZWN0Lm1ldGFkYXRhID09PSBcImZ1bmN0aW9uXCIpIHJldHVybiBSZWZsZWN0Lm1ldGFkYXRhKG1ldGFkYXRhS2V5LCBtZXRhZGF0YVZhbHVlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fYXdhaXRlcih0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHtcclxuICAgIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7IHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFAgPyB2YWx1ZSA6IG5ldyBQKGZ1bmN0aW9uIChyZXNvbHZlKSB Line truncated
@@ -0,0 +1,10 @@
{
"id": "cm-typewriter-scroll-obsidian",
"name": "Typewriter Scroll",
"author": "death_au",
"authorUrl": "https://github.com/deathau",
"description": "Typewriter-style scrolling which keeps the view centered in the editor.",
"isDesktopOnly": false,
"version": "0.2.2",
"minAppVersion": "0.10.0"
}
@@ -0,0 +1,6 @@
body.plugin-cm-typewriter-scroll-zen .CodeMirror-lines:not(.selecting) .CodeMirror-code > :not(.CodeMirror-activeline) {
opacity: var(--zen-opacity);
}
body.plugin-cm-typewriter-scroll-zen .cm-editor.cm-focused .cm-line:not(.cm-active) {
opacity: var(--zen-opacity);
}
+20105
View File
File diff suppressed because it is too large. Load diff
+10
View File
@@ -0,0 +1,10 @@
{
"id": "dataview",
"name": "Dataview",
"version": "0.5.59",
"minAppVersion": "0.13.11",
"description": "Complex data views for the data-obsessed.",
"author": "Michael Brenan <blacksmithgu@gmail.com>",
"authorUrl": "https://github.com/blacksmithgu",
"isDesktopOnly": false
}
+146
View File
@@ -0,0 +1,146 @@
/** Live Preview padding fixes, specifically for DataviewJS custom HTML elements. */
.is-live-preview .block-language-dataviewjs > p, .is-live-preview .block-language-dataviewjs > span {
line-height: 1.0;
}
.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(--text-nav-selected);
}
.dataview.inline-field-value {
padding-left: 8px;
padding-right: 8px;
font-family: var(--font-monospace);
background-color: var(--background-secondary-alt);
color: var(--text-nav-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(--text-nav-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: ")";
}
+10
View File
@@ -0,0 +1,10 @@
{
"welcomeComplete": true,
"theme": {
"dark": true,
"layout": "compact"
},
"drawing": {
"sketch": false
}
}
+15
View File
@@ -0,0 +1,15 @@
"use strict";var e=require("obsidian");
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */function t(e,t,n,i){return new(n||(n=Promise))((function(a,r){function l(e){try{s(i.next(e))}catch(e){r(e)}}function o(e){try{s(i.throw(e))}catch(e){r(e)}}function s(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(l,o)}s((i=i.apply(e,t||[])).next())}))}class n extends e.EditableFileView{constructor(e,t){super(e),this.plugin=t}onMoreOptionsMenu(e){super.onMoreOptionsMenu(e),e.addItem((e=>{e.onClick((e=>{this.saveAsPng()})),e.setIcon("image-file"),e.setTitle("Export as png")}))}readBlob(e){const t=new FileReader;return new Promise((n=>{t.onload=e=>{n(e.target.result)},t.readAsDataURL(e)}))}loadImage(e){const t=new Image;return new Promise((n=>{t.onload=()=>n(t),t.src=e}))}saveAsPng(){return t(this,void 0,void 0,(function*(){const e=yield this.app.vault.read(this.file),t=document.createElement("canvas"),n=t.getContext("2d"),i=new Blob([e],{type:"image/svg+xml"}),a=yield this.readBlob(i),r=yield this.loadImage(a);t.height=r.naturalHeight,t.width=r.naturalWidth,n.fillStyle="#fff",n.fillRect(0,0,t.width,t.height),n.drawImage(r,0,0);const l=t.toDataURL("image/png"),o=document.createElement("a");o.setAttribute("href",l),o.setAttribute("download",this.file.basename+".png"),document.body.appendChild(o),o.click(),document.body.removeChild(o)}))}}var i,a;!function(e){e.Script="script",e.Stylesheet="stylesheet",e.Css="css",e.FrameConfig="frame-config",e.Load="load",e.ToggleBodyClass="toggle-body-class"}(i||(i={})),function(e){e.Change="change",e.Iframe="iframe",e.Init="init",e.Load="load",e.FocusIn="focusin",e.FocusOut="focusout"}(a||(a={}));class r{constructor(e,t){this.awaitedMessages=new Set,this.targetFactory=e,this.listener=n=>{const i=e();if(n.source!==i)return;const a=JSON.parse(n.data);t&&t(a);Array.from(this.awaitedMessages.values()).forEach((e=>{e.filter(a)&&(this.awaitedMessages.delete(e),e.callback(a))}))},window.addEventListener("message",this.listener)}validateTarget(e){if("object"!=typeof e||null===e)throw Error("Target window is not an object");if("function"!=typeof e.postMessage)throw Error("Target window does not have a postMessage function")}waitForMessage(e,t){return new Promise(((n,i)=>{const a=setTimeout((()=>{this.awaitedMessages.delete(r),i("Timeout waiting for message")}),t),r={filter:e,callback:e=>{this.awaitedMessages.delete(r),clearTimeout(a),n(e)}};this.awaitedMessages.add(r)}))}sendMessageAndWait(e,t,n){const i=this.targetFactory();this.validateTarget(i);const a=this.waitForMessage(t,n);return i.postMessage(JSON.stringify(e),"*"),a}sendMessage(e){const t=this.targetFactory();this.validateTarget(t),t.postMessage(JSON.stringify(e),"*")}destroy(){window.removeEventListener("message",this.listener)}}class l extends Event{constructor(e){super("fileChange"),this.data=e}}class o extends Event{constructor(e){super("fileLoad"),this.data=e}}class s extends Event{constructor(e){super("stateChange"),this.initialized=e}}class c{constructor(e,t){this.iframeElement=null,this.contentEl=e,this.settings=t,this.file=null,this.isInitialized=!1,this.iframeElement=this.createFrameElement(),this.frameMessenger=new r((()=>this.iframeElement.contentWindow),this.handleMessage.bind(this)),this.contentEl.appendChild(this.iframeElement)}destroy(){this.iframeElement&&(this.iframeElement.parentElement&&this.iframeElement.parentElement.removeChild(this.iframeElement),this.iframeElement=null),this.frameMessenger&&this.frameMessenger.destroy()}loadFile(e){return t(this,void 0,void 0,(function*(){this.file=null,this.isInitialized||(yield this.waitForInit()),this.frameMessenger.sendMessage({action:i.Load,xml:e});const t="undefined"!==(yield this.frameMessenger.waitForMessage((e=>"load"===e.event),5e3)).xml;return t&&(this.file={data:e}),t}))}addEventListener(e,t,n){return this.iframeElement.addEventListener.call(this.iframeElement,e,t,n)}dispatchEvent(e){return this.iframeElement.dispatchEvent.call(this.iframeElement,e)}removeEventListener(e,t,n){return this.iframeElement.removeEventListener.call(this.iframeElement,e,t,n)}createFrameElement(){const e="data:text/html,"+encodeURIComponent('\n<script>\nconst onWindowMessage = (messageEvent) => {\n const message = JSON.parse(messageEvent.data);\n if(message.action==="script"){\n const scriptElement = document.createElement("script");\n scriptElement.text = message.script;\n document.head.appendChild(scriptElement);\n }\n window.removeEventListener("message", onWindowMessage);\n}\nwindow.addEventListener("message",onWindowMessage);\nwindow.parent.postMessage("{\\"event\\":\\"iframe\\"}",\'*\');\n<\/script>'),t=document.createElement("iframe");return t.setAttribute("frameborder","0"),t.setAttribute("style","z-index:1;display:block;height:100%;width:100%;"),t.setAttribute("src",e),t}toggleBodyClassName(e,t){this.frameMessenger.sendMessage({action:i.ToggleBodyClass,className:e,force:t})}addScriptToFrame(e){this.frameMessenger.sendMessage({action:i.ScriLine truncated
+10
View File
@@ -0,0 +1,10 @@
{
"id": "drawio-obsidian",
"name": "Diagrams",
"version": "1.5.0",
"minAppVersion": "0.9.12",
"description": "Draw.io diagrams for Obsidian. This plugin introduces diagrams that can be included within notes or as stand-alone files. Diagrams are created as SVG files (although .drawio extensions are also supported).",
"author": "Sam Greenhalgh",
"authorUrl": "https://www.radicalresearch.co.uk/",
"isDesktopOnly": true
}
+28
View File
@@ -0,0 +1,28 @@
.progress-bar-line {
width: 100%;
left: 0;
}
.progress-bar-indicator {
width: 90%;
margin: 0 10%;
}
.diagram-view svg {
max-width: 100%;
max-height: 100%;
display: block;
}
.diagram-view svg a:link,
.diagram-view svg a:visited {
color: var(--interactive-accent, #00f);
filter: drop-shadow(
0 0 3px rgba(var(--interactive-accent-rgb, "0, 0, 255"), 0.5)
);
}
.diagram-view svg a:hover {
color: var(--interactive-accent-hover, #00f);
filter: drop-shadow(0 0 3px var(--interactive-accent-hover, #00f));
}
+5
View File
@@ -0,0 +1,5 @@
{
"startupSetting": true,
"lifecycleSetting": "3",
"savePathSetting": "/home/boris/Documents/Obsidian"
}
File diff suppressed because it is too large. Load diff
+13
View File
@@ -0,0 +1,13 @@
{
"id": "local-backup",
"name": "Local Backup",
"version": "0.0.5",
"minAppVersion": "0.15.0",
"description": "Automatically creates a local backup of the vault.",
"author": "GC Chen",
"authorUrl": "https://github.com/cgcel/obsidian-local-backup",
"fundingUrl": "https://www.buymeacoffee.com/cgcel",
"isDesktopOnly": true,
"js": "main.js",
"tags": ["backup"]
}
+17
View File
@@ -0,0 +1,17 @@
{
"circularProgress": true,
"nowAndNextInStatusBar": true,
"showTaskNotification": true,
"zoomLevel": 2,
"timelineIcon": "calendar-with-checkmark",
"endLabel": "All done",
"startHour": 6,
"timelineDateFormat": "LLLL",
"centerNeedle": false,
"showHelp": true,
"plannerHeading": "Day planner",
"plannerHeadingLevel": 1,
"timelineColored": false,
"timelineStartColor": "#006466",
"timelineEndColor": "#4d194d"
}
File diff suppressed because it is too large. Load diff
+11
View File
@@ -0,0 +1,11 @@
{
"id": "obsidian-day-planner",
"name": "Day Planner",
"version": "0.10.1",
"minAppVersion": "0.16.0",
"description": "A day planner with clean UI and readable syntax",
"author": "James Lynch, continued by Ivan Lednev",
"authorUrl": "https://github.com/ivan-lednev",
"fundingUrl": "https://www.buymeacoffee.com/machineelf",
"isDesktopOnly": false
}
+463
View File
@@ -0,0 +1,463 @@
/* src/styles.scss */
.progress-pie {
width: 60px;
height: 60px;
border-radius: 50%;
background: #eee;
background-image: linear-gradient(to right, transparent 50%, #4CC9D8 0);
position: relative;
display: inline-block;
}
.progress-pie::before {
content: "";
display: block;
margin-left: 50%;
height: 100%;
border-radius: 0 100% 100% 0/50%;
background-color: inherit;
transform-origin: left;
}
.progress-pie::after {
content: attr(data-value);
position: absolute;
width: 70%;
height: 70%;
margin: auto;
border-radius: 50%;
background-color: #fff;
left: 0;
right: 0;
top: 0;
bottom: 0;
text-align: center;
font: 900 20px/41px Tahoma;
}
.progress-pie[data-value="0"]:before {
transform: rotate(0turn);
}
.progress-pie[data-value="1"]:before {
transform: rotate(0.01turn);
}
.progress-pie[data-value="2"]:before {
transform: rotate(0.02turn);
}
.progress-pie[data-value="3"]:before {
transform: rotate(0.03turn);
}
.progress-pie[data-value="4"]:before {
transform: rotate(0.04turn);
}
.progress-pie[data-value="5"]:before {
transform: rotate(0.05turn);
}
.progress-pie[data-value="6"]:before {
transform: rotate(0.06turn);
}
.progress-pie[data-value="7"]:before {
transform: rotate(0.07turn);
}
.progress-pie[data-value="8"]:before {
transform: rotate(0.08turn);
}
.progress-pie[data-value="9"]:before {
transform: rotate(0.09turn);
}
.progress-pie[data-value="10"]:before {
transform: rotate(0.1turn);
}
.progress-pie[data-value="11"]:before {
transform: rotate(0.11turn);
}
.progress-pie[data-value="12"]:before {
transform: rotate(0.12turn);
}
.progress-pie[data-value="13"]:before {
transform: rotate(0.13turn);
}
.progress-pie[data-value="14"]:before {
transform: rotate(0.14turn);
}
.progress-pie[data-value="15"]:before {
transform: rotate(0.15turn);
}
.progress-pie[data-value="16"]:before {
transform: rotate(0.16turn);
}
.progress-pie[data-value="17"]:before {
transform: rotate(0.17turn);
}
.progress-pie[data-value="18"]:before {
transform: rotate(0.18turn);
}
.progress-pie[data-value="19"]:before {
transform: rotate(0.19turn);
}
.progress-pie[data-value="20"]:before {
transform: rotate(0.2turn);
}
.progress-pie[data-value="21"]:before {
transform: rotate(0.21turn);
}
.progress-pie[data-value="22"]:before {
transform: rotate(0.22turn);
}
.progress-pie[data-value="23"]:before {
transform: rotate(0.23turn);
}
.progress-pie[data-value="24"]:before {
transform: rotate(0.24turn);
}
.progress-pie[data-value="25"]:before {
transform: rotate(0.25turn);
}
.progress-pie[data-value="26"]:before {
transform: rotate(0.26turn);
}
.progress-pie[data-value="27"]:before {
transform: rotate(0.27turn);
}
.progress-pie[data-value="28"]:before {
transform: rotate(0.28turn);
}
.progress-pie[data-value="29"]:before {
transform: rotate(0.29turn);
}
.progress-pie[data-value="30"]:before {
transform: rotate(0.3turn);
}
.progress-pie[data-value="31"]:before {
transform: rotate(0.31turn);
}
.progress-pie[data-value="32"]:before {
transform: rotate(0.32turn);
}
.progress-pie[data-value="33"]:before {
transform: rotate(0.33turn);
}
.progress-pie[data-value="34"]:before {
transform: rotate(0.34turn);
}
.progress-pie[data-value="35"]:before {
transform: rotate(0.35turn);
}
.progress-pie[data-value="36"]:before {
transform: rotate(0.36turn);
}
.progress-pie[data-value="37"]:before {
transform: rotate(0.37turn);
}
.progress-pie[data-value="38"]:before {
transform: rotate(0.38turn);
}
.progress-pie[data-value="39"]:before {
transform: rotate(0.39turn);
}
.progress-pie[data-value="40"]:before {
transform: rotate(0.4turn);
}
.progress-pie[data-value="41"]:before {
transform: rotate(0.41turn);
}
.progress-pie[data-value="42"]:before {
transform: rotate(0.42turn);
}
.progress-pie[data-value="43"]:before {
transform: rotate(0.43turn);
}
.progress-pie[data-value="44"]:before {
transform: rotate(0.44turn);
}
.progress-pie[data-value="45"]:before {
transform: rotate(0.45turn);
}
.progress-pie[data-value="46"]:before {
transform: rotate(0.46turn);
}
.progress-pie[data-value="47"]:before {
transform: rotate(0.47turn);
}
.progress-pie[data-value="48"]:before {
transform: rotate(0.48turn);
}
.progress-pie[data-value="49"]:before {
transform: rotate(0.49turn);
}
.progress-pie[data-value="50"]:before {
transform: rotate(0.5turn);
}
.progress-pie[data-value="51"]:before {
background-color: #4CC9D8;
transform: rotate(0.01turn);
}
.progress-pie[data-value="52"]:before {
background-color: #4CC9D8;
transform: rotate(0.02turn);
}
.progress-pie[data-value="53"]:before {
background-color: #4CC9D8;
transform: rotate(0.03turn);
}
.progress-pie[data-value="54"]:before {
background-color: #4CC9D8;
transform: rotate(0.04turn);
}
.progress-pie[data-value="55"]:before {
background-color: #4CC9D8;
transform: rotate(0.05turn);
}
.progress-pie[data-value="56"]:before {
background-color: #4CC9D8;
transform: rotate(0.06turn);
}
.progress-pie[data-value="57"]:before {
background-color: #4CC9D8;
transform: rotate(0.07turn);
}
.progress-pie[data-value="58"]:before {
background-color: #4CC9D8;
transform: rotate(0.08turn);
}
.progress-pie[data-value="59"]:before {
background-color: #4CC9D8;
transform: rotate(0.09turn);
}
.progress-pie[data-value="60"]:before {
background-color: #4CC9D8;
transform: rotate(0.1turn);
}
.progress-pie[data-value="61"]:before {
background-color: #4CC9D8;
transform: rotate(0.11turn);
}
.progress-pie[data-value="62"]:before {
background-color: #4CC9D8;
transform: rotate(0.12turn);
}
.progress-pie[data-value="63"]:before {
background-color: #4CC9D8;
transform: rotate(0.13turn);
}
.progress-pie[data-value="64"]:before {
background-color: #4CC9D8;
transform: rotate(0.14turn);
}
.progress-pie[data-value="65"]:before {
background-color: #4CC9D8;
transform: rotate(0.15turn);
}
.progress-pie[data-value="66"]:before {
background-color: #4CC9D8;
transform: rotate(0.16turn);
}
.progress-pie[data-value="67"]:before {
background-color: #4CC9D8;
transform: rotate(0.17turn);
}
.progress-pie[data-value="68"]:before {
background-color: #4CC9D8;
transform: rotate(0.18turn);
}
.progress-pie[data-value="69"]:before {
background-color: #4CC9D8;
transform: rotate(0.19turn);
}
.progress-pie[data-value="70"]:before {
background-color: #4CC9D8;
transform: rotate(0.2turn);
}
.progress-pie[data-value="71"]:before {
background-color: #4CC9D8;
transform: rotate(0.21turn);
}
.progress-pie[data-value="72"]:before {
background-color: #4CC9D8;
transform: rotate(0.22turn);
}
.progress-pie[data-value="73"]:before {
background-color: #4CC9D8;
transform: rotate(0.23turn);
}
.progress-pie[data-value="74"]:before {
background-color: #4CC9D8;
transform: rotate(0.24turn);
}
.progress-pie[data-value="75"]:before {
background-color: #4CC9D8;
transform: rotate(0.25turn);
}
.progress-pie[data-value="76"]:before {
background-color: #4CC9D8;
transform: rotate(0.26turn);
}
.progress-pie[data-value="77"]:before {
background-color: #4CC9D8;
transform: rotate(0.27turn);
}
.progress-pie[data-value="78"]:before {
background-color: #4CC9D8;
transform: rotate(0.28turn);
}
.progress-pie[data-value="79"]:before {
background-color: #4CC9D8;
transform: rotate(0.29turn);
}
.progress-pie[data-value="80"]:before {
background-color: #4CC9D8;
transform: rotate(0.3turn);
}
.progress-pie[data-value="81"]:before {
background-color: #4CC9D8;
transform: rotate(0.31turn);
}
.progress-pie[data-value="82"]:before {
background-color: #4CC9D8;
transform: rotate(0.32turn);
}
.progress-pie[data-value="83"]:before {
background-color: #4CC9D8;
transform: rotate(0.33turn);
}
.progress-pie[data-value="84"]:before {
background-color: #4CC9D8;
transform: rotate(0.34turn);
}
.progress-pie[data-value="85"]:before {
background-color: #4CC9D8;
transform: rotate(0.35turn);
}
.progress-pie[data-value="86"]:before {
background-color: #4CC9D8;
transform: rotate(0.36turn);
}
.progress-pie[data-value="87"]:before {
background-color: #4CC9D8;
transform: rotate(0.37turn);
}
.progress-pie[data-value="88"]:before {
background-color: #4CC9D8;
transform: rotate(0.38turn);
}
.progress-pie[data-value="89"]:before {
background-color: #4CC9D8;
transform: rotate(0.39turn);
}
.progress-pie[data-value="90"]:before {
background-color: #4CC9D8;
transform: rotate(0.4turn);
}
.progress-pie[data-value="91"]:before {
background-color: #4CC9D8;
transform: rotate(0.41turn);
}
.progress-pie[data-value="92"]:before {
background-color: #4CC9D8;
transform: rotate(0.42turn);
}
.progress-pie[data-value="93"]:before {
background-color: #4CC9D8;
transform: rotate(0.43turn);
}
.progress-pie[data-value="94"]:before {
background-color: #4CC9D8;
transform: rotate(0.44turn);
}
.progress-pie[data-value="95"]:before {
background-color: #4CC9D8;
transform: rotate(0.45turn);
}
.progress-pie[data-value="96"]:before {
background-color: #4CC9D8;
transform: rotate(0.46turn);
}
.progress-pie[data-value="97"]:before {
background-color: #4CC9D8;
transform: rotate(0.47turn);
}
.progress-pie[data-value="98"]:before {
background-color: #4CC9D8;
transform: rotate(0.48turn);
}
.progress-pie[data-value="99"]:before {
background-color: #4CC9D8;
transform: rotate(0.49turn);
}
.progress-pie[data-value="100"]:before {
background-color: #4CC9D8;
transform: rotate(0.5turn);
}
.day-planner {
position: relative;
}
.day-planner .status-bar-item-segment:hover {
cursor: pointer;
}
.day-planner-progress-bar {
overflow: hidden;
display: flex;
align-items: stretch;
align-self: stretch;
min-width: 100px;
background-color: var(--text-faint);
border-radius: var(--radius-s);
}
.day-planner-progress-value {
background-color: var(--color-accent);
}
.day-planner-progress-value.green,
.day-planner .progress-pie.green::before {
background-color: #4caf50;
}
.day-planner .progress-pie.green {
background-image: linear-gradient(to right, transparent 50%, #4caf50 0);
}
.day-planner-status-bar-text {
float: left;
margin-right: 10px;
}
.day-planner-status-card {
position: absolute;
top: -140px;
display: none;
width: 300px;
padding: 8px;
background-color: var(--background-secondary-alt);
border-radius: 4px;
}
.day-planner-status-card .arrow-down {
position: absolute;
width: 20px;
border-top: 20px solid var(--background-secondary-alt);
border-right: 20px solid transparent;
border-left: 20px solid transparent;
}
.progress-pie.day-planner {
float: left;
display: none;
width: 20px;
height: 20px;
margin: 0.3px 10px 0.3px 0;
background-color: var(--text-muted);
}
.progress-pie.day-planner::after {
width: 80%;
height: 80%;
}
.progress-pie.day-planner::after {
font-size: 8px;
font-weight: 900;
line-height: 13px;
color: transparent;
background-color: transparent;
}
[data-type=timeline] .view-content,
[data-type=weekly] .view-content {
--time-ruler-width: 30px;
display: flex;
flex-direction: column;
padding: 0;
}
.absolute-stretch-x {
position: absolute;
right: 0;
left: 0;
}
File diff suppressed because it is too large. Load diff
+10
View File
@@ -0,0 +1,10 @@
{
"id": "obsidian-diagrams-net",
"name": "Diagrams.net",
"version": "1.0.4",
"minAppVersion": "0.12.0",
"description": "Enable diagrams.net (previously draw.io) type diagrams, with the diagrams.net embedded editor.",
"author": "Jens M Gleditsch",
"authorUrl": "https://github.com/jensmtg",
"isDesktopOnly": true
}
@@ -0,0 +1,228 @@
/*
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: () => ExcelToMarkdownTablePlugin
});
var import_obsidian = __toModule(require("obsidian"));
// src/table-alignment-syntax.ts
var ALIGNED_LEFT_SYNTAX = {
prefix: "",
postfix: "",
adjust: 0
};
var ALIGNED_RIGHT_SYNTAX = {
prefix: "",
postfix: ":",
adjust: 1
};
var ALIGNED_CENTER_SYNTAX = {
prefix: ":",
postfix: ":",
adjust: 2
};
// src/excel-markdown-helpers.ts
var ALIGNED_LEFT = "l";
var ALIGNED_RIGHT = "r";
var ALIGNED_CENTER = "c";
var EXCEL_COLUMN_DELIMITER = " ";
var MARKDOWN_NEWLINE = "<br/>";
var UNESCAPED_DOUBLE_QUOTE = '"';
var EXCEL_ROW_DELIMITER_REGEX = /[\n\u0085\u2028\u2029]|\r\n?/g;
var COLUMN_ALIGNMENT_REGEX = /^(\^[lcr])/i;
var EXCEL_NEWLINE_ESCAPED_CELL_REGEX = /"([^\t]*(?<=[^\r])\n[^\t]*)"/g;
var EXCEL_NEWLINE_REGEX = /\n/g;
var EXCEL_DOUBLE_QUOTE_ESCAPED_REGEX = /""/g;
function addMarkdownSyntax(rows, columnWidths) {
return rows.map(function(row, rowIndex) {
return "| " + row.map(function(column, index) {
column = column.replace("|", "\\|");
return column + Array(columnWidths[index] - column.length + 1).join(" ");
}).join(" | ") + " |";
});
}
function addAlignmentSyntax(markdownRows, columnWidths, colAlignments) {
let result = Object.assign([], markdownRows);
result.splice(1, 0, "|" + columnWidths.map(function(width, index) {
let { prefix, postfix, adjust } = calculateAlignmentMarkdownSyntaxMetadata(colAlignments[index]);
return prefix + Array(columnWidths[index] + 3 - adjust).join("-") + postfix;
}).join("|") + "|");
return result;
}
function calculateAlignmentMarkdownSyntaxMetadata(alignment) {
switch (alignment) {
case ALIGNED_LEFT:
return ALIGNED_LEFT_SYNTAX;
case ALIGNED_CENTER:
return ALIGNED_CENTER_SYNTAX;
case ALIGNED_RIGHT:
return ALIGNED_RIGHT_SYNTAX;
default:
return ALIGNED_LEFT_SYNTAX;
}
}
function getColumnWidthsAndAlignments(rows) {
let colAlignments = [];
return {
columnWidths: rows[0].map(function(column, columnIndex) {
let alignment = columnAlignment(column);
colAlignments.push(alignment);
column = column.replace(COLUMN_ALIGNMENT_REGEX, "");
rows[0][columnIndex] = column;
return columnWidth(rows, columnIndex);
}),
colAlignments
};
}
function columnAlignment(columnHeaderText) {
var m = columnHeaderText.match(COLUMN_ALIGNMENT_REGEX);
if (m) {
var alignChar = m[1][1].toLowerCase();
return columnAlignmentFromChar(alignChar);
}
return ALIGNED_LEFT;
}
function columnAlignmentFromChar(alignChar) {
switch (alignChar) {
case ALIGNED_LEFT:
return ALIGNED_LEFT;
case ALIGNED_CENTER:
return ALIGNED_CENTER;
case ALIGNED_RIGHT:
return ALIGNED_RIGHT;
default:
return ALIGNED_LEFT;
}
}
function columnWidth(rows, columnIndex) {
return Math.max.apply(null, rows.map(function(row) {
return row[columnIndex] && row[columnIndex].length || 0;
}));
}
function splitIntoRowsAndColumns(data) {
var rows = data.split(EXCEL_ROW_DELIMITER_REGEX).map(function(row) {
return row.split(EXCEL_COLUMN_DELIMITER);
});
return rows;
}
function replaceIntraCellNewline(data) {
let cellReplacer = (_) => _.slice(1, -1).replace(EXCEL_DOUBLE_QUOTE_ESCAPED_REGEX, UNESCAPED_DOUBLE_QUOTE).replace(EXCEL_NEWLINE_REGEX, MARKDOWN_NEWLINE);
return data.replace(EXCEL_NEWLINE_ESCAPED_CELL_REGEX, cellReplacer);
}
// src/excel-markdown-tables.ts
var LINE_ENDING = "\n";
function excelToMarkdown(rawData) {
let data = rawData.trim();
var intraCellNewlineReplacedData = replaceIntraCellNewline(data);
var rows = splitIntoRowsAndColumns(intraCellNewlineReplacedData);
var { columnWidths, colAlignments } = getColumnWidthsAndAlignments(rows);
const markdownRows = addMarkdownSyntax(rows, columnWidths);
return addAlignmentSyntax(markdownRows, columnWidths, colAlignments).join(LINE_ENDING);
}
function getExcelRows(rawData) {
let data = rawData.trim();
var intraCellNewlineReplacedData = replaceIntraCellNewline(data);
return splitIntoRowsAndColumns(intraCellNewlineReplacedData);
}
function excelRowsToMarkdown(rows) {
var { columnWidths, colAlignments } = getColumnWidthsAndAlignments(rows);
const markdownRows = addMarkdownSyntax(rows, columnWidths);
return addAlignmentSyntax(markdownRows, columnWidths, colAlignments).join(LINE_ENDING);
}
function isExcelData(rows) {
return rows && rows[0] && rows[0].length > 1 ? true : false;
}
// src/main.ts
var ExcelToMarkdownTablePlugin = class extends import_obsidian.Plugin {
constructor() {
super(...arguments);
this.pasteHandler = (evt, editor) => {
if (evt.clipboardData === null) {
return;
}
if (evt.clipboardData.types.length === 1 && evt.clipboardData.types[0] === "text/plain") {
return;
}
const rawData = evt.clipboardData.getData("text");
const rows = getExcelRows(rawData);
if (isExcelData(rows)) {
const markdownData = excelRowsToMarkdown(rows);
editor.replaceSelection(markdownData + "\n");
evt.preventDefault();
}
};
}
onload() {
return __async(this, null, function* () {
this.addCommand({
id: "excel-to-markdown-table",
name: "Excel to Markdown",
hotkeys: [
{
modifiers: ["Mod", "Alt"],
key: "v"
}
],
editorCallback: (editor, view) => __async(this, null, function* () {
const text = yield navigator.clipboard.readText();
editor.replaceSelection(excelToMarkdown(text));
})
});
this.app.workspace.on("editor-paste", this.pasteHandler);
});
}
onunload() {
this.app.workspace.off("editor-paste", this.pasteHandler);
}
};
@@ -0,0 +1,10 @@
{
"id": "obsidian-excel-to-markdown-table",
"name": "Excel to Markdown Table",
"version": "0.4.0",
"minAppVersion": "0.12.0",
"description": "An Obsidian plugin to paste data from Microsoft Excel, Google Sheets, Apple Numbers and LibreOffice Calc as Markdown tables in Obsidian editor.",
"author": "Ganessh Kumar R P <rpganesshkumar@gmail.com>",
"authorUrl": "https://ganesshkumar.com",
"isDesktopOnly": false
}
@@ -0,0 +1 @@
+55
View File
@@ -0,0 +1,55 @@
{
"commitMessage": "vault backup: {{date}}",
"commitDateFormat": "YYYY-MM-DD HH:mm:ss",
"autoSaveInterval": 0,
"autoPushInterval": 0,
"autoPullInterval": 0,
"autoPullOnBoot": false,
"disablePush": false,
"pullBeforePush": true,
"disablePopups": false,
"listChangedFilesInMessageBody": false,
"showStatusBar": true,
"updateSubmodules": false,
"syncMethod": "merge",
"customMessageOnAutoBackup": false,
"autoBackupAfterFileChange": false,
"treeStructure": true,
"refreshSourceControl": true,
"basePath": "",
"differentIntervalCommitAndPush": false,
"changedFilesInStatusBar": false,
"showedMobileNotice": true,
"refreshSourceControlTimer": 7000,
"showBranchStatusBar": true,
"setLastSaveToLastCommit": false,
"submoduleRecurseCheckout": false,
"gitDir": "",
"showFileMenu": true,
"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": "vault backup: {{date}}"
}
File diff suppressed because it is too large. Load diff
+9
View File
@@ -0,0 +1,9 @@
{
"id": "obsidian-git",
"name": "Obsidian Git",
"description": "Backup your vault with Git.",
"isDesktopOnly": false,
"fundingUrl": "https://ko-fi.com/vinzent",
"js": "main.js",
"version": "2.22.0"
}
+512
View File
@@ -0,0 +1,512 @@
@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: 0;
}
.workspace-leaf-content[data-type='git-history-view'] .view-content {
padding: 0;
}
.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-center-button {
display: block;
margin: 20px auto;
}
.tooltip.mod-left {
overflow-wrap: break-word;
}
.tooltip.mod-right {
overflow-wrap: break-word;
}
.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="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. */
}
+257
View File
@@ -0,0 +1,257 @@
{
"ruleConfigs": {
"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": ""
},
"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",
"force-retention-of-create-value": false,
"date-modified": true,
"date-modified-key": "date modified",
"format": "dddd, MMMM Do YYYY, h:mm:ss a"
},
"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
},
"capitalize-headings": {
"enabled": true,
"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": false
},
"remove-trailing-punctuation-in-heading": {
"enabled": false,
"punctuation-to-remove": ".,;:!。,;:!"
},
"footnote-after-punctuation": {
"enabled": true
},
"move-footnotes-to-the-bottom": {
"enabled": true
},
"re-index-footnotes": {
"enabled": true
},
"auto-correct-common-misspellings": {
"enabled": true,
"ignore-words": ""
},
"blockquote-style": {
"enabled": true,
"style": "space"
},
"convert-bullet-list-markers": {
"enabled": true
},
"emphasis-style": {
"enabled": true,
"style": "asterisk"
},
"no-bare-urls": {
"enabled": true,
"no-bare-uris": true
},
"ordered-list-style": {
"enabled": true,
"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": true,
"style": "consistent"
},
"two-spaces-between-lines-with-content": {
"enabled": true
},
"unordered-list-style": {
"enabled": true,
"list-style": "consistent"
},
"compact-yaml": {
"enabled": true,
"inner-new-lines": false
},
"consecutive-blank-lines": {
"enabled": true
},
"convert-spaces-to-tabs": {
"enabled": true,
"tabsize": " "
},
"empty-line-around-blockquotes": {
"enabled": true
},
"empty-line-around-code-fences": {
"enabled": true
},
"empty-line-around-math-blocks": {
"enabled": true
},
"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": true
},
"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": true
},
"space-between-chinese-japanese-or-korean-and-english-or-numbers": {
"enabled": false
},
"trailing-spaces": {
"enabled": true,
"twp-space-line-break": false
},
"add-blockquote-indentation-on-paste": {
"enabled": false
},
"prevent-double-checklist-indicator-on-paste": {
"enabled": true
},
"prevent-double-list-item-indicator-on-paste": {
"enabled": true
},
"proper-ellipsis-on-paste": {
"enabled": false
},
"remove-hyphens-on-paste": {
"enabled": false
},
"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": false,
"displayLintOnFileChangeNotice": false,
"settingsConvertedToConfigKeyValues": true,
"foldersToIgnore": [],
"linterLocale": "system-default",
"logLevel": "ERROR",
"lintCommands": [],
"customRegexes": [],
"commonStyles": {
"aliasArrayStyle": "single-line",
"tagArrayStyle": "single-line",
"minimumNumberOfDollarSignsToBeAMathBlock": 2,
"escapeCharacter": "\"",
"removeUnnecessaryEscapeCharsForMultiLineArrays": false
}
}
File diff suppressed because it is too large. Load diff
+10
View File
@@ -0,0 +1,10 @@
{
"id": "obsidian-linter",
"name": "Linter",
"version": "1.20.0",
"minAppVersion": "0.15.6",
"description": "Formats and styles your notes. It can be used to format YAML tags, aliases, arrays, and metadata; footnotes; headings; spacing; math blocks; regular markdown contents like list, italics, and bold styles; and more with the use of custom rule options as well.",
"author": "Victor Tao",
"authorUrl": "https://github.com/platers",
"isDesktopOnly": false
}
+225
View File
@@ -0,0 +1,225 @@
/**
* Based on https://github.com/Fevol/obsidian-translate/blob/master/src/ui/translator-components/SettingsPage.svelte
*/
.linter-navigation-item {
cursor: pointer;
border-radius: 100px;
border: 1px solid var(--background-modifier-border);
border-radius: 8px 8px 2px 2px;
font-weight: bold;
font-size: 16px;
display: flex;
flex-direction: row;
white-space: nowrap;
padding: 4px 6px;
align-items: center;
gap: 4px;
overflow: hidden;
background-color: var(--background-primary-secondary-alt);
transition: color 0.25s ease-in-out,
padding 0.25s ease-in-out,
background-color 0.35s cubic-bezier(0.45, 0.25, 0.83, 0.67),
max-width 0.35s cubic-bezier(0.57, 0.04, 0.58, 1);
height: 32px;
}
@media screen and (max-width: 1325px) {
.linter-navigation-item.linter-desktop {
max-width: 32px;
}
}
@media screen and (max-width: 800px) {
.linter-navigation-item.linter-mobile {
max-width: 32px;
}
}
.linter-navigation-item-icon {
padding-top: 5px;
}
.linter-navigation-item:hover {
border-color: var(--interactive-accent-hover);
border-bottom: 0px;
}
.linter-navigation-item-selected {
background-color: var(--interactive-accent) !important;
color: var(--text-on-accent);
padding: 4px 9px !important;
max-width: 100% !important;
border: 1px solid var(--background-modifier-border);
border-radius: 8px 8px 2px 2px;
border-bottom: 0px;
transition: color 0.25s ease-in-out,
padding 0.25s ease-in-out,
background-color 0.35s cubic-bezier(0.45, 0.25, 0.83, 0.67),
max-width 0.45s cubic-bezier(0.57, 0.04, 0.58, 1) 0.2s;
}
/**
* Based on https://github.com/phibr0/obsidian-commander/blob/main/src/styles.scss
*/
.linter {
transition: transform 400ms 0s;
}
.linter-setting-title {
display: flex;
align-items: baseline;
justify-content: space-between;
gap: 30px;
}
.linter-setting-title.linter-mobile {
justify-content: space-around;
}
.linter-setting-title h1 {
font-weight: 900;
margin-top: 6px;
margin-bottom: 12px;
}
.linter-setting-header {
margin-bottom: 24px;
overflow-y: hidden;
overflow-x: auto;
}
.linter-setting-header .linter-setting-tab-group {
display: flex;
align-items: flex-end;
flex-wrap: wrap;
width: 100%;
}
.linter-setting-tab-group {
margin-top: 6px;
padding-left: 2px;
padding-right: 2px;
border-bottom: 2px solid var(--background-modifier-border);
}
.linter-setting-header .linter-tab-settings {
padding: 6px 12px;
font-weight: 600;
cursor: pointer;
white-space: nowrap;
border-left: 2px solid transparent;
border-right: 2px solid transparent;
}
.linter-setting-header .linter-tab-settings:first-child {
margin-left: 6px;
}
.linter-setting-header .linter-tab-settings.linter-tab-settings-active {
border-bottom: 2px solid var(--background-primary);
transform: translateY(2px);
border-radius: 2px;
border-left: 2px solid var(--background-modifier-border);
border-top: 2px solid var(--background-modifier-border);
border-right: 2px solid var(--background-modifier-border);
}
/** Hide linter element css
* Based on https://zellwk.com/blog/hide-content-accessibly/
*/
.linter-navigation-item:not(.linter-navigation-item-selected) > span:nth-child(2),
.linter-visually-hidden {
border: 0;
clip: rect(0 0 0 0);
clip-path: rect(0 0 0 0);
height: auto;
margin: 0;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
white-space: nowrap;
}
/**
* Full-width text areas
* Based on https://github.com/nyable/obsidian-code-block-enhancer/blob/bb0c636c1e7609b6d26c48a8d7ca15d5cd9abdcf/src/styles/index.scss
*/
textarea.full-width {
width: 100%;
min-height: 10em;
margin-top: 0.8em;
margin-bottom: 0.8em;
}
.full-width-textbox-input-wrapper {
position: relative;
}
.settings-copy-button {
position: absolute;
top: 0.8em;
right: 0.8em;
margin: 0 0 0 auto;
padding: 4px;
}
.settings-copy-button svg.linter-clipboard path {
fill: var(--text-faint);
}
.settings-copy-button svg.linter-success path {
fill: var(--interactive-success);
}
.settings-copy-button:hover, .settings-copy-button:active {
cursor: pointer;
}
.settings-copy-button:hover svg path, .settings-copy-button:active svg path {
fill: var(--text-accent-hover);
transition: all ease 0.3s;
}
.settings-copy-button:focus {
outline: 0;
}
/**
* Custom regex replacement
*/
.linter-custom-regex-replacement-container div:last-child{
border: none;
}
.linter-custom-regex-replacement {
margin-bottom: 15px;
border: none;
border-bottom: var(--hr-thickness) solid;
border-color: var(--hr-color);
}
.linter-custom-regex-replacement-row2 {
flex-wrap: wrap;
}
.linter-custom-regex-replacement-normal-input {
width: 40%;
}
.linter-custom-regex-replacement-flags {
width: 15%;
}
.linter-custom-regex-replacement-label {
flex-direction: row-reverse;
}
.linter-custom-regex-replacement-label-input {
width: 50%;
}
/**
* Setting item no border
*/
.linter-no-border {
border: none;
}
/**
* Custom row
*/
.custom-row-description {
margin-top: 0px;
}
+28
View File
@@ -0,0 +1,28 @@
{
"useCache": true,
"hideExcluded": false,
"ignoreDiacritics": true,
"indexedFileTypes": [],
"PDFIndexing": false,
"imagesIndexing": false,
"unsupportedFilesIndexing": "no",
"splitCamelCase": true,
"openInNewPane": false,
"vimLikeNavigationShortcut": false,
"ribbonIcon": true,
"showExcerpt": true,
"renderLineReturnInExcerpts": true,
"showCreateButton": false,
"highlight": true,
"showPreviousQueryResults": true,
"simpleSearch": false,
"fuzziness": "1",
"weightBasename": 3,
"weightDirectory": 2,
"weightH1": 1.5,
"weightH2": 1.3,
"weightH3": 1.1,
"weightUnmarkedTags": 1.1,
"welcomeMessage": "1.10.1",
"verboseLogging": false
}
+50
View File
@@ -0,0 +1,50 @@
/*
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
if you want to view the source, please visit the github repository of this plugin
*/
var Gf=Object.create;var Zr=Object.defineProperty,Qf=Object.defineProperties,qf=Object.getOwnPropertyDescriptor,Yf=Object.getOwnPropertyDescriptors,Jf=Object.getOwnPropertyNames,Hs=Object.getOwnPropertySymbols,Xf=Object.getPrototypeOf,$s=Object.prototype.hasOwnProperty,Zf=Object.prototype.propertyIsEnumerable;var Ws=(t,e,r)=>e in t?Zr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,pe=(t,e)=>{for(var r in e||(e={}))$s.call(e,r)&&Ws(t,r,e[r]);if(Hs)for(var r of Hs(e))Zf.call(e,r)&&Ws(t,r,e[r]);return t},Me=(t,e)=>Qf(t,Yf(e)),Us=t=>Zr(t,"__esModule",{value:!0});var Mn=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ed=(t,e)=>{Us(t);for(var r in e)Zr(t,r,{get:e[r],enumerable:!0})},td=(t,e,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Jf(e))!$s.call(t,n)&&n!=="default"&&Zr(t,n,{get:()=>e[n],enumerable:!(r=qf(e,n))||r.enumerable});return t},je=t=>td(Us(Zr(t!=null?Gf(Xf(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var ol=Mn((Fn,ds)=>{(function(t,e){if(typeof Fn=="object"&&typeof ds=="object")ds.exports=e();else if(typeof define=="function"&&define.amd)define([],e);else{var r=e();for(var n in r)(typeof Fn=="object"?Fn:t)[n]=r[n]}})(typeof self!="undefined"?self:Fn,function(){return function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=t,r.c=e,r.d=function(n,i,o){r.o(n,i)||Object.defineProperty(n,i,{enumerable:!0,get:o})},r.r=function(n){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},r.t=function(n,i){if(1&i&&(n=r(n)),8&i||4&i&&typeof n=="object"&&n&&n.__esModule)return n;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:n}),2&i&&typeof n!="string")for(var s in n)r.d(o,s,function(a){return n[a]}.bind(null,s));return o},r.n=function(n){var i=n&&n.__esModule?function(){return n.default}:function(){return n};return r.d(i,"a",i),i},r.o=function(n,i){return Object.prototype.hasOwnProperty.call(n,i)},r.p="",r(r.s=0)}([function(t,e,r){"use strict";r.r(e),r.d(e,"md5",function(){return x});var n="0123456789abcdef".split(""),i=function(v){for(var d="",b=0;b<4;b++)d+=n[v>>8*b+4&15]+n[v>>8*b&15];return d},o=function(v){for(var d=v.length,b=0;b<d;b++)v[b]=i(v[b]);return v.join("")},s=function(v,d){return v+d&4294967295},a=function(v,d,b,m,g,y,_){return function(j,A,F){return s(j<<A|j>>>32-A,F)}(d=function(j,A,F,E){return A=s(s(A,j),s(F,E))}(v,d,m,y),g,b)},u=function(v,d,b,m,g,y,_,j){return a(b&m|~b&g,d,b,y,_,j,v)},l=function(v,d,b,m,g,y,_,j){return a(b&g|m&~g,d,b,y,_,j,v)},f=function(v,d,b,m,g,y,_,j){return a(b^m^g,d,b,y,_,j,v)},p=function(v,d,b,m,g,y,_,j){return a(m^(b|~g),d,b,y,_,j,v)},c=function(v,d,b){b===void 0&&(b=s);var m=v[0],g=v[1],y=v[2],_=v[3],j=u.bind(null,b);m=j(m,g,y,_,d[0],7,-680876936),_=j(_,m,g,y,d[1],12,-389564586),y=j(y,_,m,g,d[2],17,606105819),g=j(g,y,_,m,d[3],22,-1044525330),m=j(m,g,y,_,d[4],7,-176418897),_=j(_,m,g,y,d[5],12,1200080426),y=j(y,_,m,g,d[6],17,-1473231341),g=j(g,y,_,m,d[7],22,-45705983),m=j(m,g,y,_,d[8],7,1770035416),_=j(_,m,g,y,d[9],12,-1958414417),y=j(y,_,m,g,d[10],17,-42063),g=j(g,y,_,m,d[11],22,-1990404162),m=j(m,g,y,_,d[12],7,1804603682),_=j(_,m,g,y,d[13],12,-40341101),y=j(y,_,m,g,d[14],17,-1502002290),g=j(g,y,_,m,d[15],22,1236535329);var A=l.bind(null,b);m=A(m,g,y,_,d[1],5,-165796510),_=A(_,m,g,y,d[6],9,-1069501632),y=A(y,_,m,g,d[11],14,643717713),g=A(g,y,_,m,d[0],20,-373897302),m=A(m,g,y,_,d[5],5,-701558691),_=A(_,m,g,y,d[10],9,38016083),y=A(y,_,m,g,d[15],14,-660478335),g=A(g,y,_,m,d[4],20,-405537848),m=A(m,g,y,_,d[9],5,568446438),_=A(_,m,g,y,d[14],9,-1019803690),y=A(y,_,m,g,d[3],14,-187363961),g=A(g,y,_,m,d[8],20,1163531501),m=A(m,g,y,_,d[13],5,-1444681467),_=A(_,m,g,y,d[2],9,-51403784),y=A(y,_,m,g,d[7],14,1735328473),g=A(g,y,_,m,d[12],20,-1926607734);var F=f.bind(null,b);m=F(m,g,y,_,d[5],4,-378558),_=F(_,m,g,y,d[8],11,-2022574463),y=F(y,_,m,g,d[11],16,1839030562),g=F(g,y,_,m,d[14],23,-35309556),m=F(m,g,y,_,d[1],4,-1530992060),_=F(_,m,g,y,d[4],11,1272893353),y=F(y,_,m,g,d[7],16,-155497632),g=F(g,y,_,m,d[10],23,-1094730640),m=F(m,g,y,_,d[13],4,681279174),_=F(_,m,g,y,d[0],11,-358537222),y=F(y,_,m,g,d[3],16,-722521979),g=F(g,y,_,m,d[6],23,76029189),m=F(m,g,y,_,d[9],4,-640364487),_=F(_,m,g,y,d[12],11,-421815835),y=F(y,_,m,g,d[15],16,530742520),g=F(g,y,_,m,d[2],23,-995338651);var E=p.bind(null,b);m=E(m,g,y,_,d[0],6,-198630844),_=E(_,m,g,y,d[7],10,1126891415),y=E(y,_,m,g,d[14],15,-1416354905),g=E(g,y,_,m,d[5],21,-57434055),m=E(m,g,y,_,d[12],6,1700485571),_=E(_,m,g,y,d[3],10,-1894986606),y=E(y,_,m,g,d[10],15,-1051523),g=E(g,y,_,m,d[1],21,-2054922799),m=E(m,g,y,_,d[8],6,1873313359),_=E(_,m,g,y,d[15],10,-30611744),y=E(y,_,m,g,d[6],15,-1560198380),g=E(g,y,_,m,d[13],21,1309151649),m=E(m,g,y,_,d[4],6,-145523070),_=E(_,m,g,y,d[11],Line truncated
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var P=!0,re=!1,Ke;return{s:function(){I=I.call(C)},n:function(){var me=I.next();return P=me.done,me},e:function(me){re=!0,Ke=me},f:function(){try{!P&&I.return!=null&&I.return()}finally{if(re)throw Ke}}}}function l(C,S){if(!!C){if(typeof C=="string")return f(C,S);var I=Object.prototype.toString.call(C).slice(8,-1);if(I==="Object"&&C.constructor&&(I=C.constructor.name),I==="Map"||I==="Set")return Array.from(C);if(I==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(I))return f(C,S)}}function f(C,S){(S==null||S>C.length)&&(S=C.length);for(var I=0,N=new Array(S);I<S;I++)N[I]=C[I];return N}function p(C,S){if(!(C instanceof S))throw new TypeError("Cannot call a class as a function")}function c(C,S){for(var I=0;I<S.length;I++){var N=S[I];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(C,N.key,N)}}function h(C,S,I){return S&&c(C.prototype,S),I&&c(C,I),Object.defineProperty(C,"prototype",{writable:!1}),C}function w(C,S,I){return S in C?Object.defineProperty(C,S,{value:I,enumerable:!0,configurable:!0,writable:!0}):C[S]=I,C}function x(C,S,I){v(C,S),S.set(C,I)}function v(C,S){if(S.has(C))throw new TypeError("Cannot initialize the same private elements twice on an object")}function d(C,S){var I=g(C,S,"get");return b(C,I)}function b(C,S){return S.get?S.get.call(C):S.value}function m(C,S,I){var N=g(C,S,"set");return y(C,N,I),I}function g(C,S,I){if(!S.has(C))throw new TypeError("attempted to "+I+" private field on non-instance");return S.get(C)}function y(C,S,I){if(S.set)S.set.call(C,I);else{if(!S.writable)throw new TypeError("attempted to set read only private field");S.value=I}}var _=typeof Symbol!="undefined"?Symbol.toStringTag:"@@toStringTag",j=new WeakMap,A=new WeakMap,F=function(){function C(S){var I=S.executor,N=I===void 0?function(){}:I,X=S.internals,P=X===void 0?q():X,re=S.promise,Ke=re===void 0?new Promise(function(we,me){return N(we,me,function(ze){P.onCancelList.push(ze)})}):re;p(this,C),x(this,j,{writable:!0,value:void 0}),x(this,A,{writable:!0,value:void 0}),w(this,_,"CancelablePromise"),this.cancel=this.cancel.bind(this),m(this,j,P),m(this,A,Ke||new Promise(function(we,me){return N(we,me,function(ze){P.onCancelList.push(ze)})}))}return h(C,[{key:"then",value:function(I,N){return J(d(this,A).then(z(I,d(this,j)),z(N,d(this,j))),d(this,j))}},{key:"catch",value:function(I){return J(d(this,A).catch(z(I,d(this,j))),d(this,j))}},{key:"finally",value:function(I,N){var X=this;return N&&d(this,j).onCancelList.push(I),J(d(this,A).finally(z(function(){if(I)return N&&(d(X,j).onCancelList=d(X,j).onCancelList.filter(function(P){return P!==I})),I()},d(this,j))),d(this,j))}},{key:"cancel",value:function(){d(this,j).isCanceled=!0;var I=d(this,j).onCancelList;d(this,j).onCancelList=[];var N=u(I),X;try{for(N.s();!(X=N.n()).done;){var P=X.value;if(typeof P=="function")try{P()}catch(re){console.error(re)}}}catch(re){N.e(re)}finally{N.f()}}},{key:"isCanceled",value:function(){return d(this,j).isCanceled===!0}}]),C}(),E=function(C){e(I,C);var S=n(I);function I(N){return p(this,I),S.call(this,{executor:N})}return h(I)}(F);t.CancelablePromise=E,w(E,"all",function(S){return Y(S,Promise.all(S))}),w(E,"allSettled",function(S){return Y(S,Promise.allSettled(S))}),w(E,"any",function(S){return Y(S,Promise.any(S))}),w(E,"race",function(S){return Y(S,Promise.race(S))}),w(E,"resolve",function(S){return L(Promise.resolve(S))}),w(E,"reject",function(S){return L(Promise.reject(S))}),w(E,"isCancelable",k);var O=E;t.default=O;function L(C){return J(C,q())}function k(C){return C instanceof E||C instanceof F}function z(C,S){if(C)return function(I){if(!S.isCanceled){var N=C(I);return k(N)&&S.onCancelList.push(N.cancel),N}return I}}function J(C,S){return new F({internals:S,promise:C})}function Y(C,S){var I=q();return I.onCancelList.push(function(){var N=u(C),X;try{for(N.s();!(X=N.n()).done;){var P=X.value;k(P)&&P.cancel()}}catch(re){N.e(re)}finally{N.f()}}),new F({internals:I,promise:S})}function q(){return{isCanceled:!1,onCancelList:[]}}})});ed(exports,{default:()=>zs});var fr=je(require("obsidian"));var ro=je(require("obsidian"));function he(){}function rd(t,e){for(let r in e)t[r]=e[r];return t}function oo(t){return t()}function Gs(){return Object.create(null)}function Xe(t){t.forEach(oo)}function dr(t){return typeof t=="function"}function Ae(t,e){return t!=t?e==e:t!==e||t&&typeof t=="object"||typeof t=="function"}var Rn;function so(t,e){return Rn||(Rn=document.createElement("a")),Rn.href=e,t===Rn.href}function Qs(t){return Object.keys(t).length===0}function qs(t,...e){if(t==null)return he;let r=t.subscribe(...e);return r.unsubscribe?()=>r.unsubscribe():r}function Ln(t,e,r){t.$$.on_destroy.push(qs(e,r))}function pr(t,e,r,n){if(t){let i=Ys(t,e,r,n);return t[0](i)}}function Ys(t,e,r,n){return t[1]&&n?rd(r.ctx.slice(),t[1](n(e))):r.ctx}function hr(t,e,r,n){if(t[2]&&n){let i=t[2](n(r));if(e.dirty===void 0)re Line truncated
`).length),r.split(`
`).slice(e).filter(fa).map(n=>`
`+n).join("")):""}var bd=["Modify","Bulk","OpenFailed","VersionChange","Schema","Upgrade","InvalidTable","MissingAPI","NoSuchDatabase","InvalidArgument","SubTransaction","Unsupported","Internal","DatabaseClosed","PrematureCommit","ForeignAwait"],da=["Unknown","Constraint","Data","TransactionInactive","ReadOnly","Version","NotFound","InvalidState","InvalidAccess","Abort","Timeout","QuotaExceeded","Syntax","DataClone"],wo=bd.concat(da),xd={VersionChanged:"Database version changed by other database connection",DatabaseClosed:"Database has been closed",Abort:"Transaction aborted",TransactionInactive:"Transaction has already completed or failed",MissingAPI:"IndexedDB API missing. Please visit https://tinyurl.com/y2uuvskb"};function wr(t,e){this._e=Qt(),this.name=t,this.message=e}br(wr).from(Error).extend({stack:{get:function(){return this._stack||(this._stack=this.name+": "+this.message+xo(this._e,2))}},toString:function(){return this.name+": "+this.message}});function pa(t,e){return t+". Errors: "+Object.keys(e).map(r=>e[r].toString()).filter((r,n,i)=>i.indexOf(r)===n).join(`
`)}function $n(t,e,r,n){this._e=Qt(),this.failures=e,this.failedKeys=n,this.successCount=r,this.message=pa(t,e)}br($n).from(wr);function un(t,e){this._e=Qt(),this.name="BulkError",this.failures=Object.keys(e).map(r=>e[r]),this.failuresByPos=e,this.message=pa(t,e)}br(un).from(wr);var jo=wo.reduce((t,e)=>(t[e]=e+"Error",t),{}),wd=wr,V=wo.reduce((t,e)=>{var r=e+"Error";function n(i,o){this._e=Qt(),this.name=r,i?typeof i=="string"?(this.message=`${i}${o?`
`+o:""}`,this.inner=o||null):typeof i=="object"&&(this.message=`${i.name} ${i.message}`,this.inner=i):(this.message=xd[e]||r,this.inner=null)}return br(n).from(wd),t[e]=n,t},{});V.Syntax=SyntaxError;V.Type=TypeError;V.Range=RangeError;var ha=da.reduce((t,e)=>(t[e+"Error"]=V[e],t),{});function jd(t,e){if(!t||t instanceof wr||t instanceof TypeError||t instanceof SyntaxError||!t.name||!ha[t.name])return t;var r=new ha[t.name](e||t.message,t);return"stack"in t&&ut(r,"stack",{get:function(){return this.inner.stack}}),r}var Wn=wo.reduce((t,e)=>(["Syntax","Type","Range"].indexOf(e)===-1&&(t[e+"Error"]=V[e]),t),{});Wn.ModifyError=$n;Wn.DexieError=wr;Wn.BulkError=un;function ie(){}function cn(t){return t}function Ad(t,e){return t==null||t===cn?e:function(r){return e(t(r))}}function qt(t,e){return function(){t.apply(this,arguments),e.apply(this,arguments)}}function Cd(t,e){return t===ie?e:function(){var r=t.apply(this,arguments);r!==void 0&&(arguments[0]=r);var n=this.onsuccess,i=this.onerror;this.onsuccess=null,this.onerror=null;var o=e.apply(this,arguments);return n&&(this.onsuccess=this.onsuccess?qt(n,this.onsuccess):n),i&&(this.onerror=this.onerror?qt(i,this.onerror):i),o!==void 0?o:r}}function Sd(t,e){return t===ie?e:function(){t.apply(this,arguments);var r=this.onsuccess,n=this.onerror;this.onsuccess=this.onerror=null,e.apply(this,arguments),r&&(this.onsuccess=this.onsuccess?qt(r,this.onsuccess):r),n&&(this.onerror=this.onerror?qt(n,this.onerror):n)}}function Fd(t,e){return t===ie?e:function(r){var n=t.apply(this,arguments);Le(r,n);var i=this.onsuccess,o=this.onerror;this.onsuccess=null,this.onerror=null;var s=e.apply(this,arguments);return i&&(this.onsuccess=this.onsuccess?qt(i,this.onsuccess):i),o&&(this.onerror=this.onerror?qt(o,this.onerror):o),n===void 0?s===void 0?void 0:s:Le(n,s)}}function Ed(t,e){return t===ie?e:function(){return e.apply(this,arguments)===!1?!1:t.apply(this,arguments)}}function Ao(t,e){return t===ie?e:function(){var r=t.apply(this,arguments);if(r&&typeof r.then=="function"){for(var n=this,i=arguments.length,o=new Array(i);i--;)o[i]=arguments[i];return r.then(function(){return e.apply(n,o)})}return e.apply(this,arguments)}}var fn={},Td=100,Dd=20,ma=100,[Co,Un,So]=typeof Promise=="undefined"?[]:(()=>{let t=Promise.resolve();if(typeof crypto=="undefined"||!crypto.subtle)return[t,sn(t),t];let e=crypto.subtle.digest("SHA-512",new Uint8Array([0]));return[e,sn(e),t]})(),ga=Un&&Un.then,Gn=Co&&Co.constructor,Fo=!!So,Eo=!1,Id=So?()=>{So.then(Jn)}:se.setImmediate?setImmediate.bind(null,Jn):se.MutationObserver?()=>{var t=document.createElement("div");new MutationObserver(()=>{Jn(),t=null}).observe(t,{attributes:!0}),t.setAttribute("i","1")}:()=>{setTimeout(Jn,0)},dn=function(t,e){pn.push([t,e]),Qn&&(Id(),Qn=!1)},To=!0,Qn=!0,Yt=[],qn=[],Do=null,Io=cn,jr={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:Sa,pgp:!1,env:{},finalize:function(){this.unhandleds.forEach(t=>{try{Sa(t[0],t[1])}catch{}})}},K=jr,pn=[],Jt=0,Yn=[];function R(t){if(typeof this!="object")throw new TypeError("Promises must be constructed via new");this._listeners=[],this.onuncatched=ie,this._lib=!1;var e=this._PSD=K;if(rt&&(this._stackHolder=Qt(),this._prev=null,this._numPrev=0),typeof t!="function"){if(t!==fn)throw new TypeError("Not a function");this._state=arguments[1],this._value=arguments[2],this._state===!1&&ko(this,this._value);return}this._state=null,this._value=null,++e.ref,_a(this,t)}var Oo={get:function(){var t=K,e=ei;function r(n,i){var o=!t.global&&(t!==K||e!==ei);let s=o&&!dt();var a=new R((u,l)=>{Po(this,new ya(ri(n,t,o,s),ri(i,t,o,s),u,l,t))});return rt&&xa(a,this),a}return r.prototype=fn,r},set:function(t){ut(this,"then",t&&t.prototype===fn?Oo:{get:function(){return t},set:Oo.set})}};vr(R.prototype,{then:Oo,_then:function(t,e){Po(this,new ya(null,null,t,e,K))},catch:function(t){if(arguments.length===1)return this.then(null,t);var e=arguments[0],r=arguments[1];return typeof e=="function"?this.then(null,n=>n instanceof e?r(n):Xn(n)):this.then(null,n=>n&&n.name===e?r(n):Xn(n))},finally:function(t){return this.then(e=>(t(),e),e=>(t(),Xn(e)))},stack:{get:function(){if(this._stack)return this._stack;try{Eo=!0;var t=ba(this,[],Dd),e=t.join(`
From previous: `);return this._state!==null&&(this._stack=e),e}finally{Eo=!1}}},timeout:function(t,e){return t<1/0?new R((r,n)=>{var i=setTimeout(()=>n(new V.Timeout(e)),t);this.then(r,n).finally(clearTimeout.bind(null,i))}):this}});typeof Symbol!="undefined"&&Symbol.toStringTag&&ut(R.prototype,Symbol.toStringTag,"Dexie.Promise");jr.env=wa();function ya(t,e,r,n,i){this.onFulfilled=typeof t=="function"?t:null,this.onRejected=typeof e=="function"?e:null,this.resolve=r,this.reject=n,this.psd=i}vr(R,{all:function(){var t=ft.apply(null,arguments).map(ti);return new R(function(e,r){t.length===0&&e([]);var n=t.length;t.forEach((i,o)=>R.resolve(i).then(s=>{t[o]=s,--n||e(t)},r))})},resolve:t=>{if(t instanceof R)return t;if(t&&typeof t.then=="function")return new R((r,n)=>{t.then(r,n)});var e=new R(fn,!0,t);return xa(e,Do),e},reject:Xn,race:function(){var t=ft.apply(null,arguments).map(ti);return new R((e,r)=>{t.map(n=>R.resolve(n).then(e,r))})},PSD:{get:()=>K,set:t=>K=t},totalEchoes:{get:()=>ei},newPSD:Ct,usePSD:Cr,scheduler:{get:()=>dn,set:t=>{dn=t}},rejectionMapper:{get:()=>Io,set:t=>{Io=t}},follow:(t,e)=>new R((r,n)=>Ct((i,o)=>{var s=K;s.unhandleds=[],s.onunhandled=o,s.finalize=qt(function(){kd(()=>{this.unhandleds.length===0?i():o(this.unhandleds[0])})},s.finalize),t()},e,r,n))});Gn&&(Gn.allSettled&&ut(R,"allSettled",function(){let t=ft.apply(null,arguments).map(ti);return new R(e=>{t.length===0&&e([]);let r=t.length,n=new Array(r);t.forEach((i,o)=>R.resolve(i).then(s=>n[o]={status:"fulfilled",value:s},s=>n[o]={status:"rejected",reason:s}).then(()=>--r||e(n)))})}),Gn.any&&typeof AggregateError!="undefined"&&ut(R,"any",function(){let t=ft.apply(null,arguments).map(ti);return new R((e,r)=>{t.length===0&&r(new AggregateError([]));let n=t.length,i=new Array(n);t.forEach((o,s)=>R.resolve(o).then(a=>e(a),a=>{i[s]=a,--n||r(new AggregateError(i))}))})}));function _a(t,e){try{e(r=>{if(t._state===null){if(r===t)throw new TypeError("A promise cannot be resolved with itself.");var n=t._lib&&hn();r&&typeof r.then=="function"?_a(t,(i,o)=>{r instanceof R?r._then(i,o):r.then(i,o)}):(t._state=!0,t._value=r,va(t)),n&&mn()}},ko.bind(null,t))}catch(r){ko(t,r)}}function ko(t,e){if(qn.push(e),t._state===null){var r=t._lib&&hn();e=Io(e),t._state=!1,t._value=e,rt&&e!==null&&typeof e=="object"&&!e._promise&&pd(()=>{var n=go(e,"stack");e._promise=t,ut(e,"stack",{get:()=>Eo?n&&(n.get?n.get.apply(e):n.value):t.stack})}),Pd(t),va(t),r&&mn()}}function va(t){var e=t._listeners;t._listeners=[];for(var r=0,n=e.length;r<n;++r)Po(t,e[r]);var i=t._PSD;--i.ref||i.finalize(),Jt===0&&(++Jt,dn(()=>{--Jt==0&&Mo()},[]))}function Po(t,e){if(t._state===null){t._listeners.push(e);return}var r=t._state?e.onFulfilled:e.onRejected;if(r===null)return(t._state?e.resolve:e.reject)(t._value);++e.psd.ref,++Jt,dn(Od,[r,t,e])}function Od(t,e,r){try{Do=e;var n,i=e._value;e._state?n=t(i):(qn.length&&(qn=[]),n=t(i),qn.indexOf(i)===-1&&Md(e)),r.resolve(n)}catch(o){r.reject(o)}finally{Do=null,--Jt==0&&Mo(),--r.psd.ref||r.psd.finalize()}}function ba(t,e,r){if(e.length===r)return e;var n="";if(t._state===!1){var i=t._value,o,s;i!=null?(o=i.name||"Error",s=i.message||i,n=xo(i,0)):(o=i,s=""),e.push(o+(s?": "+s:"")+n)}return rt&&(n=xo(t._stackHolder,2),n&&e.indexOf(n)===-1&&e.push(n),t._prev&&ba(t._prev,e,r)),e}function xa(t,e){var r=e?e._numPrev+1:0;r<Td&&(t._prev=e,t._numPrev=r)}function Jn(){hn()&&mn()}function hn(){var t=To;return To=!1,Qn=!1,t}function mn(){var t,e,r;do for(;pn.length>0;)for(t=pn,pn=[],r=t.length,e=0;e<r;++e){var n=t[e];n[0].apply(null,n[1])}while(pn.length>0);To=!0,Qn=!0}function Mo(){var t=Yt;Yt=[],t.forEach(n=>{n._PSD.onunhandled.call(null,n._value,n)});for(var e=Yn.slice(0),r=e.length;r;)e[--r]()}function kd(t){function e(){t(),Yn.splice(Yn.indexOf(e),1)}Yn.push(e),++Jt,dn(()=>{--Jt==0&&Mo()},[])}function Pd(t){Yt.some(e=>e._value===t._value)||Yt.push(t)}function Md(t){for(var e=Yt.length;e;)if(Yt[--e]._value===t._value){Yt.splice(e,1);return}}function Xn(t){return new R(fn,!1,t)}function le(t,e){var r=K;return function(){var n=hn(),i=K;try{return St(r,!0),t.apply(this,arguments)}catch(o){e&&e(o)}finally{St(i,!1),n&&mn()}}}var Pe={awaits:0,echoes:0,id:0},Rd=0,Zn=[],Ro=0,ei=0,Ld=0;function Ct(t,e,r,n){var i=K,o=Object.create(i);o.parent=i,o.ref=0,o.global=!1,o.id=++Ld;var s=jr.env;o.env=Fo?{Promise:R,PromiseProp:{value:R,configurable:!0,writable:!0},all:R.all,race:R.race,allSettled:R.allSettled,any:R.any,resolve:R.resolve,reject:R.reject,nthen:Aa(s.nthen,o),gthen:Aa(s.gthen,o)}:{},e&&Le(o,e),++i.ref,o.finalize=function(){--this.parent.ref||this.parent.finalize()};var a=Cr(o,t,r,n);return o.ref===0&&o.finalize(),a}function Ar(){return Pe.id||(Pe.id=++Rd),++Pe.awaits,Pe.echoes+=ma,Pe.id}function dt(){return Pe.awaits?(--Pe.awaits==0&&(Pe.id=0),Pe.echoes=Pe.awaits*ma,!0):!1}(""+ga).indexOf("[native code]")===-1&&(Ar=dt=ie);function ti(t){return Pe.echoes&&t&&t.constructor===Gn?(Ar(),t.then(e=>(dt(),e),e=>(dt(),be(e)))):t}function Bd(t){++ei,(!Pe.echoes| Line truncated
<iframe src="https://github.com/sponsors/scambier/button" title="Sponsor scambier" height="35" width="116" style="border: 0;"></iframe>
<a href='https://ko-fi.com/B0B6LQ2C' target='_blank'><img height='36' style='border:0px;height:36px;' src='https://cdn.ko-fi.com/cdn/kofi2.png?v=3' border='0' alt='Buy Me a Coffee at ko-fi.com' /></a>
`;let n=new DocumentFragment;n.createSpan({},c=>{c.innerHTML='\u26A0\uFE0F <span style="color: var(--text-accent)">Changing indexing settings will clear the cache, and requires a restart of Obsidian.</span><br/><br/>',ot()?c.innerHTML+=`
\u{1F44D} You have installed <a href="https://github.com/scambier/obsidian-text-extractor">Text Extractor</a>, Omnisearch can use it to index PDFs and images contents.
<br />Text extraction only works on desktop, but the cache can be synchronized with your mobile device.`:c.innerHTML+='\u26A0\uFE0F Omnisearch requires <a href="https://github.com/scambier/obsidian-text-extractor">Text Extractor</a> to index PDFs and images.'}),new G.Setting(e).setName("Indexing").setHeading().setDesc(n);let i=new DocumentFragment;i.createSpan({},c=>{c.innerHTML="Omnisearch will use Text Extractor to index the content of your PDFs"}),new G.Setting(e).setName(`PDFs content indexing ${ot()?"":"\u26A0\uFE0F Disabled"}`).setDesc(i).addToggle(c=>c.setValue(T.PDFIndexing).onChange(async h=>{await Se.clearCache(),T.PDFIndexing=h,await ce(this.plugin)})).setDisabled(!ot());let o=new DocumentFragment;o.createSpan({},c=>{c.innerHTML="Omnisearch will use Text Extractor to OCR your images and index their content"}),new G.Setting(e).setName(`Images OCR indexing ${ot()?"":"\u26A0\uFE0F Disabled"}`).setDesc(o).addToggle(c=>c.setValue(T.imagesIndexing).onChange(async h=>{await Se.clearCache(),T.imagesIndexing=h,await ce(this.plugin)})).setDisabled(!ot());let s=new DocumentFragment;s.createSpan({},c=>{c.innerHTML=`
Omnisearch can index file<strong>names</strong> of "unsupported" files, such as e.g. <pre style="display:inline">.mp4</pre>, <pre style="display:inline">.xlsx</pre>,
or non-extracted PDFs & images.<br/>
"Obsidian setting" will respect the value of "Files & Links > Detect all file extensions"`}),new G.Setting(e).setName("Index paths of unsupported files").setDesc(s).addDropdown(c=>{c.addOptions({yes:"Yes",no:"No",default:"Obsidian setting"}).setValue(T.unsupportedFilesIndexing).onChange(async h=>{await Se.clearCache(),T.unsupportedFilesIndexing=h,await ce(this.plugin)})});let a=new DocumentFragment;a.createSpan({},c=>{c.innerHTML=`In addition to standard <code>md</code> files, Omnisearch can also index other <strong style="color: var(--text-accent)">PLAINTEXT</strong> files.<br/>
Add extensions separated by a space, without the dot. Example: "<code>txt org csv</code>".<br />
\u26A0\uFE0F <span style="color: var(--text-accent)">Using extensions of non-plaintext files (like .docx or .pptx) WILL cause crashes,
because Omnisearch will try to index their content.</span>`}),new G.Setting(e).setName("Additional TEXT files to index").setDesc(a).addText(c=>{c.setValue(T.indexedFileTypes.join(" ")).setPlaceholder("Example: txt org csv").onChange(async h=>{await Se.clearCache(),T.indexedFileTypes=h.split(" "),await ce(this.plugin)})}),new G.Setting(e).setName("Behavior").setHeading(),new G.Setting(e).setName("Save index to cache").setDesc("Enable caching to speed up indexing time. In rare cases, the cache write may cause a crash in Obsidian. This option will disable itself if it happens.").addToggle(c=>c.setValue(T.useCache).onChange(async h=>{T.useCache=h,await ce(this.plugin)})),new G.Setting(e).setName(`Respect Obsidian's "Excluded Files"`).setDesc(`By default, files that are in Obsidian's "Options > Files & Links > Excluded Files" list are downranked in results.
Enable this option to completely hide them`).addToggle(c=>c.setValue(T.hideExcluded).onChange(async h=>{T.hideExcluded=h,await ce(this.plugin)}));let u=new DocumentFragment;u.createSpan({},c=>{c.innerHTML=`Enable this if you want to be able to search for CamelCaseWords as separate words.<br/>
\u26A0\uFE0F <span style="color: var(--text-accent)">Changing this setting will clear the cache.</span><br>
${pi}
`}),new G.Setting(e).setName("Split CamelCaseWords").setDesc(u).addToggle(c=>c.setValue(T.splitCamelCase).onChange(async h=>{await Se.clearCache(),T.splitCamelCase=h,await ce(this.plugin)})),new G.Setting(e).setName("Simpler search").setDesc(`Enable this if Obsidian often freezes while making searches.
Words shorter than 3 characters won't be used as prefixes; this can reduce search delay but will return fewer results.`).addToggle(c=>c.setValue(T.simpleSearch).onChange(async h=>{T.simpleSearch=h,await ce(this.plugin)})),new G.Setting(e).setName("Open in new pane").setDesc("Open and create files in a new pane instead of the current pane.").addToggle(c=>c.setValue(T.openInNewPane).onChange(async h=>{T.openInNewPane=h,await ce(this.plugin)})),new G.Setting(e).setName("Set Vim like navigation keys").setDesc("Navigate down the results with Ctrl/\u2318 + J/N, or navigate up with Ctrl/\u2318 + K/P").addToggle(c=>c.setValue(T.vimLikeNavigationShortcut).onChange(async h=>{T.vimLikeNavigationShortcut=h,await ce(this.plugin)})),new G.Setting(e).setName("Fuzziness").setDesc("Define the level of fuzziness for the search. The higher the fuzziness, the more results you'll get.").addDropdown(c=>c.addOptions({0:"Exact match",1:"Not too fuzzy",2:"Fuzzy enough"}).setValue(T.fuzziness).onChange(async h=>{["0","1","2"].includes(h)||(h="2"),T.fuzziness=h,await ce(this.plugin)})),new G.Setting(e).setName("User Interface").setHeading(),new G.Setting(e).setName("Show ribbon button").setDesc("Add a button on the sidebar to open the Vault search modal.").addToggle(c=>c.setValue(T.ribbonIcon).onChange(async h=>{T.ribbonIcon=h,await ce(this.plugin),h?this.plugin.addRibbonButton():this.plugin.removeRibbonButton()})),new G.Setting(e).setName("Show excerpts").setDesc("Shows the contextual part of the note that matches the search. Disable this to only show filenames in results.").addToggle(c=>c.setValue(T.showExcerpt).onChange(async h=>{tr.set(h)})),new G.Setting(e).setName("Render line return in excerpts").setDesc("Activate this option to render line returns in result excerpts.").addToggle(c=>c.setValue(T.renderLineReturnInExcerpts).onChange(async h=>{T.renderLineReturnInExcerpts=h,await ce(this.plugin)})),new G.Setting(e).setName("Show previous query results").setDesc("Re-executes the previous query when opening Omnisearch.").addToggle(c=>c.setValue(T.showPreviousQueryResults).onChange(async h=>{T.showPreviousQueryResults=h,await ce(this.plugin)}));let l=new DocumentFragment;l.createSpan({},c=>{c.innerHTML=`Shows a button next to the search input, to create a note.
Acts the same as the <code>shift \u21B5</code> shortcut, can be useful for mobile device users.`}),new G.Setting(e).setName('Show "Create note" button').setDesc(l).addToggle(c=>c.setValue(T.showCreateButton).onChange(async h=>{T.showCreateButton=h,await ce(this.plugin)})),new G.Setting(e).setName("Highlight matching words in results").setDesc("Will highlight matching results when enabled. See README for more customization options.").addToggle(c=>c.setValue(T.highlight).onChange(async h=>{T.highlight=h,await ce(this.plugin)})),new G.Setting(e).setName("Results weighting").setHeading(),new G.Setting(e).setName(`File name & declared aliases (default: ${Dt.weightBasename})`).addSlider(c=>this.weightSlider(c,"weightBasename")),new G.Setting(e).setName(`File directory (default: ${Dt.weightDirectory})`).addSlider(c=>this.weightSlider(c,"weightDirectory")),new G.Setting(e).setName(`Headings level 1 (default: ${Dt.weightH1})`).addSlider(c=>this.weightSlider(c,"weightH1")),new G.Setting(e).setName(`Headings level 2 (default: ${Dt.weightH2})`).addSlider(c=>this.weightSlider(c,"weightH2")),new G.Setting(e).setName(`Headings level 3 (default: ${Dt.weightH3})`).addSlider(c=>this.weightSlider(c,"weightH3")),new G.Setting(e).setName(`Tags without the # (default: ${Dt.weightUnmarkedTags})`).addSlider(c=>this.weightSlider(c,"weightUnmarkedTags")),new G.Setting(e).setName("Debugging").setHeading(),new G.Setting(e).setName("Enable verbose logging").setDesc("Adds a LOT of logs for debugging purposes. Don't forget to disable it.").addToggle(c=>c.setValue(T.verboseLogging).onChange(async h=>{T.verboseLogging=h,await ce(this.plugin)})),new G.Setting(e).setName("Danger Zone").setHeading();let f=new DocumentFragment;f.createSpan({},c=>{c.innerHTML=`Normalize diacritics in search terms. Words like "br\xFBl\xE9e" or "\u017Elu\u0165ou\u010Dk\xFD" will be indexed as "brulee" and "zlutoucky".<br/>
\u26A0\uFE0F <span style="color: var(--text-accent)">You probably should <strong>NOT</strong> disable this.</span><br>
\u26A0\uFE0F <span style="color: var(--text-accent)">Changing this setting will clear the cache.</span><br>
${pi}
`}),new G.Setting(e).setName("Ignore diacritics").setDesc(f).addToggle(c=>c.setValue(T.ignoreDiacritics).onChange(async h=>{await Se.clearCache(),T.ignoreDiacritics=h,await ce(this.plugin)}));let p=new DocumentFragment;if(p.createSpan({},c=>{c.innerHTML=`Disable Omnisearch on this device only.<br>
${pi}`}),new G.Setting(e).setName("Disable on this device").setDesc(p).addToggle(c=>c.setValue(ls()).onChange(async h=>{h?app.saveLocalStorage(An,"1"):app.saveLocalStorage(An),new G.Notice("Omnisearch - Disabled. Please restart Obsidian.")})),It()){let c=new DocumentFragment;c.createSpan({},h=>{h.innerHTML=`Erase all Omnisearch cache data.
Use this if Omnisearch results are inconsistent, missing, or appear outdated.<br>
${pi}`}),new G.Setting(e).setName("Clear cache data").setDesc(c).addButton(h=>{h.setButtonText("Clear cache"),h.onClick(async()=>{await Se.clearCache()})})}}weightSlider(e,r){e.setLimits(1,5,.1).setValue(T[r]).setDynamicTooltip().onChange(async n=>{T[r]=n,await ce(this.plugin)})}},Dt={useCache:!0,hideExcluded:!1,ignoreDiacritics:!0,indexedFileTypes:[],PDFIndexing:!1,imagesIndexing:!1,unsupportedFilesIndexing:"no",splitCamelCase:!1,openInNewPane:!1,vimLikeNavigationShortcut:app.vault.getConfig("vimMode"),ribbonIcon:!0,showExcerpt:!0,renderLineReturnInExcerpts:!0,showCreateButton:!1,highlight:!0,showPreviousQueryResults:!0,simpleSearch:!1,fuzziness:"1",weightBasename:3,weightDirectory:2,weightH1:1.5,weightH2:1.3,weightH3:1.1,weightUnmarkedTags:1.1,welcomeMessage:"",verboseLogging:!1},T=Object.assign({},Dt);async function Ja(t){T=Object.assign({},Dt,await t.loadData()),tr.set(T.showExcerpt)}async function ce(t){await t.saveData(T)}function ls(){return app.loadLocalStorage(An)==="1"}function Xa(){return T.unsupportedFilesIndexing==="yes"||T.unsupportedFilesIndexing==="default"&&!!app.vault.getConfig("showUnsupportedFiles")}var Za=je(require("obsidian"));var el=/[\u4e00-\u9fa5]/;var tl=100,Cn=300,rl=`suggestion-highlight omnisearch-highlight ${T.highlight?"omnisearch-default-highlight":""}`,An="omnisearch-disabled",U=new mo,hi={ToggleExcerpts:"toggle-excerpts"},Je=(o=>(o[o.Done=0]="Done",o[o.LoadingCache=1]="LoadingCache",o[o.ReadingFiles=2]="ReadingFiles",o[o.IndexingFiles=3]="IndexingFiles",o[o.WritingCache=4]="WritingCache",o))(Je||{}),te=(f=>(f.Enter="enter",f.OpenInBackground="open-in-background",f.CreateNote="create-note",f.OpenInNewPane="open-in-new-pane",f.InsertLink="insert-link",f.Tab="tab",f.ArrowUp="arrow-up",f.ArrowDown="arrow-down",f.PrevSearchHistory="prev-search-history",f.NextSearchHistory="next-search-history",f))(te||{});var Ot=Vn(0),nl=!1;function us(t){nl=t}function cs(){return nl}function mi(){return app.plugins.plugins["cm-chs-patch"]}function ot(){return app.plugins?.plugins?.["text-extractor"]?.api}function It(){return!Za.Platform.isIosApp&&T.useCache}var il=/[|\t\n\r= -#%-*,.`\/:;?@[-\]_{}\u00A0\u00A1\u00A7\u00AB\u00B6\u00B7\u00BB\u00BF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u1680\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2000-\u200A\u2010-\u2029\u202F-\u2043\u2045-\u2051\u2053-\u205F\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u3000-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]/.toString().slice(1,-1),fs=new RegExp(`${il}`,"u"),Sn=new RegExp(`${il}+`,"u");var yl=je(require("obsidian"));var rr=je(require("obsidian"));var sl=je(require("crypto")),al=je(ol());function ll(t){let e=t.split("/");return e.pop(),e.join("/")}function gi(t,e){return t.headings?.filter(r=>r.level===e).map(r=>r.heading)??[]}function yi(t,e){return(t+e)%e}function ps(t){return t.replace(/(\*|_)+(.+?)(\*|_)+/g,(e,r,n)=>n)}function ul(t){return t?.frontmatter?(0,rr.parseFrontMatterAliases)(t.frontmatter)??[]:[]}function cl(t){let e=t?(0,rr.getAllTags)(t)??[]:[];return e=[...new Set(e.reduce((r,n)=>[...r,...n.split("/").filter(i=>i).map(i=>i.startsWith("#")?i:`#${i}`),n],[]))],e}function yt(t){return t==null?"":(t=t.replaceAll("`","[__omnisearch__backtick__]"),t=t.normalize("NFD").replace(/\p{Diacritic}/gu,""),t=t.replaceAll("[__omnisearch__backtick__]","`"),t)}function nr(){return rr.Platform.isMacOS?"\u2318":"ctrl"}function kp(t){let e=!!ot(),r=e&&T.PDFIndexing,n=e&&T.imagesIndexing;return _i(t)||Dr(t)||vi(t)||r&&ir(t)||n&&Tr(t)}function hs(t){return Xa()||_i(t)||Dr(t)||vi(t)}function En(t){return hs(t)||kp(t)}function Tr(t){let e=or(t);return e==="png"||e==="jpg"||e==="jpeg"||e==="webp"}function ir(t){return or(t)==="pdf"}function _i(t){return[...T.indexedFileTypes,"md"].some(e=>t.endsWith(`.${e}`))}function Dr(t){return t.endsWith(".canvas")}function vi(t){return t.endsWith(".loom")||t.endsWith(".dashboard")}function or(t){let e=t.split(".");return e[e.length-1]??""}function fl(t){return rr.Platform.isMobileApp?(0,al.md5)(t.toString()):Line truncated
`)}else if(vi(t))try{let s=JSON.parse(await app.vault.cachedRead(e)),a=[],u=l=>{for(let f in l)typeof l[f]=="object"?u(l[f]):f==="markdown"&&a.push(l[f])};u(s),r=a.join(`\r
`)}catch(s){console.error("Omnisearch: Error while parsing Dataloom file",t),console.error(s)}else Tr(t)&&T.imagesIndexing&&n?.canFileBeExtracted(t)?r=await n.extractText(e):ir(t)&&T.PDFIndexing&&n?.canFileBeExtracted(t)?r=await n.extractText(e):hs(t)&&(r=e.path);r==null&&(console.warn(`Omnisearch: ${r} content for file`,e.path),r=""),r=yt(r);let i=app.metadataCache.getFileCache(e);if(i&&i.frontmatter?.["excalidraw-plugin"]){let s=i.sections?.filter(a=>a.type==="comment")??[];for(let{start:a,end:u}of s.map(l=>l.position))r=r.substring(0,a.offset-1)+r.substring(u.offset)}let o=cl(i);return{basename:yt(e.basename),content:r,path:e.path,mtime:e.stat.mtime,tags:o,unmarkedTags:o.map(s=>s.replace("#","")),aliases:ul(i).join(""),headings1:i?gi(i,1).join(" "):"",headings2:i?gi(i,2).join(" "):"",headings3:i?gi(i,3).join(" "):""}}var _l=class{constructor(){this.nextQueryIsEmpty=!1;this.documents=new Map}async addToLiveCache(e){try{let r=await Pp(e);if(!r.path){console.error(`Missing .path field in IndexedDocument "${r.basename}", skipping`);return}this.documents.set(e,r)}catch(r){console.warn(`Omnisearch: Error while adding "${e}" to live cache`,r),this.removeFromLiveCache(e)}}removeFromLiveCache(e){this.documents.delete(e)}async getDocument(e){return this.documents.has(e)?this.documents.get(e):(fe("Generating IndexedDocument from",e),await this.addToLiveCache(e),this.documents.get(e))}async addToSearchHistory(e){if(!e){this.nextQueryIsEmpty=!0;return}this.nextQueryIsEmpty=!1;let r=await Se.searchHistory.toArray();r=r.filter(n=>n.query!==e).reverse(),r.unshift({query:e}),r=r.slice(0,10),await Se.searchHistory.clear(),await Se.searchHistory.bulkAdd(r)}async getSearchHistory(){let e=(await Se.searchHistory.toArray()).reverse().map(r=>r.query);return this.nextQueryIsEmpty&&e.unshift(""),e}getDocumentsChecksum(e){return fl(JSON.stringify(e.sort((r,n)=>r.path<n.path?-1:r.path>n.path?1:0)))}async getMinisearchCache(){try{return(await Se.minisearch.toArray())[0]}catch(e){return new yl.Notice("Omnisearch - Cache missing or invalid. Some freezes may occur while Omnisearch indexes your vault."),console.error("Omnisearch - Error while loading Minisearch cache"),console.error(e),null}}async writeMinisearchCache(e,r){let n=Array.from(r).map(([i,o])=>({path:i,mtime:o}));await Se.minisearch.clear(),await Se.minisearch.add({date:new Date().toISOString(),paths:n,data:e.toJSON()}),console.log("Omnisearch - Search cache written")}},Fe=new _l;function Mp(t){let e,r,n,i,o,s,a,u,l=t[8].default,f=pr(l,t,t[7],null);return{c(){e=M("div"),r=M("div"),n=M("input"),o=W(),f&&f.c(),B(n,"class","prompt-input"),B(n,"placeholder",t[0]),B(n,"spellcheck","false"),B(n,"type","text"),B(r,"class","omnisearch-input-field"),B(e,"class","omnisearch-input-container")},m(p,c){$(p,e,c),D(e,r),D(r,n),t[9](n),ao(n,t[1]),D(e,o),f&&f.m(e,null),s=!0,a||(u=[He(n,"input",t[10]),Js(i=t[3].call(null,n)),He(n,"compositionend",t[11]),He(n,"compositionstart",t[12]),He(n,"input",t[4])],a=!0)},p(p,[c]){(!s||c&1)&&B(n,"placeholder",p[0]),c&2&&n.value!==p[1]&&ao(n,p[1]),f&&f.p&&(!s||c&128)&&mr(f,l,p,p[7],s?hr(l,p[7],c,null):gr(p[7]),null)},i(p){s||(ee(f,p),s=!0)},o(p){ne(f,p),s=!1},d(p){p&&H(e),t[9](null),f&&f.d(p),a=!1,Xe(u)}}}function Rp(t,e,r){let{$$slots:n={},$$scope:i}=e,{initialValue:o=""}=e,{placeholder:s=""}=e,a=!1,u="",l,f=co();function p(m){r(1,u=m)}function c(m){m&&!a&&!u&&(a=!0,r(1,u=m),h())}function h(m){jt().then(()=>(l.focus(),jt())).then(()=>{l.select()})}let w=(0,vl.debounce)(()=>{Fe.addToSearchHistory(""),f("input",u)},300);function x(m){lt[m?"unshift":"push"](()=>{l=m,r(2,l)})}function v(){u=this.value,r(1,u)}let d=m=>us(!1),b=m=>us(!0);return t.$$set=m=>{"initialValue"in m&&r(5,o=m.initialValue),"placeholder"in m&&r(0,s=m.placeholder),"$$scope"in m&&r(7,i=m.$$scope)},t.$$.update=()=>{if(t.$$.dirty&32){e:c(o)}},[s,u,l,h,w,o,p,i,n,x,v,d,b]}var bl=class extends Te{constructor(e){super();Oe(this,e,Rp,Mp,Ae,{initialValue:5,placeholder:0,setInputValue:6})}get setInputValue(){return this.$$.ctx[6]}},bi=bl;function Lp(t){let e,r,n,i,o=t[1].default,s=pr(o,t,t[0],null);return{c(){e=M("div"),s&&s.c(),B(e,"class","prompt-results")},m(a,u){$(a,e,u),s&&s.m(e,null),r=!0,n||(i=He(e,"mousedown",Bp),n=!0)},p(a,[u]){s&&s.p&&(!r||u&1)&&mr(s,o,a,a[0],r?hr(o,a[0],u,null):gr(a[0]),null)},i(a){r||(ee(s,a),r=!0)},o(a){ne(s,a),r=!1},d(a){a&&H(e),s&&s.d(a),n=!1,i()}}}var Bp=t=>t.preventDefault();function Np(t,e,r){let{$$slots:n={},$$scope:i}=e;return t.$$set=o=>{"$$scope"in o&&r(0,i=o.$$scope)},[i,n]}var xl=class extends Te{constructor(e){super();Oe(this,e,Np,Lp,Ae,{})}},xi=xl;var ws=je(require("obsidian"));var Zc=je(require("obsidian"));var Kp=typeof global=="object"&&global&&global.Object===Object&&global,wi=Kp;var zp=typeof self=="object"&&self&&self.Object===Object&&self,Vp=wi||zp||Function("return this")(),ye=Vp;var Hp=ye.Symbol,Ee=Hp;var wl=Object.prototype,$p=wl.hasOwnProperty,Wp=wl.toString,Tn=Ee?Ee.toStringTag:void 0;function Up(t){var e=$p.call(t,Tn),r=t[Tn];try{t[Tn]=void Line truncated
`);let s=t.lastIndexOf(`
`,r-n);s>0&&(t=t.slice(s))}return t=$v(t),T.renderLineReturnInExcerpts&&(t=t.trim().replaceAll(`
`,"<br>")),{content:t,offset:r}}catch(r){return new Zc.Notice("Omnisearch - Error while creating excerpt, see developer console"),console.error("Omnisearch - Error while creating excerpt"),console.error(r),{content:"",offset:-1}}}async function Qi(t,e=!1){let r=Qr(t.foundWords);r.exec(t.content);let n=r.lastIndex,i=!1;app.workspace.iterateAllLeaves(a=>{a.view instanceof ws.MarkdownView&&!e&&a.getViewState().state?.file===t.path&&a.getViewState()?.pinned&&(app.workspace.setActiveLeaf(a,{focus:!0}),i=!0)}),i||await app.workspace.openLinkText(t.path,"",e);let o=app.workspace.getActiveViewOfType(ws.MarkdownView);if(!o)return;let s=o.editor.offsetToPos(n);s.ch=0,o.editor.setCursor(s),o.editor.scrollIntoView({from:{line:s.line-10,ch:0},to:{line:s.line+10,ch:0}})}async function ef(t,e=!1){try{let r;switch(app.vault.getConfig("newFileLocation")){case"current":r=(app.workspace.getActiveFile()?.parent?.path??"")+"/";break;case"folder":r=app.vault.getConfig("newFileFolderPath")+"/";break;default:r="";break}await app.workspace.openLinkText(`${r}${t}.md`,"",e)}catch(r){throw r.message="OmniSearch - Could not create note: "+r.message,console.error(r),r}}function Wv(t){let e;return{c(){e=M("span"),e.innerHTML='<svg viewBox="0 0 100 100" class="add-note-glyph" width="16" height="16"><path fill="currentColor" stroke="currentColor" d="M23.3,6.7c-3.7,0-6.7,3-6.7,6.7v73.3c0,3.7,3,6.7,6.7,6.7h28.4c-3.2-4.8-5.1-10.5-5.1-16.7c0-16.6,13.4-30,30-30 c2.3,0,4.5,0.3,6.7,0.8V31.7c0-0.9-0.3-1.7-1-2.4L60.7,7.6c-0.6-0.6-1.5-1-2.4-1L23.3,6.7z M56.7,13L77,33.3H60 c-1.8,0-3.3-1.5-3.3-3.3L56.7,13z M76.7,53.3c-12.9,0-23.3,10.4-23.3,23.3S63.8,100,76.7,100S100,89.6,100,76.7 S89.6,53.3,76.7,53.3z M76.7,63.3c1.8,0,3.3,1.5,3.3,3.3v6.7h6.7c1.8,0,3.3,1.5,3.3,3.3c0,1.8-1.5,3.3-3.3,3.3H80v6.7 c0,1.8-1.5,3.3-3.3,3.3c-1.8,0-3.3-1.5-3.3-3.3V80h-6.7c-1.8,0-3.3-1.5-3.3-3.3s1.5-3.3,3.3-3.3h6.7v-6.7 C73.3,64.8,74.8,63.3,76.7,63.3L76.7,63.3z"></path></svg>',B(e,"class","suggestion-flair"),B(e,"aria-label","Not created yet, select to create")},m(r,n){$(r,e,n)},p:he,i:he,o:he,d(r){r&&H(e)}}}function Uv(t){"use strict";return[]}var tf=class extends Te{constructor(e){super();Oe(this,e,Uv,Wv,Ae,{})}},rf=tf;function nf(t){let e,r;return e=new rf({}),{c(){$e(e.$$.fragment)},m(n,i){Re(e,n,i),r=!0},i(n){r||(ee(e.$$.fragment,n),r=!0)},o(n){ne(e.$$.fragment,n),r=!1},d(n){Ie(e,n)}}}function Gv(t){let e,r,n,i,o,s=t[2]&&nf(t),a=t[4].default,u=pr(a,t,t[3],null);return{c(){e=M("div"),s&&s.c(),r=W(),u&&u.c(),B(e,"data-result-id",t[0]),B(e,"class","suggestion-item omnisearch-result"),lo(e,"is-selected",t[1])},m(l,f){$(l,e,f),s&&s.m(e,null),D(e,r),u&&u.m(e,null),n=!0,i||(o=[He(e,"mousemove",t[5]),He(e,"click",t[6]),He(e,"keypress",t[7]),He(e,"auxclick",t[8])],i=!0)},p(l,[f]){l[2]?s?f&4&&ee(s,1):(s=nf(l),s.c(),ee(s,1),s.m(e,r)):s&&(Ut(),ne(s,1,1,()=>{s=null}),Gt()),u&&u.p&&(!n||f&8)&&mr(u,a,l,l[3],n?hr(a,l[3],f,null):gr(l[3]),null),(!n||f&1)&&B(e,"data-result-id",l[0]),(!n||f&2)&&lo(e,"is-selected",l[1])},i(l){n||(ee(s),ee(u,l),n=!0)},o(l){ne(s),ne(u,l),n=!1},d(l){l&&H(e),s&&s.d(),u&&u.d(l),i=!1,Xe(o)}}}function Qv(t,e,r){let{$$slots:n={},$$scope:i}=e,{id:o}=e,{selected:s=!1}=e,{glyph:a=!1}=e;function u(c){Qe.call(this,t,c)}function l(c){Qe.call(this,t,c)}function f(c){Qe.call(this,t,c)}function p(c){Qe.call(this,t,c)}return t.$$set=c=>{"id"in c&&r(0,o=c.id),"selected"in c&&r(1,s=c.selected),"glyph"in c&&r(2,a=c.glyph),"$$scope"in c&&r(3,i=c.$$scope)},[o,s,a,i,n,u,l,f,p]}var of=class extends Te{constructor(e){super();Oe(this,e,Qv,Gv,Ae,{id:0,selected:1,glyph:2})}},qi=of;var Yr=je(require("obsidian"));function sf(t){let e,r=t[1].matches.length+"",n,i,o=(t[1].matches.length>1?"matches":"match")+"",s;return{c(){e=M("span"),n=Ce(r),i=Ce("\xA0"),s=Ce(o),B(e,"class","omnisearch-result__counter")},m(a,u){$(a,e,u),D(e,n),D(e,i),D(e,s)},p(a,u){u&2&&r!==(r=a[1].matches.length+"")&&Ze(n,r),u&2&&o!==(o=(a[1].matches.length>1?"matches":"match")+"")&&Ze(s,o)},d(a){a&&H(e)}}}function af(t){let e,r,n,i,o;return{c(){e=M("div"),r=M("span"),n=W(),i=M("span"),o=Ce(t[7]),B(e,"class","omnisearch-result__folder-path")},m(s,a){$(s,e,a),D(e,r),t[14](r),D(e,n),D(e,i),D(i,o)},p(s,a){a&128&&Ze(o,s[7])},d(s){s&&H(e),t[14](null)}}}function lf(t){let e,r=Ht(t[5].content,t[9])+"";return{c(){e=M("div"),B(e,"class","omnisearch-result__body")},m(n,i){$(n,e,i),e.innerHTML=r},p(n,i){i&544&&r!==(r=Ht(n[5].content,n[9])+"")&&(e.innerHTML=r)},d(n){n&&H(e)}}}function uf(t){let e,r,n;return{c(){e=M("div"),r=M("img"),Ge(r,"width","100px"),so(r.src,n=t[6])||B(r,"src",n),B(r,"alt",""),B(e,"class","omnisearch-result__image-container")},m(i,o){$(i,e,o),D(e,r)},p(i,o){o&64&&!so(r.src,n=i[6])&&B(r,"src",n)},d(i){i&&H(e)}}}function qv(t){let e,r,n,i,o,s,a=Ht(t[2],t[10])+"",u,l,f,p=or(t[1].path)+"",c,h,w,x,v,d,b=t[1].matches.length>0&&sf(t),m=t[7]&&af(t),g=t[11]&&lf(t),y=t[6]&&uf(t);return{c(){e=M("div"),r=M("div"),n=M("span"),i=M("span"),o=W(),s=M("span"),u=W(),l=M("span"),f=Ce("."),c=Ce(p),h=W(),b&&b.c(),w=W(),m&&m.c(),x=W(),v Line truncated
`),i&&i.c(),n=yr()},m(o,s){$(o,e,s),i&&i.m(o,s),$(o,n,s)},p(o,s){s[0]&2&&(r=T.simpleSearch&&o[1].split(Sn).some(Pf)),r?i||(i=kf(o),i.c(),i.m(n.parentNode,n)):i&&(i.d(1),i=null)},d(o){o&&H(e),i&&i.d(o),o&&H(n)}}}function kf(t){let e,r,n;return{c(){e=M("br"),r=W(),n=M("span"),n.textContent=`You have enabled "Simpler Search" in the settings, try to type more
characters.`,Ge(n,"color","var(--text-accent)"),Ge(n,"font-size","small")},m(i,o){$(i,e,o),$(i,r,o),$(i,n,o)},d(i){i&&H(e),i&&H(r),i&&H(n)}}}function gb(t){let e,r,n,i=t[2],o=[];for(let f=0;f<i.length;f+=1)o[f]=Of(Df(t,i,f));let s=f=>ne(o[f],1,1,()=>{o[f]=null});function a(f,p){if(!f[2].length&&f[1]&&!f[4])return mb;if(f[4])return hb}let u=a(t,[-1,-1]),l=u&&u(t);return{c(){for(let f=0;f<o.length;f+=1)o[f].c();e=W(),r=M("div"),l&&l.c(),Ge(r,"text-align","center")},m(f,p){for(let c=0;c<o.length;c+=1)o[c].m(f,p);$(f,e,p),$(f,r,p),l&&l.m(r,null),n=!0},p(f,p){if(p[0]&3077){i=f[2];let c;for(c=0;c<i.length;c+=1){let h=Df(f,i,c);o[c]?(o[c].p(h,p),ee(o[c],1)):(o[c]=Of(h),o[c].c(),ee(o[c],1),o[c].m(e.parentNode,e))}for(Ut(),c=i.length;c<o.length;c+=1)s(c);Gt()}u===(u=a(f,p))&&l?l.p(f,p):(l&&l.d(1),l=u&&u(f),l&&(l.c(),l.m(r,null)))},i(f){if(!n){for(let p=0;p<i.length;p+=1)ee(o[p]);n=!0}},o(f){o=o.filter(Boolean);for(let p=0;p<o.length;p+=1)ne(o[p]);n=!1},d(f){Bn(o,f),f&&H(e),f&&H(r),l&&l.d()}}}function yb(t){let e,r,n,i,o,s,a,u,l,f,p,c,h,w,x,v,d,b,m,g,y,_,j,A,F,E,O,L,k,z,J,Y,q,C,S,I,N,X,P,re,Ke,we,me,ze,Uf={initialValue:t[1],placeholder:"Omnisearch - Vault",$$slots:{default:[pb]},$$scope:{ctx:t}};e=new bi({props:Uf}),t[16](e),e.$on("input",t[17]);let Ve=t[3]&&If(t);return i=new xi({props:{$$slots:{default:[gb]},$$scope:{ctx:t}}}),{c(){$e(e.$$.fragment),r=W(),Ve&&Ve.c(),n=W(),$e(i.$$.fragment),o=W(),s=M("div"),a=M("div"),a.innerHTML='<span class="prompt-instruction-command">\u2191\u2193</span><span>to navigate</span>',u=W(),l=M("div"),l.innerHTML=`<span class="prompt-instruction-command">alt \u2191\u2193</span>
<span>to cycle history</span>`,f=W(),p=M("div"),c=M("span"),h=Ce(t[7]),w=W(),x=M("span"),x.textContent="to open",v=W(),d=M("div"),d.innerHTML=`<span class="prompt-instruction-command">tab</span>
<span>to switch to In-File Search</span>`,b=W(),m=M("div"),g=M("span"),y=Ce(t[6]),_=W(),j=M("span"),j.textContent="to open in a new pane",A=W(),F=M("div"),F.innerHTML=`<span class="prompt-instruction-command">alt o</span>
<span>to open in the background</span>`,E=W(),O=M("div"),L=M("span"),k=Ce(t[9]),z=W(),J=M("span"),J.textContent="to create",Y=W(),q=M("div"),C=M("span"),S=Ce(t[8]),I=W(),N=M("span"),N.textContent="to create in a new pane",X=W(),P=M("div"),P.innerHTML=`<span class="prompt-instruction-command">alt \u21B5</span>
<span>to insert a link</span>`,re=W(),Ke=M("div"),Ke.innerHTML=`<span class="prompt-instruction-command">ctrl h</span>
<span>to toggle excerpts</span>`,we=W(),me=M("div"),me.innerHTML='<span class="prompt-instruction-command">esc</span><span>to close</span>',B(a,"class","prompt-instruction"),B(l,"class","prompt-instruction"),B(c,"class","prompt-instruction-command"),B(p,"class","prompt-instruction"),B(d,"class","prompt-instruction"),B(g,"class","prompt-instruction-command"),B(m,"class","prompt-instruction"),B(F,"class","prompt-instruction"),B(L,"class","prompt-instruction-command"),B(O,"class","prompt-instruction"),B(C,"class","prompt-instruction-command"),B(q,"class","prompt-instruction"),B(P,"class","prompt-instruction"),B(Ke,"class","prompt-instruction"),B(me,"class","prompt-instruction"),B(s,"class","prompt-instructions")},m(Z,ve){Re(e,Z,ve),$(Z,r,ve),Ve&&Ve.m(Z,ve),$(Z,n,ve),Re(i,Z,ve),$(Z,o,ve),$(Z,s,ve),D(s,a),D(s,u),D(s,l),D(s,f),D(s,p),D(p,c),D(c,h),D(p,w),D(p,x),D(s,v),D(s,d),D(s,b),D(s,m),D(m,g),D(g,y),D(m,_),D(m,j),D(s,A),D(s,F),D(s,E),D(s,O),D(O,L),D(L,k),D(O,z),D(O,J),D(s,Y),D(s,q),D(q,C),D(C,S),D(q,I),D(q,N),D(s,X),D(s,P),D(s,re),D(s,Ke),D(s,we),D(s,me),ze=!0},p(Z,ve){let io={};ve[0]&2&&(io.initialValue=Z[1]),ve[1]&256&&(io.$$scope={dirty:ve,ctx:Z}),e.$set(io),Z[3]?Ve?Ve.p(Z,ve):(Ve=If(Z),Ve.c(),Ve.m(n.parentNode,n)):Ve&&(Ve.d(1),Ve=null);let Vs={};ve[0]&23|ve[1]&256&&(Vs.$$scope={dirty:ve,ctx:Z}),i.$set(Vs),(!ze||ve[0]&128)&&Ze(h,Z[7]),(!ze||ve[0]&64)&&Ze(y,Z[6]),(!ze||ve[0]&512)&&Ze(k,Z[9]),(!ze||ve[0]&256)&&Ze(S,Z[8])},i(Z){ze||(ee(e.$$.fragment,Z),ee(i.$$.fragment,Z),ze=!0)},o(Z){ne(e.$$.fragment,Z),ne(i.$$.fragment,Z),ze=!1},d(Z){t[16](null),Ie(e,Z),Z&&H(r),Ve&&Ve.d(Z),Z&&H(n),Ie(i,Z),Z&&H(o),Z&&H(s)}}}var Pf=t=>t.length<3;function _b(t,e,r){let n,i;Ln(t,Ot,P=>r(15,i=P));let{modal:o}=e,{previousQuery:s}=e,a=0,u=0,l,f=[],p,c="",h=!0,w,x,v,d,b;rn(async()=>{U.enable("vault"),U.on("vault",te.Enter,A),U.on("vault",te.OpenInBackground,F),U.on("vault",te.CreateNote,z),U.on("vault",te.OpenInNewPane,E),U.on("vault",te.InsertLink,J),U.on("vault",te.Tab,Y),U.on("vault",te.ArrowUp,()=>q(-1)),U.on("vault",te.ArrowDown,()=>q(1)),U.on("vault",te.PrevSearchHistory,m),U.on("vault",te.NextSearchHistory,g),await eo(),T.showPreviousQueryResults&&r(13,s=(await Fe.getSearchHistory())[0])}),nn(()=>{U.disable("vault")});async function m(){let P=(await Fe.getSearchHistory()).filter(re=>re);++u>=P.length&&(u=0),r(1,l=P[u]),w?.setInputValue(l)}async function g(){let P=(await Fe.getSearchHistory()).filter(re=>re);--u<0&&(u=P.length?P.length-1:0),r(1,l=P[u]),w?.setInputValue(l)}let y=null;async function _(){y&&(y.cancel(),y=null),p=new ur(l),y=(0,Tf.cancelable)(new Promise(P=>{P(xe.getSuggestions(p))})),r(2,f=await y),r(0,a=0),await C()}function j(P){!n||(P?.ctrlKey?E():A(),o.close())}function A(){!n||(L(n),o.close())}function F(){!n||L(n,!0)}function E(){!n||(L(n,!0),o.close())}function O(){l&&Fe.addToSearchHistory(l)}function L(P,re=!1){O(),Qi(P,re)}async function k(P){await z()}async function z(P){if(l){try{await ef(l,P?.newLeaf)}catch(re){new $t.Notice(re.message);return}o.close()}}function J(){if(!n)return;let P=app.vault.getMarkdownFiles().find(ze=>ze.path===n.path),re=app.workspace.getActiveFile(),Ke=app.workspace.getActiveViewOfType($t.MarkdownView);if(!Ke?.editor){new $t.Notice("Omnisearch - Error - No active editor",3e3);return}let we;P&&re?we=app.fileManager.generateMarkdownLink(P,re.path):we=`[[${n.basename}.${or(n.path)}]]`;let me=Ke.editor.getCursor();Ke.editor.replaceRange(we,me,me),me.ch+=we.length,Ke.editor.setCursor(me),o.close()}function Y(){if(!(n&&(ir(n?.path)||!n?.matches.length)))if(O(),o.close(),n){let P=app.vault.getAbstractFileByPath(n.path);P&&P instanceof $t.TFile&&new Xr(app,P,l).open()}else{let P=app.workspace.getActiveViewOfType($t.MarkdownView);P&&new Xr(app,P.file,l).open()}}function q(P){r(0,a=yi(a+P,f.length)),C()}async function C(){await jt(),n&&activeWindow.document.querySelector(`[data-result-id="${n.path}"]`)?.scrollIntoView({behavior:"auto",block:"nearest"})}function S(P){lt[P?"unshift":"push"](()=>{w=P,r(5,w)})}let I=P=>r(1,l=P.detail),N=(P,re)=>r(0,a=P),X=P=>{P.button==1&&E()};t.$$set=P=>{"modal"in P&&r(14,o=P.modal),"previousQuery"in P&&r(13,s=P.previousQuery)},t.$$.update=()=>{if(t.$$.dirty[0]&8194){e:r(1,l=l??s)}if(t.$$.dirty[0]&2){e:l?(r(4,h=!0),_().then(()=>{r(4,h=!1)})):(r(4,h=!1),r(2,f=[]))}if(t.$$.dirty[0]&5){e:n=f[a]}if(t.$$.dirty[0]&32768){e:switch(i){case Je.LoadingCache:r(3,c="Loading cache...");break;case Je.ReadingFiles:r(3,c="Reading files...");break;case Je.IndexingFiles:r(3,c="Indexing files...");break;case Je.WritingCache:_(),r(3,c="Updating cache...");break;default:_(),r(3,c="");break}}};e:T.openInNewPane?(r(6,x="\u21B5"),r(7,v=nr()+" \u21B5"),r(8,d="shift \u21B5"),r(9,b=nr()+" shift \u21B5")):(r(6,x=nr()+" \u21B5"),r(7,v="\u21B5"),r(8,d=nr()+" shift \u21B5"),r(9,b="shift \u21B5"));return[a,l,f,c,h,w,x,v,d,b,j,E,k,s,o,i,S,I,N,X]}var Mf=class extends Te{constructor(e){super();Oe(this,e,_b,yb,Ae,{modal:14,previousQuery:13},null,[-1,-1])}},Rf=Mf;var Nf=je(require("obsidiLine truncated
<span>to switch to Vault Search</span>`,p=W(),c=M("div"),h=M("span"),h.textContent="esc",w=W(),j.c(),x=W(),v=M("div"),d=M("span"),d.textContent=`${nr()} \u21B5`,b=W(),m=M("span"),m.textContent="to open in a new pane",B(s,"class","prompt-instruction"),B(u,"class","prompt-instruction"),B(f,"class","prompt-instruction"),B(h,"class","prompt-instruction-command"),B(c,"class","prompt-instruction"),B(d,"class","prompt-instruction-command"),B(v,"class","prompt-instruction"),B(o,"class","prompt-instructions")},m(A,F){Re(e,A,F),$(A,r,F),Re(n,A,F),$(A,i,F),$(A,o,F),D(o,s),D(o,a),D(o,u),D(o,l),D(o,f),D(o,p),D(o,c),D(c,h),D(c,w),j.m(c,null),D(o,x),D(o,v),D(v,d),D(v,b),D(v,m),g=!0},p(A,[F]){let E={};F&2&&(E.initialValue=A[1]),e.$set(E);let O={};F&4194360&&(O.$$scope={dirty:F,ctx:A}),n.$set(O),_!==(_=y(A,F))&&(j.d(1),j=_(A),j&&(j.c(),j.m(c,null)))},i(A){g||(ee(e.$$.fragment,A),ee(n.$$.fragment,A),g=!0)},o(A){ne(e.$$.fragment,A),ne(n.$$.fragment,A),g=!1},d(A){Ie(e,A),A&&H(r),Ie(n,A),A&&H(i),A&&H(o),j.d()}}}function Eb(t,e,r){let n=t.find(i=>i.offset>e);return n?t.filter(i=>i.offset>e&&i.offset<=n.offset+r):[]}function Tb(t,e,r){let{modal:n}=e,{parent:i=null}=e,{singleFilePath:o=""}=e,{previousQuery:s}=e,a,u=[],l=0,f,p;rn(()=>{U.enable("infile"),U.on("infile",te.Enter,v),U.on("infile",te.OpenInNewPane,x),U.on("infile",te.ArrowUp,()=>h(-1)),U.on("infile",te.ArrowDown,()=>h(1)),U.on("infile",te.Tab,d)}),nn(()=>{U.disable("infile")});function c(_){let j=[],A=-1,F=0;for(;;){let E=Eb(_,A,Cn);if(!E.length||(A=E.last().offset,j.push(E),++F>100))break}return j}function h(_){r(5,l=yi(l+_,u.length)),w()}async function w(){await jt(),document.querySelector(`[data-result-id="${l}"]`)?.scrollIntoView({behavior:"auto",block:"nearest"})}async function x(){return v(!0)}async function v(_=!1){if(f){n.close(),i&&i.close(),await Qi(f,_);let j=app.workspace.getActiveViewOfType(Nf.MarkdownView);if(!j)return;let A=u[l]??0,F=j.editor.offsetToPos(A);F.ch=0,j.editor.setCursor(F),j.editor.scrollIntoView({from:{line:F.line-10,ch:0},to:{line:F.line+10,ch:0}})}}function d(){new cr(app,a??s).open(),n.close()}let b=_=>r(2,a=_.detail),m=(_,j)=>r(5,l=_),g=_=>v(_.ctrlKey),y=_=>{_.button==1&&v(!0)};return t.$$set=_=>{"modal"in _&&r(7,n=_.modal),"parent"in _&&r(0,i=_.parent),"singleFilePath"in _&&r(8,o=_.singleFilePath),"previousQuery"in _&&r(1,s=_.previousQuery)},t.$$.update=()=>{if(t.$$.dirty&2){e:r(2,a=s??"")}if(t.$$.dirty&772){e:(async()=>{a&&(r(9,p=new ur(a)),r(3,f=(await xe.getSuggestions(p,{singleFilePath:o}))[0]??null)),r(5,l=0),await w()})()}if(t.$$.dirty&8){e:if(f){let _=c(f.matches);r(4,u=_.map(j=>Math.round((j.first().offset+j.last().offset)/2)))}}},[i,s,a,f,u,l,v,n,o,p,b,m,g,y]}var Vf=class extends Te{constructor(e){super();Oe(this,e,Tb,Fb,Ae,{modal:7,parent:0,singleFilePath:8,previousQuery:1})}},Hf=Vf;var Ns=class extends ro.Modal{constructor(e){super(e);this.modalEl.replaceChildren(),this.modalEl.addClass("omnisearch-modal","prompt"),this.modalEl.removeClass("modal"),this.modalEl.tabIndex=-1,this.scope.register([],"ArrowDown",s=>{s.preventDefault(),U.emit(te.ArrowDown)}),this.scope.register([],"ArrowUp",s=>{s.preventDefault(),U.emit(te.ArrowUp)});for(let s of[{k:"J",dir:"down"},{k:"K",dir:"up"}])for(let a of["Ctrl","Mod"])this.scope.register([a],s.k,u=>{T.vimLikeNavigationShortcut&&U.emit("arrow-"+s.dir)});for(let s of[{k:"N",dir:"down"},{k:"P",dir:"up"}])for(let a of["Ctrl","Mod"])this.scope.register([a],s.k,u=>{T.vimLikeNavigationShortcut&&U.emit("arrow-"+s.dir)});let r,n,i,o;T.openInNewPane?(r=["Mod"],n=[],i=["Mod","Shift"],o=["Shift"]):(r=[],n=["Mod"],i=["Shift"],o=["Mod","Shift"]),this.scope.register(n,"Enter",s=>{s.preventDefault(),U.emit(te.OpenInNewPane)}),this.scope.register(["Alt"],"Enter",s=>{s.preventDefault(),U.emit(te.InsertLink)}),this.scope.register(i,"Enter",s=>{s.preventDefault(),U.emit(te.CreateNote)}),this.scope.register(o,"Enter",s=>{s.preventDefault(),U.emit(te.CreateNote,{newLeaf:!0})}),this.scope.register(r,"Enter",s=>{cs()||(s.preventDefault(),U.emit(te.Enter))}),this.scope.register(["Alt"],"O",s=>{cs()||(s.preventDefault(),U.emit(te.OpenInBackground))}),this.scope.register([],"Tab",s=>{s.preventDefault(),U.emit(te.Tab)}),this.scope.register(["Alt"],"ArrowDown",s=>{s.preventDefault(),U.emit(te.NextSearchHistory)}),this.scope.register(["Alt"],"ArrowUp",s=>{s.preventDefault(),U.emit(te.PrevSearchHistory)}),this.scope.register(["Ctrl"],"H",s=>{U.emit(hi.ToggleExcerpts)})}},cr=class extends Ns{constructor(e,r){super(e);let n=e.workspace.getActiveViewOfType(ro.MarkdownView)?.editor.getSelection(),i=new Rf({target:this.modalEl,props:{modal:this,previousQuery:n??r}});this.onClose=()=>{i.$destroy()}}},Xr=class extends Ns{constructor(e,r,n="",i){super(e);let o=new Hf({target:this.modalEl,props:{modal:this,singleFilePath:r.path,parent:i,previousQuery:n}});i&&i.containerEl.toggleVisibility(!1),this.onClose=()=>{i&&i.containerEl.toggleVisibility(!0),o.$destroy()}}};var $f=!1,no=[];function Db(t){return t.map(e=>{let{score:r,paLine truncated
+14
View File
@@ -0,0 +1,14 @@
{
"id": "omnisearch",
"name": "Omnisearch",
"version": "1.17.1",
"minAppVersion": "1.3.0",
"description": "A search engine that just works",
"author": "Simon Cambier",
"authorUrl": "https://github.com/scambier/obsidian-omnisearch",
"fundingUrl": {
"Github": "https://github.com/sponsors/scambier",
"Ko-fi": "https://ko-fi.com/scambier"
},
"isDesktopOnly": false
}
+94
View File
@@ -0,0 +1,94 @@
.omnisearch-modal {
}
.omnisearch-result {
white-space: normal;
display: flex;
flex-direction: row;
justify-content: space-between;
flex-wrap: nowrap;
}
.omnisearch-result__title-container {
display: flex;
align-items: center;
justify-content: space-between;
column-gap: 5px;
flex-wrap: wrap;
}
.omnisearch-result__title {
white-space: pre-wrap;
align-items: center;
display: flex;
gap: 5px;
}
.omnisearch-result__title > span {
}
.omnisearch-result__folder-path {
font-size: 0.75rem;
align-items: center;
display: flex;
gap: 5px;
color: var(--text-muted);
}
.omnisearch-result__extension {
font-size: 0.7rem;
color: var(--text-muted);
}
.omnisearch-result__counter {
font-size: 0.7rem;
color: var(--text-muted);
}
.omnisearch-result__body {
white-space: normal;
font-size: small;
word-wrap: normal;
overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
color: var(--text-muted);
margin-left: 0.5em;
}
.omnisearch-result__image-container {
flex-basis: 20%;
text-align: right
}
.omnisearch-highlight {
}
.omnisearch-default-highlight {
text-decoration: underline;
text-decoration-color: var(--text-highlight-bg);
text-decoration-thickness: 3px;
text-underline-offset: -1px;
text-decoration-skip-ink: none;
}
.omnisearch-input-container {
display: flex;
flex-direction: row;
gap: 5px;
}
@media only screen and (max-width: 600px) {
.omnisearch-input-container {
flex-direction: column;
}
}
.omnisearch-input-field {
position: relative;
flex-grow: 1;
}
+7
View File
@@ -0,0 +1,7 @@
{
"name": "Catppuccin",
"version": "0.4.17",
"minAppVersion": "1.0.0",
"author": "Marshall Beckrich",
"authorUrl": "https://github.com/catppuccin/obsidian"
}
File diff suppressed because it is too large. Load diff
+7
View File
@@ -0,0 +1,7 @@
{
"name": "Dracula Official",
"version": "1.0.9",
"minAppVersion": "0.16.0",
"author": "Dracula",
"authorUrl": "https://gitlab.com/chrismettal"
}
+805
View File
@@ -0,0 +1,805 @@
.theme-dark,
.theme-light{
/* Obsidian "Dark" import so light mode looks the same*/
--color-scheme: dark;
--highlight-mix-blend-mode: lighten;
--mono-rgb-0: 0, 0, 0;
--mono-rgb-100: 255, 255, 255;
--color-red-rgb: 251, 70, 76;
--color-red: #fb464c;
--color-orange-rgb: 233, 151, 63;
--color-orange: #e9973f;
--color-yellow-rgb: 224, 222, 113;
--color-yellow: #e0de71;
--color-green-rgb: 68, 207, 110;
--color-green: #44cf6e;
--color-cyan-rgb: 83, 223, 221;
--color-cyan: #53dfdd;
--color-blue-rgb: 2, 122, 255;
--color-blue: #027aff;
--color-purple-rgb: 168, 130, 255;
--color-purple: #a882ff;
--color-pink-rgb: 250, 153, 205;
--color-pink: #fa99cd;
--color-base-00: #1e1e1e;
--color-base-05: #212121;
--color-base-10: #242424;
--color-base-20: #262626;
--color-base-25: #2a2a2a;
--color-base-30: #363636;
--color-base-35: #3f3f3f;
--color-base-40: #555555;
--color-base-50: #666666;
--color-base-60: #999999;
--color-base-70: #bababa;
--color-base-100: #dadada;
--color-accent-hsl: var(--accent-h), var(--accent-s), var(--accent-l);
--color-accent: hsl(var(--accent-h), var(--accent-s), var(--accent-l));
--color-accent-1: hsl(var(--accent-h), var(--accent-s), calc(var(--accent-l) - 3.8%));
--color-accent-2: hsl(var(--accent-h), var(--accent-s), calc(var(--accent-l) + 3.8%));
--background-modifier-form-field: var(--color-base-25);
--interactive-normal: var(--color-base-30);
--interactive-hover: var(--color-base-35);
--background-modifier-box-shadow: rgba(0, 0, 0, 0.3);
--background-modifier-cover: rgba(10, 10, 10, 0.4);
--text-selection: hsla(var(--interactive-accent-hsl), 0.25);
--input-shadow: inset 0 0.5px 0.5px 0.5px rgba(255, 255, 255, 0.09), 0 2px 4px 0 rgba(0,0,0,.15), 0 1px 1.5px 0 rgba(0,0,0,.1), 0 1px 2px 0 rgba(0,0,0,.2), 0 0 0 0 transparent;
--input-shadow-hover: inset 0 0.5px 1px 0.5px rgba(255, 255, 255, 0.16), 0 2px 3px 0 rgba(0,0,0,.3), 0 1px 1.5px 0 rgba(0,0,0,.2), 0 1px 2px 0 rgba(0,0,0,.4), 0 0 0 0 transparent;
--shadow-s: 0px 1px 2px rgba(0, 0, 0, 0.121), 0px 3.4px 6.7px rgba(0, 0, 0, 0.179), 0px 15px 30px rgba(0, 0, 0, 0.3);
--shadow-l: 0px 1.8px 7.3px rgba(0, 0, 0, 0.071), 0px 6.3px 24.7px rgba(0, 0, 0, 0.112), 0px 30px 90px rgba(0, 0, 0, 0.2);
--pdf-shadow: 0 0 0 1px var(--background-modifier-border);
--pdf-thumbnail-shadow: 0 0 0 1px var(--background-modifier-border);
/* Actual Dracula colors*/
--background-primary: #282a36;
--background-primary-alt: #44475a;
--background-secondary: #1a1e24;
--background-secondary-alt: #282a36;
--text-normal: #f8f8f2;
--text-on-accent: #282a36;
--text-title-h1: #bd93f9;
--text-title-h2: #ffb86c;
--text-title-h3: #52fa7c;
--text-title-h4: #ff5555;
--text-title-h5: #f1fa8c;
--text-title-h6: #bd93f4;
--canvas-color-1: 255, 85, 85;
--canvas-color-2: 255, 184, 108;
--canvas-color-3: 241, 250, 140;
--canvas-color-4: 82, 250, 124;
--canvas-color-5: 139, 233, 253;
--canvas-color-6: 189, 147, 244;
--text-link: var(--text-accent);
--markup-code: #ffb86c;
--text-tag: #50fa7b;
--text-a: #ff79c6;
--text-a-hover: #ff79c0;
--text-mark: #f1fa8c;
--interactive-accent: #50fa7b;
--blockquote-border: #b294bb;
--interactive-accent-rgb: #f1fa8c;
--accent-h: 135;
--accent-s: 94%;
--accent-l: 65%;
}
/* LINKS & BRACKETS */
/* link */
/* url's */
/* editor */
.cm-url {
color: var(--text-link) !important;
}
/* preview */
.external-link {
color: var(--text-link) !important;
}
/* make external links italics to differentiate */
a:not(.internal-link) {
font-style: italic;
}
/* horizontal line in preview */
hr {
background-color: var(--text-normal);
border-color: var(--text-normal);
}
.markdown-preview-view hr {
background-color: var(--text-normal);
border-color: var(--text-normal);
}
.markdown-rendered hr {
background-color: var(--text-normal);
border-color: var(--text-normal);
}
.markdown-embed {
padding-left: 8px !important;
padding-right: 4px !important;
margin-left: 8px !important;
margin-right: 4px !important;
}
/* internal embedded link rendering in preview */
.markdown-embed-title {
color: var(--text-link);
}
/* NAKED EMBEDS*/
/* But keeping Border and Scroll! */
.markdown-embed-title {
display: none;
}
.markdown-preview-view .markdown-embed-content > :first-child {
margin-top: 0;
}
.markdown-preview-view .markdown-embed-content > :last-child {
margin-bottom: 0;
}
.markdown-embed-link {
color: var(--text-a) !important;
right: 2px !important;
}
.markdown-embed-link:hover {
color: var(--text-link) !important;
}
/* NO FILE OPEN PAGE*/
.empty-state-title {
color: var(--text-title-h1) !important;
}
.empty-state-action {
color: var(--text-muted) !important;
}
.empty-state-action:hover {
color: var(--text-normal) !important;
}
/* GRAPH VIEW */
#graph-view-canvas .links {
stroke: var(--interactive-accent-rgb) !important;
}
/* CODEBLOCKS */
/* code blocks in preview */
pre code {
padding: 5px !important;
color: var(--code-normal) !important;
line-height: normal;
display: block;
background-color: var(--background-primary-alt) !important;
}
.markdown-preview-view pre {
padding: 0px !important;
}
/* in-line code for editor and preview and code block for editor*/
code,
.cm-inline-code {
background-color: var(--background-primary-alt) !important;
color: var(--markup-code) !important;
bottom: 0px !important;
}
/* Code Appearance */
/* editor */
.CodeMirror-code span.cm-inline-code {
color: var(--markup-code) !important;
}
/* Editor CodeBlock TEXT Appearance - */
.cm-s-obsidian pre.HyperMD-codeblock {
color: var(--markup-code) !important;
}
/* preview */
.markdown-preview-view code {
color: var(--code-normal);
background-color: var(--background-primary-alt) !important;
bottom: -0.1px !important;
}
/* borders */
.cm-s-obsidian span.cm-inline-code {
border: 1px solid #525660;
border-radius: 4px;
}
.cm-s-obsidian span.cm-formatting-code.cm-inline-code {
border-right-width: 0;
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.cm-s-obsidian span.cm-formatting-code.cm-inline-code + span.cm-inline-code {
border-right: none;
border-left: none;
border-radius: 0;
}
.cm-s-obsidian
span.cm-formatting-code.cm-inline-code
+ span.cm-inline-code
+ span.cm-formatting-code.cm-inline-code {
border-left-width: 0;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
border-right-width: 1px;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
}
/* BLOCKQUOTES */
/* editor */
.cm-quote {
color: var(--interactive-accent) !important;
font-style: italic;
}
/* preview */
blockquote {
color: var(--interactive-accent) !important;
font-style: italic;
border-color: var(--blockquote-border) !important;
}
/* IMAGES */
/* embedded images */
img {
display: block;
margin-left: 20pt;
margin-right: auto;
}
/* TABLES */
th {
border: 1px solid var(--background-primary-alt) !important;
}
td {
border: 1px solid var(--background-primary-alt) !important
}
thead {
border-bottom: 4px solid var(--background-primary-alt);
}
.table {
background-color: var(--background-secondary-alt);
border: 1px solid var(--background-primary-alt);
padding: 4px;
line-height: normal;
display: block;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
border-bottom-left-radius: 4px;
}
/* SIDEBAR & DOCK ETC. */
/* view action buttons */
.view-action {
color: var(--text-muted) !important;
text-decoration: none !important;
}
.view-action:hover,
.view-action.is-active {
color: var(--text-normal) !important;
}
.status-bar {
background-color: var(--background-secondary-alt);
}
.side-dock-ribbon-action {
color: var(--text-muted) !important;
}
.side-dock-ribbon-action:hover {
color: var(--text-normal) !important;
}
.workspace-tab-header {
color: var(--text-muted) !important;
text-decoration: none !important;
}
.workspace-tab-header:hover {
color: var(--text-normal) !important;
}
button.mod-cta {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.horizontal-tab-nav-item.is-active, .vertical-tab-nav-item.is-active {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
/* searchbar */
.side-dock-panels-container {
background-color: var(--background-secondary-alt) !important;
color: var(background-secondary-alt);
}
/* icons at top of panes*/
.file-view-actions a {
color: var(--text-muted) !important;
}
.file-view-actions a:hover {
color: var(--text-muted) !important;
}
/* html tags in editor */
.cm-tag {
color: var(--text-tag) !important;
}
/* .side-dock-ribbon-tab,
.side-dock-ribbon-action {} */
.side-dock-ribbon-tab.is-active {
color: var(--interactive-accent) !important;
}
.side-dock-ribbon-tab.is-active .side-dock-ribbon-tab-inner:hover {
color: #6272a4 !important;
background-color: var(--background-secondary);
}
.nav-file-title {
color: var(--text-muted) !important;
background-color: var(--background-secondary);
}
.is-translucent .nav-file-title:not(.is-active) {
background-color: transparent;
}
.nav-folder-title {
color: var(--text-muted) !important;
background-color: var(--background-secondary);
}
.is-translucent .nav-folder-title {
background-color: transparent;
}
.nav-file-title:hover {
color: var(--text-normal) !important;
}
.nav-folder-title:hover {
color: var(--text-normal) !important;
}
.nav-action-button.is-active {
background-color: var(--background-secondary-alt);
}
.search-result-file-title {
color: var(--text-a) !important;
background-color: var(--background-secondary);
}
.is-translucent .search-result-file-title {
background-color: transparent;
}
.search-result-file-matched-text {
color: var(--text-link) !important;
background-color: var(--background-secondary);
}
/* .nav-file-tag {
color: #59a2c5;
} /* for the PNG text, but can't specifically target "PNG", just all of those filetype tags. */
.nav-file.is-active .nav-file-tag {
color: var(--text-normal);
}
/* hover actions on side dock navigation */
.side-dock-ribbon-tab:hover,
.side-dock-ribbon-tab-inner:hover,
.side-dock-ribbon-action:hover,
.side-dock-ribbon-action.is-active:hover,
.nav-action-button:hover,
.side-dock-collapse-btn:hover {
color: var(--text-normal);
}
/* Hover color over tree item flairs */
.tree-item-self:hover .tree-item-flair {
background-color: var(--background-secondary);
}
/* clean up side bar empty state (e.g. unlinked mentions) */
.search-empty-state {
width: auto;
padding-left: 15px;
padding-right: 15px;
line-height: normal;
}
/* clean up side bar empty state (e.g. unlinked mentions) */
.search-empty-state {
width: auto;
padding-left: 10px;
padding-right: 5px;
line-height: normal;
}
/* NORMAL TEXT OUTSIDE OF HEADINGS AND CODE */
/* preview */
.markdown-preview-view {
color: var(--text-normal);
padding-left: 8% !important;
padding-right: 4% !important;
}
.mod-single-child .markdown-preview-view {
color: var(--text-normal);
padding-left: 10% !important;
padding-right: 10% !important;
}
/* editor */
.cm-s-obsidian {
color: var(--text-normal);
padding-left: 8% !important;
padding-right: 4% !important;
}
.mod-single-child .cm-s-obsidian {
color: var(--text-normal);
padding-left: 8% !important;
padding-right: 4% !important;
}
/* HEADINGS */
/* preview */
.markdown-preview-view h1 {
color: var(--text-title-h1);
}
.markdown-preview-view h2 {
color: var(--text-title-h2);
}
.markdown-preview-view h3 {
color: var(--text-title-h3);
}
.markdown-preview-view h4 {
color: var(--text-title-h4);
}
.markdown-preview-view h5 {
color: var(--text-title-h5);
}
.markdown-preview-view h6 {
color: var(--text-title-h6);
}
/* editor */
.cm-header-1 {
color: var(--text-title-h1);
}
.cm-header-2 {
color: var(--text-title-h2);
}
.cm-header-3 {
color: var(--text-title-h3);
}
.cm-header-4 {
color: var(--text-title-h4);
}
.cm-header-5 {
color: var(--text-title-h5);
}
.cm-header-6 {
color: var(--text-title-h6);
}
/* TAGS */
/* preview */
a.tag {
color: var(--text-tag);
}
/* editor */
.cm-hashtag {
color: var(--text-tag) !important;
}
/* BOLD */
/* preview */
strong {
color: var(--markup-code);
}
/* editor */
.cm-strong {
color: var(--markup-code);
}
/* ITALICS */
/* preview */
em {
color: var(--interactive-accent);
}
/* editor */
.cm-em {
color: var(--interactive-accent);
}
/* HIGHLIGHT */
/* preview */
mark {
color: var(--background-primary);
background-color: var(--text-mark);
padding-top: 1px;
padding-bottom: 1px;
}
/* editor */
.cm-highlight {
color: var(--background-primary) !important;
background-color: var(--text-mark) !important;
padding-top: 1px;
padding-bottom: 1px;
}
/* COLLAPSED RIBBONS */
.workspace-ribbon.is-collapsed {
background-color: var(--background-secondary-alt) !important;
}
.workspace-ribbon.mod-right.is-collapsed {
background-color: var(--background-secondary-alt) !important;
}
.workspace-ribbon.mod-left.is-collapsed {
background-color: var(--background-secondary-alt) !important;
}
/* POPUP NOTIFICATION*/
.notice {
color: var(--text-normal) !important;
background-color: var(--blockquote-border) !important;
}
/* UL, OL, BULLETS, CHECKBOXES & FOLDING ARROWS */
/* task lists */
.markdown-preview-view .task-list-item-checkbox {
-webkit-appearance: none;
top: 1.3px !important;
right: 5px !important;
box-sizing: border-box;
border: 1px solid var(--accent-2);
position: relative;
width: 1.25em;
height: 1.25em;
margin: 0;
box-shadow: 0 0 0.1em var(--interactive-accent);
}
.markdown-preview-view .task-list-item-checkbox:checked::before {
content: "✓";
position: absolute;
color: var(--interactive-accent);
line-height: 1.25em;
width: 1.2em;
text-align: center;
text-shadow: 0 0 0.5em var(--accent-2);
}
.markdown-preview-view .task-list-item-checkbox {
top: 0px;
}
.checkbox-container {
background-color: var(--background-primary-alt);
border-radius: 14px;
display: inline-block;
height: 22px;
position: relative;
top: 4px;
user-select: none;
width: 42px;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.15);
transition: background 0.15s ease-in-out, box-shadow 0.15s ease-in-out,
border 0.15s ease-in-out, opacity 0.15s ease-in-out,
-webkit-box-shadow 0.15s ease-in-out;
}
.checkbox-container.is-enabled {
background-color: var(--interactive-accent);
}
.markdown-preview-view mark {
color: var(--text-link);
background-color: var(--background-primary-alt);
}
.cm-formatting
/* This is the color of header hashtags. Don't change. */
.cm-formatting-list-ul .cm-list-1
/* This is the color of text in lists. Don't change. */
/* Subtler code folding arrows */
.CodeMirror-foldgutter-folded:after,
.CodeMirror-foldgutter-open:after {
opacity: 0.5;
color: var(--text-link);
}
.CodeMirror-foldgutter-folded:hover:after,
.CodeMirror-foldgutter-open:hover:after {
opacity: 1;
color: var(--text-link);
}
.CodeMirror-foldgutter-folded:after {
content: "\25BA";
color: var(--text-link);
}
.CodeMirror-foldgutter-open:after {
content: "\25BC";
}
/* Bullet Point Relationship Lines */
.cm-hmd-list-indent .cm-tab,
ul ul {
position: relative;
}
.cm-hmd-list-indent .cm-tab::before,
ul ul::before {
content: "";
border-left: 1px solid;
color: #92CDD6;
position: absolute;
}
.cm-hmd-list-indent .cm-tab::before {
left: 0;
top: -5px;
bottom: -4px;
}
ul ul::before {
left: 0px;
top: 0;
bottom: 0;
}
/* ul, li & ol colors in editor */
.cm-s-obsidian span.cm-formatting-list {
color: #8abeb7;
}
ol {
display: block;
list-style-type: decimal;
margin-block-start: 1em;
margin-block-end: 1em;
margin-inline-start: 0px;
margin-inline-end: 0px;
padding-inline-start: 40px;
}
.suggestion-highlight {
color: var(--interactive-accent)!important;
}
.is-selected {
background-color: var(--blockquote-border)!important;
}
@media print {
@page {
margin: 0mm 0mm 0mm 0mm;
}
.print .markdown-preview-view {
-webkit-print-color-adjust: exact;
background-color: #282a36;
color: #f8f8f2;
}
.markdown-rendered code {
color: #BABABA !important;
}
}
+7
View File
@@ -0,0 +1,7 @@
{
"name": "Encore",
"version": "2.8.0",
"minAppVersion": "1.1.9",
"author": "Carbonateb",
"authorUrl": "https://lucaschampagne.dev/"
}
+2011
View File
File diff suppressed because it is too large. Load diff
+238
View File
@@ -0,0 +1,238 @@
{
"main": {
"id": "b894e6395441bf91",
"type": "split",
"children": [
{
"id": "a5a324d300e6e103",
"type": "tabs",
"children": [
{
"id": "9513a065081c5bb6",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "Semester 1/Database Systems/Assignment/Querying Database.md",
"mode": "source",
"source": false
}
}
},
{
"id": "32c79d56306ffbbf",
"type": "leaf",
"state": {
"type": "markdown",
"state": {
"file": "Semester 2/Programming 2/Week 1/Week 1 Programming 2.md",
"mode": "source",
"source": false
}
}
}
],
"currentTab": 1
}
],
"direction": "vertical"
},
"left": {
"id": "29180f976da6913e",
"type": "split",
"children": [
{
"id": "5e6a5a1cfc68c394",
"type": "tabs",
"children": [
{
"id": "b645eb003ca29da3",
"type": "leaf",
"state": {
"type": "search",
"state": {
"query": "",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical"
}
}
},
{
"id": "fffdf73e5f225916",
"type": "leaf",
"state": {
"type": "bookmarks",
"state": {}
}
},
{
"id": "671043c113c40804",
"type": "leaf",
"state": {
"type": "file-explorer",
"state": {
"sortOrder": "alphabetical"
}
}
}
],
"currentTab": 2
}
],
"direction": "horizontal",
"width": 200
},
"right": {
"id": "ee8f6df41634f71e",
"type": "split",
"children": [
{
"id": "08c5be16080a33d4",
"type": "tabs",
"children": [
{
"id": "28df09223f5ff3ba",
"type": "leaf",
"state": {
"type": "backlink",
"state": {
"file": "Semester 2/Programming 2/Week 1/Week 1 Programming 2.md",
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
}
}
},
{
"id": "7bc5b41711af1822",
"type": "leaf",
"state": {
"type": "outgoing-link",
"state": {
"file": "Semester 2/Programming 2/Week 1/Week 1 Programming 2.md",
"linksCollapsed": false,
"unlinkedCollapsed": true
}
}
},
{
"id": "1817c377e59b8531",
"type": "leaf",
"state": {
"type": "tag",
"state": {
"sortOrder": "frequency",
"useHierarchy": true
}
}
},
{
"id": "3f130e3d308d39ed",
"type": "leaf",
"state": {
"type": "outline",
"state": {
"file": "Semester 2/Programming 2/Week 1/Week 1 Programming 2.md"
}
}
},
{
"id": "2e33e92dc5f2fbae",
"type": "leaf",
"state": {
"type": "all-properties",
"state": {
"sortOrder": "frequency",
"showSearch": false,
"searchQuery": ""
}
}
},
{
"id": "ff4e63a36b080692",
"type": "leaf",
"state": {
"type": "git-view",
"state": {}
}
}
],
"currentTab": 5
}
],
"direction": "horizontal",
"width": 300,
"collapsed": true
},
"left-ribbon": {
"hiddenItems": {
"obsidian-day-planner:Week plan": false,
"omnisearch:Omnisearch": false,
"switcher:Open quick switcher": false,
"graph:Open graph view": false,
"canvas:Create new canvas": false,
"daily-notes:Open today's daily note": false,
"templates:Insert template": false,
"command-palette:Open command palette": false
}
},
"active": "671043c113c40804",
"lastOpenFiles": [
"README.md",
"Semester 2/Computer Systems Internals & Linux/Week 1/Week 1 Computer Systems Internals.md",
"Semester 2/Programming 2/Week 1/Week 1 Programming 2.md",
"Semester 2/Computer Systems Internals & Linux/Week 1",
"Semester 2/Programming 2/Week 1",
"Semester 2/Computer Systems Internals & Linux",
"Semester 2/Programming 2",
"Semester 2",
"Semester 1",
"2023-10-31.md",
"2024-01-15.md",
"Semester 1/Web Development and HCI/Assignment.odt",
"Web Development and HCI/lu11370hmnm.tmp",
"Semester 1/Web Development and HCI/Assignment 1/src/styles/index.css",
"Semester 1/Web Development and HCI/Assignment 1/src/images/proxmox-03.jpg",
"Semester 1/Web Development and HCI/Assignment 1/src/images/proxmox-04.jpg",
"Web Development and HCI/Assignment 1/src/images/Screenshot from 2023-12-07 18-29-51.png",
"Semester 1/Web Development and HCI/Assignment 1/src/images/proxmox-02.jpg",
"Web Development and HCI/Assignment 1/src/images/Screenshot from 2023-12-07 17-29-53.png",
"Semester 1/Web Development and HCI/Assignment 1/src/images/proxmox-02.jpg~",
"Web Development and HCI/Assignment 1/src/images/proxmox-02.png",
"Web Development and HCI/Assignment 1/src/images/Screenshot from 2023-12-07 16-49-07.png",
"Semester 1/Web Development and HCI/Assignment 1/src/images/proxmox-01.jpg",
"Semester 1/Database Systems/Week 9/Week 9 Database Systems.md",
"Semester 1/Database Systems/Assignment/ERD.png",
"Semester 1/Database Systems/Week 10/Week 10.md",
"Semester 1/Database Systems/Week 8/Week 8 Database Systems.md",
"Semester 1/Database Systems/Week 7/Week 7 Database Systems.md",
"Semester 1/Database Systems/Week 5/Week 5 Database Systems.md",
"Semester 1/Database Systems/Week 6/Week 6 Database Systems.md",
"Semester 1/Database Systems/Assignment/Relational Model.md",
"Semester 1/Database Systems/Assignment/Querying Database.md",
"Semester 1/Database Systems/Assignment/ER Diagram.md",
"Semester 1/Database Systems/Assignment/Populating Database.md",
"Semester 1/Database Systems/Week 11/Week 11 Database Systems.md",
"Semester 1/Database Systems/Assignment/postgre Compatible.md",
"images/Pasted image 20231204191255.png",
"Semester 1/Database Systems/Assignment/Creating Tables.md",
"Semester 1/Computer Systems Internals & Linux/Coursework 1/Final.md",
"Semester 1/Computer Systems Internals & Linux/Coursework 1/Task 4.md",
"Semester 1/Computer Systems Internals & Linux/Coursework 1/Task 5.md",
"Semester 1/Computer Systems Internals & Linux/Coursework 1/Task 3.md",
"Semester 1/Computer Systems Internals & Linux/Coursework 1/Task 1.md",
"Semester 1/Computer Systems Internals & Linux/Coursework 1/Task 2.md",
"Semester 1/Computer Systems Internals & Linux/Week 7/Week 7 Computer Systems.md",
"Semester 1/DatabaseBackup/Week 3/Week 3 Database Systems.md",
"Database Systems/Untitled.canvas",
"Untitled 1.canvas",
"Untitled.canvas"
]
}