Mac OS Xでは、キーボードショートカットで切り替えることができます。間アクティブ化された入力ソース。
切り替えることは可能ですかにCtrl-1
特定の言語ですか? 入力方法が 3 つある場合は、英語、Ctrl-2
スペイン語、ロシア語の3 つのショートカットを作成できますCtrl-3
。
答え1
考えられる最も醜い「解決策」を紹介します。
- 補助機器のサポートを有効にするシステム環境設定 » ユニバーサルアクセス、
- メニューバーに入力ソースメニューを表示するシステム環境設定 » 言語とテキスト。
- ショートカット
Ctrl-F8
が定義されていることを確認してくださいステータスメニューにフォーカスを移動でシステム環境設定 » キーボード » キーボードショートカット » キーボードとテキスト入力。 - 入力ソース メニューが、押したままドラッグして移動できる一番左のメニュー項目であることを確認します
Cmd
。
AppleScript Editor
それぞれ次のコードを含む 3 つのスクリプトを使用して記述します。
tell application "System Events"
key code 100 using control down # press Ctrl-F8
delay 0.5 # wait a bit, UI might be slow
key code 125 # press down to open the menu
keystroke "german" # name of your desired language, in my case tested using German
key code 36 # press enter
end tell
言語ごとに1回保存し、言語名を切り替えます。別のキーを押したり、異なるものを割り当てたい場合はCtrl-F8
、キーコードに置き換えます。ここ入力ソースメニューを左端の位置から移動させるには、いくつかの文字を挿入します。右矢印キーの押下。
スクリプトは、アプリケーションランチャー(Quicksilver、Launchbarなど)を使用するか、Automatorを使用してサービスにラップし、キーボードショートカットを割り当てるなど、好きな方法で呼び出すことができます。システム環境設定 » キーボード » キーボードショートカット » サービス。
答え2
切り替えたいキーボード レイアウトの名前がわかっている場合、AppleScript でもう少し良い解決策を思いつきました。次のような関数を作成します。
on changeKeyboardLayout(layoutName)
tell application "System Events" to tell process "SystemUIServer"
tell (1st menu bar item of menu bar 1 whose description is "text input") to {click, click (menu 1's menu item layoutName)}
end tell
end changeKeyboardLayout
そしてそれを
changeKeyboardLayout("English")
changeKeyboardLayout("German")
キーボード レイアウトの名前はローカライズされていることに注意してください。つまり、ドイツ語のシステムでは、上記の例では「Englisch」と「Deutsch」を呼び出す必要があります。
答え3
一つの選択肢はダウンロードすることだ入力の変更そしてシェルコマンドにショートカットを割り当てるのようにchangeInput U.S.
。
KeyRemap4MacBook を使用することもできます:
<?xml version="1.0"?>
<root>
<vkchangeinputsourcedef>
<name>KeyCode::VK_CHANGE_INPUTSOURCE_HIRAGANA</name>
<inputsourceid_equal>com.apple.inputmethod.Kotoeri.Japanese</inputsourceid_equal>
</vkchangeinputsourcedef>
<item>
<name>change_inputsources</name>
<identifier>change_inputsources</identifier>
<autogen>__KeyToKey__ KeyCode::E, VK_OPTION | ModifierFlag::NONE, KeyCode::VK_CHANGE_INPUTSOURCE_ENGLISH</autogen>
<autogen>__KeyToKey__ KeyCode::H, VK_OPTION | ModifierFlag::NONE, KeyCode::VK_CHANGE_INPUTSOURCE_HIRAGANA</autogen>
</item>
</root>
を参照してくださいprivate.xml ドキュメント。
VK_CHANGE_INPUTSOURCE_ENGLISHは以下で定義されていますvkchangeinputsourcedef.xml入力ソースのIDはEventViewer.appから確認できます。例えば、| ModifierFlag::NONE
最初の設定はoption-command-Eにも適用されます。キーコード値そして定義済み設定。
答え4
これは古い質問だとわかっています。しかし、2016年の終わりになっても、私はまだシンプルで良い解決策を見つけられませんでした。そこで、IMEショートカットは、Sierra で動作します。特定の入力方法にカスタマイズされたショートカットを割り当てることができます。ぜひお試しください。バグが見つかった場合は、喜んでお手伝いします。
また、カラビナ(KeyRemap4MacBook として知られています) は、Mac 用の優れたキーボード カスタマイザーです。ただし、少し複雑で、現在 Sierra では機能しません。Yosemite または El Capitan を使用している場合は、これも良い選択肢になります。