GothenburgBitFactory / taskwarrior

Taskwarrior - Command line Task Management
https://taskwarrior.org
MIT License
4.49k stars 309 forks source link

Fix missing line in man task-color #3665

Closed d2718nis closed 3 weeks ago

d2718nis commented 3 weeks ago

Escape leading single quote to prevent groff misinterpretation as a control character.

Issue

In man 5 task-color, the sentence cuts off unexpectedly: There is also 'color.project.none', 'color.tag.none' and This occurs just before the THEMES section.

screenshot-2024-11-05-01-35-39

Explanation

According to man 7 groff documentation, a leading single quote ' is interpreted as a control character and should be escaped as \[aq] to render correctly.

       '   The neutral apostrophe is the no-break control character,
           recognized where the control character is.  It suppresses the
           (first) break implied by the .bp, .cf, .fi, .fl, .in, .nf,
           .rj, .sp, .ti, and .trf requests.  The requested operation
           takes effect at the next break.  It makes .br nilpotent.  The
           no-break control character can be changed with the .c2
           request.  When formatted, “'” may be typeset as a
           typographical quotation mark; use the \[aq] special character
           escape sequence to format a neutral apostrophe glyph.

The man 7 groff_char page provides further details on character usage, and there has been long-standing discussion about this issue.

As suggested in the Getting Started section of man 1 groff documentation, here’s a quick way of testing the escaped sequences output:

echo "\[aq]test" | groff -Tascii | sed '/^$/d'

For UTF-8:

echo "\[aq]test" | groff -Tutf8 | sed '/^$/d'

Other options

Other approaches considered: