![观察 perldoc 输出保留格式](https://linux22.com/image/52734/%E8%A7%82%E5%AF%9F%20perldoc%20%E8%BE%93%E5%87%BA%E4%BF%9D%E7%95%99%E6%A0%BC%E5%BC%8F.png)
当我用来watch
遵循perlpod
我正在编写的文档时,格式会被破坏(请参阅NAME
和Synopsis
部分):
Every 2,0s: perldoc lib/Uki/Handlers/SOS.pm Tue Apr 8 10:42:43 2014
Uki::Handlers::SOS(3) User Contributed Perl DocumentationUki::Handlers::SOS(3)
N NA AM ME E
Uki::Handlers::SOS - Studenten-Handler
S Sy yn no op ps si is s
SOS-spezifische Spezialisierung des Uki::Handlers::Person-Handlers.
我认为这是因为nroff
认为输出终端不是 TTY,但我不知道如何告诉它,事实上,它是电传打字机。
答案1
nroff
你是对的,你的问题是/完成的美化的渲染groff
。
为了避免这种美化,请绕过nroff
/groff
并输出您的荚将文档转换为文本pod2text
(这是 Perl distrib 的一部分,所以你应该拥有它):
watch "pod2text <your_perl_withpod_file>"
答案2
阅读手册页我想出了这个解决方案:
watch "perldoc -T -otext lib/Uki/Handlers/SOS.pm"
答案3
“但我丢失了我想保留的格式信息。”
并不是它认为您不在 tty 上,而是它认为您在真的很旧tty 确实通过了重击技巧糟糕的,groff的后端处理器。从手册页:
使用 -c 开关恢复到旧的行为,使用序列“c BACKSPACE c”打印粗体字符 c 并使用序列“_ BACKSPACE c”打印斜体字符 c。同时,颜色输出被禁用。通过设置 GROFF_NO_SGR 环境变量或使用“sgr”X 命令(见下文)可以实现相同的效果。
问题是您不想要-c
或GROFF_NO_SGR
设置,但由于某种原因它认为其中之一或两者都是。
检查您的环境中的GROFF*
和TERM
变量是否有合理的值。