すでに使用しているいくつかのキーの組み合わせと競合しないGNU画面の「コマンド文字」を見つけるのに問題があります。
Emacs(およびorg-mode、通常のシェルなど)を介してCtrl+で構成されているほとんどすべてのコマンド文字は、[A-Z]
制限ゾーンです。。
簡単なものがあればいいと思いました。一貫して、ASCII範囲27〜31の文字を入力すると機能します。
上記の基準を満たす文字の1つを入力する方法を見つけるために使用できるツールはありますか?
(「一貫した」という言葉は、「すべてのキーボード」または少なくとも「すべてのアメリカのキーボード」で同じ方法で入力できることを意味します。)
ベストアンサー1
Screenがエスケープ文字として認識するすべてのファンクションキーを使用できます。エスケープ文字(より正確にはエスケープ文字)を設定します。バイト\377
)をUTF-8が絶対に使用しないように入力しないものに変換します。command
たとえば、Escキーとして使用したいキーをF12(F2
termcap talkで - 画面マニュアルの「翻訳を入力する」セクションを参照):
escape \377\377
bindkey -k F2 command
記号名が既知の画面キーに限定されない。キーまたはキーコードをコマンドキー(ターミナルでエスケープシーケンスを送信する必要がある)に設定するには、Ctrlシェルプロンプトで+を押してから、キーを押して送信するエスケープシーケンスを確認します。Vこれにより、エスケープシーケンスはシェル内のエスケープシーケンスとして認識されず、文字通り挿入されます。たとえばF12、CtrlVF12^[[24~
^[
bindkey ^[[24~ command
Ctrl+を\画面エスケープキー(escape ^\\\
)として使用し、Ctrl+に文字を\ \挿入するようにします^\
。^\
制御文字を使用するプログラムはほとんどありません。 Emacsでは を呼び出しますtoggle-input-method
が、私は使用しません。旅行が変わることがあります。調理された端末はほとんど役に立たないSIGQUITを送信します(必要に応じてCtrl+Zの後にkill
コマンドが続く場合も通常は機能します。デフォルトではコアダンプを無効にします)。Ctrl+いくつかの必須キーボードレイアウトでは入力が難しいかもしれませんが、\USレイアウトでは簡単です。また、+を押すと文字を送信するように端末エミュレータを設定して、左手でも文字を入力できます。\AltGr^\
Ctrl`
Ctrl+ ](Emacs:)abort-recursive-edit
とCtrl+ ^(Emacs:未定義ですが、アメリカのキーボードや他の多くのレイアウトで入力するのは不便です)は、Emacsユーザーにとって可能な他の候補です。
ところで、Emacsといくつかのシェルを実行するためだけにScreenを使用している場合は、Screenは必要ありません。 Emacsも同じ目的に使用できます。単一のEmacsプロセスを引き続き実行し、emacsclient
すべての端末でこのEmacsプロセスのウィンドウを開くことができます。端末が消えたら、emacsclient
もう一度実行して同じEmacsインスタンスに接続できます。emacsclient
同じEmacsインスタンスに複数のインスタンスを関連付けることができ、異なるローカル接続とリモート接続を介して表示することもできます。
インターフェイスなしでEmacsを起動するには、を実行しますemacs --daemon
。次に、実行emacsclient -c
して既存のEmacsインスタンスのウィンドウを開きます(またはemacsclient -c -nw
テキストモードウィンドウを強制的に開きます)。 Emacsを起動し(まだ起動していない場合)、既存のEmacsインスタンス(存在する場合)に接続するには、を実行しますemacsclient -a '' -c
。
シェルを実行するには、Emacsで、またはM-x shell
などM-x term
を使用できます。 EmacsはScreenが行うことができるほとんどすべてを行うことができます。