lilleman
|
bc4b65501b
|
Reword the isBareText and adfNodes comments
|
2026-10-03 17:52:56 +02:00 |
|
lilleman
|
147fd21049
|
Join only content-free text nodes in editor-normal ADF, type checked first: adfToPlainMarkdown on 3,000 extension blocks of 200-key parameters 1,752-1,941 ms → 1,034-1,240 ms (1,018-1,283 ms at 608ef26)
|
2026-10-03 17:52:52 +02:00 |
|
lilleman
|
460f728a0f
|
Keep an empty doc content in editor-normal ADF, as the schema requires
|
2026-10-03 16:22:54 +02:00 |
|
lilleman
|
ead2e7f4b7
|
Give the unmarked bare text check and the text-holding-content refusal one owner each
|
2026-10-03 16:22:19 +02:00 |
|
lilleman
|
85f1063c7b
|
Name the reader's own-marks items for what they hold, and drop the carry flag the items already say
|
2026-10-03 16:21:49 +02:00 |
|
lilleman
|
890ae4ef15
|
Keep near-miss text pairs apart in the property harness: merge only what the reader joins
|
2026-10-03 16:21:06 +02:00 |
|
lilleman
|
c3ac8edb76
|
Hold the editor's join rule in plain/editor-normal.ts as the reader's over editor-normal forms
|
2026-10-03 16:19:55 +02:00 |
|
lilleman
|
72f919ae04
|
Rename isPlainText to isBareText, apart from the plain flavour, and say truly what it admits
|
2026-10-03 16:19:09 +02:00 |
|
lilleman
|
95bad0ff90
|
Prose round 3: retitle the floor decision, put the plain/ exception first, sharpen items 59-62
|
2026-10-03 16:11:56 +02:00 |
|
lilleman
|
410665e2d3
|
Name the emitter's block walk PlacedBlocks, apart from the parser's Walk
|
2026-10-03 15:52:43 +02:00 |
|
lilleman
|
84a0750397
|
Keep 'carry' for the opaque carry: holdsOnlyAttributes, spellEdgeWhitespace, bothCommonMark
|
2026-10-03 15:52:19 +02:00 |
|
lilleman
|
4e6a4b5ac4
|
Name the two text-joining rules for whose rule they are, side by side in adjacent-text.ts
|
2026-10-03 15:51:41 +02:00 |
|
lilleman
|
acc8227598
|
Gather the plain flavour's code in markdown/plain/
|
2026-10-03 15:50:24 +02:00 |
|
lilleman
|
a71c98babd
|
Final wording: the reserved-directive refusal row, the adf:-alone fence, the changelog's carry and scope, the developer panel, the migration's empty shape
|
2026-10-03 15:17:53 +02:00 |
|
lilleman
|
4409d5befc
|
Reword the attrs=empty and language-placement refusals, quoting a language that needs it
|
2026-10-03 15:17:40 +02:00 |
|
lilleman
|
af98e9cbdc
|
Trim two comments
|
2026-10-03 15:12:54 +02:00 |
|
lilleman
|
91879d01b1
|
Lead the code block, empty-key, carry fence, text break and carry-in-mark refusals with their fix
|
2026-10-03 15:12:51 +02:00 |
|
lilleman
|
1d6a6b0914
|
Name the code block wrapper in the two carry-fence refusals that lacked it
|
2026-10-03 15:05:51 +02:00 |
|
lilleman
|
d912bf1c9f
|
Lead the refusals ordinary editing meets with the edit that fixes them
|
2026-10-03 15:05:36 +02:00 |
|
lilleman
|
b28c3e2590
|
Inline the identity blocks() helper in the plain reader tests
|
2026-10-03 15:04:15 +02:00 |
|
lilleman
|
d1ceabb377
|
Drop the as const on the doc directive's attribute
|
2026-10-03 15:04:11 +02:00 |
|
lilleman
|
be691e56d7
|
Refuse attrs=empty on a code block whose fences carry its language
|
2026-10-03 15:03:58 +02:00 |
|
lilleman
|
95bd4a9d01
|
Keep format knowledge out of mergeAdjacentText's comment
|
2026-10-03 14:46:29 +02:00 |
|
lilleman
|
6dd25f8f6a
|
Drop empty keys in the property harness through emptyKeys
|
2026-10-03 14:46:29 +02:00 |
|
lilleman
|
c1fe5f133e
|
Read a carry fence's type in one function
|
2026-10-03 14:45:48 +02:00 |
|
lilleman
|
5701123943
|
Spell the doc directive's content=none through spellAttributes from one constant
|
2026-10-03 14:45:28 +02:00 |
|
lilleman
|
9d043924e7
|
Derive a block directive's empty content from its node, and let readEmptyKeys own the attrs=empty-stands-alone rule
|
2026-10-03 14:45:12 +02:00 |
|
lilleman
|
6a54757839
|
Spell 'a text node holding its text and marks alone' once, as isPlainText
|
2026-10-03 14:44:00 +02:00 |
|
lilleman
|
05c1728173
|
Hold a carried node's own marks on the item, not in a side set copies fall out of
|
2026-10-03 14:43:03 +02:00 |
|
lilleman
|
ae19cdae1b
|
Take the raw run's refusal path only where its code matches the editor-normal refusal
|
2026-10-03 14:41:42 +02:00 |
|
lilleman
|
213b7c2d3f
|
Name the adf: fence among the carve-outs, and the way a fence stays code in its errors
|
2026-10-03 14:41:30 +02:00 |
|
lilleman
|
b34f9309f4
|
Set up every inline scan through one freshScan
|
2026-10-03 14:33:06 +02:00 |
|
lilleman
|
8958eab08e
|
Write the same plain markdown for documents the editor holds equal: normalize the reduction's input again, naming a refusal by the caller's document
|
2026-10-03 14:32:34 +02:00 |
|
lilleman
|
767d57f8df
|
Say only the plain writer is editor-normal, and read plain markdown in the tests without normalizing
|
2026-10-03 14:23:04 +02:00 |
|
lilleman
|
6b18aefedc
|
Index a plain refusal's path in the caller's document: normalize only the reduction's output
|
2026-10-03 14:22:14 +02:00 |
|
lilleman
|
4b12951e38
|
Refuse a carry fence naming a type no info string carries back
|
2026-10-03 14:20:47 +02:00 |
|
lilleman
|
b78d841b34
|
Carry the text break as its own item, not a fake node, and check it where the outermost content resolves
|
2026-10-03 14:19:55 +02:00 |
|
lilleman
|
3aa693d2a1
|
Keep one merge loop and one mark key: editor-normal compares normalized marks with identicalMark
|
2026-10-03 14:17:22 +02:00 |
|
lilleman
|
f44cbecd9b
|
Record deep equality, the text break, empty keys, -0, the typed carry fence and per-node code fences; file items 52 and 53
|
2026-10-03 12:28:20 +02:00 |
|
lilleman
|
039aac8873
|
Make markdownToAdf(adfToMarkdown(doc)) deep-equal doc: textBreak, empty keys, -0, typed carry fences, code blocks of several text nodes
|
2026-10-03 12:25:01 +02:00 |
|
lilleman
|
b6a4619832
|
Rewrap two lines past 100 columns
|
2026-10-02 17:41:07 +02:00 |
|
lilleman
|
0653c19523
|
Answer the prose and product-owner reviews' first round
|
2026-10-02 17:39:25 +02:00 |
|
lilleman
|
d22353f8f2
|
Goals become one-line aims, their detail moves to the sections that meet them
|
2026-10-02 17:34:17 +02:00 |
|
lilleman
|
ef5dc415e3
|
41 - review: title text keeps its own spelling, only a node without text reads as the reduction does
|
2026-09-30 17:01:15 +02:00 |
|
lilleman
|
89706a87fa
|
41 - review: a callout title reads its nodes as the plain reduction does, one goal reference renumbered
|
2026-09-30 16:57:54 +02:00 |
|
lilleman
|
2372ac3e6c
|
41 - plainMarkdownToAdf keeps a callout title's link targets; Goal 6, what happens is what the audience expects
|
2026-09-30 16:32:13 +02:00 |
|
lilleman
|
6434233b97
|
10f - review: a node the carry restores stays deep-equal, its ids only skipped
|
2026-09-29 21:51:22 +02:00 |
|
lilleman
|
b6294f4b9f
|
10f - review: tests for a carried node keeping its task nodes unminted
|
2026-09-29 21:51:22 +02:00 |
|
lilleman
|
62ce254793
|
10f - plainMarkdownToAdf mints task localIds as UUID v4s hashed from the markdown and position
|
2026-09-29 21:47:09 +02:00 |
|
lilleman
|
7e672c38fa
|
cjk - review: the voicing marks' script stated truly, one spelling for the alphabet
|
2026-09-29 18:52:03 +02:00 |
|