4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

左右の修飾(Alt、Ctrl、Win、Shift)キーでIMEのオンとオフを切り替える

Posted at

IMEのオンとオフの切り替え

Windowsユーザーの皆さん、全角半角キーでIMEのオンとオフをトグルで切り替えていないでしょうか。
この場合、現在の入力モードがどちらになっているかをいちいち確認する必要があり、結構ストレスだったりします。
(ずっとWindowsを使っていると慣れてしまっているかもしれませんが・・・)

一方JIS配列のMacの場合、スペースバーの左右に英数キーとかなキーがあり、現在の入力モードを確認せずにIMEのオンとオフを切り替えることができます。

この記事ではWindowsでも現在の入力モードを確認せずにIMEのオンとオフを切り替える方法を解説したいと思います。

必要なソフト

AutoHotKeyというキー入力を制御するフリーソフトを使って、左右のAlt、Ctrl、Win、ShiftキーでIMEのオンとオフを切り替えられるようにします。

スクリプトファイルの書き方

AutoHotKeyのスクリプトファイルを書きます。
スクリプトファイルの拡張子はahkです。

左AltキーでIMEをオフ、右AltキーでIMEをオンにするスクリプトファイルは下記のとおりです。
(Altキーの場合のみ、カーソルがメニューに移動する挙動を無効にする処理を入れます)

alt-ime.ahk
; カーソルがメニューに移動する挙動を無効にする
*~LAlt::Send {Blind}{vk07}
*~RAlt::Send {Blind}{vk07}

; Altキーが単独で押された場合、IMEをオフにする
~LAlt Up::
if (A_PriorKey = "LAlt") {
    Send, {vkF2sc070}{vkF3sc029}
}
Return

; Altキーが単独で押された場合、IMEをオンにする
~RAlt Up::
if (A_PriorKey = "RAlt") {
    Send, {vkF2sc070}
}
Return

左CtrlキーでIMEをオフ、右CtrlキーでIMEをオンにするスクリプトファイルは下記のとおりです。

ctrl-ime.ahk

; Ctrlキーが単独で押された場合、IMEをオフにする
~LControl Up::
if (A_PriorKey = "LControl") {
    Send, {vkF2sc070}{vkF3sc029}
}
Return

; Ctrlキーが単独で押された場合、IMEをオンにする
~RControl Up::
if (A_PriorKey = "RControl") {
    Send, {vkF2sc070}
}
Return

Windowsキー、Shiftキーに割り当てる場合は、「Control」の部分をそれぞれ「Win」、「Shift」に置き換えます。

作成したahkファイルそのものかショートカットをスタートアップに登録しておくとWindows起動時に有効になります。

MacのUS配列のキーボードの場合と外付けキーボードの場合

Macでも内蔵キーボードがUS配列だったり、英数かなキーがない外付けキーボードを使う場合は、Karabiner-Elementsというフリーソフトを使えば左右の修飾キーでIMEのオンとオフを制御できます。

4
1
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
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?