
CTRLGNU画面でvimを実行すると、矢印キーとPg *キーの組み合わせが期待どおりに機能しないことがわかりました。
Ubuntu 10.10パッケージを使用していますvim-gnome
。
Ubuntuを実行している他のコンピュータでは正常に動作します。残念ながら、現在利用可能な構成はありません。
関連する質問は次のとおりです。VimでCtrl +矢印を修正する方法は?
ただし、提案された解決策は、端末エミュレータ(この場合はPuTTY)で使用できるようにvimのキーバインディングを再マッピングすることです。同様の作業を行ったことを覚えておらず、この問題を解決するための画面構成オプションがあると思われます。
まだ一つあります。ワイヤー$ TERM=xterm vim
gnu-screenメーリングリストは、vim viaを実行することが適切な修正または解決策になると提案しました。これは効果がありますが、可能な副作用について少し心配です。また、ソリューションが必要な場合は、他のコンピュータに設定できるソリューションになるほど慣れていないようです。
答え1
彼がアップデートで直感的に言ったように、ファイルを追加するとterm xterm
問題~/.screenrc
が解決するようです。
答え2
基本的な問題は、screen
実際の端末(TERM
環境変数Outsideによって識別される)と内部シミュレーションの間でscreen
行われたマッピングがscreen
不完全であることです。
もしテストするようになったら(使用してください。テストまたは釘)、次の事項に欠陥があることがわかります。
- 色
- 特殊キー
term
設定によってこれらの問題を解決したい場合の欠点.screenrc
は、特定の実際の端末でのみ機能し、他の端末の実装には移植できないことです。これ文書ノート
デフォルト以外の目的で用語コマンドを使用することはお勧めできません。
以下を使用する別の解決策(他の欠点があります)があります。screen
文書:
画面自体が端末名を把握しようとすると、まず次の項目が見つかります。画面。学期、どこ学期変数の内容です
$TERM
。そのような項目がない場合は、画面が試行されますscreen
(またはscreen-w
端末が広い場合(132列以上))。この項目も見つからない場合は、vt100
代替項目として使用されます。
ncursesは、この状況に関するいくつかの便利な代替端末の説明を提供します。たとえば、次のようになります。screen.xterm-new、画面マッピングの問題を修正してください。実際、私はを使用しTERM=xterm-new
て画面を実行するときに使用できるファンクションキーマッピングを取得します。
画面term
設定に戻り、テスト中に次のことがわかります。まだマッピングの問題は、これらの選択肢で解決されます。を使用して正確な端末記述を取得できる場合、term
これらの選択肢はの簡単なエイリアスになりますscreen
。そうではありません。
本当に呪いはありません。いいえ提供されるscreen.xterm
理由:
TERM=xterm
このマッピングを追加すると、状況が悪化する可能性があります(例を参照)。なぜ「xterm」に設定されたTERMを使用しないのですか?ncurses FAQから)- 代替名は
screen.xterm
リモートシステムにインストールされる可能性はありません(詳細は2015年6月端末データベースから)。
ただし、通常、代替名を使用することは、term
自分の名前で使用するよりも改善されています.screenrc
。つまり、発生するよりも多くの問題を解決します。設定の場合はその逆ですterm
。
答え3
実行中のプロセス内で動作する端末を設定する方法はいくつかあります。
実行画面インスタンスで
^A
-を押して:
コマンドを実行すると、term xterm
次のようになります。最近オープンそのインスタンスの下の画面で$TERM
環境変数をに設定すると、呼び出されxterm
たvim
インスタンスに伝播されます。これらの vim インスタンスは、CTRL の組み合わせに関して正しい動作を示します。この戦略の副作用は発見されなかった。このコマンドは既存の画面には影響しません。このコマンドはもちろんファイルで使用できるため、~/.screenrc
他のコンピューターでこの方法を使用することもできます。実行中のvimインスタンスでこのコマンドを使用すると、
set term=xterm
そのvimインスタンスでCTRLコンボが機能します。まだ理解できない理由により、@*
Xクリップボードの接続が失われる副作用があります@+
。:set term=screen
$TERM=xterm