最近受け取ったrxvt - Unicode到着インシ。これは私がから行くことを意味$TERM=rxvt-unicode-256color
します$TERM=st-256color
。
私はこのスイッチにとても満足しており、使い続けたいと思いますst
。しかし、一部の端末アプリケーションが$TERM
新しい値に満足していないことがわかりました。たとえば、フルカラーサポートは、認識可能であると考えるように「トリック」しない限りロードされませemacs
ん。st
$TERM
$TERM=xterm-256color
私の質問は:簡単な設定の危険は何ですか$TERM=xterm-256color
?重要な部分$TERM=*-256color
は256color
部品であり、価値は*
それほど重要ではないようです。
答え1
値の重要な部分TERM
は、それがterminfoデータベースまたはtermcapデータベースのエントリと一致し、エントリが端末を正しく説明することです。
あなたの端末がXTermであることは明確ではありませんが、ソフトウェアに合理的に通知することはできません。他の端末エミュレータがXTermと同じ入力/出力制御シーケンスを使用するか、すべて同じ機能を提供すると仮定するのは完全に間違っています。
-256color
複合体の一部名前、これはほとんどのソフトウェアに固有の意味はありません(一部のソフトウェアでは関数のサフィックスを探しますが)。 terminfo/termcap データベース内の項目を名前に基づいて系列にグループ化することは人間であるため(ほとんど)人間にのみ意味があります。端末タイプ名の機能的サフィックスは、ソフトウェアではなく主に人によって使用されます。
ソフトウェアにとって意味があるのは、データベースの記録です。名前はそのように建てられました。端末が256色をサポートし、このタイプの端末で使用するための制御シーケンスを提供することを示します。
つまり、emacsは独自の操作を実行し、terminfo / termcapデータベースにのみ依存しません。たとえば、その機能はframe-set-background-mode
値と一致することが知られていますが、今は間違っている可能性があります。ここで正しいアプローチは、emacsを修正して最終的に端末タイプ(および他のタイプ)を正しく認識することです。 TERM
^\\(xterm\\|\\rxvt\\|dtterm\\|eterm\\)
st-256color
putty-256color
vte-256color
追加読書
- ジョナサンデボインポラード(2019)。 」学期」。 いくつかの雑多な。 Nosh ツールセット。
- ジョナサンデボインポラード(2019)。 」端末機能」。 いくつかの雑多な。 Nosh ツールセット。
- https://unix.stackexchange.com/a/419092/5132
- https://stackoverflow.com/a/49364532/340790
- https://emacs.stackexchange.com/a/50161/20085
- $ TERMはどのように、どこで解釈されますか?
- 」端末別初期化」。 Emacs Lisp。フリーソフトウェア財団。