macOSでネイティブな即時スペース切り替えを実現
(arhan.sh)- macOSはスペース切り替えアニメーションを無効化できない設計のため、頻繁に切り替えると遅延を体感しやすいという問題がある
- 既存の**「Reduce motion」設定やyabaiウィンドウマネージャには、それぞれ遅延が残る**、SIPの無効化が必要といった制約がある
- InstantSpaceSwitcherは、こうした制約なしにトラックパッドのスワイプを高速シミュレーションすることで即時切り替えを実現する
- SIPを無効化せずにネイティブアプリとして動作し、CLIによるスペース番号への移動機能もサポートしている
- 既存のサードパーティ製ツールの複雑さを取り除き、macOS標準環境で高速なスペース切り替えを可能にする実用的なツールである
macOSのスペース切り替え問題と既存の解決策
- macOSはスペース(Space)切り替え時のアニメーションをオフにできない設計で、頻繁に切り替えると遅さの体感が蓄積する不便さがある
- Appleはアニメーション無効化の要望を継続的に受け入れていない
- 切り替え時間が短くても、頻繁な切り替えでは体感速度の低下が発生する
- 一般的に提示される解決策は**「Reduce motion」設定だが、これはフェードイン(fade-in)**アニメーションに置き換わるため、依然として遅延が存在する
- またこの設定は、Webブラウザの**
prefers-reduced-motionメディアクエリ**を有効にしてしまい、Webアニメーションが無効化される副作用を招く
- またこの設定は、Webブラウザの**
- yabaiタイル型ウィンドウマネージャのインスタントスイッチャー機能は、OSバイナリへのパッチ適用を要求するため、**System Integrity Protection(SIP)**をオフにしなければならない
- yabaiを使う場合は標準のウィンドウマネージャを置き換える必要があり、PaperWM.spoonなどとは互換性がない
- FlashSpace、AeroSpace virtual workspacesなどのサードパーティ製仮想スペース管理ツールは、ウィンドウの非表示・表示によって切り替えを模倣する非ネイティブ実装である
- BetterTouchToolの有料機能である「Move Right/Left Space (Without Animation)」を使う方法もあるが、有料ライセンスが必要という制約がある
InstantSpaceSwitcher — ネイティブ即時スペース切り替えツール
- GitHubのjurplelが開発したInstantSpaceSwitcherは、上記の制約をすべて取り払い、即時スペース切り替えをサポートする
-
メニューバーアプリケーション**として提供され、**SIPを無効化せずに動作
- トラックパッドのスワイプを高速シミュレーションし、遅延のない切り替えを実現する
- スペース番号への直接移動機能と**コマンドラインインターフェース(CLI)**をあわせて提供する
- CLIの使用例:
.build/release/ISSCli [left|right|index <n>]- インストール手順は以下のとおり
-
- git clone https://github.com/jurplel/InstantSpaceSwitcher
- cd InstantSpaceSwitcher
- ./build.sh
-
- ビルド後はネイティブアプリケーションとして実行できる
- 現在GitHubリポジトリにはスター1件(作者本人)しか付いておらず、より多くのユーザーがこのツールを見つけて活用することが期待される
-
追加の参考情報
- instantspacesはyabaiのインスタントスイッチャーを切り出そうとした試みだったが、macOS Tahoeでは動作しない
- 何度も試したが失敗しており、InstantSpaceSwitcherのほうがより安定して動作する
- ほかに成功したユーザーがいれば、フィードバックを求めている
1件のコメント
Hacker Newsの意見
子どもの頃からこのスペース切り替えアニメーションに慣れていたので、不便だと思ったことはなかった
でも新しいMacBookを買ってから、ショートカット入力の方がシステムのフォーカス切り替えより速くて、しょっちゅう噛み合わないことに気づいた
調べてみると、自分の筋肉の記憶が間違っていたのではなく、120Hzディスプレイを使う新しいMacではアニメーション速度が実際に遅くなっていると分かった
画面を60Hzにすると以前の速度に戻る
なぜこんな変化が起きたのか、そしてなぜ5年経っても時価総額3.82兆ドルの企業が直していないのか疑問だ
関連する議論はAppleフォーラムやYouTube動画でも見られる
AppleのエンジニアはmacOSを自分で使っていないのかと思う
結局、最初のワオ効果以外には役に立たなかった
こんな基本的なUI機能がいまだに直っていないのは驚きだ
スペース切り替え中に間違ったウィンドウへキー入力が入ってしまってイライラしていたが、新しいMacBookが原因だったと今やっと分かった
本当に助かった
フレーム制限のないゲームで、フレームレートによって動きが変わるのと似た原理だと思う
Appleは本当に致命的な間違いをしていると思う
Microsoftも同じだ
良いインターフェースと合理的なデフォルトを設計すべきだが、パワーユーザーを縛ってはいけない
パワーユーザーは少数派だが、デザイン言語を発展させ、バグを見つけ、コミュニティを導く中核だ
それなのにAppleとMicrosoftは統制強化を理由にエコシステムを閉じている
その結果、ユーザーはますます使いづらさを感じている
だからこそLinuxの人気がむしろ高まっている — 完全な制御権を与えつつ、参入障壁も低くなったからだ
昔のAppleはこうしたバランスをうまく取っていたが、今は単なる支配欲に見える
悪いデザインは簡単には消えず、何十年も残る
アニメーションで無駄になる時間は、パワーユーザーだけでなく誰にとっても損だ
yabaiの話が出たので言うと、Aerospaceはぜひ試してほしい
いろいろなWMを使ってきたが、これが一番安定していた
Aerospace GitHub
デフォルト設定が良いので、何年もほとんど手を入れていない
ただ、自分はタイル型WMのパワーユーザーではない
Yabaiも検討したが、SIP(System Integrity Protection) を無効にしないと使えない機能があったのでやめた
最近仕事の都合でmacOSに移ったが、これは本当に工学の頂点ではない
自分で設定したLinuxデスクトップに慣れているせいか、macOSは遅く、設定しづらく、キーボードフレンドリーではない
さっきまで気づいていなかったが、macOSのスペース切り替えアニメーションがこんなに気に障るとは今になって分かった
macOSのこのバグのせいでFedora Asahi Remixに乗り換えた
Asahi RemixはGnomeベースで、ウィンドウ管理がずっと合理的だ
バグ動画はここ
90年代初頭のSystem 6時代からのMacユーザーだが、次のハードウェアをAppleから買うかどうかはもう分からない
macOSが自分の意思に反してアップデートを強行した直後に乗り換えた
切り替えアニメーションをなくすために高速スワイプを合成するというアイデアは本当に天才的だ
少し関連した話だが、再起動後にFinderが複数タブを復元するとき、
タブをクリックするとウィンドウが別のスペースへ突然移動する現象がある
同じウィンドウのタブ同士が別々のスペースに属していると勘違いしているようだ
最近のAppleソフトウェアのバグは、単なる例外ケースではなく、誤ったモデリング構造に由来しているように見える
このスペース切り替えハックもすごいが、昔のOS X 10.5/10.6の2Dスペースグリッドを復活させる方法があればいいのにと思う
10.7以降の線形デザインは単純すぎる
macOSからKDEへ移って、3x3の仮想デスクトップグリッドを再び手に入れたが、本当に便利だ
各デスクトップを用途別に固定しておけるし、切り替えアニメーションもフェード・スライド・速度調整など自由に設定できる
KDEはこうした柔軟な構成可能性が本当に魅力的だ
LinuxでHyperlandやNiriのような選択肢に慣れたあと、最近はOmniWMを試している
macOSを使わなければならないときも、OmniWMのおかげで何とか耐えられる
もしかすると人生が変わる体験かもしれない?