Google日本語入力の句読点を一発で切り替えるソフト「句読点スイッチャー」をAutoHotkeyで自作した

Featured image of the post

目次

お知らせ

Microsoft IME版を作りました↓

📄Arrow icon of a page linkMicrosoft IMEの句読点を一発で切り替えるソフト「句読点スイッチャー」をAutoHotkeyで自作した

動機

僕は7年間の高専生活でレポートや論文を「,」(カンマ)「.」(ピリオド)で書いていました。理工系学生あるあるだと思います。

しかし、普段は「、」(読点)「。」(句点)にしておかないと、ツイートやチャットやブログ執筆で不便です。

ネットの海を眺めていると、句読点をショートカットキーで切り替える機能を欲している人は多いのですが、いい方法がありませんでした。

そこで、気持ち悪いとは思いながらも、「,.」(カンマピリオド)に設定したMicrosoft IMEと「、。」(句点読点)に設定したGoogle日本語入力をCtrl+ShiftのショートカットキーでIMEごと切り替えるという雑な解決法を使い続けていました。

しかしこの方法は、種類の異なるIMEを切り替えながら使い続けることになり、独立した2つのユーザー辞書と微妙に異なる操作方法とたまに発生する干渉のような不具合に苦しめられることになります。

先ほど研究室のPCをセットアップしていたらIMEの設定を移すのに嫌気が差してきて、そういえばこれの解決ソリューションは発見されたのか?と思って調べたら下記の記事を発見しました。

この記事に触発されて、Windowsでも同様の原理で実現できるんじゃないかと試したら力技で成功したので書いておきます。

2024/05/16追記
このあと試行錯誤とAutoHotkeyのお勉強を続け、ソフトウェアとして配布可能な形にしました。
特に苦戦したのは句読点切替部ではなく、ユーザー個人がショートカットキーを設定できるようにする点です(本筋で無いところで苦戦するのはあるあるだと思いますが辛いものですね。)

2024/05/22追記

このあとMicrosoft IME版を作成し、GitHubでの自動リリース機能がとても良かったのでこちらも反映させました。

手順

Google日本語入力のインストール

ここからインストールします。

「句読点スイッチャー」の準備

GitHubの最新リリースはここから

直接ダウンロードはここから↑

上のZIPファイルをダウンロードして任意の場所で解凍します。
※ C:\Program Files など、ユーザーアカウント制御により書き込みが制限される場所は避けてください。

まず最初にSetup.batをダブルクリックして実行し、protocの関連ツールをダウンロードします。

PunctuationSwitcher.exeをダブルクリックで句読点スイッチャーが起動できます。Windowsから警告が表示されると思います。

Image in a image block

コードサイニング証明書を取得していない個人開発のソフトウェアであるため、このようにWindowsの警告が表示されます。

詳細情報から実行をクリックして実行します。

Windowsの起動時に自動起動させる場合は下記の方法でスタートアップに登録してください。

スタートアップへの登録(必要であれば)

PC起動時から実行させるのであれば、実行ファイルの右クリックメニューからショートカットを作成し、スタートアップフォルダに放り込みます。

個別ユーザーのスタートアップフォルダのパス
C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

全ユーザー共通のスタートアップフォルダのパス
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup

IME切り替えショートカットの無効化

デフォルトのショートカットキーはCtrl+Shiftにしてあります。IME切り替えのショートカットキーと重複してしまうので、IME切り替えのショートカットキーを無効化します。

Microsoft IMEを削除するのであれば、この作業は不要です。

以下はWindows11でのやり方になります。

  1. 設定から[時刻と言語] [入力] [キーボードの詳細設定]を開く
  2. [入力言語のホットキー]をクリックし、[テキストサービスと入力言語]を開く
    Image in a image block
  3. [入力言語を切り替える]を選択状態で[キーシーケンスの変更]をクリック
  4. キーボードレイアウトの切り替えで割り当てなしにチェックを入れ[OK]をクリック
    Image in a image block

Microsoft IMEの削除(必要であれば)

デフォルトのショートカットキーはCtrl+Shiftにしてあります。IME切り替えのショートカットキーと重複してしまうので、邪魔なMicrosoft IMEを削除します。上のショートカットキー無効化でも問題ないです。

ショートカットキーを別のものに変更するのであれば、この作業は不要です。

以下はWindows11でのやり方になります。

  1. 設定から[時刻と言語] [入力] [言語と地域]を開く
  2. 日本語の右にある三点リーダーから[言語のオプション]を開く
    Image in a image block
  3. Microsoft IMEの右にある三点リーダーから[削除]
    Image in a image block

使い方

Image in a image block
使用中にアイコンをクリックすると、句読点の設定を切り替えることができます。
Image in a image block
ショートカットキーでも句読点の設定を切り替えることができます。

デフォルトのショートカットキーは「Ctrl+Shift」です。

設定項目

アイコンを右クリックすることで設定が可能です。

Image in a image block

ショートカットキーの有効化

「ショートカットキーの有効化」をクリックすると、ショートカットキーの有効/無効を切り替えることができます(チェックマークで現在の状態をチェック可能)。

ショートカットキーの設定

「ショートカットキーの設定」をクリックすると、ショートカットキーの設定画面へと進みます。

Image in a image block

任意のショートカットキーを設定する場合はチェックマークを外した後に、

Image in a image block

赤枠内をクリックしてフォーカスを当て、設定したいショートカットキーを実際に押します。

Image in a image block

ショートカットキーが表示されたら、Saveボタンをクリックします(自動的に設定ウィンドウは閉じます)。

config.iniから直接編集も可能ですが、特殊なショートカットキーで登録できないなどの理由が無い限りはこの方法が楽なのでオススメです。

既知の不具合

  • 句読点切り替えを高速で連続実行すると、デコード・読み込み・エンコードのどこかで失敗しアプリが終了する

通常の使用であれば問題ないのですが、ショートカットキー長押し等によって高速実行されるとよくないみたいです。