manpage 顯示排版提早換行 - Linux

Table of Contents

大家好,

標題可能不太清楚,先上張圖:

https://i.stack.imgur.com/wvPmV.png

請問為啥 manpage 的輸出會提早換行,而不是顯示完整 terminal 版面後才換行?

這問題我在 FreeBSD 跟 Linux (Ubuntu) 都遇過,不過後者如果是用 SSH 操作的話就
沒這問題,但前者不管是 SSH 或直接在機器上(QEMU -nographic)操作都會這樣。

這問題是不是跟某個環境變數有關呀?


另外想請教個可能沒相關的問題(?

在還沒解壓縮 dot file (.zshrc, .oh-my-zsh/, etc)之前,為什麼按 delete
會輸出 '~'字元,而不是向後刪除字元?這問題不管是在 zsh 或是 csh 都有遇到。

謝謝各位!

--

All Comments

Dora avatarDora2021-08-15
請看 man 的 manpage 有環境變數可以控制寬度
沒有的話會自動偵測 偵測不到會自動掉回 80 字
Skylar DavisLinda avatarSkylar DavisLinda2021-08-17
至於後面應該是跟 terminfo 有關
Dora avatarDora2021-08-18
你的環境的預設 TERM 可能是不會處理 delete 的類型
Daph Bay avatarDaph Bay2021-08-20
先 echo $TERM 看看,是不是FreeBSD不認得該TERM
Liam avatarLiam2021-08-22
倒數第二段的問題,或許rc檔裏包含一些設定tty的指令?
Agnes avatarAgnes2021-08-23
FreeBSD 的 man 預設不會自動偵測寬度,如果想要自動偵測
要設定環境變數 MANWIDTH=tty。
Jack avatarJack2021-08-25
如果已經確定程式會自動偵測,寬度卻還是有問題,那可能
Elizabeth avatarElizabeth2021-08-26
系統認知的寬度和實際不符,可以用 stty -a 查詢目前終端
Zora avatarZora2021-08-28
機的大小,如果有錯誤可以用 stty 手動更正,或用 resize
之類的指令自動修正。