linuxにおける画面分割の活用

#追記
時代はGNU screenからtmuxへ – それ、Gentooだとどうなる?
tmuxというのもいいかもしれません
というのも、tmuxは特別な操作をしなくてもdetach時点での分割状態を保存してくれます
screenだとどうやれば分割状態を保存出来るのか自分は分かっていません
ただ、tmuxは現状パッケージマネージャで入れられないようなので更新が面倒ではあります
#追記終了

Linuxでは大体ターミナルから操作を行っているのですが、前からターミナルを便利に活用できるらしいscreenというのが気になっていました
screenは複数のシェルを切り替えて使えたり、分割表示したり出来るというのは知っていたので興味津々

早速インストールして実行すると普通のシェルっぽい表示です
このままだと複数のシェルを起動した時にどれを操作しているのか分からないので.screenrcを弄ります

hardstatus alwayslastline “%{= wk} %-w%{=bu dr}%n %t%{-}%+w %= %{=b wb}%y/%m/%d %{=b wb}%c”

とりあえずこれだけ書いてscreenを再起動
すると画面下部に0 bashみたいな表示になると思います(shellがbashの場合)

その状態で^a-c(又は^a-^c)と押すと0 bash 1 bashという表示になると思います(1 bashが赤文字の反転状態、そのシェルがフォーカスされている)
※^はCtrl、-は一度指を離す操作(つまり^a-cはCtrl押しながらa押下、指を離す、c押下という操作になる)

これでシェルが2つ起動している状態になります
シェルの切り替えは^a-0とかで出来ます(数字はシェルごとの番号に置き換え)

次に、screenで画面を分割してみます
^a-S(大文字のS)で画面が上下に分割されます
新たに生成された画面にはシェルがないと思うので^a-TABで画面を移動し、
^a-cしてシェルを生成するか、^a-0などして既存のシェルを割り当てます

環境(screenのビルド具合)によっては縦にも分割できます
^a-|(小文字のLではなく縦棒、いわゆるパイプなので注意)で縦に分割されます
画面の移動は同じくTABで出来ます
これで3ペイン表示とか出来るようになりました
ちなみにシェルの切り替えはvimの操作中とかでも普通に出来ます
ただし、screenのコマンド(^a-*)がvimなんかのコマンドと被らないように注意しなければなりません

さらにvimにおける画面分割も覚書
:split、:spで横分割
:vsplit、:vsで縦分割

これだけでかなり効率が上がると思います

screen

screen

カテゴリー: All   タグ: , ,   この投稿のパーマリンク

コメントをどうぞ

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>