screen のメモ

先日導入した GNU Screen の操作方法や設定などのメモ

↑screen で立ち上げた bash のプロンプトを変更するのはどうしたらいいのかな。


コマンドキーはデフォルトだと Ctrl+a だけど Ctrl+t に変更している。(以下 C-t と表記)

コマンド 動作
C-t c 新規ウィンドウを作成
C-t k 現在のウィンドウを破棄する
C-t n (or p) ウィンドウを切り替え
C-t C-t 直前に選択していたウィンドウに切り替え
C-t w ウィンドウの一覧リスト表示
C-t 1〜9 ウィンドウの切り替え
C-t a ウィンドウのタイトル変更?
C-t d ウィンドウをデタッチ
screen -r (プロセス番号) 指定した screen ウィンドウをアタッチ
C-t [ コピーモード(RET で範囲選択開始、再度 RET で範囲選択終了)
C-t ] ペースト

今現在の .screenrc はこんな感じ。

# コマンドキーを C-t にする
escape ^Tt

# 最終行のウィンドウ一覧を表示
# typester氏のものを流用 (http://unknownplace.org/memo/2005/12/05/#e014)
hardstatus alwayslastline "[%02c] %`%-w%{=b bw}%n %t%{-}%+w"

# スタートメッセージを非表示
startup_message off

# ログファイルのファイル名
logfile "$HOME/log/screen-%Y%m%d-%n.log"
# 標準でログをとる
deflog on

# デフォルトエンコーディングを UTF-8 に
defencoding utf-8

# コピーモード
# Emacs ライクなキーバインド
markkeys h=^b:l=^f:0=^a:$=^e:^d=^v

参照エントリ


コピーモードのキーバインドEmacs ライクにする設定について、下記のようにしている人が多く見られた。

markkeys h=^B:l=^F:$=^E:^U=^Z:^D=^V

clmemo@aka: GNU Screen の設定 (.screenrc) をさらしてみる

markkeys 'h=^B:l=^F:$=^E'

Screen

C-a で行頭に移動するのもあったほうがいいと思ったので自分で追加したのが「 0=^a 」の部分。もともとは vi のキーバインドが割り当てられているようなので、vi で行頭に移動するコマンドを調べて設定した。
ほんのわずかとはいえ、自分でプラスアルファを出せたのはよかった。