vault backup: 2025-03-16 18:59:42
This commit is contained in:
1 parent
6befcc90d4
commit
ae837183f1
188 files changed
+17794
-409
No files matched your search
Vendored
+3
-2
@@ -1,13 +1,14 @@
|
||||
{
|
||||
"showInlineTitle": true,
|
||||
"useMarkdownLinks": true,
|
||||
"promptDelete": true,
|
||||
"promptDelete": false,
|
||||
"showLineNumber": true,
|
||||
"attachmentFolderPath": "images",
|
||||
"pdfExportSettings": {
|
||||
"includeName": true,
|
||||
"pageSize": "A4",
|
||||
"landscape": false,
|
||||
"margin": "0",
|
||||
"margin": "2",
|
||||
"downscalePercent": 64
|
||||
},
|
||||
"readableLineLength": false,
|
||||
|
||||
Vendored
+3
-3
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"accentColor": "",
|
||||
"theme": "system",
|
||||
"theme": "moonstone",
|
||||
"cssTheme": "Tokyo Night",
|
||||
"nativeMenus": true,
|
||||
"baseFontSize": 14,
|
||||
"interfaceFontFamily": "AppleGothic,Inter",
|
||||
"textFontFamily": "AppleGothic,Inter",
|
||||
"interfaceFontFamily": "AppleGothic,Ubuntu Mono",
|
||||
"textFontFamily": "AppleGothic,DejaVu Math TeX Gyre",
|
||||
"monospaceFontFamily": "PT Mono,Andale Mono",
|
||||
"baseFontSizeAction": false,
|
||||
"translucency": true
|
||||
|
||||
Vendored
+2
-1
@@ -7,5 +7,6 @@
|
||||
"obsidian-style-settings",
|
||||
"url-into-selection",
|
||||
"obsidian-csv-table",
|
||||
"mermaid-tools"
|
||||
"mermaid-tools",
|
||||
"obsidian-latex"
|
||||
]
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"snippets": "[\n // Math mode\n\t{trigger: \"mk\", replacement: \"$$0$\", options: \"tA\"},\n\t{trigger: \"dm\", replacement: \"$$\\n$0\\n$$\", options: \"tAw\"},\n\t{trigger: \"beg\", replacement: \"\\\\begin{$0}\\n$1\\n\\\\end{$0}\", options: \"mA\"},\n\n // Dashes\n\t// {trigger: \"--\", replacement: \"–\", options: \"tA\"},\n\t// {trigger: \"–-\", replacement: \"—\", options: \"tA\"},\n\t// {trigger: \"—-\", replacement: \"---\", options: \"tA\"},\n\n // Greek letters\n\t{trigger: \"@a\", replacement: \"\\\\alpha\", options: \"mA\"},\n\t{trigger: \"@b\", replacement: \"\\\\beta\", options: \"mA\"},\n\t{trigger: \"@g\", replacement: \"\\\\gamma\", options: \"mA\"},\n\t{trigger: \"@G\", replacement: \"\\\\Gamma\", options: \"mA\"},\n\t{trigger: \"@d\", replacement: \"\\\\delta\", options: \"mA\"},\n\t{trigger: \"@D\", replacement: \"\\\\Delta\", options: \"mA\"},\n\t{trigger: \"@e\", replacement: \"\\\\epsilon\", options: \"mA\"},\n\t{trigger: \":e\", replacement: \"\\\\varepsilon\", options: \"mA\"},\n\t{trigger: \"@z\", replacement: \"\\\\zeta\", options: \"mA\"},\n\t{trigger: \"@t\", replacement: \"\\\\theta\", options: \"mA\"},\n\t{trigger: \"@T\", replacement: \"\\\\Theta\", options: \"mA\"},\n\t{trigger: \":t\", replacement: \"\\\\vartheta\", options: \"mA\"},\n\t{trigger: \"@i\", replacement: \"\\\\iota\", options: \"mA\"},\n\t{trigger: \"@k\", replacement: \"\\\\kappa\", options: \"mA\"},\n\t{trigger: \"@l\", replacement: \"\\\\lambda\", options: \"mA\"},\n\t{trigger: \"@L\", replacement: \"\\\\Lambda\", options: \"mA\"},\n\t{trigger: \"@s\", replacement: \"\\\\sigma\", options: \"mA\"},\n\t{trigger: \"@S\", replacement: \"\\\\Sigma\", options: \"mA\"},\n\t{trigger: \"@u\", replacement: \"\\\\upsilon\", options: \"mA\"},\n\t{trigger: \"@U\", replacement: \"\\\\Upsilon\", options: \"mA\"},\n\t{trigger: \"@o\", replacement: \"\\\\omega\", options: \"mA\"},\n\t{trigger: \"@O\", replacement: \"\\\\Omega\", options: \"mA\"},\n\t{trigger: \"ome\", replacement: \"\\\\omega\", options: \"mA\"},\n\t{trigger: \"Ome\", replacement: \"\\\\Omega\", options: \"mA\"},\n\n // Text environment\n {trigger: \"text\", replacement: \"\\\\text{$0}$1\", options: \"mA\"},\n {trigger: \"\\\"\", replacement: \"\\\\text{$0}$1\", options: \"mA\"},\n\n // Basic operations\n {trigger: \"sr\", replacement: \"^{2}\", options: \"mA\"},\n\t{trigger: \"cb\", replacement: \"^{3}\", options: \"mA\"},\n\t{trigger: \"rd\", replacement: \"^{$0}$1\", options: \"mA\"},\n\t{trigger: \"_\", replacement: \"_{$0}$1\", options: \"mA\"},\n\t{trigger: \"sts\", replacement: \"_\\\\text{$0}\", options: \"mA\"},\n\t{trigger: \"sq\", replacement: \"\\\\sqrt{ $0 }$1\", options: \"mA\"},\n\t{trigger: \"//\", replacement: \"\\\\frac{$0}{$1}$2\", options: \"mA\"},\n\t{trigger: \"ee\", replacement: \"e^{ $0 }$1\", options: \"mA\"},\n {trigger: \"invs\", replacement: \"^{-1}\", options: \"mA\"},\n {trigger: /([A-Za-z])(\\d)/, replacement: \"[[0]]_{[[1]]}\", options: \"rmA\", description: \"Auto letter subscript\", priority: -1},\n\n {trigger: /([^\\\\])(exp|log|ln)/, replacement: \"[[0]]\\\\[[1]]\", options: \"rmA\"},\n {trigger: \"conj\", replacement: \"^{*}\", options: \"mA\"},\n {trigger: \"Re\", replacement: \"\\\\mathrm{Re}\", options: \"mA\"},\n\t{trigger: \"Im\", replacement: \"\\\\mathrm{Im}\", options: \"mA\"},\n {trigger: \"bf\", replacement: \"\\\\mathbf{$0}\", options: \"mA\"},\n\t{trigger: \"rm\", replacement: \"\\\\mathrm{$0}$1\", options: \"mA\"},\n\n // Linear algebra\n {trigger: /([^\\\\])(det)/, replacement: \"[[0]]\\\\[[1]]\", options: \"rmA\"},\n {trigger: \"trace\", replacement: \"\\\\mathrm{Tr}\", options: \"mA\"},\n\n // More operations\n\t{trigger: \"([a-zA-Z])hat\", replacement: \"\\\\hat{[[0]]}\", options: \"rmA\"},\n {trigger: \"([a-zA-Z])bar\", replacement: \"\\\\bar{[[0]]}\", options: \"rmA\"},\n\t{trigger: \"([a-zA-Z])dot\", replacement: \"\\\\dot{[[0]]}\", options: \"rmA\", priority: -1},\n\t{trigger: \"([a-zA-Z])ddot\", replacement: \"\\\\ddot{[[0]]}\", options: \"rmA\", priority: 1},\n\t{trigger: \"([a-zA-Z])tilde\", replacement: \"\\\\tilde{[[0]]}\", options: \"rmA\"},\n\t{trigger: \"([a-zA-Z])und\", replacement: \"\\\\underline{[[0]]}\", options: \"rmA\"},\n\t{trigger: \"([a-zA-Z])vec\", replacement: \"\\\\vec{[[0]]}\", options: \"rmA\"},\n {trigger: \"([a-zA-Z]),\\\\.\", replacement: \"\\\\mathbf{[[0]]}\", options: \"rmA\"},\n\t{trigger: \"([a-zA-Z])\\\\.,\", replacement: \"\\\\mathbf{[[0]]}\", options: \"rmA\"},\n\t{trigger: \"\\\\\\\\(${GREEK}),\\\\.\", replacement: \"\\\\boldsymbol{\\\\[[0]]}\", options: \"rmA\"},\n\t{trigger: \"\\\\\\\\(${GREEK})\\\\.,\", replacement: \"\\\\boldsymbol{\\\\[[0]]}\", options: \"rmA\"},\n\n\t{trigger: \"hat\", replacement: \"\\\\hat{$0}$1\", options: \"mA\"},\n {trigger: \"bar\", replacement: \"\\\\bar{$0}$1\", options: \"mA\"},\n\t{trigger: \"dot\", replacement: \"\\\\dot{$0}$1\", options: \"mA\", priority: -1},Line truncated
|
||||
"snippetVariables": "{\n\t\"${GREEK}\": \"alpha|beta|gamma|Gamma|delta|Delta|epsilon|varepsilon|zeta|eta|theta|vartheta|Theta|iota|kappa|lambda|Lambda|mu|nu|xi|omicron|pi|rho|varrho|sigma|Sigma|tau|upsilon|Upsilon|phi|varphi|Phi|chi|psi|omega|Omega\",\n\t\"${SYMBOL}\": \"parallel|perp|partial|nabla|hbar|ell|infty|oplus|ominus|otimes|oslash|square|star|dagger|vee|wedge|subseteq|subset|supseteq|supset|emptyset|exists|nexists|forall|implies|impliedby|iff|setminus|neg|lor|land|bigcup|bigcap|cdot|times|simeq|approx\",\n\t\"${MORE_SYMBOLS}\": \"leq|geq|neq|gg|ll|equiv|sim|propto|rightarrow|leftarrow|Rightarrow|Leftarrow|leftrightarrow|to|mapsto|cap|cup|in|sum|prod|exp|ln|log|det|dots|vdots|ddots|pm|mp|int|iint|iiint|oint\"\n}\n",
|
||||
"snippetsEnabled": true,
|
||||
"snippetsTrigger": "Tab",
|
||||
"suppressSnippetTriggerOnIME": true,
|
||||
"removeSnippetWhitespace": true,
|
||||
"autoDelete$": true,
|
||||
"loadSnippetsFromFile": false,
|
||||
"loadSnippetVariablesFromFile": false,
|
||||
"snippetsFileLocation": "",
|
||||
"snippetVariablesFileLocation": "",
|
||||
"concealEnabled": false,
|
||||
"concealRevealTimeout": 0,
|
||||
"colorPairedBracketsEnabled": true,
|
||||
"highlightCursorBracketsEnabled": true,
|
||||
"mathPreviewEnabled": true,
|
||||
"mathPreviewPositionIsAbove": true,
|
||||
"autofractionEnabled": true,
|
||||
"autofractionSymbol": "\\frac",
|
||||
"autofractionBreakingChars": "+-=\t",
|
||||
"matrixShortcutsEnabled": true,
|
||||
"taboutEnabled": true,
|
||||
"autoEnlargeBrackets": true,
|
||||
"wordDelimiters": "., +-\\n\t:;!?\\/{}[]()=~$",
|
||||
"autofractionExcludedEnvs": "[\n\t\t[\"^{\", \"}\"],\n\t\t[\"\\\\pu{\", \"}\"]\n\t]",
|
||||
"matrixShortcutsEnvNames": "pmatrix, cases, align, gather, bmatrix, Bmatrix, vmatrix, Vmatrix, array, matrix",
|
||||
"autoEnlargeBracketsTriggers": "sum, int, frac, prod, bigcup, bigcap",
|
||||
"forceMathLanguages": "math"
|
||||
}
|
||||
+15605
File diff suppressed because it is too large.
Load diff
+11
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"id": "obsidian-latex-suite",
|
||||
"name": "Latex Suite",
|
||||
"version": "1.9.8",
|
||||
"minAppVersion": "1.0.0",
|
||||
"description": "Make typesetting LaTeX math as fast as handwriting through snippets, text expansion, and editor enhancements",
|
||||
"author": "artisticat",
|
||||
"authorUrl": "https://github.com/artisticat1",
|
||||
"fundingUrl": "https://ko-fi.com/artisticat",
|
||||
"isDesktopOnly": false
|
||||
}
|
||||
+235
@@ -0,0 +1,235 @@
|
||||
/* Settings panel */
|
||||
|
||||
.setting-item.hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.setting-item.setting-item-heading .latex-suite-settings-icon {
|
||||
margin-right: var(--size-4-2);
|
||||
display: inline-flex;
|
||||
}
|
||||
|
||||
.setting-item.setting-item-heading:has(.latex-suite-settings-icon) {
|
||||
border-bottom: 1px solid var(--background-modifier-border);
|
||||
}
|
||||
|
||||
.setting-item.setting-item-heading:has(.latex-suite-settings-icon) + .setting-item {
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
.setting-item.setting-item-heading:has(.latex-suite-settings-icon) ~ .setting-item:not(.setting-item-heading), .latex-suite-snippet-variables-setting + .setting-item-control {
|
||||
width: calc(100% - 26px);
|
||||
margin-left: 26px;
|
||||
}
|
||||
|
||||
.latex-suite-snippet-variables-setting .setting-item-control {
|
||||
height: 120px;
|
||||
}
|
||||
|
||||
.latex-suite-snippet-variables-setting .setting-item-control textarea {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.snippets-text-area, .latex-suite-snippet-variables-setting {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.snippets-text-area .setting-item-info, .latex-suite-snippet-variables-setting .setting-item-info {
|
||||
margin-bottom: 0.75rem;
|
||||
}
|
||||
|
||||
.snippets-text-area .setting-item-control {
|
||||
flex-direction: column;
|
||||
align-items: flex-end;
|
||||
}
|
||||
|
||||
.snippets-editor-wrapper {
|
||||
width: 100%;
|
||||
margin-bottom: 0.75rem;
|
||||
}
|
||||
|
||||
.snippets-editor-wrapper .cm-editor {
|
||||
border: 1px solid var(--background-modifier-border);
|
||||
border-radius: 4px;
|
||||
font-size: var(--font-inputs);
|
||||
height: 20em;
|
||||
outline: none !important;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.snippets-editor-wrapper .cm-line, .snippets-editor-wrapper .cm-lineNumbers {
|
||||
font-family: var(--font-monospace);
|
||||
}
|
||||
|
||||
.snippets-footer {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.snippets-editor-validity {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.snippets-editor-validity-indicator {
|
||||
color: white;
|
||||
display: inline-block;
|
||||
border-radius: 1em;
|
||||
margin-right: 10px;
|
||||
cursor: default;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.snippets-editor-validity-indicator svg {
|
||||
width: 16px !important;
|
||||
height: 16px !important;
|
||||
}
|
||||
|
||||
.snippets-editor-validity-indicator:hover {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.snippets-editor-validity-indicator.valid {
|
||||
background-color: var(--color-green);
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.snippets-editor-validity-indicator.invalid {
|
||||
background-color: var(--color-red);
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
.snippets-editor-buttons {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
}
|
||||
|
||||
.latex-suite-confirmation-modal .setting-item {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.search-input-container input.latex-suite-location-input-el {
|
||||
width: initial;
|
||||
}
|
||||
|
||||
/*
|
||||
Snippet color classes.
|
||||
*/
|
||||
|
||||
/* These extra selectors enforce their color on all children, because CodeMirror does weird nesting of spans when
|
||||
nesting multiple decorations. */
|
||||
|
||||
.latex-suite-snippet-placeholder {
|
||||
border-radius: 2px;
|
||||
background-color: var(--placeholder-bg);
|
||||
outline: var(--placeholder-outline) solid 1px;
|
||||
}
|
||||
|
||||
.latex-suite-snippet-placeholder-0, span.latex-suite-snippet-placeholder-0 span {
|
||||
--placeholder-bg: #87cefa2e;
|
||||
--placeholder-outline: #87cefa6e;
|
||||
}
|
||||
|
||||
.theme-dark .latex-suite-snippet-placeholder-0, span.latex-suite-snippet-placeholder-0 span {
|
||||
--placeholder-outline: #87cefa43;
|
||||
}
|
||||
|
||||
.latex-suite-snippet-placeholder-1, span.latex-suite-snippet-placeholder-1 span {
|
||||
--placeholder-bg: #ffa50033;
|
||||
--placeholder-outline: #ffa5006b;
|
||||
}
|
||||
|
||||
.theme-dark .latex-suite-snippet-placeholder-1, span.latex-suite-snippet-placeholder-1 span {
|
||||
--placeholder-outline: #ffa5004d;
|
||||
}
|
||||
|
||||
.latex-suite-snippet-placeholder-2, span.latex-suite-snippet-placeholder-2 span {
|
||||
--placeholder-bg: #00ff0022;
|
||||
--placeholder-outline: #00ff0060;
|
||||
}
|
||||
|
||||
.theme-dark .latex-suite-snippet-placeholder-2, span.latex-suite-snippet-placeholder-2 span {
|
||||
--placeholder-outline: #00ff003d;
|
||||
}
|
||||
|
||||
|
||||
/* Conceal */
|
||||
|
||||
span.cm-math.cm-concealed-bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
span.cm-math.cm-concealed-underline {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
span.cm-math.cm-concealed-mathrm, sub.cm-math.cm-concealed-mathrm {
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
|
||||
/* Conceal superscripts without changing line height */
|
||||
sup.cm-math {
|
||||
line-height: 0;
|
||||
}
|
||||
|
||||
sup.cm-math, sub.cm-math {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
|
||||
/* Inline math tooltip styling */
|
||||
|
||||
.theme-light .cm-tooltip.cm-tooltip-cursor {
|
||||
box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.028), 0px 3.4px 6.7px rgba(0, 0, 0, .042), 0px 5px 20px rgba(0, 0, 0, .07);
|
||||
}
|
||||
|
||||
.theme-dark .cm-tooltip.cm-tooltip-cursor {
|
||||
box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1),
|
||||
0px 3.4px 6.7px rgba(0, 0, 0, 0.15),
|
||||
0px 0px 30px rgba(0, 0, 0, 0.27);
|
||||
}
|
||||
|
||||
|
||||
/* Highlight brackets */
|
||||
.theme-light .latex-suite-highlighted-bracket, .theme-light .latex-suite-highlighted-bracket [class^="latex-suite-color-bracket-"] {
|
||||
background-color: hsl(var(--accent-h), var(--accent-s), 40%, 0.3);
|
||||
}
|
||||
|
||||
.theme-dark .latex-suite-highlighted-bracket, .theme-dark .latex-suite-highlighted-bracket [class^="latex-suite-color-bracket-"] {
|
||||
background-color: hsl(var(--accent-h), var(--accent-s), 70%, 0.6);
|
||||
}
|
||||
|
||||
|
||||
/* Color matching brackets */
|
||||
|
||||
.theme-light .latex-suite-color-bracket-0, .theme-light .latex-suite-color-bracket-0 .cm-bracket {
|
||||
color: #527aff;
|
||||
}
|
||||
|
||||
.theme-dark .latex-suite-color-bracket-0, .theme-dark .latex-suite-color-bracket-0 .cm-bracket {
|
||||
color: #47b8ff;
|
||||
}
|
||||
|
||||
.theme-light .latex-suite-color-bracket-1, .theme-light .latex-suite-color-bracket-1 .cm-bracket {
|
||||
color: #ff50b7;
|
||||
}
|
||||
|
||||
.theme-dark .latex-suite-color-bracket-1, .theme-dark .latex-suite-color-bracket-1 .cm-bracket {
|
||||
color: #ff55cd;
|
||||
}
|
||||
|
||||
.theme-light .latex-suite-color-bracket-2, .theme-light .latex-suite-color-bracket-2 .cm-bracket {
|
||||
color: #69ba00;
|
||||
}
|
||||
|
||||
.theme-dark .latex-suite-color-bracket-2, .theme-dark .latex-suite-color-bracket-2 .cm-bracket {
|
||||
color: #73ff63;
|
||||
}
|
||||
|
||||
/* .latex-suite-color-bracket-3 {
|
||||
color: #8de15c;
|
||||
} */
|
||||
+206
@@ -0,0 +1,206 @@
|
||||
'use strict';
|
||||
|
||||
var obsidian = 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.
|
||||
***************************************************************************** */
|
||||
/* 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 };
|
||||
}
|
||||
}
|
||||
|
||||
var DEFAULT_SETTINGS = {
|
||||
preamblePath: "preamble.sty",
|
||||
};
|
||||
var JaxPlugin = /** @class */ (function (_super) {
|
||||
__extends(JaxPlugin, _super);
|
||||
function JaxPlugin(app, manifest) {
|
||||
var _this = _super.call(this, app, manifest) || this;
|
||||
_this.app = app;
|
||||
_this.settings = DEFAULT_SETTINGS;
|
||||
return _this;
|
||||
}
|
||||
JaxPlugin.prototype.loadPreamble = function () {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
var preamble;
|
||||
return __generator(this, function (_a) {
|
||||
switch (_a.label) {
|
||||
case 0: return [4 /*yield*/, this.app.vault.adapter.read(this.settings.preamblePath)];
|
||||
case 1:
|
||||
preamble = _a.sent();
|
||||
if (MathJax.tex2chtml == undefined) {
|
||||
MathJax.startup.ready = function () {
|
||||
MathJax.startup.defaultReady();
|
||||
MathJax.tex2chtml(preamble);
|
||||
};
|
||||
}
|
||||
else {
|
||||
MathJax.tex2chtml(preamble);
|
||||
}
|
||||
return [2 /*return*/];
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
JaxPlugin.prototype.loadSettings = 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()]));
|
||||
return [2 /*return*/];
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
JaxPlugin.prototype.saveSettings = function () {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
return __generator(this, function (_a) {
|
||||
switch (_a.label) {
|
||||
case 0: return [4 /*yield*/, this.saveData(this.settings)];
|
||||
case 1:
|
||||
_a.sent();
|
||||
return [2 /*return*/];
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
JaxPlugin.prototype.onload = function () {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
return __generator(this, function (_a) {
|
||||
switch (_a.label) {
|
||||
case 0: return [4 /*yield*/, this.loadSettings()];
|
||||
case 1:
|
||||
_a.sent();
|
||||
this.addSettingTab(new JaxPluginSettingTab(this.app, this));
|
||||
// Load MathJax so that we can modify it
|
||||
// Otherwise, it would not be loaded when this plugin is loaded
|
||||
return [4 /*yield*/, obsidian.loadMathJax()];
|
||||
case 2:
|
||||
// Load MathJax so that we can modify it
|
||||
// Otherwise, it would not be loaded when this plugin is loaded
|
||||
_a.sent();
|
||||
if (!MathJax) {
|
||||
console.warn("MathJax was not defined despite loading it.");
|
||||
return [2 /*return*/];
|
||||
}
|
||||
return [4 /*yield*/, this.loadPreamble()];
|
||||
case 3:
|
||||
_a.sent();
|
||||
return [2 /*return*/];
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
JaxPlugin.prototype.onunload = function () {
|
||||
// TODO: Is it possible to remove our definitions?
|
||||
console.log('Unloading Extended MathJax');
|
||||
};
|
||||
return JaxPlugin;
|
||||
}(obsidian.Plugin));
|
||||
var JaxPluginSettingTab = /** @class */ (function (_super) {
|
||||
__extends(JaxPluginSettingTab, _super);
|
||||
function JaxPluginSettingTab(app, plugin) {
|
||||
var _this = _super.call(this, app, plugin) || this;
|
||||
_this.plugin = plugin;
|
||||
return _this;
|
||||
}
|
||||
JaxPluginSettingTab.prototype.display = function () {
|
||||
var _this = this;
|
||||
var containerEl = this.containerEl;
|
||||
containerEl.empty();
|
||||
new obsidian.Setting(containerEl)
|
||||
.setName('Preamble path')
|
||||
.setDesc('Path to global preamble. (Requires reload!)')
|
||||
.addText(function (text) {
|
||||
return text
|
||||
.setValue(_this.plugin.settings.preamblePath)
|
||||
.onChange(function (value) { return __awaiter(_this, void 0, void 0, function () {
|
||||
return __generator(this, function (_a) {
|
||||
switch (_a.label) {
|
||||
case 0:
|
||||
this.plugin.settings.preamblePath = value;
|
||||
return [4 /*yield*/, this.plugin.saveSettings()];
|
||||
case 1:
|
||||
_a.sent();
|
||||
return [2 /*return*/];
|
||||
}
|
||||
});
|
||||
}); });
|
||||
});
|
||||
};
|
||||
return JaxPluginSettingTab;
|
||||
}(obsidian.PluginSettingTab));
|
||||
|
||||
module.exports = JaxPlugin;
|
||||
|
||||
|
||||
/* nosourcemap */
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"id": "obsidian-latex",
|
||||
"name": "Extended MathJax",
|
||||
"version": "0.4.1",
|
||||
"minAppVersion": "0.12.16",
|
||||
"description": "Adds support for a MathJax preamble and enables additional MathJax extensions for specific domains (chemistry, proofs).",
|
||||
"author": "Xavier Denis & Ng Wei En",
|
||||
"authorUrl": "https://github.com/wei2912/obsidian-latex",
|
||||
"isDesktopOnly": false
|
||||
}
|
||||
Vendored
+86
-60
@@ -13,33 +13,58 @@
|
||||
"state": {
|
||||
"type": "markdown",
|
||||
"state": {
|
||||
"file": "Penetration Testing/Exploitation Assignment/Discovery.md",
|
||||
"file": "AI & Data Mining/Week 22/Chapter 22 Validity and Inference Rules.md",
|
||||
"mode": "source",
|
||||
"source": false
|
||||
},
|
||||
"icon": "lucide-file",
|
||||
"title": "Discovery"
|
||||
"title": "Chapter 22 Validity and Inference Rules"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ccb530263275547c",
|
||||
"type": "tabs",
|
||||
"children": [
|
||||
},
|
||||
{
|
||||
"id": "874d2d014b491baf",
|
||||
"id": "e186aac04d6f44bd",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "pdf",
|
||||
"type": "markdown",
|
||||
"state": {
|
||||
"file": "AI & Data Mining/Exercise Booklet.pdf"
|
||||
"file": "AI & Data Mining/Week 23/Week 23 - Deductive Proofs.md",
|
||||
"mode": "source",
|
||||
"source": false
|
||||
},
|
||||
"icon": "lucide-file-text",
|
||||
"title": "Exercise Booklet"
|
||||
"icon": "lucide-file",
|
||||
"title": "Week 23 - Deductive Proofs"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "3ee69deee29aa157",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "markdown",
|
||||
"state": {
|
||||
"file": "Penetration Testing/Exploitation Assignment/Task 2 - Web Attacks.md",
|
||||
"mode": "source",
|
||||
"source": false
|
||||
},
|
||||
"icon": "lucide-file",
|
||||
"title": "Task 2 - Web Attacks"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "9d5df515e1a9868d",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "markdown",
|
||||
"state": {
|
||||
"file": "Career Development/Assessment 2 Diary.md",
|
||||
"mode": "source",
|
||||
"source": false
|
||||
},
|
||||
"icon": "lucide-file",
|
||||
"title": "Assessment 2 Diary"
|
||||
}
|
||||
}
|
||||
]
|
||||
],
|
||||
"currentTab": 3
|
||||
}
|
||||
],
|
||||
"direction": "vertical"
|
||||
@@ -97,7 +122,7 @@
|
||||
}
|
||||
],
|
||||
"direction": "horizontal",
|
||||
"width": 395.5
|
||||
"width": 204.5
|
||||
},
|
||||
"right": {
|
||||
"id": "ee8f6df41634f71e",
|
||||
@@ -217,53 +242,54 @@
|
||||
"mermaid-tools:Open Mermaid Toolbar": false
|
||||
}
|
||||
},
|
||||
"active": "874d2d014b491baf",
|
||||
"active": "ff4e63a36b080692",
|
||||
"lastOpenFiles": [
|
||||
"Client Server Systems/Ecobuddy/test-admin.js",
|
||||
"Client Server Systems/Ecobuddy/logincontroller.php.deprecated",
|
||||
"Client Server Systems/Ecobuddy/public/css/fonts/bootstrap-icons.woff2",
|
||||
"Client Server Systems/Ecobuddy/public/css/fonts/bootstrap-icons.woff",
|
||||
"Client Server Systems/Ecobuddy/public/js/simpleAuth.js",
|
||||
"Client Server Systems/Ecobuddy/public/js/facilityData.js",
|
||||
"Client Server Systems/Ecobuddy/public/js/comments.js",
|
||||
"Client Server Systems/Ecobuddy/public/js/bootstrap.bundle.js",
|
||||
"Client Server Systems/Ecobuddy/public/js/auth.js",
|
||||
"Client Server Systems/Ecobuddy/public/js/apiClient.js",
|
||||
"Client Server Systems/Ecobuddy/public/css/my-style.css",
|
||||
"Career Development/Assessment 2 Plan.md",
|
||||
"Career Development/Assessment 2 Diary.md",
|
||||
"Career Development/Assessment.md",
|
||||
"AI & Data Mining/Week 26 - Deductive Proofs.md",
|
||||
"AI & Data Mining/Week 25/Chapter 25 - Predicate Logic Quantifiers.md",
|
||||
"AI & Data Mining/Week 25/Week 25 - Predicate Logic Quantifiers.md",
|
||||
"Penetration Testing/Exploitation Assignment/Task 2 - Web Attacks.md",
|
||||
"AI & Data Mining/Week 23/Untitled.md",
|
||||
"AI & Data Mining/Week 23/Week 23 - Deductive Proofs.md",
|
||||
"AI & Data Mining/Week 24/Week 24 - Predicate Logic.md",
|
||||
"AI & Data Mining/Week 21/Week 21 - Transformational Proofs in Propositional Logic.md",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/search.php",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/searchinator.php",
|
||||
"Penetration Testing/Exploitation Assignment/Discovery.md",
|
||||
"AI & Data Mining/Week 21",
|
||||
"Client Server Systems/PHPStorm Repo/students.sqlite",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/Views/index.phtml",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/index.php",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/Views/page1.phtml",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/Views/studentISv1.phtml",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/studentISv1.php",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/Models/StudentsDataSet.php",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/images/new_uos_logo.jpg",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_2/fonts/glyphicons-halflings-regular.svg",
|
||||
"Client Server Systems/PHPStorm Repo/images/new_uos_logo.jpg",
|
||||
"Client Server Systems/PHPStorm Repo/fonts/glyphicons-halflings-regular.svg",
|
||||
"Client Server Systems/PHPStorm Repo/ajax_workshop_1/favicon.png",
|
||||
"images/Pasted image 20250131145917.png",
|
||||
"images/Pasted image 20250131144439.png",
|
||||
"images/Pasted image 20250131144425.png",
|
||||
"AI & Data Mining/Week 20/Week 20 - Intro to Propositional Logic.md",
|
||||
"AI & Data Mining/Week 20/Chapter 20 Tutorial - Introduction to Propositional Logic.md",
|
||||
"AI & Data Mining/Week 20/Propositional Logic Examples.md",
|
||||
"AI & Data Mining/Week 19/Timeline of History.md",
|
||||
"Penetration Testing/Week 20/Week 20 - Web Attacks.md",
|
||||
"AI & Data Mining/Week 21/Chapter 21 - Transformational Proofs.md",
|
||||
"AI & Data Mining/Week 22/Week 22 Validity and Inference Rules.md",
|
||||
"AI & Data Mining/Week 22/Chapter 22 Validity and Inference Rules.md",
|
||||
"AI & Data Mining/Assessment/Coursework Prep Notes.md",
|
||||
"AI & Data Mining/Week 23/Chapter 23 - Deductive Proofs.md",
|
||||
"images/Pasted image 20250221132524.png",
|
||||
"Penetration Testing/Week 21/Week 21 - Exploits and Post-Exploitation.md",
|
||||
"Penetration Testing/Week 21/Public Exploitation Workshop.md",
|
||||
"Penetration Testing/Week 20/Week 20 - Web Application Attacks.md",
|
||||
"Penetration Testing/Week 23/Week 23 - Password Attacks.md",
|
||||
"Penetration Testing/Week 22/Week 22 - Web Attacks.md",
|
||||
"images/Pasted image 20241025141348.png",
|
||||
"images/Pasted image 20241017132059.png",
|
||||
"images/Pasted image 20241011131542.png",
|
||||
"images/Pasted image 20241003133342.png",
|
||||
"images/Pasted image 20241003092201.png",
|
||||
"images/Pasted image 20241003092549.png",
|
||||
"images/Pasted image 20241017130933.png",
|
||||
"images/Pasted image 20240920133316.png",
|
||||
"images/Pasted image 20240920133706.png",
|
||||
"README.md",
|
||||
"CWC 3 - Fit for Trade.md",
|
||||
"images/Pasted image 20250129154055.png",
|
||||
"CWC 1 - Consistency.md",
|
||||
"CWC 2 - Warm Welcome.md",
|
||||
"Penetration Testing/Week 19/Steps to Complete Workshop 2.md",
|
||||
"AI & Data Mining/Week 18/Week 18 - Tutorial.md",
|
||||
"Data Structures/GPT Answers to Past Paper/Question 4.md",
|
||||
"Data Structures/GPT Answers to Past Paper/Question 1.md",
|
||||
"Data Structures/GPT Answers to Past Paper/Question 6.md",
|
||||
"Penetration Testing/Week 19/AI Summary.md",
|
||||
"Penetration Testing/Week 19/Week 19 - Buffer Overflow.md",
|
||||
"Client Server Systems/PHPStorm Repo/php-s1/MVCtemplate-23-24/images/new_uos_logo.jpg",
|
||||
"AI & Data Mining/Week 18/Week 18 - What AI?????.md",
|
||||
"Networking and Security/Week 18/Workshop.md",
|
||||
"Data Structures/AI Notes/Stack.md",
|
||||
"Data Structures/AI Notes/Trees.md",
|
||||
"Data Structures/AI Notes/Linear List.md",
|
||||
"Data Structures/AI Notes/Exceptions.md",
|
||||
"Data Structures/AI Notes/Double linked lists.md",
|
||||
"Data Structures/AI Notes/Data Structures and Abstract Data Types.md",
|
||||
"Client Server Systems/Week 1/Workshop 1 - Intro to PHP.md",
|
||||
"Welcome.md",
|
||||
"Database Systems/Untitled.canvas",
|
||||
"Untitled 1.canvas",
|
||||
"Untitled.canvas"
|
||||
|
||||
Reference in new issue
Block a user