awesomeちゅーとりある。あるいはタイル型ウインドウマネージャの勧めのようなもの

2008-12-08追記

この記事はかなり古いです。
2008-12-08のawesome(v3系)は.awesomercではなく.config/awesome/rc.luaに設定を記述するようになっており、書式もluaを使うように変わっています。
ただし、ここで取りあげるキーバインドに関しては変更がありません。
awesomeの日本語チュートリアルとしては http://projects.tsuntsun.net/~nabeken/diary/Awesome/tutorial-1.html もあります*1。あちらは最近書かれたものですので、ビルド方や設定法の最新情報を得ることが出来ます。参考にどうぞ。

タイル型ウインドウマネージャとは

常に画面を最大限に使えるよう、プログラム側が適当にウインドウを配置してくれるタイプのウインドウマネージャです。

主張

現在主流であるウインドウシステムには、重大な欠陥が存在します。
ウインドウの情報が隠されてしまう一番の要因は他のウインドウが上になってしまうことであり、我々はそこに何が書かれているかを確認するためだけにウインドウをアクティブにする必要があります。
そして他のウインドウの内容と比較するために、わざわざウインドウをマウスで動かすのです。
このような操作を強いるウインドウシステムは果たしてユーザーに優しいものなのでしょうか?

最近はまるで公然の事実のように思われていますが、ユーザビリティとは、断じて学習曲線を低く抑えることではなく、システムの詳細をユーザから隠すことでもありません。インスタント食品は手早く簡単に作れますが、美味しいものではありません。(そしてその成分を知りたいとは思いません)

http://modeemi.cs.tut.fi/~tuomov/ion/

上の引用は別種のタイル型ウインドウマネージャであるIonのマニフェストの一部を翻訳したものです。*2マウスというインスタント食品から離れ、もっと美味しいものと食べてみたいとは思いませんか?

こんな症状にお勧め

  • 上の主張にかっこいいと思っちゃうひと
  • デスクトップに物を置いていない
  • アプリケーションは最大化して使い、仮想デスクトップを駆使している
  • キーボードでの操作が主流
  • 新しいモノ好き
  • チャレンジャー

何故awesome?

現在も開発が活発であり、後発ゆえ他ソフトのいいとこどりをしています。

他のタイル型ウインドウマネージャとの比較記事はこちらを見てください。
http://d.hatena.ne.jp/tmatsuu/20071004

導入

インストールは例によって省略。

ユーザー設定ファイル作成

bzcat /usr/share/doc/awesome-1.3/awesomerc.bz2 > ~/.awesomerc

適当なエディタで開いてとりあえず下の行だけ確認。

    keys = ((("Mod4"), "Return", "spawn", "exec xterm"),

xtermをお好きなターミナルに変更。

    keys = ((("Mod4"), "Return", "spawn", "exec mlterm"),

これでとりあえず準備完了。

起動方法は各々のログインマネージャによって違うので省略…。

使い方(1)〜基本操作

とりあえず初期画面。
http://www.yaske.com/awesome_ss/awesome_01.png
おもむろにWindowsキーを押しながらEnterします。
http://www.yaske.com/awesome_ss/awesome_02.png
ターミナルが全画面で開きます。awesomeのデフォルトキーバインドは常に''Windowsキーを押しながら''になります。
もう一回Windows + Enterします。
http://www.yaske.com/awesome_ss/awesome_03.png
自動で横に2分割されてもうひとつターミナルが開きます。
なんとなく時間が気になったので見てみます。
http://www.yaske.com/awesome_ss/awesome_04.png
もうすぐ昼ごはんの時間でした。
もう一回Windows + Enterします。
http://www.yaske.com/awesome_ss/awesome_05.png
今度は縦にも分割されます。
調子にのって何回も押してみます。Windows + Enterを4回押してみました。
http://www.yaske.com/awesome_ss/awesome_06.png
左には二つまで。右に他のウインドウが詰めこまれます。そして新しいウインドウは常に左上に配置されます。
''左上に配置されたウインドウのことをメインウインドウと呼びます。''awesomeではメインウインドウを基準にして配置が決まります。

さて、よく考えたら日付が入ったSSは仕事をサボっていた動かぬ証拠になってしまいます。急いでそのウインドウをアクティブにします。
Windows + jを5回押します。
http://www.yaske.com/awesome_ss/awesome_07.png
色つきの枠が目的のウインドウまで移動しました。
ここでWindows + Shift + cを押します。
http://www.yaske.com/awesome_ss/awesome_08.png
無事閉じることが出来ました。

ポイント!!
  • ターミナルを開くときはWindows + Enter
  • 左側には2つ以上並ばない
  • 新しく開いたウインドウは常に左上。これをメインウインドウと呼ぶ
  • アクティブウインドウの切り替えは Windows + j or Windows + k
  • ウインドウを閉じるのは Windows + Shift + C

使い方(2)〜分割数の変更

昼休みになったのでネットサーフィンをしたくなりました。ターミナルでopera &と入力します。
http://www.yaske.com/awesome_ss/awesome_09.png
左上にOperaが開きました。''現在のメインウインドウはOperaです''。
ちょっと領域が狭い気がするので横幅を広げます。Windows + lを4回押します。
http://www.yaske.com/awesome_ss/awesome_10.png
ちょっと広げすぎた気がするので縮めます。Windows + hを押します。
http://www.yaske.com/awesome_ss/awesome_11.png
縦も広げたいですね。Windows + Shift + lを押します。
http://www.yaske.com/awesome_ss/awesome_12.png
うん、いい感じです。
ここでなんとなく気になったのでWindows + Ctrl + lを2回押してみました。
http://www.yaske.com/awesome_ss/awesome_13.png
右側の列が増えました。
どう考えても見にくくなっているのでWindows + Ctrl + hを2回押して戻します。
http://www.yaske.com/awesome_ss/awesome_14.png
戻りました。

ポイント!!
  • ''配置の基準は常にメインウインドウ''
  • Windows + l or Windows + hで''メインウインドウの幅を変更する''
  • Windows + Shift + l or Windows + Shift + hで''メインウインドウの下に幾つウインドウを配置するかを変更する''
  • Windows + Ctrl + l or Windows + Ctrl + hで''列数を変更する''。ただしメインウインドウの幅は変更されない。

使い方(3)〜配置変え

昼休みが終わりました。仕事に戻るフリをします。
Windows + kを二回押して仕事で使っていたターミナルをアクティブにします。
http://www.yaske.com/awesome_ss/awesome_15.png
Windows + Ctrl + Enterを押します。
http://www.yaske.com/awesome_ss/awesome_16.png
メインウインドウになりました。

ポイント!!
  • メインウインドウの切り替えはWindows + Ctrl + Enter

使い方(4)〜タグ

近くにボスが居ないのでサボることにします。Windows + jを押します。
http://www.yaske.com/awesome_ss/awesome_17.png
Operaがアクティブになりました。
しかしこれではブラウジングはしにくいです。かと言ってこれをメインウインドウにするととっさの逃げが出来ません。
こういうとき他のウインドウマネージャでは仮想デスクトップを有効に使います。
awesomeには仮想デスクトップはありませんが、同じように使えてもっと便利なタグという機能があります。
Operaがアクティブな状態でWindows + Shift + 2を押します。
http://www.yaske.com/awesome_ss/awesome_18.png
Operaが消えてしまいました。これはOperaに2番のタグが付いた状態になった為です。
Windows + 2を押します。
http://www.yaske.com/awesome_ss/awesome_19.png
全画面でOperaが出現しました。2番タグが付いたもののみ表示されるのです。ボスが着たらWindows + 1ですぐに戻ることが出来ます。
さて、サボっていたつもりでしたが、偶然にも今の仕事に使えそうなページを発見してしまいました。
こういうとき、仮想デスクトップ機能だとOperaを1番目の画面に戻したりする必要がありますが、タグならば大丈夫です。
Windows + Ctrl + 1を押してください。
http://www.yaske.com/awesome_ss/awesome_20.png
1番タグ、2番タグ両方を同時に閲覧できます。

ポイント!!
  • ''タグはとても便利''(サボリ魔に)
  • ウインドウにタグを付けるときはWindows + Shift + 1〜9
  • 閲覧中のタグを変更するときはWindows + 1〜9
  • 同時に複数のタグを見たいときはWindows + Ctrl + 1〜9
  • あるウインドウに複数のタグを付けたいときはWindows + Ctrl + Shift + 1〜9

落ち葉拾い

  • ~/.awesomercにてキーバインド変更も含めたいろんな設定が出来る
  • Windows + 左クリックで普通のウインドウマネージャっぽい状態であるフローティングが出来る
    • ウインドウ移動はWindows + 左ドラッグ。サイズ変更は Windows + 右ドラッグ。元に戻すときはWindows + 中クリック
  • Windows + Spaceでデフォルトモードを変更できる
    • メインウインドウ左配置 -> メインウインドウ右配置 -> そのウインドウのみ最大化 -> 全ウインドウフローティングモード -> 戻る

このぐらいでしょうか。

まとめ

正直タイル型ウインドウマネージャという考えかたをキーボード使いだけのものにしておくのは惜しいと思います。もっとマウス的な打ち筋があってもおかしくないような。

私はタグという考え方に強烈な感動を覚えました。
同時に「何故タブというインタフェースが駄目なのか」という答えと、先に進むべき道も見えた気がします。

ついでに、はてなだとSSをクリックしないと見れないのでこういうことにはものすごく向いてないなぁ、とかなんとか。

*1:しかしチュートリアルにしては敷居が高い気が…。

*2:最初の一文はOpen Tech Pressによるもの http://opentechpress.jp/developer/print.pl?sid=07/06/04/0131232