問題の本質
Windows 7は、逆アポストロフィを使用して入力言語を切り替える待望の機能をユーザーに提供します。
![入力言語のホットキー 入力言語のホットキー](https://habrastorage.org/getpro/habr/post_images/659/23a/094/65923a094f703a40dadbdb63fd23644c.png)
便利に思えますが、ありません。 個人的には、次の欠点があります。
- 小さな鍵
- CapsLockはホームLinuxマシンで構成されます
- 文字Yは消えました
- チルダと逆アポストロフィが消えた
私のように、PuTTYを使用して開発/実稼働サーバーに行く運命にある人にとって、チルダと逆アポストロフィの損失は非常に敏感です。 Alt + 126とAlt + 96を覚えるのは簡単に思えますが、1か月は我慢できませんでした。 何かする必要があります!
スキャンコードを変更する
CapsLockでレイアウトを切り替えるためのソリューションは、レジストリを介してスキャンコードを再定義することです。 これを行う方法の多くの説明があります。 リンク: www.howtogeek.comでそれらの1つを読むことを申し出ることができます。
完成した結果は次のようになります(ファイルSwitchLangByCaps.reg):
Windowsレジストリエディターバージョン5.00 [HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Keyboard Layout] 「スキャンコードマップ」= 16進数:00.00.00.00.00.00.00.00.04.00.00.00.29.00.3a、00.3a、00.46.00.56.00 、29.00.00.00.00.00
ご覧のとおり、このタイプの1つ以上の置換ルールがレジストリに書き込まれています。
< , >< >< , >< >...
したがって、順列アルゴリズムを計画する必要があります。 最初の順列は明らかです-CapsLock(0x3a)を押して、E(0x29)のクリックをエミュレートします。 2つ目もほぼ理解できます。カプセルの機能を引き続き使用するには、不必要なキーを再割り当てする必要があります。 私の例では、このキーはScrolLock(0x46)であることが判明しました。 しかし、3番目の順列は文字Eを保存する役割を果たします。このトリッキーなコードには、テキストキーボードから「不要なキー」が必要です。一時停止/ブレークは機能しません。 しかし、ここでは幸運でした。 完全に関係するロシア語のキーボードレイアウトでさえ、重複キーがあります。
![ロシア語keyboard.png ロシア語keyboard.png](https://habrastorage.org/getpro/habr/post_images/3ad/8ef/bf9/3ad8efbf92b2179faa1a95388e5f8628.png)
左下隅にあるこのボタンは、文字Eを置き換える役割と、逆アポストロフィを使用したチルダに適しています。 スキャンコードは0x56であり、ほとんどのキーボードには存在しないため、Eボタンを押すとエミュレートされます。
この段階で、レジストリを変更し、マシンを再起動するよう送信できます。
レイアウトを追加する
ご想像のとおり、再起動後、Eの代わりにスラッシュが表示されます。 状況を修正するには、既存のキーボードレイアウトを修正する必要があります。 Microsoft Keyboard Layout Creator 1.4ユーティリティを使用して、キーボードレイアウトを編集できます。 プログラムを使用するのは難しくありません-リストからソースキーボードをロードし、変更(0x56キーの文字を必要な文字changeに変更)し、ソースファイルを保存し、プロジェクトメニューからインストールパッケージを収集します。
英語のキーボードでも同じ操作を行い、バックスラッシュの動作をバックアポストロフィとチルダに変更する必要があります。
結果は、キーボードレイアウトのインストールパッケージを含む2つのフォルダーになります。 setup.exeを起動してそれぞれをインストールし、次の手順に進みます。
レイアウトをカスタマイズする
「言語設定」を開きます。 始めるには、この記事の最初の図に示すように、Graveアクセントを設定してレイアウトを切り替えます。 次に、新しくインストールされたレイアウトを追加します:US-CustomおよびRussian-Custom。 最後に、US-Customを介してデフォルトの入力を設定します。 これは必要です。USレイアウトは削除できませんが、プラスもあります。入力言語を変更すると、トレイのアイコンサイズが変更され、CapsLockを押したり見逃した場合に気付きやすくなります。 結果は次のようになります。
![language-general.png language-general.png](https://habrastorage.org/getpro/habr/post_images/0ad/5fe/7be/0ad5fe7becf12295382463709c860e48.png)
すべてが順調に進んだ場合、CapsLockで入力言語を切り替える機会が得られます。重要な費用は一切かかりません。 オフィスと職場で同じキーボードを安全に購入でき、切り替えアルゴリズムについて考えることなく、10本指のブラインドタイピングから二重の喜びを得ることができます。
アプリ
既製のレイアウトプロジェクト、そのソース、およびレジストリへのパッチは、 Ya.Diskにあります。
ご注意
win7およびwin10でテスト済み。 10-keは既にコンパイルされたプロジェクトを使用しました。そのリンクは上記にあります。