けんちゃんくんさんのWeb日記
2014/12/2

Amethystっていうタイル型ウィンドウマネージャが結構いけてる

これは、Pepabo Advent Calender 2014の2日目のエントリです。

1日目は鹿くんのインターネット詩ガイドでした。3日目はまだ決まっていないようです。

まとめ

2014年の年末時点では、Macのタイル型ウィンドウマネージャはAmethystがよさそう。

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

皆さんはどのようなウィンドウマネージャをお使いでしょうか?私は数年前にタイル型ウィンドウマネージャというものを知り、Awesomeに出会ってからはずっとそれを使っておりました。

ウィンドウマネージャには大きくわけて3種類があり…という説明はWikipediaにおまかせするとして、まずはなぜタイル型ウィンドウマネージャがよいのかというところからお話させていただきます。

なぜタイル型なのか

ウィンドウをきっちり配置するために、何度もウィンドウの大きさを変えたり、配置を入れ替えたり、その度に数ピクセルの隙間やずれが気になってマウスやトラックパッドに手が行ってしまう私のような人は、タイル型ウィンドウマネージャを使うと幸せになれるかもしれません。

私は、こんなかんじで開発をしています。

  • フルスクリーンのエディタやIDEでコードを書いている
  • フルスクリーンのブラウザで調べものをしたりしている
  • 画面半分のブラウザと、もう半分のターミナル or エディタでデバッグしている
  • ブラウザ、ターミナル、チャットをいいかんじに3分割して表示する

これらの配置は長時間固定されるようなものではなく、サッと切りかえたり、また戻したりというのを簡単にできないといけません。

このような使い方をしている人に、タイル型ウィンドウマネージャはとても有用です。

デモ

都合上、1画面のGIFアニメですが、もちろん外部ディスプレイを繋いでのウィンドウやフォーカスの移動も簡単にできます。

Amethyst

おすすめの設定

できることやキーバインドはREADMEに載っているので割愛しますが、mouse-follows-focusforcus-follows-mouseは設定しておくのがお勧めです。キーボードでアクティブなパネルを切りかえたときにマウスカーソルがくっついてくるのと、逆にマウスカーソルにアクティブなパネルがくっついてきます。

mod1とmod2はデフォルトだと結構複雑なコンビネーションなので、私がMacのOptionキーを使いこなせていないのもあり、optionを潰してしまっています。

また、floatingの中にはタイルに並べないアプリの識別子を書いておくと、ウィンドウのサイズに依存するアプリとかが不用意に小さくなってしまうのを防げます。

{
  "mod1": [
    "option"
  ],
  "mod2": [
    "option",
    "shift"
  ],
  "mouse-follows-focus": true,
  "focus-follows-mouse": true,
  "floating": [
    "com.apple.systempreferences",
    ...
    "com.cockos.LICEcap"
  ],
}

不満

作者が対応しないと言いきってしまっているのでどうしようもないのですが、AwesomeでいうFloating & Full Screen がないのがちょっとだけ困っています。

たとえば、左にブラウザ、右にターミナルとエディタを縦に、みたいな配置をしているときに、一瞬だけエディタだけを最大化してまたすぐ戻したいというケースが結構あります。

このときに非常に便利な機能だったのですがAmethystには追加されなさそうです。

あとは、このように綺麗に並ぶとウィンドウの影が邪魔ですよね。Yosemiteに期待しています。(諸々の事情でアップグレードできていないのです)

おわりに

なんとなくいいかんじにウィンドウを並べたい人や、毎日せっせとウィンドウをいいかんじにリサイズしている人にはタイル型ウィンドウマネージャがおすすめです。

Linuxでは沢山の選択肢がありますが、Macでは私がしっくりきたのはAmethystだけでした。ただ、他にも同じようなアプリは沢山あるので、興味がある方はぜひお試しください。

こんな人が働いているGMOペパボの新卒採用サイトがオープンしたようです。中の人もびっくりのクオリティだったので是非ご覧ください。

created_at: 2015-08-06 01:43:33 +0900
updated_at: 2015-08-06 01:43:33 +0900