tonus 0.9.0 → 0.10.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 +124 -0
- package/README.md +3 -3
- package/dist/census.d.ts +4 -0
- package/dist/census.js +23 -0
- package/dist/corpus.d.ts +4 -0
- package/dist/corpus.js +17 -0
- package/dist/data/am.js +10220 -3006
- package/dist/data/attestation.js +38640 -4568
- package/dist/data/attestation.json +38639 -4567
- package/dist/data/census.d.ts +2 -2
- package/dist/data/census.js +4 -4
- package/dist/data/corpus-overlap.js +5 -118
- package/dist/data/gr.d.ts +29 -2
- package/dist/data/gr.js +2436 -6411
- package/dist/data/kyriale.d.ts +1 -1
- package/dist/data/kyriale.js +38 -38
- package/dist/data/la.js +12369 -1103
- package/dist/data/lh.js +3139 -158
- package/dist/data/lu.js +17332 -2379
- package/dist/data/nocturnale-romanum.js +10656 -1899
- package/dist/data/psm.js +463 -33
- package/dist/data/types.d.ts +1 -0
- package/dist/engines/chant/chant.js +60 -13
- package/dist/engines/chant/data/masses.js +18 -18
- package/dist/engines/chant/ordinary.js +12 -5
- package/dist/engines/chant/psalm.js +4 -0
- package/dist/engines/chant/types.d.ts +32 -4
- package/dist/engines/chant/types.js +47 -4
- package/dist/engines/score/emitters/moderna.js +150 -12
- package/dist/engines/score/infer.js +1 -1
- package/dist/engines/temper/gabc.d.ts +12 -0
- package/dist/engines/temper/gabc.js +51 -18
- package/dist/index.d.ts +5 -9
- package/dist/inscriptio.d.ts +5 -0
- package/dist/inscriptio.js +23 -0
- package/dist/score.d.ts +6 -0
- package/dist/score.js +20 -0
- package/docs/api/calendar.md +4 -4
- package/docs/api/census.md +31 -22
- package/docs/api/chant.md +102 -82
- package/docs/api/heavens.md +7 -7
- package/docs/api/index.md +40 -6
- package/docs/api/score.md +44 -44
- package/docs/api/tuning.md +14 -14
- package/package.json +22 -4
- package/dist/data/ams.d.ts +0 -5
- package/dist/data/ams.js +0 -122
- package/dist/data/cot.d.ts +0 -5
- package/dist/data/cot.js +0 -172
- package/dist/data/cse.d.ts +0 -5
- package/dist/data/cse.js +0 -122
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// corpus-overlap.ts — pre-dedup chant-count relationships between the books
|
|
2
2
|
// Extracted from GregoBase (chant-id sets) by scripts/extract-gregobase.mjs
|
|
3
|
-
// Generated: 2026-08-
|
|
3
|
+
// Generated: 2026-08-31T18:07:52.806Z
|
|
4
4
|
//
|
|
5
5
|
// tonus stores one copy of each chant (LU primary; LA/LH gap-fill), so a book's
|
|
6
6
|
// stored count is less than what it holds. This records, per book: its full
|
|
@@ -12,30 +12,24 @@ export const CORPUS_OVERLAP = {
|
|
|
12
12
|
"unique": 430,
|
|
13
13
|
"shared": {
|
|
14
14
|
"lu": 948,
|
|
15
|
-
"
|
|
16
|
-
"la": 6,
|
|
17
|
-
"cse": 3
|
|
15
|
+
"la": 6
|
|
18
16
|
}
|
|
19
17
|
},
|
|
20
18
|
"lu": {
|
|
21
19
|
"total": 2457,
|
|
22
|
-
"unique":
|
|
20
|
+
"unique": 434,
|
|
23
21
|
"shared": {
|
|
24
22
|
"gr": 948,
|
|
25
|
-
"cot": 43,
|
|
26
23
|
"la": 1079,
|
|
27
|
-
"cse": 15,
|
|
28
24
|
"am": 5
|
|
29
25
|
}
|
|
30
26
|
},
|
|
31
27
|
"la": {
|
|
32
28
|
"total": 2534,
|
|
33
|
-
"unique":
|
|
29
|
+
"unique": 1453,
|
|
34
30
|
"shared": {
|
|
35
31
|
"lu": 1079,
|
|
36
32
|
"gr": 6,
|
|
37
|
-
"cot": 11,
|
|
38
|
-
"cse": 6,
|
|
39
33
|
"am": 5
|
|
40
34
|
}
|
|
41
35
|
},
|
|
@@ -48,52 +42,18 @@ export const CORPUS_OVERLAP = {
|
|
|
48
42
|
},
|
|
49
43
|
"am": {
|
|
50
44
|
"total": 1456,
|
|
51
|
-
"unique":
|
|
45
|
+
"unique": 1447,
|
|
52
46
|
"shared": {
|
|
53
47
|
"lu": 5,
|
|
54
|
-
"cot": 3,
|
|
55
48
|
"la": 5,
|
|
56
|
-
"cse": 19,
|
|
57
|
-
"ams": 27,
|
|
58
49
|
"lh": 2
|
|
59
50
|
}
|
|
60
51
|
},
|
|
61
|
-
"ams": {
|
|
62
|
-
"total": 99,
|
|
63
|
-
"unique": 70,
|
|
64
|
-
"shared": {
|
|
65
|
-
"cse": 2,
|
|
66
|
-
"am": 27
|
|
67
|
-
}
|
|
68
|
-
},
|
|
69
52
|
"psm": {
|
|
70
53
|
"total": 60,
|
|
71
54
|
"unique": 60,
|
|
72
55
|
"shared": {}
|
|
73
56
|
},
|
|
74
|
-
"cse": {
|
|
75
|
-
"total": 188,
|
|
76
|
-
"unique": 149,
|
|
77
|
-
"shared": {
|
|
78
|
-
"lu": 15,
|
|
79
|
-
"cot": 6,
|
|
80
|
-
"la": 6,
|
|
81
|
-
"gr": 3,
|
|
82
|
-
"am": 19,
|
|
83
|
-
"ams": 2
|
|
84
|
-
}
|
|
85
|
-
},
|
|
86
|
-
"cot": {
|
|
87
|
-
"total": 58,
|
|
88
|
-
"unique": 13,
|
|
89
|
-
"shared": {
|
|
90
|
-
"gr": 21,
|
|
91
|
-
"lu": 43,
|
|
92
|
-
"la": 11,
|
|
93
|
-
"cse": 6,
|
|
94
|
-
"am": 3
|
|
95
|
-
}
|
|
96
|
-
},
|
|
97
57
|
"nr": {
|
|
98
58
|
"total": 1564,
|
|
99
59
|
"unique": 1564,
|
|
@@ -230,25 +190,6 @@ export const CORPUS_FULL = {
|
|
|
230
190
|
"other": 63
|
|
231
191
|
}
|
|
232
192
|
},
|
|
233
|
-
"ams": {
|
|
234
|
-
"total": 99,
|
|
235
|
-
"genera": {
|
|
236
|
-
"hy": 27,
|
|
237
|
-
"an": 64,
|
|
238
|
-
"rb": 7,
|
|
239
|
-
"ca": 1
|
|
240
|
-
},
|
|
241
|
-
"modes": {
|
|
242
|
-
"1": 18,
|
|
243
|
-
"2": 13,
|
|
244
|
-
"3": 17,
|
|
245
|
-
"4": 11,
|
|
246
|
-
"5": 2,
|
|
247
|
-
"6": 11,
|
|
248
|
-
"7": 5,
|
|
249
|
-
"8": 22
|
|
250
|
-
}
|
|
251
|
-
},
|
|
252
193
|
"psm": {
|
|
253
194
|
"total": 60,
|
|
254
195
|
"genera": {
|
|
@@ -267,60 +208,6 @@ export const CORPUS_FULL = {
|
|
|
267
208
|
"other": 12
|
|
268
209
|
}
|
|
269
210
|
},
|
|
270
|
-
"cse": {
|
|
271
|
-
"total": 188,
|
|
272
|
-
"genera": {
|
|
273
|
-
"an": 54,
|
|
274
|
-
"hy": 65,
|
|
275
|
-
"re": 30,
|
|
276
|
-
"rb": 19,
|
|
277
|
-
"se": 11,
|
|
278
|
-
"tr": 1,
|
|
279
|
-
"ca": 3,
|
|
280
|
-
"tp": 2,
|
|
281
|
-
"co": 1,
|
|
282
|
-
"pa": 1,
|
|
283
|
-
"su": 1
|
|
284
|
-
},
|
|
285
|
-
"modes": {
|
|
286
|
-
"1": 55,
|
|
287
|
-
"2": 31,
|
|
288
|
-
"3": 9,
|
|
289
|
-
"4": 27,
|
|
290
|
-
"5": 10,
|
|
291
|
-
"6": 25,
|
|
292
|
-
"7": 16,
|
|
293
|
-
"8": 13,
|
|
294
|
-
"other": 2
|
|
295
|
-
}
|
|
296
|
-
},
|
|
297
|
-
"cot": {
|
|
298
|
-
"total": 58,
|
|
299
|
-
"genera": {
|
|
300
|
-
"se": 7,
|
|
301
|
-
"co": 1,
|
|
302
|
-
"tr": 1,
|
|
303
|
-
"re": 3,
|
|
304
|
-
"su": 1,
|
|
305
|
-
"an": 18,
|
|
306
|
-
"in": 1,
|
|
307
|
-
"of": 1,
|
|
308
|
-
"gr": 1,
|
|
309
|
-
"hy": 23,
|
|
310
|
-
"or": 1
|
|
311
|
-
},
|
|
312
|
-
"modes": {
|
|
313
|
-
"1": 18,
|
|
314
|
-
"2": 7,
|
|
315
|
-
"3": 2,
|
|
316
|
-
"4": 2,
|
|
317
|
-
"5": 7,
|
|
318
|
-
"6": 8,
|
|
319
|
-
"7": 5,
|
|
320
|
-
"8": 7,
|
|
321
|
-
"other": 2
|
|
322
|
-
}
|
|
323
|
-
},
|
|
324
211
|
"nr": {
|
|
325
212
|
"total": 1564,
|
|
326
213
|
"genera": {
|
package/dist/data/gr.d.ts
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
|
-
import type { Chant } from "./types.js";
|
|
1
|
+
import type { Chant, OfficeCode } from "./types.js";
|
|
2
2
|
export declare const GR_SOURCE: Chant["source"];
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* One generated corpus record: a chant as the extractor writes it, before
|
|
5
|
+
* chant.ts attaches the book and derives the Latin labels.
|
|
6
|
+
*
|
|
7
|
+
* DELIBERATELY A FLAT INTERFACE rather than a mapped Omit of Chant. The mapped
|
|
8
|
+
* type was expanded once per element, and the corpus files are long enough that
|
|
9
|
+
* it mattered. Keep it in step with Chant by hand: the drift a derived type
|
|
10
|
+
* would have prevented is worth less than a build that finishes.
|
|
11
|
+
*/
|
|
12
|
+
export interface ChantData {
|
|
13
|
+
id: string;
|
|
14
|
+
incipit: string;
|
|
15
|
+
gabc: string;
|
|
16
|
+
office: OfficeCode;
|
|
17
|
+
mode: string | null;
|
|
18
|
+
/** Every book that prints this chant, the one storing the record first. */
|
|
19
|
+
books?: string[];
|
|
20
|
+
/**
|
|
21
|
+
* Page citations, KEYED BY BOOK CODE — the one field that is genuinely
|
|
22
|
+
* per-volume, and the reason a shared chant cannot just keep one book's.
|
|
23
|
+
* An empty map for a book that cites no pages (the Nocturnale).
|
|
24
|
+
*/
|
|
25
|
+
pages: Record<string, {
|
|
26
|
+
page: string;
|
|
27
|
+
sequence: number;
|
|
28
|
+
extent: number;
|
|
29
|
+
}[]>;
|
|
30
|
+
}
|
|
4
31
|
export declare const GR_DATA: ChantData[];
|
|
5
32
|
//# sourceMappingURL=gr.d.ts.map
|