「キーボード配列を自動で切り替える」といっても、何が配列を決めるかによって意味が変わります。入力しているウインドウ、前面にあるアプリやWebサイト、あるいは手元の物理キーボードのいずれかです。macOSが対応しているのは最初のひとつだけで、残りはアプリで実現します。何で配列を決めたいかに合わせて選びましょう。

すべての方法をひと目で比較

配列を決めるものmacOS標準向いている用途
ショートカットまたは入力メニュー毎回自分ではいたまに切り替える場合
書類ごと前面のウインドウはい書類ごとに言語がひとつの場合
Input Source Proアプリ、またはブラウザで開いているWebサイトいいえ(無料アプリ)キーボードは1台で、アプリごとに言語を使い分ける場合
Keyameleon入力しているキーボードいいえ(無料アプリ)印字された配列が異なる複数のキーボード
Karabiner-Elements自分で書いたルールいいえ(無料アプリ)すでにキーボードをカスタマイズしている人

標準機能:ショートカットと入力メニュー

まずシステム設定 › キーボード › テキスト入力 › 編集…で配列を追加します。そのうえで、Control Spaceで前の入力ソース、Control Option Spaceで次の入力ソースを選択できます。また、「キーボード」設定で🌐キーを入力ソースの変更に割り当てることもできます。どれも自動ではありませんが、ほかのすべての方法の土台になります。

標準機能:書類ごとの配列

同じ入力ソース設定で書類の入力ソースを自動的に切り替えるをオンにします。すると各ウインドウが最後に使った入力ソースを記憶し、そのウインドウに戻ったときにmacOSが復元します。macOSに備わっている自動切り替えはこれだけで、書類ごとにひとつの言語で書く人に向いています。

アプリ・Webサイトごと:Input Source Pro

Input Source Proは、アプリごと、そしてほとんどのブラウザではWebサイトごとに、デフォルトの入力ソースを設定できる無料・オープンソースのアプリです。ターミナルでは英語、WeChatでは中国語、特定のサイトでは日本語、といった使い方ができます。使用中の入力ソースを画面上にインジケータで表示する機能もあります。Keyameleonとの比較はこちら。

KeyboardHolderも同じ考え方のアプリで、中国語を入力する人によく使われています。アプリごとのルール、ブラウザでのドメインごとのルールに加え、Spotlight、Alfred、Raycastにも対応しています。Keyameleonとの比較はこちら。

キーボードごと:Keyameleon

US配列のMacBookとドイツ語配列の外付けキーボードのように、印字された配列が異なるキーボードを使う場合、書類もアプリも判断材料として適切ではありません。決め手はキーボードです。KeyameleonはmacOS 26以降に対応した無料・オープンソースのメニューバーアプリです。キーボードごとに入力ソースを一度割り当てておけば、どのアプリでも、そのキーボードで入力を始めたときに切り替わります。設定の手順は外付けキーボードのガイドで詳しく説明しています。

キーボードごとに切り替えるツールにはほかに、macOS 14以降で動作するKeychangeや、コマンドラインツールのautokbiswがあります。

ルール:Karabiner-Elements

Karabiner-ElementsはJSONで書いたルールでキーをリマップするツールで、ルールで入力ソースを選択することもできます。例えば、特定のキーボードからキー入力があったときなどです。もっとも柔軟な方法ですが、設定の手間ももっともかかります。詳しくはKeyameleon vs Karabiner-Elementsをご覧ください。

ルールはひとつに絞る

これらはすべて同じシステム設定を変更するため、2つを同時に使うと互いに上書きし合います。何で配列を決めるか(ウインドウ、アプリ、キーボード)を決めて、そのルールに従うツールをひとつだけ使いましょう。