LoginSignup
1
2

失われたウィンドウマネージャを追い求めて 〜Mac Amethyst編〜

Last updated at Posted at 2023-10-07

ここ数年、開発は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起動時には、先頭のレイアウトが設定されます。

スクリーンショット 2023-10-07 8.13.51.png

※↑記載の通り、設定変更後は再起動しましょう

レイアウトの切り替えは、 Prefrence -> Shortcuts の Cycle layout から設定できます。

スクリーンショット 2023-10-07 8.17.31.png

※自分のキーボードはキーバインドの設定ができるタイプなので、一つのキーでCtrl + Tab + Shift + Meta 同時押しになる hyper keyというキーが存在しています(Caps Lockに割り当て)。上記設定は hyper key + ↑↓ ということです。もちろん、普通にCtrlやMetaキーと合わせて設定もできます。

ezgif-2-6a26cff124.gif

ウィンドウの幅(高さ)の調整

ウィンドウの幅(高さ)の調整はShortcutsShrink (Expand) main pane の設定を使ってます。

スクリーンショット 2023-10-07 9.09.43.png

ezgif-2-2169371191.gif

ウィンドウ間の移動

ウィンドウの間の移動はShortcuts の Move focus で設定しています。

スクリーンショット 2023-10-07 9.26.13.png

ezgif-2-397a32d789.gif

メインウィンドウの切り替え

自分が開発作業する際は、主に

  • 左側にメインウィンドウとしてエディターを置き
  • 右側に参照のためブラウザ・Slack等を開く

スタイルで作業を行っていますが、ブラウザでの作業が発生したとき(例:Github上でのアクション等)などは、ブラウザをメインウィンドウに切り替えます。

ウィンドウの切り替えには ShortcutsSwap focused window with main windowを使用しています。

スクリーンショット 2023-10-07 10.10.30.png

ezgif-4-b0473c0a2f.gif

ウィンドウ間の移動 でメインにしたいウィンドウに移動してから、切り替えする感じです。
もっといい方法があるかもしれませんが、今の所、これで十分間に合ってます :ok_woman:

タイリングさせないウィンドウの設定

タイル型ウィンドウマネージャを使っていると、タイリングさせたくないウィンドウが出てくると思います。
自分の場合、Finder、画像のプレビュー、スマホのエミュレータ等がそうです。

例えば画像のプレビューが毎回タイリングされるとこんな感じになります:

ezgif-4-d41767a30f.gif

プレビューを使うときは自由にマウスで画像を移動して見たい場合が多く、また複数画像を開くことも多いので、画像を開く度にウィンドウが占領されていってしまうと困ります。

このようなケースでは、Prefernce -> Floatingからアプリを設定をして、アプリごとにタイリングを回避できます。

スクリーンショット 2023-10-07 10.22.10.png

+ボタンより、アプリをFinderから選択するか、もしくはBundle IDを直接入力して選択することができます。

まとめ

xmonadは偉大(Haskellは書けない :muscle: :muscle: )
Amethystの便利設定あれば、ぜひ共有お願いします :bow:

おまけ

たまに上手くレイアウトが反映されないことがあります。そういう場合はAmethystを再起動すると復活します。
再起動用のキーバインドは Preference -> Shortcuts -> Relaunch Amethyst で設定可能です。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2