急遽テレワーク導入!の顛末記
「分割キーボードを疑似的に再現!「AutoHotkey」でキー割り当ての見直しも」――急遽テレワークを導入した中小企業の顛末記(107)
フリーソフトを使ってキー割り当てもカスタマイズしてみた
2022年7月25日 07:35
テレワーク中はなるべく不自由なく仕事ができるように、特にPC周りの設備を充実させてきた。私は頭痛持ちなので、モニター位置を調整するなど、作業中はなるべく首や肩に負荷がかからないように気を配っている。
……この記事を書いている時点で、東京都でまん延防止等重点措置が解除されてから123日が過ぎた。
私が勤めている新宿にある中小企業では現在、各スタッフが可能な範囲でリモートによる業務を行っている。その中で、今回は作業効率UPと身体への負荷を減らすため、キーボードまわりの環境を見直してみた。
7月15日(金):「分割キーボード」を手持ちの機材で再現できるか?
今日は原稿の締め切り日。朝からキーボードに向かって仕事をしているが、肩こりからくる頭痛がひどくて作業に集中できない。午後になると薬のおかげで痛みが引いてきたが、こういう忙しい日に頭痛に襲われると本当に困ってしまう。
肩こり対策では、以前から「分割キーボード」を購入しようか悩んでいる。これは、その名の通りに真ん中で左右半分に分離したようなキーボード。左右のキーボードの間を広く開けて置くと、肩を縮めることなくタイピングできるので、猫背になりにくく、肩への負荷が軽減できるといわれている。ただ、欲しいアイテムが2万円以上するので、なかなか手を出せずにいた。
そこで、ふと思いついて、以前に購入したゲーミング用の片手キーボードを引っ張り出してみた。こちらは、先ほどの分割キーボードの、ちょうど左半分だけを取り出したようなアイテム。主にゲーミング用に使われていて、比較的に安価に購入できるが、最近ハマっているゲームでは利用するキーが足りないので、引き出しにしまいっぱなしになっていた。
この片手キーボードを、普段から使っているキーボードの横に置くと、分割キーボードを使っている時のように、肩を縮めることなくタイピングできるようになった。分割キーボードを買う前に、まずはこのセットで肩こり軽減の効果を確かめてみることにしよう。
7月19日(火):英字配列では使いたいのに存在しないキーがある
昨日から仕事に使っている片手キーボードだが、ゲーミング用に作られているせいか、通常のキーボードとは異なる部分があった。
・「F」キーにホームポジション確認用の出っ張りがない
・「無変換」キーと「Win」キーがない
このうち、「F」キーの件については、なるべく左手を片手キーボードの上に固定しておくように意識していると、あまり気にならなくなった。ただ、英字配列のキーボードのため、2つのキーが存在しないのは正直痛い。特に、「Win」キーについては、先日の記事で音量調整のショートカットキーに指定したので、できればすぐ操作できる位置にあってほしい。
なお、この片手キーボードは日本語配列としてWindowsに認識されているため、「Esc」キーの下にある「~」キーが、「半角/全角」キーとして機能していた。ひとまず、このキーを使えば、日本語入力のオン/オフを切り替えることはできそうだが……。
7月20日(水):キー割り当ての変更で解決しようとしてみたが……
手持ちの片手キーボードでは、日本語配列だと「Winキー」がある位置に、「FNキー」がレイアウトされている。このキーを「Win」キーの代わりに使えれば、キー配列の問題を解決できるかもしれない。
Windowsではレジストリを書き換えることで、例えば「CapsLock」キーを「半角/全角」キー代わりに使う――というように、キーの割り当てを変更できる。ただ、レジストリの書き換え操作に失敗すると、Windowsの動作そのものに不具合が出る恐れがあるので、フリーソフトを利用するのが一般的だ。
今回も「KeySwap」というフリーソフトを使って、「FN」キーの割り当てを変更してみる。……いや、しようとしたのだが、割り当てを変更するキーに、「FN」キーを指定することができなかった。恐らく「FN」キーは、ほかのキーと組み合わせることで入力操作が発生するキーなので、単独では割り当てを変更することができないのだろう。
こうなると、「Win」キーは右手を乗せている通常のキーボードの方を使うしかなさそうだ。その代わりに、無駄に動作してタイピングを面倒にしている「Insert」キーの割り当てを削除しておいた。これで、タイピング中に誤ってキーを押してしまっても、入力済みの文章を消してしまうことはなくなるだろう。
7月21日(木):フリーソフト導入でキー入力を効率化してみた!
「KeySwap」で不要なキーの動作を止められたので、この機会にキーボードまわりの設定を見直すことにした。
現在使っているWindows 10では大したカスタマイズができないので、「何かいいフリーソフトはないか?」と探していたところ、「AutoHotkey」というソフトが見つかった。これならキーの割り当てを変えるだけでなく、特定のキー操作にマクロを割り当てることもできるらしい。レジストリを書き換えるのではなく、常駐して動作するので、割り当てを元に戻すのもカンタンだ。
「AutoHotkey」では各キーの動作について、スクリプトで指定するようになっているので、さっそく以下のコードを作成/保存してみた。
1::Numpad1
2::Numpad2
3::Numpad3
4::Numpad4
5::Numpad5
6::Numpad6
7::Numpad7
8::Numpad8
9::Numpad9
0::Numpad0
これは「1」~「0」までの数字キーに、キーパッドの「1」~「0」までのキーを割り当てるというもの。著者の場合、基本的に数字は半角で入力するのだが、日本語入力がオンの時に数字キーを押すと全角で表示されるので、いちいち日本語入力をオフにする必要があった。しかし、このスクリプトを有効にすれば、いちいちオン/オフの操作をしなくて済むというわけだ。
さっそく動作を確認したところ、数字キーを押すと数字が常に半角で入力されるようになった。数字を全角で入力したいときは、通知領域のアイコンからスクリプトを停止すればOK。ほかにも、一部のアプリで数字キーが反応しなくなることがあったが、そんな時でもスクリプトを停止させれば問題なかったので、安心して利用することができそうだ。
7月22日(金):コードにミスがあったので、スクリプトを見直し
あれから「AutoHotkey」を有効にしたまま作業をしていたのだが、いくつかのキー入力の操作に不具合が出た。例えば、「(」(かっこ)を入力しようと、「Shift」キー+「8」キーを押したのだが、カーソル位置には何も表示されない。ほかの数字キーでも試してみたが、どうやら「Shift」キーとの組み合わせが、まったく動作していないようだ。
その後、いろいろと調べてみたところ、どうやら「キーを押した結果を発生させる」のではなく、「キーストロークを発生させる」ためには、Sendコマンドを利用する必要があるらしい。さっそく、以下のようにコードを書き換えてみたところ、無事にカッコやシャープなどの記号を入力できるようになった。
1::Send, {Numpad1}
2::Send, {Numpad2}
3::Send, {Numpad3}
4::Send, {Numpad4}
5::Send, {Numpad5}
6::Send, {Numpad6}
7::Send, {Numpad7}
8::Send, {Numpad8}
9::Send, {Numpad9}
0::Send, {Numpad0}
最後にスクリプトファイルのショートカットを、Windowsのスタートアップフォルダに登録すれば準備完了。Windowsを起動した際に、作成したスクリプトファイルを読み込んだ状態で「AutoHotkey」が起動してくれるので、いつでもスムーズに半角数字を入力できそうだ。
これで、あくまでも疑似的にではあるが分割キーボードを再現するとともに、不要なキー入力や入力ミスを減らせるようになった。「AutoHotkey」は、ほかにもいろいろな使い方ができそうなので、引き続きテレワークでの活用法を検討していきたい。