0
0

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 1 year has passed since last update.

P2V で VirtualBox に移行したとき、US配列になってしまったけど、AutoHotkey で キーマップを JP106 にリマップしてみた件。

Last updated at Posted at 2022-05-20

物理マシンを VirtualBox に移行、、しかし、何故か キーボードが US配列に・・・

そんなつもりは無いのだけれど、何故かキーマップが US配列になってしまう事があるようです。

 ホストOS に Windows を使っていて、ゲストOS にも Windows を使っている場合、VirtualBox だけでは JP106 には変えられない:interrobang: ようです。
検索した限りでは、ホストOS に Linux を使っていると、VirtualBox 上で 変えられるよう、、
また、ゲストOS が Linux の場合にも、キーマップは 自由に指定できるよね。

 ゲストの Windows OS 上で キーボードドライバを 再インストールすれば 解決するらしいのだけれど、今回は それを AutoHotkey で回避してみた、というお話。

 ゲストOS が かなり古い Windows OS だったり、諸々の諸事情で ドライバの再インストールが出来ない場合に、さぁどうしよう〜(笑)

 物理キーの単純入替であれば、常駐ソフトを使わずとも、レジストリ指定で 入れ替え 出来ます。
ただし、US配列→JP配列の リマップ のように、Shiftキーと同時入力する文字と 入れ替えたい など複雑なことが レジストリだけでは出来ない。

そんな時にも、

AutoHotkey があれば、キーボード自由自在!:thumbsup:

 AutoHotkey をインストールしたあと、以下の内容を 拡張子 .ahk で保存して、ダブルクリックしましょう:exclamation:
タスクトレイ:bookmark_tabs:に常駐し、キーマップが JP106 に変わったはず。
右クリックで 常駐終了させると元の US配列 に戻ります。

us2jp106.ahk
sc029::vk19
@::Send,{U+0022}        ;; "
^::Send,{U+0026}        ;; &
&::Send,{U+0027}        ;; '
*::Send,{U+0028}        ;; (
(::Send,{U+0029}        ;; )
)::Send,+0
_::Send,{U+003D}        ;; =
=::Send,{U+005E}        ;; ^
+::Send,~               ;; ~
sc07D::Send,{U+005C}    ;; \
+sc07D::Send,{U+007C}   ;; |
[::Send,{U+0040}        ;; @
{::Send,{U+0060}        ;; `
]::Send,{U+005B}        ;; [
}::Send,{U+007B}        ;; {
:::Send,{U+002B}        ;; +
'::Send,{U+003A}        ;; :
"::Send,{U+002A}        ;; *
\::Send,{U+005D}        ;; ]
|::Send,{U+007D}        ;; }
sc073::Send,{U+005C}    ;; \
+sc073::Send,{U+005F}   ;; _

AutoHotkey には、他のソフトを立ち上げたり、ウィンドウを閉じたり、Windowsハンドル取得したり、他にも色々な機能があるので、興味ある人は 調べてみてください:exclamation::wink:

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?