codemirror-obsidian-md 0.0.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +114 -3
- package/dist/editor/editing/auto-pair.d.ts +24 -0
- package/dist/editor/editing/auto-pair.d.ts.map +1 -0
- package/dist/editor/editing/auto-pair.js +93 -0
- package/dist/editor/editing/auto-pair.js.map +1 -0
- package/dist/editor/editing/backspace.d.ts +14 -0
- package/dist/editor/editing/backspace.d.ts.map +1 -0
- package/dist/editor/editing/backspace.js +19 -0
- package/dist/editor/editing/backspace.js.map +1 -0
- package/dist/editor/editing/code-fence.d.ts +9 -0
- package/dist/editor/editing/code-fence.d.ts.map +1 -0
- package/dist/editor/editing/code-fence.js +36 -0
- package/dist/editor/editing/code-fence.js.map +1 -0
- package/dist/editor/editing/composition.d.ts +6 -0
- package/dist/editor/editing/composition.d.ts.map +1 -0
- package/dist/editor/editing/composition.js +5 -0
- package/dist/editor/editing/composition.js.map +1 -0
- package/dist/editor/editing/emphasis.d.ts +4 -0
- package/dist/editor/editing/emphasis.d.ts.map +1 -0
- package/dist/editor/editing/emphasis.js +68 -0
- package/dist/editor/editing/emphasis.js.map +1 -0
- package/dist/editor/editing/line-text.d.ts +6 -0
- package/dist/editor/editing/line-text.d.ts.map +1 -0
- package/dist/editor/editing/line-text.js +10 -0
- package/dist/editor/editing/line-text.js.map +1 -0
- package/dist/editor/editing/link.d.ts +6 -0
- package/dist/editor/editing/link.d.ts.map +1 -0
- package/dist/editor/editing/link.js +16 -0
- package/dist/editor/editing/link.js.map +1 -0
- package/dist/editor/editing/list-continuation.d.ts +9 -0
- package/dist/editor/editing/list-continuation.d.ts.map +1 -0
- package/dist/editor/editing/list-continuation.js +117 -0
- package/dist/editor/editing/list-continuation.js.map +1 -0
- package/dist/editor/editing/list-indent.d.ts +10 -0
- package/dist/editor/editing/list-indent.d.ts.map +1 -0
- package/dist/editor/editing/list-indent.js +163 -0
- package/dist/editor/editing/list-indent.js.map +1 -0
- package/dist/editor/editing/list-line.d.ts +28 -0
- package/dist/editor/editing/list-line.d.ts.map +1 -0
- package/dist/editor/editing/list-line.js +56 -0
- package/dist/editor/editing/list-line.js.map +1 -0
- package/dist/editor/editing/pairs.d.ts +7 -0
- package/dist/editor/editing/pairs.d.ts.map +1 -0
- package/dist/editor/editing/pairs.js +11 -0
- package/dist/editor/editing/pairs.js.map +1 -0
- package/dist/editor/editing/paste-url.d.ts +7 -0
- package/dist/editor/editing/paste-url.d.ts.map +1 -0
- package/dist/editor/editing/paste-url.js +37 -0
- package/dist/editor/editing/paste-url.js.map +1 -0
- package/dist/editor/editing/selection-wrap.d.ts +15 -0
- package/dist/editor/editing/selection-wrap.d.ts.map +1 -0
- package/dist/editor/editing/selection-wrap.js +30 -0
- package/dist/editor/editing/selection-wrap.js.map +1 -0
- package/dist/editor/editing/task-toggle.d.ts +4 -0
- package/dist/editor/editing/task-toggle.d.ts.map +1 -0
- package/dist/editor/editing/task-toggle.js +32 -0
- package/dist/editor/editing/task-toggle.js.map +1 -0
- package/dist/editor/editing/typing.d.ts +16 -0
- package/dist/editor/editing/typing.d.ts.map +1 -0
- package/dist/editor/editing/typing.js +52 -0
- package/dist/editor/editing/typing.js.map +1 -0
- package/dist/editor/editing-shortcuts.d.ts +25 -0
- package/dist/editor/editing-shortcuts.d.ts.map +1 -0
- package/dist/editor/editing-shortcuts.js +67 -0
- package/dist/editor/editing-shortcuts.js.map +1 -0
- package/dist/editor/index.d.ts +1 -0
- package/dist/editor/index.d.ts.map +1 -1
- package/dist/editor/index.js +1 -0
- package/dist/editor/index.js.map +1 -1
- package/dist/editor/mount.d.ts.map +1 -1
- package/dist/editor/mount.js +2 -0
- package/dist/editor/mount.js.map +1 -1
- package/dist/editor/multi-cursor.d.ts +10 -0
- package/dist/editor/multi-cursor.d.ts.map +1 -0
- package/dist/editor/multi-cursor.js +28 -0
- package/dist/editor/multi-cursor.js.map +1 -0
- package/dist/editor/parse.js +34 -1
- package/dist/editor/parse.js.map +1 -1
- package/dist/editor/picker.d.ts +1 -0
- package/dist/editor/picker.d.ts.map +1 -1
- package/dist/editor/picker.js +4 -0
- package/dist/editor/picker.js.map +1 -1
- package/dist/editor/providers/callout-embed.d.ts.map +1 -1
- package/dist/editor/providers/callout-embed.js +55 -32
- package/dist/editor/providers/callout-embed.js.map +1 -1
- package/dist/editor/providers/inline.d.ts.map +1 -1
- package/dist/editor/providers/inline.js +22 -5
- package/dist/editor/providers/inline.js.map +1 -1
- package/dist/editor/providers/markdown.d.ts.map +1 -1
- package/dist/editor/providers/markdown.js +4 -2
- package/dist/editor/providers/markdown.js.map +1 -1
- package/dist/styles.css +313 -0
- package/package.json +5 -4
|
@@ -3,13 +3,20 @@ import { HIGHLIGHT_COLORS } from "remark-obsidian-md/syntax";
|
|
|
3
3
|
import { createNoteParser } from "../parse.js";
|
|
4
4
|
/** Hides source text; the document is untouched. */
|
|
5
5
|
const hide = Decoration.replace({});
|
|
6
|
+
/**
|
|
7
|
+
* The raw syntax of a construct the cursor is inside: a class-only mark, so
|
|
8
|
+
* the source stays legible and styled instead of reverting to plain text.
|
|
9
|
+
*/
|
|
10
|
+
const raw = (cls, c) => c.to > c.from
|
|
11
|
+
? Decoration.mark({ class: `cm-obsidian-${cls}-raw` }).range(c.from, c.to)
|
|
12
|
+
: null;
|
|
6
13
|
/** Wiki Link (`[[Note|Alias]]`): the label as a link, markers hidden. */
|
|
7
14
|
export const wikiLinkProvider = {
|
|
8
15
|
name: "wiki-link",
|
|
9
16
|
types: ["wikiLink"],
|
|
10
17
|
decorate(c, { revealed }) {
|
|
11
18
|
if (revealed)
|
|
12
|
-
return
|
|
19
|
+
return raw("wikilink", c);
|
|
13
20
|
const value = c.node.value ?? "";
|
|
14
21
|
const pipe = value.indexOf("|");
|
|
15
22
|
const labelFrom = c.from + (pipe === -1 ? 2 : 2 + pipe + 1);
|
|
@@ -32,7 +39,7 @@ export const highlightProvider = {
|
|
|
32
39
|
types: ["obsidianHighlight"],
|
|
33
40
|
decorate(c, { revealed, state }) {
|
|
34
41
|
if (revealed)
|
|
35
|
-
return
|
|
42
|
+
return raw("highlight", c);
|
|
36
43
|
const contentFrom = c.from + 2;
|
|
37
44
|
const contentTo = c.to - 2;
|
|
38
45
|
if (contentTo <= contentFrom)
|
|
@@ -59,14 +66,20 @@ export const highlightProvider = {
|
|
|
59
66
|
export const commentProvider = {
|
|
60
67
|
name: "comment",
|
|
61
68
|
types: ["obsidianComment"],
|
|
62
|
-
decorate: (c, { revealed }) => revealed
|
|
69
|
+
decorate: (c, { revealed }) => revealed
|
|
70
|
+
? raw("comment", c)
|
|
71
|
+
: c.to <= c.from
|
|
72
|
+
? null
|
|
73
|
+
: hide.range(c.from, c.to),
|
|
63
74
|
};
|
|
64
75
|
/** Inline Footnote (`^[text]`): superscript content, markers hidden. */
|
|
65
76
|
export const footnoteProvider = {
|
|
66
77
|
name: "footnote",
|
|
67
78
|
types: ["obsidianFootnote"],
|
|
68
79
|
decorate(c, { revealed }) {
|
|
69
|
-
if (revealed
|
|
80
|
+
if (revealed)
|
|
81
|
+
return raw("footnote", c);
|
|
82
|
+
if (c.to - c.from < 3)
|
|
70
83
|
return null;
|
|
71
84
|
return [
|
|
72
85
|
hide.range(c.from, c.from + 2),
|
|
@@ -81,7 +94,11 @@ export const footnoteProvider = {
|
|
|
81
94
|
export const blockIdProvider = {
|
|
82
95
|
name: "block-id",
|
|
83
96
|
types: ["blockId"],
|
|
84
|
-
decorate: (c, { revealed }) => revealed
|
|
97
|
+
decorate: (c, { revealed }) => revealed
|
|
98
|
+
? raw("block-id", c)
|
|
99
|
+
: c.to <= c.from
|
|
100
|
+
? null
|
|
101
|
+
: hide.range(c.from, c.to),
|
|
85
102
|
};
|
|
86
103
|
/** All Live Preview providers for Obsidian inline syntax. */
|
|
87
104
|
export const inlineProviders = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inline.js","sourceRoot":"","sources":["../../../src/editor/providers/inline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAQ/C,oDAAoD;AACpD,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAEpC,yEAAyE;AACzE,MAAM,CAAC,MAAM,gBAAgB,GAAsB;IACjD,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,CAAC,UAAU,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE;QACtB,IAAI,QAAQ;YAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"inline.js","sourceRoot":"","sources":["../../../src/editor/providers/inline.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../src/editor/providers/markdown.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA0DrD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../src/editor/providers/markdown.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA0DrD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,iBAyG9B,CAAC"}
|
|
@@ -78,8 +78,10 @@ export const markdownProvider = {
|
|
|
78
78
|
const depth = construct.node.depth;
|
|
79
79
|
out.push(line(`cm-obsidian-heading cm-obsidian-h${depth}`, doc.lineAt(from).from));
|
|
80
80
|
const marker = /^#{1,6}[ \t]+/.exec(doc.sliceString(from, to));
|
|
81
|
-
if (marker
|
|
82
|
-
out.push(
|
|
81
|
+
if (marker) {
|
|
82
|
+
out.push(revealed
|
|
83
|
+
? mark("cm-obsidian-heading-mark", from, from + marker[0].length)
|
|
84
|
+
: hide.range(from, from + marker[0].length));
|
|
83
85
|
}
|
|
84
86
|
break;
|
|
85
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../src/editor/providers/markdown.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../src/editor/providers/markdown.ts"],"names":[],"mappings":"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"}
|
package/dist/styles.css
ADDED
|
@@ -0,0 +1,313 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* codemirror-obsidian-md editor Stylesheet (opt-in, never injected).
|
|
3
|
+
*
|
|
4
|
+
* Import it once: `import "codemirror-obsidian-md/styles.css";`. It gives Live
|
|
5
|
+
* Preview the look it has in Obsidian. Every colour, the cursor, the selection
|
|
6
|
+
* and the sizes read a CSS variable and fall back to the inherited text colour
|
|
7
|
+
* or a neutral default, so the editor follows the page. There is no dark-mode
|
|
8
|
+
* logic here and no `prefers-color-scheme`: map the variables below to your
|
|
9
|
+
* own tokens, under `.dark` too.
|
|
10
|
+
*
|
|
11
|
+
* Variables (all optional):
|
|
12
|
+
* --obsidian-editor-font body font
|
|
13
|
+
* --obsidian-editor-mono-font inline code font
|
|
14
|
+
* --obsidian-editor-line-height line height (1.5)
|
|
15
|
+
* --obsidian-editor-fg text colour (inherited)
|
|
16
|
+
* --obsidian-editor-bg editor background (transparent)
|
|
17
|
+
* --obsidian-editor-cursor cursor colour (the text colour)
|
|
18
|
+
* --obsidian-editor-selection selected text background
|
|
19
|
+
* --obsidian-editor-muted dimmed text: `#` markers, raw syntax, quotes
|
|
20
|
+
* --obsidian-editor-accent links, bullets and checkboxes
|
|
21
|
+
* --obsidian-editor-border quote bar and chip border
|
|
22
|
+
* --obsidian-editor-code-bg inline code and chip background
|
|
23
|
+
* --obsidian-editor-popover-fg `[[` picker text
|
|
24
|
+
* --obsidian-editor-popover-bg `[[` picker background
|
|
25
|
+
* --obsidian-editor-popover-border `[[` picker border
|
|
26
|
+
* --obsidian-editor-active-fg picked option text
|
|
27
|
+
* --obsidian-editor-active-bg picked option background
|
|
28
|
+
* --obsidian-editor-radius picker and chip radius (6px)
|
|
29
|
+
* --obsidian-editor-h1-size … --obsidian-editor-h6-size
|
|
30
|
+
* --obsidian-editor-heading-weight (700)
|
|
31
|
+
*
|
|
32
|
+
* Highlights and Callouts reuse the plugin Stylesheet (`remark-obsidian-md`),
|
|
33
|
+
* so they match the Wiki; import it too.
|
|
34
|
+
*
|
|
35
|
+
* CodeMirror's own base theme is more specific than a bare class, so the
|
|
36
|
+
* cursor, selection and picker rules below add specificity on purpose.
|
|
37
|
+
*/
|
|
38
|
+
|
|
39
|
+
/* Page colours and type. */
|
|
40
|
+
.cm-editor {
|
|
41
|
+
color: var(--obsidian-editor-fg, inherit);
|
|
42
|
+
background-color: var(--obsidian-editor-bg, transparent);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.cm-editor .cm-scroller {
|
|
46
|
+
font-family: var(
|
|
47
|
+
--obsidian-editor-font,
|
|
48
|
+
ui-sans-serif,
|
|
49
|
+
system-ui,
|
|
50
|
+
-apple-system,
|
|
51
|
+
"Segoe UI",
|
|
52
|
+
Roboto,
|
|
53
|
+
sans-serif
|
|
54
|
+
);
|
|
55
|
+
line-height: var(--obsidian-editor-line-height, 1.5);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/* Cursor. The base theme draws it black; follow the theme instead. */
|
|
59
|
+
.cm-editor .cm-scroller .cm-content {
|
|
60
|
+
caret-color: var(--obsidian-editor-cursor, currentColor);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.cm-editor .cm-cursorLayer .cm-cursor,
|
|
64
|
+
.cm-editor .cm-dropCursor {
|
|
65
|
+
border-left-color: var(--obsidian-editor-cursor, currentColor);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/* Selection: the browser's own, and CodeMirror's drawn one. */
|
|
69
|
+
.cm-editor .cm-content::selection,
|
|
70
|
+
.cm-editor .cm-content ::selection {
|
|
71
|
+
background-color: var(
|
|
72
|
+
--obsidian-editor-selection,
|
|
73
|
+
color-mix(in srgb, currentColor 25%, transparent)
|
|
74
|
+
);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.cm-editor .cm-selectionLayer .cm-selectionBackground,
|
|
78
|
+
div.cm-editor.cm-editor.cm-editor
|
|
79
|
+
> .cm-scroller
|
|
80
|
+
> .cm-selectionLayer
|
|
81
|
+
.cm-selectionBackground {
|
|
82
|
+
background-color: var(
|
|
83
|
+
--obsidian-editor-selection,
|
|
84
|
+
color-mix(in srgb, currentColor 25%, transparent)
|
|
85
|
+
);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/*
|
|
89
|
+
* CodeMirror puts an empty `img.cm-widgetBuffer` beside every widget. Page CSS
|
|
90
|
+
* (images as blocks, size resets) inflates the line around it, so take it out.
|
|
91
|
+
*/
|
|
92
|
+
.cm-editor .cm-line .cm-widgetBuffer {
|
|
93
|
+
display: none;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/* Headings: Obsidian's Live Preview scale, set on the whole line. */
|
|
97
|
+
.cm-editor .cm-obsidian-heading {
|
|
98
|
+
font-weight: var(--obsidian-editor-heading-weight, 700);
|
|
99
|
+
line-height: 1.3;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.cm-editor .cm-obsidian-h1 {
|
|
103
|
+
font-size: var(--obsidian-editor-h1-size, 2em);
|
|
104
|
+
}
|
|
105
|
+
.cm-editor .cm-obsidian-h2 {
|
|
106
|
+
font-size: var(--obsidian-editor-h2-size, 1.6em);
|
|
107
|
+
}
|
|
108
|
+
.cm-editor .cm-obsidian-h3 {
|
|
109
|
+
font-size: var(--obsidian-editor-h3-size, 1.37em);
|
|
110
|
+
}
|
|
111
|
+
.cm-editor .cm-obsidian-h4 {
|
|
112
|
+
font-size: var(--obsidian-editor-h4-size, 1.25em);
|
|
113
|
+
}
|
|
114
|
+
.cm-editor .cm-obsidian-h5 {
|
|
115
|
+
font-size: var(--obsidian-editor-h5-size, 1.12em);
|
|
116
|
+
}
|
|
117
|
+
.cm-editor .cm-obsidian-h6 {
|
|
118
|
+
font-size: var(--obsidian-editor-h6-size, 1em);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/* The `#` markers stay visible but quiet while the cursor is on the line. */
|
|
122
|
+
.cm-editor .cm-obsidian-heading-mark {
|
|
123
|
+
color: var(
|
|
124
|
+
--obsidian-editor-muted,
|
|
125
|
+
color-mix(in srgb, currentColor 45%, transparent)
|
|
126
|
+
);
|
|
127
|
+
font-weight: 400;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/* Emphasis and code. */
|
|
131
|
+
.cm-editor .cm-obsidian-strong {
|
|
132
|
+
font-weight: 700;
|
|
133
|
+
}
|
|
134
|
+
.cm-editor .cm-obsidian-em {
|
|
135
|
+
font-style: italic;
|
|
136
|
+
}
|
|
137
|
+
.cm-editor .cm-obsidian-code {
|
|
138
|
+
font-family: var(
|
|
139
|
+
--obsidian-editor-mono-font,
|
|
140
|
+
ui-monospace,
|
|
141
|
+
SFMono-Regular,
|
|
142
|
+
Menlo,
|
|
143
|
+
monospace
|
|
144
|
+
);
|
|
145
|
+
font-size: 0.9em;
|
|
146
|
+
padding: 0 0.3em;
|
|
147
|
+
border-radius: 4px;
|
|
148
|
+
background-color: var(
|
|
149
|
+
--obsidian-editor-code-bg,
|
|
150
|
+
color-mix(in srgb, currentColor 10%, transparent)
|
|
151
|
+
);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/* Quotes. */
|
|
155
|
+
.cm-editor .cm-obsidian-quote {
|
|
156
|
+
padding-left: 0.9em;
|
|
157
|
+
border-left: 3px solid
|
|
158
|
+
var(
|
|
159
|
+
--obsidian-editor-border,
|
|
160
|
+
color-mix(in srgb, currentColor 30%, transparent)
|
|
161
|
+
);
|
|
162
|
+
color: var(
|
|
163
|
+
--obsidian-editor-muted,
|
|
164
|
+
color-mix(in srgb, currentColor 75%, transparent)
|
|
165
|
+
);
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/* Lists and task lists. A wrapped line hangs under the item's text. */
|
|
169
|
+
.cm-editor .cm-obsidian-li {
|
|
170
|
+
padding-left: 1.5em;
|
|
171
|
+
text-indent: -1.1em;
|
|
172
|
+
}
|
|
173
|
+
.cm-editor .cm-obsidian-bullet {
|
|
174
|
+
display: inline-block;
|
|
175
|
+
width: 1.1em;
|
|
176
|
+
color: var(--obsidian-editor-accent, var(--text-accent, currentColor));
|
|
177
|
+
text-align: center;
|
|
178
|
+
}
|
|
179
|
+
.cm-editor .cm-obsidian-checkbox {
|
|
180
|
+
width: 1em;
|
|
181
|
+
height: 1em;
|
|
182
|
+
margin: 0 0.45em 0 0.1em;
|
|
183
|
+
vertical-align: -0.1em;
|
|
184
|
+
accent-color: var(--obsidian-editor-accent, var(--text-accent, auto));
|
|
185
|
+
cursor: pointer;
|
|
186
|
+
}
|
|
187
|
+
.cm-editor .cm-obsidian-task-done {
|
|
188
|
+
color: var(
|
|
189
|
+
--obsidian-editor-muted,
|
|
190
|
+
color-mix(in srgb, currentColor 60%, transparent)
|
|
191
|
+
);
|
|
192
|
+
text-decoration: line-through;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
/* Wiki Links (rendered and raw) and Embeds. */
|
|
196
|
+
.cm-editor a.internal-link,
|
|
197
|
+
.cm-editor .cm-obsidian-wikilink-raw {
|
|
198
|
+
color: var(--obsidian-editor-accent, var(--text-accent, currentColor));
|
|
199
|
+
text-decoration: underline;
|
|
200
|
+
text-decoration-color: color-mix(in srgb, currentColor 40%, transparent);
|
|
201
|
+
text-underline-offset: 2px;
|
|
202
|
+
cursor: pointer;
|
|
203
|
+
}
|
|
204
|
+
.cm-editor .cm-embed-chip {
|
|
205
|
+
padding: 0 0.4em;
|
|
206
|
+
border: 1px solid
|
|
207
|
+
var(
|
|
208
|
+
--obsidian-editor-border,
|
|
209
|
+
color-mix(in srgb, currentColor 25%, transparent)
|
|
210
|
+
);
|
|
211
|
+
border-radius: var(--obsidian-editor-radius, 6px);
|
|
212
|
+
background-color: var(
|
|
213
|
+
--obsidian-editor-code-bg,
|
|
214
|
+
color-mix(in srgb, currentColor 10%, transparent)
|
|
215
|
+
);
|
|
216
|
+
}
|
|
217
|
+
.cm-editor img.internal-embed {
|
|
218
|
+
display: inline-block;
|
|
219
|
+
max-width: 100%;
|
|
220
|
+
height: auto;
|
|
221
|
+
vertical-align: middle;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
/* Highlights. The rendered form is a <mark> the plugin Stylesheet colours. */
|
|
225
|
+
.cm-editor .cm-obsidian-highlight-raw {
|
|
226
|
+
border-radius: 0.2em;
|
|
227
|
+
background-color: color-mix(
|
|
228
|
+
in srgb,
|
|
229
|
+
var(--color-yellow, #e0ac00) 30%,
|
|
230
|
+
transparent
|
|
231
|
+
);
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
/* Raw syntax of constructs that render as nothing or as a superscript. */
|
|
235
|
+
.cm-editor .cm-obsidian-comment-raw,
|
|
236
|
+
.cm-editor .cm-obsidian-block-id-raw,
|
|
237
|
+
.cm-editor .cm-obsidian-footnote-raw {
|
|
238
|
+
color: var(
|
|
239
|
+
--obsidian-editor-muted,
|
|
240
|
+
color-mix(in srgb, currentColor 55%, transparent)
|
|
241
|
+
);
|
|
242
|
+
}
|
|
243
|
+
.cm-editor .cm-obsidian-comment-raw {
|
|
244
|
+
font-style: italic;
|
|
245
|
+
}
|
|
246
|
+
.cm-editor .cm-obsidian-block-id-raw {
|
|
247
|
+
font-size: 0.85em;
|
|
248
|
+
}
|
|
249
|
+
/* A superscript must not push its line taller than the others. */
|
|
250
|
+
.cm-editor sup {
|
|
251
|
+
font-size: 0.75em;
|
|
252
|
+
line-height: 0;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
/*
|
|
256
|
+
* A Callout is several lines, each carrying the plugin's `.callout` box. Join
|
|
257
|
+
* them into one: no margin, side borders on every line, the top border and
|
|
258
|
+
* radius on the first line and the bottom on the last.
|
|
259
|
+
*/
|
|
260
|
+
.cm-editor .cm-callout {
|
|
261
|
+
--_callout-edge: color-mix(in srgb, var(--callout-color) 30%, transparent);
|
|
262
|
+
margin: 0;
|
|
263
|
+
padding: 0 0.75rem;
|
|
264
|
+
overflow: visible;
|
|
265
|
+
border-width: 0 1px;
|
|
266
|
+
border-style: solid;
|
|
267
|
+
border-color: var(--_callout-edge);
|
|
268
|
+
border-radius: 0;
|
|
269
|
+
}
|
|
270
|
+
.cm-editor .cm-callout-first {
|
|
271
|
+
padding-top: 0.25rem;
|
|
272
|
+
border-top-width: 1px;
|
|
273
|
+
border-top-left-radius: 0.5rem;
|
|
274
|
+
border-top-right-radius: 0.5rem;
|
|
275
|
+
}
|
|
276
|
+
.cm-editor .cm-callout-last {
|
|
277
|
+
padding-bottom: 0.5rem;
|
|
278
|
+
border-bottom-width: 1px;
|
|
279
|
+
border-bottom-left-radius: 0.5rem;
|
|
280
|
+
border-bottom-right-radius: 0.5rem;
|
|
281
|
+
}
|
|
282
|
+
.cm-editor .cm-callout .callout-title {
|
|
283
|
+
padding: 0.25rem 0;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
/* The `[[` picker. Tooltips mount outside the editor, so no `.cm-editor`. */
|
|
287
|
+
div.cm-tooltip.cm-tooltip {
|
|
288
|
+
overflow: hidden;
|
|
289
|
+
border: 1px solid
|
|
290
|
+
var(
|
|
291
|
+
--obsidian-editor-popover-border,
|
|
292
|
+
color-mix(in srgb, currentColor 20%, transparent)
|
|
293
|
+
);
|
|
294
|
+
border-radius: var(--obsidian-editor-radius, 6px);
|
|
295
|
+
background-color: var(--obsidian-editor-popover-bg, Canvas);
|
|
296
|
+
color: var(--obsidian-editor-popover-fg, CanvasText);
|
|
297
|
+
}
|
|
298
|
+
div.cm-tooltip.cm-tooltip-autocomplete > ul {
|
|
299
|
+
font-family: inherit;
|
|
300
|
+
}
|
|
301
|
+
div.cm-tooltip.cm-tooltip-autocomplete > ul > li {
|
|
302
|
+
padding: 2px 8px;
|
|
303
|
+
}
|
|
304
|
+
div.cm-tooltip.cm-tooltip-autocomplete > ul > li[aria-selected] {
|
|
305
|
+
background-color: var(
|
|
306
|
+
--obsidian-editor-active-bg,
|
|
307
|
+
color-mix(in srgb, currentColor 12%, transparent)
|
|
308
|
+
);
|
|
309
|
+
color: var(--obsidian-editor-active-fg, inherit);
|
|
310
|
+
}
|
|
311
|
+
.cm-tooltip .cm-completionDetail {
|
|
312
|
+
opacity: 0.6;
|
|
313
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codemirror-obsidian-md",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"author": "Adriano Araújo (adrianoaraujodsantos@hotmail.com)",
|
|
5
5
|
"description": "CodeMirror 6 editor with Live Preview for Obsidian.md syntax, plus the storage interface it saves through",
|
|
6
6
|
"license": "MIT",
|
|
@@ -61,6 +61,7 @@
|
|
|
61
61
|
"types": "./dist/new-note/index.d.ts",
|
|
62
62
|
"default": "./dist/new-note/index.js"
|
|
63
63
|
},
|
|
64
|
+
"./styles.css": "./dist/styles.css",
|
|
64
65
|
"./editor": {
|
|
65
66
|
"types": "./dist/editor/index.d.ts",
|
|
66
67
|
"default": "./dist/editor/index.js"
|
|
@@ -69,7 +70,7 @@
|
|
|
69
70
|
"peerDependencies": {
|
|
70
71
|
"@codemirror/state": "^6.7.6",
|
|
71
72
|
"@codemirror/view": "^6.43.15",
|
|
72
|
-
"remark-obsidian-md": "^3.
|
|
73
|
+
"remark-obsidian-md": "^3.1.1",
|
|
73
74
|
"vitest": "^5.0.0"
|
|
74
75
|
},
|
|
75
76
|
"peerDependenciesMeta": {
|
|
@@ -84,7 +85,7 @@
|
|
|
84
85
|
"@types/node": "^25.2.0",
|
|
85
86
|
"@vitest/coverage-v8": "^5.0.5",
|
|
86
87
|
"jsdom": "^30.1.3",
|
|
87
|
-
"remark-obsidian-md": "3.
|
|
88
|
+
"remark-obsidian-md": "3.1.1",
|
|
88
89
|
"typescript": "^5.9.3",
|
|
89
90
|
"vitest": "^5.0.5"
|
|
90
91
|
},
|
|
@@ -103,7 +104,7 @@
|
|
|
103
104
|
"unified": "^11.0.5"
|
|
104
105
|
},
|
|
105
106
|
"scripts": {
|
|
106
|
-
"build": "tsc",
|
|
107
|
+
"build": "tsc && node scripts/copy-styles.mjs",
|
|
107
108
|
"test": "vitest run --coverage",
|
|
108
109
|
"lint": "biome check",
|
|
109
110
|
"format": "biome format --write"
|