| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
adoc(5) 8 makes a reference to an unset attribute an error (E4), so
three long-standing typos that asciidoctor passed through as literal
text now stop the build: "{empy}" for "{empty}", "{ssmpt}" for the
declared "{ssmtp}", and a declaration of "app-store-rolllout" that
nothing could reference.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015bWfjj7PP24iF5MqFHmdeC
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The page makes a definition list a term line --- ":: term" at the head
of the line, like every other block construct --- and a mid-line "::"
ordinary text. These pages were written in the trailing "term::"
form, which is AsciiDoc's and which the page replaced to remove a
footgun: prose reading "the a :: b thing" parsed as a definition.
The rendering does not change, except where it was wrong. The
trailing form folded an indented continuation into the term, so a
term's bold ran on over its own definition and, in a few pages, the
definition's first line came out after its second. Those read
correctly now.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015bWfjj7PP24iF5MqFHmdeC
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The numbers left with the code because they were inside the box that
scrolls. Pinning them there was tried first and taken out: nothing
uncovers them, but a scroll draws the two out of step for a frame and
the code is seen crossing them.
The answer is that only the code should scroll. That needs the cell
holding it to be allowed to be narrower than what it holds, and a
table is free to ignore being told so --- Firefox does, and the block
goes back to not containing its own lines. A row laid out as a flex
line is not free to ignore it: min-width there is honoured, the code
gets a box smaller than its content, and the numbers beside it are
not in that box at all. Nothing to pin, so nothing to fall behind.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KxLpaNQThKfMG3ecCJptP9
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Pinning them was wrong twice over. Nothing covers them: at rest the
cell's background reaches exactly to where the code begins --- painting
the cell shows it does --- but a scroll draws the two out of step for a
frame, and what is seen crossing the numbers is the code arriving
before they have moved. A background cannot fix a repaint.
Constraining the cell instead, so that only the code scrolls and the
numbers sit outside the box entirely, needs a max-width on a table
cell. That is a hint a browser may ignore, and Firefox ignores it:
the table grows back to its longest line and the block stops
containing them again, which was the bug this all started from.
So the box scrolls, numbers and all. They leave the view when the
code is scrolled far enough, which is the price of not lying about
where they are.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KxLpaNQThKfMG3ecCJptP9
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Pinning the first cell to the left edge moved it, and the code could
be seen sliding through a strip beside it. Both are the same thing:
the table that holds the numbers and the code was left to the
browser's default of separate borders, so its cells stand two pixels
apart. The first one's natural place is that two pixels in, which is
what it jumped from; the gap between them is what the code showed
through.
Collapsed, the numbers sit flush against the code, and the pinned cell
is raised so it is the code that passes under it rather than the other
way about.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KxLpaNQThKfMG3ecCJptP9
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A code block wider than the column ran straight past its own border:
the line it was too long for kept going to the edge of the page and
past it, over the margin and out of the block it was supposed to be
in.
"pre { overflow: auto }" was already there and could not help. The
line numbers sit in a table cell beside the code, and a table grows to
fit what it holds, so the pre was never narrower than its longest line
and so never had anything to scroll. The box scrolls instead, and the
numbers are pinned so they stay where they are while the code moves
under them.
Seen on en/pastebin/2021/06/22/curl-wget.html, whose cloc tables rule
off with eighty-odd dashes; it was there for any line past the
column's width.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KxLpaNQThKfMG3ecCJptP9
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
mkwb writes a reply inside what it answers now, so the indent is one
margin a level rather than nine rules counting depth, and each reply's
rail stacks with its parents' --- which is the thread view the flat
list could only approximate with a single rule.
On a narrow screen the margin goes and the rails carry it alone: at
depth 7 that is 273px of text on a 390px phone against 133px if the
desktop indent were kept, and against 350px and no nesting at all,
which is what was there before.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KxLpaNQThKfMG3ecCJptP9
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Below 40rem every message was pushed flush left, so a thread arrived
as a flat list and nothing said what answered what. It was pushed
there for a reason: this site's threads reach depth 8, and a rem a
level leaves about 220px for the words on a 390px phone.
A third of a rem a level costs 45px at the deepest and keeps every
depth apart, with a rail down the left of each reply carrying the
nesting that an offset that small cannot hold on its own.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KxLpaNQThKfMG3ecCJptP9
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
* src/content/b/: CGI server folder;
* src/content/git/: CGit, and later gistatic repository serving;
* src/content/live/: self-hosted live scaffolding.
|
| |
|
|
|
| |
Since I can't get deterministic outputs out of mktorrent(1), change torrents
from $(captured-assets) to $(dynamic-contents).
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
parcial
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
Caught by "make check"! I didn't commit this before only because I wasn't
running the tests, only the build.
nice
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
footnote
|
| |
|
|
| |
</p><p> paragraph blocks
|
| | |
|
| | |
|
| |
|
|
| |
inflexible HTML
|
| |
|
|
| |
inflexible HTML
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|