一部の端末アプリケーション(例mosh
:)は代替画面で端末を使用するため、端末エミュレータのデフォルトのスクロールは無効になります。mosh
(私が知っている限り)端末設定を上書きすることは許可されていないので、代替画面を使用せず(したがって)基本スクロールが引き続き機能するように強制する簡単な方法は、端末に代替画面がないことを知らせることです。画面:
env TERM=dumb mosh <destination>
mosh
これでスクロールは中断されなくなり、残念ながらTERM=dumb
タイトルバーにアプリケーション名を設定するなどの他の最新の端末機能も中断されません。より便利TERM=linux
ですが、まだタイトルバーにアプリケーション名を設定しません。
それでは、$TERM
代替画面をサポートしていない最もxtermに似た設定は何ですか?
注:
- 私のデフォルトTERM
はですxterm-256color
。 - insideの
使用などの他の回避策があることを知っていますが、時にはそうしたくありません。 - これは私にローカルスクロールバッファだけを提供することに気づきました。したがって、mosh セッションの接続が切断され、再接続された場合でも、出力は失われます。しかし、時にはそれで十分です。tmux
mosh
答え1
smcup
代替画面を切り替えるには、端末項目(または項目の合計)のおよび機能を使用します。rmcup
terminfo
ti
te
termcap
tmux-256color
または、アイテムをコピーしてxterm-256color
別の名前とnull値を持つように編集してから、コンパイルして変更されsmcup
たrmcup
バージョンをterminfoデータベースに追加しますtic
。
少なくとも2行目(コメントの直後#
)のタイトル/説明とsmcupとrmcupの値を変更する必要があります。
例えば
mkdir ~/.terminfo
infocmp tmux-256color > /tmp/tmux256-noalt
vi /tmp/tmux256-noalt
tic /tmp/tmux256-noalt
次にexport TERM=tmux256-noalt
(/tmp/tmux256-noalt ファイルから呼び出されたと仮定)。
~/.terminfo/
代わりに、システムのterminfo dbにエントリを追加するには、rootとしてtic
実行します(例:使用sudo
)。
私は読書を強くお勧めします呪い、terminfo、infocmp
およびtic
関連トピックを始める前に確認してください。
ところで、現在ncursesの作成者であり、管理者はトーマス・ディッキー、サイトを頻繁に訪問し、サイトに関する質問によく回答してください。彼の答えのいくつかを読むだけで多くのことを学ぶことができます。彼はおそらくこの質問のコピーに答えたでしょう。しかし、私はそれを見つけることができませんでした(非常に一生懸命検索しなかったにもかかわらず)。