@heroiclands/package-build 24.0.4 → 24.1.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/CHANGELOG.md +36 -0
- package/README.md +6 -0
- package/assets/styles/content-base.css +25 -10
- package/docs/authoring/links-and-markup.md +215 -179
- package/docs/commands.md +5 -2
- package/docs/configuration.md +6 -3
- package/docs/content-format.md +4 -3
- package/docs/diagnostics.md +57 -29
- package/docs/guides/book.md +1 -1
- package/docs/guides/module-project.md +2 -2
- package/docs/guides/site.md +2 -2
- package/docs/guides/writing-in-invented-scripts.md +175 -125
- package/docs/reference/format-details.md +53 -35
- package/docs/reference/note-types.md +10 -10
- package/docs/reference/theme-pages.md +18 -9
- package/engine/content-render.mjs +23 -2
- package/engine/content-scripts.mjs +348 -140
- package/engine/content-spans.mjs +13 -1
- package/engine/content-verse.mjs +158 -373
- package/engine/note-vocabulary.mjs +5 -5
- package/engine/pdf-render.mjs +63 -44
- package/engine/run-rows.mjs +18 -20
- package/engine/verse-metre.mjs +36 -8
- package/engine/written-in.mjs +9 -13
- package/package.json +1 -1
- package/site-theme/static/css/style.css +19 -10
- package/types/engine/content-scripts.d.mts +18 -7
- package/types/engine/content-verse.d.mts +37 -163
- package/types/engine/run-rows.d.mts +16 -9
- package/types/engine/verse-metre.d.mts +4 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,41 @@
|
|
|
1
1
|
# @heroiclands/package-build
|
|
2
2
|
|
|
3
|
+
## 24.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
**Languages and scripts**
|
|
8
|
+
|
|
9
|
+
- Language-only text and linked names retain Roman spelling and surrounding
|
|
10
|
+
fonts; request native script with `.nativefont` and explicit `lang=` on the
|
|
11
|
+
same construct.
|
|
12
|
+
- Native fonts and maps require that opt-in; `map=` and `font=` override
|
|
13
|
+
defaults independently, with explicit `font=` needed when no font default
|
|
14
|
+
exists.
|
|
15
|
+
- Remove or escape bold and italic markup inside non-English spans.
|
|
16
|
+
|
|
17
|
+
**Verse**
|
|
18
|
+
|
|
19
|
+
- For `cols=N` above one, prefix each reading with its column number and spaces;
|
|
20
|
+
keep numbers nondecreasing within blank-separated logical rows, leaving
|
|
21
|
+
omitted columns empty.
|
|
22
|
+
- Repeat readings explicitly; each column’s first is foreground and later
|
|
23
|
+
readings grey, while numbering counts logical rows.
|
|
24
|
+
- Use leading periods for indentation and `***` for stanza breaks; leading
|
|
25
|
+
spaces do not indent.
|
|
26
|
+
|
|
27
|
+
### Patch Changes
|
|
28
|
+
|
|
29
|
+
**Languages and scripts**
|
|
30
|
+
|
|
31
|
+
- Language-marked links preserve destinations, spoilers, draft cues and
|
|
32
|
+
surrounding spacing.
|
|
33
|
+
|
|
34
|
+
**Verse**
|
|
35
|
+
|
|
36
|
+
- Mixed marked and unmarked runs in multiple languages retain spelling, spacing
|
|
37
|
+
and each run’s language, font and mapping.
|
|
38
|
+
|
|
3
39
|
## 24.0.4
|
|
4
40
|
|
|
5
41
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -18,6 +18,12 @@ The generated project includes a homepage, website and book targets, npm scripts
|
|
|
18
18
|
|
|
19
19
|
Run selected content operations together with `package-build content run index lint links compile`. The [shared content command](docs/commands.md#package-build-content-run-targets) captures one source tree for the selected checks and outputs; standalone commands remain available.
|
|
20
20
|
|
|
21
|
+
Language annotations keep authored spelling: `[Zaron]{lang=vyl}` stays Roman.
|
|
22
|
+
Add `.nativefont` with an explicit `lang=` to use native script defaults;
|
|
23
|
+
see [writing in invented scripts](docs/guides/writing-in-invented-scripts.md).
|
|
24
|
+
Parallel verse sets `cols=N`, then prefixes each reading with its column
|
|
25
|
+
number; blank lines divide logical rows.
|
|
26
|
+
|
|
21
27
|
## Working on this repository
|
|
22
28
|
|
|
23
29
|
Run `npm ci` in each fresh clone or worktree. Its `prepare` step installs the
|
|
@@ -124,7 +124,7 @@
|
|
|
124
124
|
* the two markers are also the editor preview's stylesheet, with the content
|
|
125
125
|
* roots replaced by the preview's own. */
|
|
126
126
|
|
|
127
|
-
/*
|
|
127
|
+
/* Verse groups are paragraphs; explicit stanza separators add their own gap. */
|
|
128
128
|
:is(.journal-entry-page, .journal-entry-content, .editor-content, .prosemirror) .verse {
|
|
129
129
|
margin: 1.5rem 0;
|
|
130
130
|
line-height: 1.7;
|
|
@@ -144,31 +144,36 @@
|
|
|
144
144
|
white-space: pre-wrap;
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
.verse .verse-line.i1 {
|
|
147
|
+
.verse :is(.verse-line, .verse-part).i1 {
|
|
148
148
|
--verse-indent: 1.25em;
|
|
149
149
|
}
|
|
150
|
-
.verse .verse-line.i2 {
|
|
150
|
+
.verse :is(.verse-line, .verse-part).i2 {
|
|
151
151
|
--verse-indent: 2.5em;
|
|
152
152
|
}
|
|
153
|
-
.verse .verse-line.i3 {
|
|
153
|
+
.verse :is(.verse-line, .verse-part).i3 {
|
|
154
154
|
--verse-indent: 3.75em;
|
|
155
155
|
}
|
|
156
|
-
.verse .verse-line.i4 {
|
|
156
|
+
.verse :is(.verse-line, .verse-part).i4 {
|
|
157
157
|
--verse-indent: 5em;
|
|
158
158
|
}
|
|
159
|
-
.verse .verse-line.i5 {
|
|
159
|
+
.verse :is(.verse-line, .verse-part).i5 {
|
|
160
160
|
--verse-indent: 6.25em;
|
|
161
161
|
}
|
|
162
|
-
.verse .verse-line.i6 {
|
|
162
|
+
.verse :is(.verse-line, .verse-part).i6 {
|
|
163
163
|
--verse-indent: 7.5em;
|
|
164
164
|
}
|
|
165
|
-
.verse .verse-line.i7 {
|
|
165
|
+
.verse :is(.verse-line, .verse-part).i7 {
|
|
166
166
|
--verse-indent: 8.75em;
|
|
167
167
|
}
|
|
168
|
-
.verse .verse-line.i8 {
|
|
168
|
+
.verse :is(.verse-line, .verse-part).i8 {
|
|
169
169
|
--verse-indent: 10em;
|
|
170
170
|
}
|
|
171
171
|
|
|
172
|
+
.verse .verse-stanza-break {
|
|
173
|
+
display: block;
|
|
174
|
+
height: 0.5em;
|
|
175
|
+
}
|
|
176
|
+
|
|
172
177
|
/* Numbered verse carries its numbers in a margin. A verse in columns is one
|
|
173
178
|
* grid per verse line: its number, then each column's parts stacked, the
|
|
174
179
|
* first in the normal tone and the rest muted, every part in the serif unless
|
|
@@ -212,6 +217,8 @@
|
|
|
212
217
|
display: grid;
|
|
213
218
|
grid-auto-flow: column;
|
|
214
219
|
grid-auto-columns: 1fr;
|
|
220
|
+
direction: ltr;
|
|
221
|
+
grid-template-columns: repeat(var(--verse-columns, 2), minmax(0, 1fr));
|
|
215
222
|
column-gap: 1.5rem;
|
|
216
223
|
margin-bottom: 0.5em;
|
|
217
224
|
}
|
|
@@ -219,7 +226,7 @@
|
|
|
219
226
|
:is(.journal-entry-page, .journal-entry-content, .editor-content, .prosemirror)
|
|
220
227
|
.verse-numbered.verse-columns
|
|
221
228
|
.verse-row {
|
|
222
|
-
grid-template-columns: 2.5em;
|
|
229
|
+
grid-template-columns: 2.5em repeat(var(--verse-columns, 2), minmax(0, 1fr));
|
|
223
230
|
}
|
|
224
231
|
|
|
225
232
|
:is(.journal-entry-page, .journal-entry-content, .editor-content, .prosemirror)
|
|
@@ -240,6 +247,7 @@
|
|
|
240
247
|
.verse-columns
|
|
241
248
|
.verse-part {
|
|
242
249
|
font-family: serif;
|
|
250
|
+
padding-inline-start: var(--verse-indent, 0em);
|
|
243
251
|
}
|
|
244
252
|
|
|
245
253
|
:is(.journal-entry-page, .journal-entry-content, .editor-content, .prosemirror)
|
|
@@ -248,6 +256,13 @@
|
|
|
248
256
|
color: color-mix(in srgb, currentColor 60%, transparent);
|
|
249
257
|
}
|
|
250
258
|
|
|
259
|
+
:is(.journal-entry-page, .journal-entry-content, .editor-content, .prosemirror)
|
|
260
|
+
.verse-columns
|
|
261
|
+
.verse-secondary
|
|
262
|
+
* {
|
|
263
|
+
color: inherit;
|
|
264
|
+
}
|
|
265
|
+
|
|
251
266
|
:is(.journal-entry-page, .journal-entry-content, .editor-content, .prosemirror)
|
|
252
267
|
.verse-columns
|
|
253
268
|
.verse-part[dir="rtl"] {
|