mirror of
https://github.com/only-cli/oc.git
synced 2026-09-15 10:40:56 +02:00
A syntax highlighter gives every token of a command its own element, so `s3://bucket/` reached the walk as `s3`, `:`, `//`, `bucket`, `/`, and the rule that reassembles text fragments only glues the ones sharing a parent. The rest were space-joined. The AWS CLI reference handed over aws s3 cp test . txt s3 : // amzn - s3 - demo - bucket / test2 . txt and Node's fs docs handed over `console . log` and `fd ?. close ()`. Any command or snippet an agent took from a docs page was wrong, and nothing in the output said so. Highlighting is not an edge case: of 172 pre elements on the AWS CLI reference, the Rust book, the Node API docs and the Python library docs, 159 are split this way. A pre or code subtree is now read as one string. That costs nothing to follow, because not one of those 172 blocks contains a link, and it also fixes inline code, which was inserting a space into `Byte ( u8 only)`. Two things fall out of it. Page furniture had to stop riding along. Node puts a language label beside a copy button inside every code block, so the subtree's text ended in `javascriptcopy`. A control is chrome, and so is the block-level element holding it, which is how the label leaves with the button it sits beside. The test stays on block-level wrappers because a highlighter's own elements are inline, so a stray control can never take a line of code out with it. Code blocks keep their lines. Collapsing them was survivable while the code was already wrecked; once it reads correctly, `// read it back` in front of the statements that followed it is worse, because the output now looks trustworthy. Blank runs and the indentation the whole block shares carry no meaning and still go. A cut lands on a line end for the same reason it already lands on a sentence end, and a snippet stays one line, because that is what find's index promises. Measured over five real pages, the compact view moves by -15, -7, +208, -45 and 0 characters, about 35 tokens in total, all of the growth being Python's pretty-printed output getting its indentation back.