Ncurses

有沒有辦法為 terminfo 條目提供“覆蓋”?

  • October 17, 2016

至少在 Linux 中,在 RedHat 上,提供的xtermterminfo 條目是有問題的:無論出於何種原因,它們使用初始化序列通過is2強制 80 列螢幕的功能(參見 CSI ? n l)。這是一件非常愚蠢的事情。所以我想改變這一點。我想盡可能雄辯地改變它。

terminfo數據庫位於/etc/terminfo(未記錄的) and /usr/lib/terminfoand$HOME/.terminfo和可能$TERMINFOand$TERMINFO_DIRS中。

我的選擇似乎是:

  • 用於infocmp xterm | perl <regexp> | tic提供新數據庫並將其放在原始文件(壞主意)或/etc/termcap/x/xterm
  • 創建一個名為 (eg) 的新 xterm 條目,該條目xterm-mine使用該source功能並將其放置在上述目錄之一中。

我有第三種選擇嗎?僅覆蓋該一項功能的東西?“調整”?

你似乎已經提到了所有的可能性。但是您沒有提及您使用的是哪種終端配置。控制序列的提及

    Ps = 3  -> 132 Column Mode (DECCOLM).

給出提示。

關於初始化字元串(不是新的:超過 20 年)行為的問題幾乎都來自 PuTTY 使用者。儘管它xterm用於TERM設置,但 PuTTY 不是 xterm。與 xterm (預設關閉相應的菜單項)相比,PuTTY 預設啟用它(並且僅通過選擇是否允許調整大小使該選項可用*)*。

進一步閱讀:

與 Red Hat 相比,Debian 提供了更多與 PuTTY 相關的錯誤報告:

所有這一切的重點是,終端描述(就像其他經常使用的東西一樣)在有一種完善的使用方式時不會經常改變。PuTTY 的終端描述在其他方面與 xterm 不同,因為它沒有實現與 xterm 一致的某些功能(例如換行)。

進一步閱讀(除了關於TERMvs的 ncurse 常見問題解答xterm):

引用自:https://unix.stackexchange.com/questions/316397