ここ数年、開発はLinuxデスクトップ(Ubuntu)上で行うことが多く、その際ウィンドウマネージャはxmonadを使用してました。
最近になってMacで作業することが増えたのですが、マウスでウィンドウを移動するのが煩わしく、Macでもタイル型ウィンドウマネージャを使いたいな、と思って探していたらAmethystを見つけました。
タイル型ウィンドウマネージャと言うと設定やキーバインドが多い印象ですが、自分の使い方としては
- ウィンドウのレイアウトの切り替え
- ウィンドウの幅(高さ)の調整
- ウィンドウ間の移動
- メインウィンドウの切り替え
- タイリングさせないウィンドウの設定
この辺ができれば十分です。
この記事では、Amethystでの上記の設定方法をお伝えできればと思います。
ウィンドウのレイアウトの切り替え
まず、ウィンドウのレイアウトですが、Amethystでどのような種類のレイアウトが用意されているかは、公式サイトの Available Layouts
の項目に一覧が載っています:
- Tall
- Tall-Right
- Wide
- Two Pane
- 3Column-Left
- 3Column-Middle
- 3Column-Right
- Widescreen-Tall
- Fullscreen
- Column
- Row
- Floating
- Binary Space Partitioning (BSP)
- Custom (beta)
各レイアウトについての説明も記載がありますが、実際に試して自分にあったレイアウトを探すのがオススメです。自分は以下の4つを設定しています。
- Widescreen-Tall
- 8割方これを使っている
- Fullscreen
- 一つの画面で集中して作業したいとき
- Column
- 縦にウィンドウを並べたい時。あまり使わない
- Row
- 横にウィンドウを並べたい時
レイアウトの設定方法は Preference
-> Layouts
から +/- ボタンで追加/削除していきます。
また、並び順を変更することで優先順位も設定可能です。Amethyst起動時には、先頭のレイアウトが設定されます。
※↑記載の通り、設定変更後は再起動しましょう
レイアウトの切り替えは、 Prefrence
-> Shortcuts
の Cycle layout
から設定できます。
※自分のキーボードはキーバインドの設定ができるタイプなので、一つのキーで
Ctrl + Tab + Shift + Meta
同時押しになるhyper key
というキーが存在しています(Caps Lockに割り当て)。上記設定はhyper key + ↑↓
ということです。もちろん、普通にCtrlやMetaキーと合わせて設定もできます。
ウィンドウの幅(高さ)の調整
ウィンドウの幅(高さ)の調整はShortcuts
のShrink (Expand) main pane
の設定を使ってます。
ウィンドウ間の移動
ウィンドウの間の移動はShortcuts
の Move focus
で設定しています。
メインウィンドウの切り替え
自分が開発作業する際は、主に
- 左側にメインウィンドウとしてエディターを置き
- 右側に参照のためブラウザ・Slack等を開く
スタイルで作業を行っていますが、ブラウザでの作業が発生したとき(例:Github上でのアクション等)などは、ブラウザをメインウィンドウに切り替えます。
ウィンドウの切り替えには Shortcuts
のSwap focused window with main window
を使用しています。
ウィンドウ間の移動
でメインにしたいウィンドウに移動してから、切り替えする感じです。
もっといい方法があるかもしれませんが、今の所、これで十分間に合ってます
タイリングさせないウィンドウの設定
タイル型ウィンドウマネージャを使っていると、タイリングさせたくないウィンドウが出てくると思います。
自分の場合、Finder、画像のプレビュー、スマホのエミュレータ等がそうです。
例えば画像のプレビューが毎回タイリングされるとこんな感じになります:
プレビューを使うときは自由にマウスで画像を移動して見たい場合が多く、また複数画像を開くことも多いので、画像を開く度にウィンドウが占領されていってしまうと困ります。
このようなケースでは、Prefernce
-> Floating
からアプリを設定をして、アプリごとにタイリングを回避できます。
+ボタンより、アプリをFinderから選択するか、もしくはBundle IDを直接入力して選択することができます。
まとめ
xmonadは偉大(Haskellは書けない
)
Amethystの便利設定あれば、ぜひ共有お願いします
おまけ
たまに上手くレイアウトが反映されないことがあります。そういう場合はAmethystを再起動すると復活します。
再起動用のキーバインドは Preference
-> Shortcuts
-> Relaunch Amethyst
で設定可能です。