→ CP64: 請看 man 的 manpage 有環境變數可以控制寬度 08/14 10:13
→ CP64: 沒有的話會自動偵測 偵測不到會自動掉回 80 字 08/14 10:13
→ CP64: 至於後面應該是跟 terminfo 有關 08/14 10:14
→ CP64: 你的環境的預設 TERM 可能是不會處理 delete 的類型 08/14 10:15
感謝C大,看來是都沒偵測到,不過有趣的是,manpage提到$COLUMNS是fallback手段
之一,但我 echo $COLUMNS 明明吐得出東西,可是man卻吃不到這個環境變數@@
確實,我在本機的TERM是vt-100,不同於在SSH時,是 screen-256color
→ bitlife: 先 echo $TERM 看看,是不是FreeBSD不認得該TERM 08/14 10:54
感謝b大,後來改成screen-256color就正常了
→ bitlife: 倒數第二段的問題,或許rc檔裏包含一些設定tty的指令? 08/14 11:10
好像沒這麼單純,因為我dotfile裝好後,本機還是一樣是原本的TERM,我後來是手動改
zshrc去換TERM的
推 lantw44: FreeBSD 的 man 預設不會自動偵測寬度,如果想要自動偵測 08/14 12:37
→ lantw44: 要設定環境變數 MANWIDTH=tty。 08/14 12:37
感謝l大,原來如此阿,剛剛已經把這個 env var 丟進 zshrc了XD
推 lantw44: 如果已經確定程式會自動偵測,寬度卻還是有問題,那可能 08/14 12:40
→ lantw44: 系統認知的寬度和實際不符,可以用 stty -a 查詢目前終端 08/14 12:42
→ lantw44: 機的大小,如果有錯誤可以用 stty 手動更正,或用 resize 08/14 12:43
→ lantw44: 之類的指令自動修正。 08/14 12:43
看來是不會自動偵測,不過 stty -a 的輸出看起來挺正常,而且我縮放字體大小也會更
新。看 manpage 説他是用 ioctl 去抓的,我再看看 strace 看不看得出失敗原因
※ 編輯: dces4212 (114.37.32.101 臺灣), 08/14/2021 16:59:37