如果我在最大化的终端中打开手册页,然后增加字体大小(“放大”),文本仍然可读,但格式会扭曲。即,段落缩进和页边距丢失。
man less
字体大小增加后xterm
(使用Shift+完成KeyPad +):
这会损害可读性。退出联机帮助页并再次打开它可以解决问题(文本格式正确),但这是一个笨拙的解决方法,它通常意味着我需要导航回我正在阅读的文本。
更改字体大小后有什么方法可以恢复正确的格式吗?附加信息:
man
用作less
寻呼机。more
因为寻呼机没有帮助。缩放后它甚至不会换行,从而导致部分文本消失。Bash 的
checkwinsize
选项已打开。其他终端 (
xfce4-terminal
、terminator
) 中也存在同样的问题。less
重新绘制键绑定(r、R、Ctrl-R、 )都没有Ctrl-L帮助。
答案1
手册页的概要和很大程度上忽略了预处理阶段,工作原理如下:
- troff 源,带有多个宏集之一,被转换为 ditroff(“与设备无关的 troff”)输出格式,在 GNU 世界中也称为中间输出格式
grotty
ditroff 输出由后处理器(例如(来自 GNU 工具集) 、gropdf
、grohtml
等)呈现为特定设备(或设备系列)的最终输出格式。原始 ditroff 的实际 Unix 后处理器被称为devps
、devX75
、 和 ,devlp
并且还有第三方后处理器,例如 TextWare 的tplus
。- 终端设备(在 GNU 工具集中)的后处理器的输出
grotty
被输入到所选的寻呼机中。
它的知名度还不够高,但 Unix 寻呼机的输入就是 1968 年送入 Teletype Model 37 纸质终端的输入,其中下划线、粗体和项目符号列表中的花式项目符号都带有重划线。然后寻呼机将其转换为适合实际终端类型的控制序列。 (大多数 Unix 寻呼机无法处理花哨的过度击中的子弹,并且它们不会像交叉的圆圈,被+
覆盖o
,表明它们实际上处于 7 位模式.)
一些寻呼机,例如less
可以有点处理来自 ECMA-48 的“新”终端编码,该编码于 1976 年首次发布并用于视频终端,但它们对此并不是特别聪明,如果使用除最基本的 ECMA-48 功能之外的任何内容,则可能会出错。
grotty
可以输出其中任何一个。遗憾的是,通常某些本地配置文件会强制使用 1968 年旧的纸张终端输出格式。
当事情到达寻呼机时,该文档已被格式化为特定的设备宽度,由后处理器(记住将“设备无关”转换为“设备特定”)。 less
、 、more
、most
不负责包装,也不重新包装。正如您所发现的,如果终端宽度减小到低于用于格式化文档的宽度,您将获得的最好效果是从这些寻呼机进行横向滚动。
您可以通过使用其中之一来更接近重排手册页其他输出格式,但这显然不会涉及 Unix 寻呼机作为最终的文档查看器。