はとのーと

エジソンノート(アイデア、思い付き、メモ)として使っています。誰かの役に立つかもしれないので公開しています。

GNU Screenについてのメモ

(2023-10-06 更新)

GNU Screenの使い方がわからなくなるのでよく使うコマンドを自分用にメモしています。

GNU Screenw3mを組み合わせた時に挙動については w3mについてのメモ を参照。

目次:

参考資料

エスケープキーの変更方法

デフォルトではGNU Screenエスケープキーは Ctrl+a で、Emacs の行頭移動と同じキーのため、変更することが多いと考えられる。

たとえばエスケープキーを Ctrl+t に変更するには ~/.screenrc に以下のように設定する。

escape ^Tt

領域とウィンドウについて (独自解釈)

  • 領域 : 端末画面を分割したエリア。実際の表示領域。
  • ウィンドウ : シェルが動作する画面。テキストが入出力される。画面に表示されていない時でも動き続ける。

GNU Screenを起動すると端末画面は領域となり、複数の領域に分割することができる。 それぞれの領域にはウィンドウを割り当てて表示することができる。 いわば領域が額縁、ウィンドウは絵画のような関係。

(領域、ウィンドウについては私の解釈のため用語や動作が正確ではない可能性があります)

よく使うコマンド

ヘルプ
  • Ctrl+a ? - ヘルプ画面を表示する (SpaceEnter で解除)
ウィンドウ操作
  • Ctrl+a c - 現在の領域で新しいウィンドウとシェルを開始する
  • Ctrl+a n - 現在の領域に次のウィンドウを表示する
  • Ctrl+a p - 現在の領域に前のウィンドウを表示する
  • Ctrl+a w - ウィンドウ名の一覧を表示する
  • Ctrl+a 09 - 現在の領域に指定したウィンドウを表示する
領域操作
  • Ctrl+a S - 現在の領域を水平に2つの領域に分割する
  • Ctrl+a | - 現在の領域を垂直に2つの領域に分割する
  • Ctrl+a TAB - 次の領域に入力フォーカスを移動する
  • Ctrl+a Ctrl+a - 現在の領域に以前に表示していたウィンドウを表示する
  • Ctrl+a X - 現在の領域を閉じる
  • Ctrl+a Q - 現在の領域以外のすべての領域を閉じる
コピーペースト
  • Ctrl+a ESC - コピーモードに入る (Enter で領域を選択)
  • Ctrl+a ] - テキストを貼り付ける
コピーモードでのインクリメンタルサーチ

コピーモード (Ctrl+a ESC) に入っているとき

screenrc用のコマンドを入力する
  • Ctrl+a : - screenrc用のコマンドを入力する
    • 例: Ctrl+a : cjkwidth - 現在のcjkwidth設定が表示される