Development record
The README contents part doubles every backslash in a heading's text, so a markdown escape renders wrong in the list: `## A \* b` is listed as `[A \\* b](#a--b)`, which the forge shows as 'A \* b' while the heading reads 'A * b'; an escaped backtick (a backslash before a backtick) becomes a literal backslash before a backtick that can then open a code span. escapeLinkText (internal/core/ahoy/readme_derive.go) escapes \ to keep a trailing backslash from escaping the link's closing bracket, but it also re-escapes the backslash of every escape the owner wrote. Found while making the contents part read code spans literally (lane-3 fix round 1, run-2610110908176735).
The README contents part doubles every backslash in a heading's text, so a markdown escape renders wrong in the list: ## A \* b is listed as [A \\* b](#a--b), which the forge shows as 'A * b' while the heading reads 'A * b'; an escaped backtick (a backslash before a backtick) becomes a literal backslash before a backtick that can then open a code span. escapeLinkText (internal/core/ahoy/readme_derive.go) escapes \ to keep a trailing backslash from escaping the link's closing bracket, but it also re-escapes the backslash of every escape the owner wrote. Found while making the contents part read code spans literally (lane-3 fix round 1, run-2610110908176735).
Frontmatter
| id | iss-2610112021163993 |
|---|---|
| type | issue |
| lifecycle | open |
| severity | minor |
.abcd/work/issues/open/iss-2610112021163993-the-readme-contents-part-doubles-every.md
open on GitHub ↗ · commit history ↗