man -t ls
converts - to −. Is there a way I can tell man -t
to not do that?
I prefer having -, as the - is often part of examples where − would be wrong (e.g. options).
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. It only takes a minute to sign up.
Sign up to join this communityIn the original file, the minus '-' symbols really are backslashified to '\-' which would then be interpreted in the way you do not like.
A solution is to filter the file before feeding it to man for formatting:
zcat /usr/share/man/man1/ls.1.gz | man -tl - > ls-normal.ps
zcat /usr/share/man/man1/ls.1.gz | sed 's/\\-/-/g' | man -tl - > ls-minus.ps
The second form replaces the '−'s with '-'s on my system.
PS: My previous answer was wrong - apologies!
troff
, \-
encodes "minus" (which is appropriate for options, and produces output which can be copy-pasted to the command-line), whereas -
encodes "hyphen". groff
now treats both in the same way for text output (and HTML, at least in Debian), but apparently not for PostScript.
Mar 30, 2017 at 18:38
(echo '.tr \--'; zcat $(man -w ls)) | man -tl -