Table cells: handle escaped \| (literal pipe) — coordinated server+client follow-up to #1
#2
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Follow-up to #1. That fix made the table lexer skip
|inside[[…]]/{{…}}/`code`, but intentionally left backslash-escaped\|unhandled, because skipping it incell_bar_positionsalone would leave a stray\in the rendered cell (the inline lexer has no escape handling).This tracks doing
\|properly so a cell like| a\|b |is one cell whose content is a literala|b.What's needed (both must land together)
Server (nuwiki-rs)
\|as literal (don't split there).lex_inline(or a table-cell pre-pass), unescape\|→|so the emitted text/HTML shows a literal pipe with no stray backslash.| a\|b |lexes to one 2-column row and exports a<td>containinga|b.Client (gffranco/nuwiki)
Once the server unescapes, re-add the
\|skip tocell_bar_positionsin bothlua/nuwiki/commands.luaandautoload/nuwiki/commands.vimso the editor's auto-alignment keepsa\|bas one cell and stays consistent with export.Current state (intentional, consistent)
Until this lands, both sides split on
\|— the client's\|skip was removed ingffranco/nuwiki5375e30specifically so the buffer and the HTML export agree.\|in a table cell is uncommon, so this is low priority; the two repos just need to flip together.