Ule4Jisを使って日本語IMEのままUSキーボードを使う
今回もタイトル通りの内容です。
1月に買ったThinkPad X1CGen9ですが、いろいろあって結局テレワーク専用機になってしまいました(汗
それで嫌々しかたなくWindowsが入っているSSDに換装し直し使っていますが、家とオフィスでは外付けキーボードの配列がそれぞれ異なり、さらにこのX1CはJIS配列なんですよね…
ということで、ネットの海を探し回っていたらUle4Jisなるものを見つけました。
要はJIS配列のキーボード入力を、US配列のキー入力でオーバーラップして(違ってたらすみません)US配列でキー入力が出来るようになるというものなのですが、一度起動するとアイコンがタスクバーに表示され、停止/再起動/再開なんかが行なえます。
ただ…いちいちタスクバーにtrackpoint伸ばすの面倒くさいじゃないですか…ということで、似たような発想をした先人の方がいたようです。
で、この中のスクリプトを動かすのが今回の目的なのですが…面倒くさがりなので今の今まで放置しちゃいましたテヘペロ
そんでもって、一応実行できるようにはなっていますが、どうせならショートカットキー的なもので呼び出したい… でもショートカットキーじゃ忘れやすいし、アプリによっては別な割当があったりしそう…ということで、ここに来てpowertoysの出番です。
powertoys経由で実行できるように
powertoys(v0.56.2)を起動すると、PowerToys Run
てのが左側の一覧にあるので、そこから有効化します。さらに、アクティブ化のショートカットをAlt+Space
に変更し、集中型キーボードフックを使用する
にチェック。
これで、Alt+Space
でいつでもPowなんちゃらRunを呼び出せるようになります。
で、先の先人のスクリプトをこぴぺ模写したものに、Pow(ryで呼び出しても大丈夫なように変更したのが次のもの。
@echo off cd {実行ファイルが置かれているディレクトリへのフルパス} set path_ule4jis=%CD%"\Ule4Jis.exe" tasklist | find /I "ule4jis" if %ERRORLEVEL% equ 1 ( echo "ule4jisは起動してないので起動" start %path_ule4jis% ) else ( echo "ule4jisは起動中なのでkill" taskkill /im ULE4JIS.exe )
これですが、最初に実行ファイルが置かれているディレクトリへのフルパス
を指定してあげないと、おそらくPowertoysの実行ディレクトリでバッチ処理が始まってしまうので、こうするほうが良いみたいです。
さらpath_ule4jisにの部分、これも%CD%抜きだと上記のフルパスにあるディレクトリをcmdで開くだけになるので、入れてあります。 あとは先人の恩恵を頂いておりますが…w
これで、あとはAlt+Space
でPowerToys Runを実行し、先のスクリプトを指定してあげるといちいちエクスプローラとかスタート画面からクリックしたり、ちっちゃいタスクバーのちっちゃいアイコンをクリックしたりしなくて済みます。
とまぁ、たったこれだけのために一本記事残しときますw