Ctrl+Space(Ctrl+スペース)ショートカット占用問題の解決

概要

Ctrl+スペースキーを押すと、中国語入力システムが言語を切り替えちゃって、コード補完などのショートカットとして機能しないんだよね。調べてみたら、搜狗入力法だけの問題じゃないくて、科大訊飛(iFlytek)に変えても同じ現象が発生したよ。

解決策(完全ではない)

Microsoft IMEへの切り替え

一時的な対処療法而已。Microsoft IMEならこの問題を回避できる。でも搜狗入力法に戻すとまた同じ问题了。Microsoft IMEを使い慣れている人向けかな。自分は慣れなかったから、この方法は合わないね。

Microsoft IMEの場合:Win+Iで設定を開いて、「時刻と言語」→「言語」→「キーボード」→「入力言語のホットキー」→「詳細キー設定」で設定を変更できるよ。

戻して。

AutoHotKeyスクリプト

大まかな説明すると、^はCtrl意味で、最初の行は「Ctrl+スペースをキャプチャして、フォアグラウンドアプリケーションに送信する」になってる。二行目の+はShift意味で、Shift+スペースをキャプチャ以外、最初の行と同じ動作だね。

^Space:: Send "^ "
+Space:: Send "+ "
  1. AutoHotKey 2.0をインストール
  2. xxx.ahkファイルを作成して、右クリックで「編集」を選択
  3. 上記スクリプトを貼り付けて保存
  4. ダブルクリックで実行

重大な欠点として、常時バックグラウンドで実行し続ける必要があるよ。スタートアップに登録する必要があり、トラアイコンも隠せないっぽいのが難点だね。

レジストリ変更(未検証)

  1. 新しいテキストファイルを作成
  2. 以下の内容を貼り付け
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000010]
"Key Modifiers"=hex:00,c0,00,00
"Virtual Key"=hex:ff,00,00,00

[HKEY_CURRENT_USER\Control Panel\Input Method\Hot Keys\00000070]
"Key Modifiers"=hex:00,c0,00,00
"Virtual Key"=hex:ff,00,00,00

[HKEY_USERS\.DEFAULT\Control Panel\Input Method\Hot Keys\00000010]
"Key Modifiers"=hex:02,c0,00,00
"Target IME"=hex:00,00,00,00
"Virtual Key"=hex:ff,00,00,00

[HKEY_USERS\.DEFAULT\Control Panel\Input Method\Hot Keys\00000070]
"Key Modifiers"=hex:02,c0,00,00
"Target IME"=hex:00,00,00,00
"Virtual Key"=hex:ff,00,00,00
  1. ファイル拡張子をregに変更して、ダブルクリックでレジストリを適用

このショートカットを諦める

上記の方法はあるけど、むしろこれが一番受け入れやすい感じ。でも、こんなに頑張ったのに問題解決できないのは癪だね。レジストリ変更は試す気にならないや。とりあえずこれで妥協するか

タグ: Windows 入力法 AutoHotKey ショートカット レジストリ

7月29日 16:04 投稿