NEWChainYourMac 2.1 をリリースしました

macOSのための、スクロール型ウィンドウマネージャー。

すべてのウィンドウが、果てしなく続く1本のストリップの上に横並びで並びます。LinuxのPaperWMやniriと同じしくみです。ウィンドウが重なることも、別のウィンドウの裏に隠れることもなく、アプリをもうひとつ開いても他のウィンドウは縮みません。あとはスクロールするだけです。

買い切り。ライセンスは無期限。macOS 13以降、Appleシリコン搭載Macに対応。

動画ではなく、実際に動くChainYourMacの模型です。タイトルバーをドラッグして並べ替え、Dockのアイコンをクリックしてアプリを開き、赤いボタンでウィンドウを閉じられます。実際のアプリでは、各キーと一緒に ⌃⌥ を押します。このデモはどちらの押し方にも反応します。

縮めずにスクロールする、macOSのタイル型ウィンドウマネージャー。

yabai、Amethyst、AeroSpaceのようなグリッド型のタイリングは、アプリを開くたびに画面を分割し直すので、ウィンドウはどんどん小さくなっていきます。ChainYourMacはスクロール型のタイリングウィンドウマネージャーです。各ウィンドウは、ディスプレイの端を越えて続く横長のストリップ上の1つの列になります。新しいウィンドウは今使っているウィンドウの隣に開き、他のウィンドウはサイズを保ったままです。

グリッド型タイリング

新しいウィンドウが開くたびに、同じ画面がさらに細かく分割されます。

ChainYourMac

伸びるのはストリップのほう。どのウィンドウも、設定した幅のままです。

新しいウィンドウは、フォーカス中のウィンドウの隣に

アプリを起動すると、そのウィンドウは今使っていたウィンドウのすぐ隣に収まります。すべてのウィンドウがストリップ上に自分の場所を持っているので、重なったり、別のウィンドウの裏に埋もれたりしません。

ストリップがフォーカスについてくる

キーボードでフォーカスを移動するか、トラックパッドをスワイプします。ストリップは、そのウィンドウが見える位置までちょうどよくスクロール。キーを押した瞬間に動き出すスプリングアニメーションです。

明日もレイアウトはそのまま

列の順番、幅、スタックは再起動後も元どおりに戻ります。ディスプレイごと、操作スペースごとに専用のストリップがあるので、仕事のウィンドウとチャットが混ざることはありません。

Mac版PaperWM、macOS版niriを、ネイティブアプリで。

Mac版のPaperWMやmacOS版のniriを探していたなら、これは同じスクロール型のモデルをMacの流儀で仕上げたアプリです。設定ファイルの代わりに設定ウインドウ、指の動きにそのままついてくるトラックパッドのスワイプ、そしてSIPの変更は不要。下の図はすべて実際に動くので、キーを押してみてください。

スタック

1つの列に複数のウィンドウを重ねて置けます。ウィンドウを左右どちらかの列に取り込んだり、また取り出したり、スタックの中で並べ替えたり、どのウィンドウの高さも変えられます。

タブ付きの列

それぞれのウィンドウを縦いっぱいに使いたいときは、スタックをタブにまとめましょう。ショートカット1つで列をスタック表示とタブ表示に切り替えられ、タブバーで列の中身がひと目でわかります。

プリセット幅

25、33、50、66、75%など、自分で選んだ幅を順番に切り替えたり、少しずつ広げたり狭めたりできます。全幅表示と中央寄せは、それぞれキー1つです。

すき間の設定と、Dockを避けるレイアウト

ウィンドウ同士の間隔と画面端の余白を、ゼロまで自由に設定できます。ウィンドウはDockを避けてサイズが決まるので、Dockの下に隠れることはありません。

MacBook

外部ディスプレイ

マルチモニター:ディスプレイごとに1本のストリップ

ディスプレイごとに専用のストリップがあり、フォーカスもスクロール位置もそれぞれ独立しています。列は隣の画面にはみ出さず、画面の端にぴったり揃います。ショートカット1つで、フォーカス中のウィンドウを次のディスプレイへ送れます。また、Configuration → Displays で、特定のディスプレイだけChainYourMacをオフにすることもできます。そのディスプレイのウィンドウは置いた場所から動かないので、プレゼン用の画面や縦置きのモニターに向いています。

指の動きについてくるトラックパッドスワイプ

3本指または4本指でスワイプすると、ストリップが指の動きに1対1でついてきて、いちばん近い列でぴたりと止まります。このページのデモの上で横にスクロールして、感触を確かめてみてください。

バージョン2.1のその他の機能

ストリップのミニマップ
移動中にストリップの小さな地図が現れて現在地を示し、そのあとすっと消えます。
フォーカス枠と減光
フォーカス中のウィンドウを囲む枠と、それ以外のウィンドウを暗くする表示を、必要に応じて使えます。どちらもオンにするまではオフです。
中央寄せモード
フォーカス中の列を中央に置くかどうかを、「しない」「ストリップが画面からはみ出すときだけ」「常に」から選べます。
ドラッグで並べ替え
ウィンドウを別の列の上にドラッグすると、ストリップがそれに合わせて並び替わります。
セッション復元とログイン時の起動
列の順番とスタックは、再起動しても並びが崩れずに残ります。Macの起動と同時にアプリを立ち上げ、自動でタイリングを始めることもできます。
フォーカスを奪わない
バックグラウンドのアプリがウィンドウを開いても、フォーカスを奪ったりストリップをスクロールさせたりしません。
スマートなフローティング
計算機のようなサイズ固定のウィンドウは、自動的にフローティング表示になります。ChainYourMac自身の設定ウインドウも同じです。
アプリごとのウィンドウルール
タイリングしたくないアプリはフローティングに、特定のアプリにはストリップ上の決まった位置を。アプリは一覧から選ぶだけです。
フォーカスがマウスに追従
マウスがフォーカスに追従する設定とあわせて、オプションで使えます。どちらも初期設定はオフです。
はじめてガイドとMac Setup
最初の起動時に、ストリップの使い方と覚えておきたい5つのショートカットを手短に案内します。Mac SetupはmacOSの設定をチェックし、RectangleやMagnetなど、ほかのウィンドウマネージャーやスナップ系アプリが動いていれば知らせてくれます。
ショートカットは自由に変更可能
すべてのショートカットを変更でき、1つの操作に複数のキーを割り当てられます。キーの記録はUS配列以外のキーボードにも対応しています。
設定はすぐに反映
すき間、幅、キーを変えると、その場で画面に反映されます。保存ボタンも再起動もありません。
ネイティブのフルスクリーンには干渉しない
ウィンドウをmacOSのフルスクリーン表示にすると、ChainYourMacはその邪魔をしません。
自動化
chainyourmac:// URLスキーム、Raycastのスクリプトコマンド、コマンドラインツールを用意しています。
自動アップデート
新しいバージョンは、Macで定番のアップデート機構Sparkleで届きます。
自己修復するエンジン
万一エンジンが止まっても、アプリが再起動します。何が起きたかはエンジンログで確認できます。

すべての操作に、ショートカットを。

新規インストールでは、control + option(⌃⌥)にVimキーまたは矢印キーを組み合わせた設定が初期値です。⌥単体はmacOSのために空けてあります。単語単位の移動や、ç や ® のような文字の入力に使われるからです。お使いのキーボードで組み合わせを押すと、ここのキーが光ります。

移動

フォーカスを移動⌃⌥HJKL
または矢印キー⌃⌥←↓↑→
最初/最後のウィンドウ⌃⌥⌘←→
ウィンドウを移動⌃⌥⇧+ 同じキー
次のディスプレイへ送る⌃⌥N
ウィンドウマネージャーを停止⌃⌥Q

サイズ

幅を切り替え⌃⌥R
全幅⌃⌥F
列を中央へ⌃⌥C
広く/狭く⌃⌥=-
高く/低く⌃⌥⇧=-
高さを揃える⌃⌥0

スタック

左の列にスタック⌃⌥]
右の列にスタック⌃⌥[
右へ取り出す⌃⌥⇧]
左へ取り出す⌃⌥⇧[
タブ付きの列⌃⌥⇧T
フローティングの切り替え⌃⌥T

これは新規インストール時の初期設定です。すべてのショートカットは割り当てを変更でき、1つの操作に複数のキーを設定できます。キーの記録はAZERTY、QWERTZ、Dvorak配列でも使えます。以前のバージョンからアップグレードした場合は、ショートカットはそのまま引き継がれます。アプリのShortcutsページから、ワンクリックで新しい設定に切り替えられます。niriから乗り換える方は、niri for Macガイドと、niriの全キーバインドとChainYourMacの対応表(英語)をどうぞ。

正真正銘のMacアプリ。見た目はSwiftUI、中身はRust。

ウィンドウエンジンはRustで書かれ、小さなバックグラウンドプロセスとして動作します。アニメーションは垂直同期(vsync)に合わせたスプリングで、キーを押した瞬間に動き出します。ショートカットもエンジンが直接処理するので、ストリップ上の移動は即座に反応します。

目に見えるアプリはネイティブのSwiftUI製です。メニューバーの項目と、すべての項目をGUIで操作できる設定ウインドウでできています。Electronもウェブビューも使っておらず、覚えるべき設定ファイルもありません。必要な権限はアクセシビリティの1つだけ。macOSでウィンドウマネージャーがウィンドウを動かすには、この権限を使うしかないからです。

  • 動作環境macOS 13 Ventura以降
  • 対応MacAppleシリコン(M1以降)
  • セキュリティAppleの公証済み、Developer IDで署名
  • 権限アクセシビリティのみ
  • プライバシーアカウント不要、アプリからの利用データ送信なし
  • ライセンス買い切り、無期限

一度買えば、ずっと使える。

サブスクリプションもアカウントも不要です。

無期限ライセンス · Mac 1台

$19.99

買い切り。アップデートはずっと無料。

  • ChainYourMac 2.1のすべての機能:スクロールするストリップ、スタック、タブ付きの列、トラックパッドスワイプ、マルチモニター
  • 今後のアップデートもすべて、自動でお届け
  • 新しいMacへのライセンス移行はいつでも自由に
  • 開発者本人によるメールサポート

macOS 13 Ventura以降、Appleシリコン搭載Macが必要です。決済はDodo Paymentsが行います(決済ページは英語です)。

ご購入後の返金は一切お受けしていません(利用規約・英語)。購入前に動作要件を必ずご確認ください。

複数のMacで使いたいときも、同じ無期限ライセンスを1つのキーでまとめて。

よくある質問

スクロール型ウィンドウマネージャーとは?

ウィンドウを決まったグリッドに押し込むのではなく、画面の端を越えて続く横長のストリップに横並びで配置するのが、スクロール型ウィンドウマネージャーです。トラックパッドのジェスチャーやキーボードショートカットでストリップをスクロールして移動し、各ウィンドウは設定したサイズを保ちます。新しいアプリを開いても、他のウィンドウが縮んだり並び替わったりすることはありません。

ChainYourMacは、Mac版のPaperWMやniriのようなものですか?

はい、まさにそれがコンセプトです。PaperWM(GNOME)とniri(Wayland)は、Linuxでスクロール型のウィンドウ管理を多くの人に愛されるものにしました。ChainYourMacは同じモデルを、作り込まれたネイティブアプリとしてmacOSに持ち込みます。SwiftUIのインターフェース、Rustのエンジン、指の動きについてくるトラックパッドスワイプ、そしてすべての設定にGUI。Hammerspoonのスクリプトも設定ファイルも必要ありません。

RectangleやMagnet、またはyabaiやAeroSpaceのようなタイル型マネージャーとは何が違いますか?

RectangleとMagnetは、ウィンドウをスナップさせるアプリです。ウィンドウを1つずつ操作する必要があり、レイアウトを保ってはくれません。yabai、Amethyst、AeroSpaceのようなタイル型マネージャーはレイアウトを保ちますが、それはグリッドの形でです。新しいウィンドウが開くたびに、他のウィンドウがリサイズされます。

ChainYourMacは、グリッドを使わずにレイアウトを保ちます。ウィンドウは果てしないストリップの上でサイズを保ち、あなたはスクロールするだけ。タイル型ウィンドウマネージャーの自動化はそのままに、作業中の画面が勝手に組み替わることのない落ち着きが手に入ります。

何台のMacで使えますか?

標準ライセンスはMac 1台用で、価格は$19.99です。もっと多くのMacで使う場合は、3台用($49.99)、5台用($79.99)、20台用($299.99)の無期限ライセンスもあります。また、先にアプリ内でディアクティベートすれば、いつでもアクティベーションを別のMacに移せます。

対応しているmacOSのバージョンは?

ChainYourMacは、Appleシリコン搭載Mac(M1以降)のmacOS 13 Ventura以降に対応しています。Intelプロセッサ搭載のMacには対応していません。Appleの公証を受け、Developer IDで署名された普通のアプリです。カーネル拡張もシステムの改変もなく、(一部のタイル型マネージャーとは違って)SIPを無効にする必要もありません。

なぜアクセシビリティの権限が必要なのですか?

macOSでは、他のアプリのウィンドウを移動・リサイズできるのはアクセシビリティAPIを通じた場合だけです。そのためChainYourMacが動作するにはこの権限が必要です。Rectangle、Magnet、その他すべてのウィンドウマネージャーが求めるのと同じ権限で、アプリが求める権限はこれだけです。処理はすべてお使いのMacの中で完結し、画面の内容を読み取ったり、どこかにデータを送信したりすることはありません。

複数のモニターや操作スペースでも使えますか?

はい。ディスプレイごとに独立したストリップがあり、フォーカスとスクロール位置もそれぞれ別です。ウィンドウは隣の画面にはみ出さず、画面の端にぴったり揃います。キー操作1つで、フォーカス中のウィンドウを次のディスプレイに送ることもできます。Configuration → Displays で任意のディスプレイだけChainYourMacをオフにすることもでき、そのディスプレイのウィンドウは置いた場所から動きません。macOSの操作スペースにも対応していて、操作スペースごとに別々のストリップのレイアウトが保たれます。

Macの動作が重くなりませんか?

重くはならないはずです。エンジンはRustで書かれた小さなバックグラウンドプロセスで、ウィンドウに変化があるか、ショートカットが押されるまでは待機しています。アプリのどこにもElectronやWebランタイムは使われていません。

購入後、アプリとライセンスはどうやって受け取りますか?

決済はDodo Paymentsが行います。購入後すぐにダウンロード(一般的な.dmgファイル)が手に入り、ライセンスキーがメールで届きます。キーをアプリに入力すれば完了です。新しいMacに移るときは、古いMacのアプリ内でライセンスをディアクティベートしてから、新しいMacでアクティベートしてください。サポートにメールしていただければ、こちらで対応することもできます。

うまく動かないときは?

まずはセットアップガイド(英語)をご覧ください。問題の多くはmacOSの設定が原因で、特に、macOSがデスクトップの切り替えにも使っているトラックパッドのスワイプが原因になりがちです。それでも解決しない場合は、症状とmacOSのバージョンを添えてサポートまでメールしてください。権限、マルチモニター構成、アプリごとの癖など、ほとんどの問題はすぐに解決できます。返信は開発者本人からお送りします。

ウィンドウの並べ直しは、もう終わり。
これからはスクロールで。

買い切り。アップデートはずっと無料。macOS 13以降、Appleシリコン搭載Macに対応。