特定の文字を常に半角で入力する方法

スペースやテンキーからの数字。それに加えて、かっこ () も常に半角で入力したい。

そのための設定をしていきます。

スペース

スペースは、 Google 日本語入力 の設定で変更できます。

プロパティを選択
プロパティを選択

  • タスクバーの Google 日本語入力アイコンを右クリック
  • プロパティ を選択

スペースの入力 → 半角を選択
スペースの入力 → 半角を選択

  • スペースの入力半角 に変更

テンキーからの数字

テンキーからの数字も、同じ画面で設定できます。

テンキーからの入力 → 半角を選択
テンキーからの入力 → 半角を選択

  • テンキーからの入力半角 に変更

その他の文字

問題は、IME のプロパティにない文字です。たとえば () を常に半角にしたい場合は、AutoHotkey を使います。

方法

AutoHotkey は、キー入力を別の操作に置き換えられるツールです。

今回は次の流れを AutoHotkey にやらせます。

  • Shift + 8 を押す
  • IME を半角にする
  • Shift + 8 を入力する
  • IME を元の状態に戻す

準備

AutoHotkey 本体の導入は、 AutoHotkey の導入方法 を参照してください。

これだけでは IME の変更ができないので、追加で IME.ahk を用意します。

  • eamat @Cabinet - IME制御 から IME20121110.zip をダウンロード
  • ZIP の中にある IME.ahk を取り出す
  • これから作る .ahk ファイルと同じフォルダーに置く

IME.ahk の中には動作確認用のコードが書かれているため、その部分は削除するか、/* */ で囲んでコメントにしてください。

設定

メモ帳を開いて、以下のように書きます。

#Include IME.ahk

#UseHook
+8::
ime_mode := IME_GET()
IME_SET(0)
Send, +8
IME_SET(ime_mode)
Return

+9::
ime_mode := IME_GET()
IME_SET(0)
Send, +9
IME_SET(ime_mode)
Return
#UseHook Off

+8Shift + 8+9Shift + 9 の意味です。別の文字を常に半角にしたい場合は、この部分を変更します。

UseHook は、今回のように「受け取るキー」と「送るキー」が同じ場合の無限ループを避けるために使っています。

あとは 好きな名前.ahk で保存して、ダブルクリックで起動すれば完了です。