
Linux端末では通常、上にスクロールするためにShift-PageUpキーシーケンスが使用されます。
しかし、このキーシーケンスは、特定のシステムにsshを接続してもgnu画面では機能しないようです。
2つの質問があります。 1)このキーシーケンスはどこで定義されていますか? 2)これを常に許可するには、画面設定で何を変更できますか?
これはtermcapエントリに関連していますか?
私は現在3台のコンピュータを使用しています。そのうちの2つはShift-PageUpを押すとバッファを上にスクロールします。 1台のコンピュータはキーの押下にまったく反応しません。
作業機械:
- セントース6.5
- セントース 5.9
働かない機械:
- セントース 5.9
これは、3つのシステムすべてで使用される.screenrcです。
termcapinfo xterm|xterms|xs|rxvt ti@:te@
term screen-256color
hardstatus on
hardstatus alwayslastline
hardstatus string "%{= wb}%-w%{.yb}%n %t%{-}%+w %=%{b r} %H %{..b}[%l] %{..K}%C%a "
startup_message off
# turn off visual bell
vbell off
# Autodetach session on hangup instead of terminating screen completely
autodetach on
# give more scroll back
defscrollback 20000
# turn on alternate screen support
altscreen on
# bash will be replaced by the running command
shelltitle " $ |bash"
screen 3
screen 2
screen 1
これが重要かどうかはわかりませんが、ROXTermを端末エミュレータとして使用します。
注:Ctrl-A [を使用して画面のコピーモードスクロールバックバッファに入ることができることを知っています。しかし、私はこれを使用したくありません。私が興味を持っているのは、なぜScreenのShift-PageUpがいくつかのコンピュータでは期待どおりに機能しますが、他のコンピュータでは完全に無視されるのです。
編集:.screenrcのtermcapinfo行を次のように変更することで、機能しないコンピュータでこの問題を解決できました。
termcapinfo xterm*|xs|rxvt ti@:te@
動作していないコンピュータで$ TERM環境変数をxterm-256colorに設定しましたが、「xterm-256color」のtermcap / terminfoエントリがない可能性がありますか?
答え1
これが役に立つかどうかはわかりませんが(Shiftキーをバインドする方法がわかりません)、次を使用しています。
bindkey ^[[5;5~ eval "copy" "stuff ^U"
bindkey ^[[6;5~ eval "copy" "stuff ^D"
Ctrl私の.screenrcでPage Up+/をPage Down次にバインドします。
- 「コピー」モードに入ります。
Ctrl- + U/を押しますD。 (Vimの動きに似ているからです)