panco’s blog

興味が沸いたことを書く

HHKBのUS配列で [Shift] + [Delete] のショートカットキーを作った(Windows)

HHKBのキーボードを使って1か月ぐらい経つ。なんかかっこつけて、US配列にしてしまった。意外と普通に使えたが、一つだけ気に入らないことがあったので、その問題と対処を書いておく。
絶対もっとスマートなやり方があるはず・・・

前提

  • 使っているキーボード
    • HHKB HYBRID Type-S US配列
  • DIPスイッチ状態
    • ON: SW1, 3, 4, 6
    • OFF: SW2, 5
  • OS
  • 生まれてこの方 Windowsユーザー、US配列もお初

問題

[Shift] + [Delete] のショートカットキーが使えない

ごみ箱を経由せずにファイルとかを消すショートカットキー。

こういうやつ

前提に書いた通り、SW3をONにしている。つまり Delete Key を "Back Space" として機能させている。 この場合、"Delete" は [Fn] + [Del] (一番右上のやつ) で機能する。すると、ファイルとかを完全に削除したい場合のショートカットキーは、[Shift] + [Fn] + [Del] になる。

今までより押すキーが1個増えてしまったではないか!

だから何だという話だが、私はどうも気に入らなかった。ファンクションキーは意地でも押したくない。そしてさくっと設定してやろうと思ったが、意外と検索しても出てこない(調べ方が悪いのか?)。あれこれやっているうちに、夜が朝に負けて逃げていった。ということで、結果的に以下の対処で解消した。

対処

AutoHotkey でショートカットキーを独自に割り当てる

www.autohotkey.com

AutoHotkey なるものをインストールし、リファレンスを見ながらスクリプトを書いたらできた。

; Shift+BSにShift+Fn+Delを割当て
+BS::Send, +{sc053}

これだけ。たったこれだけ。。。

これで、[Shift] + [Delete(BS)] を押せば、[Shift] + [Fn] + [Del] 押した時と同じ挙動になる。つまり、ファンクションキーを押さずに操作できる!

+BS::

+ → Shift
BS → Back Space
:: → 作法

Send, +{sc053}

Send, → 記号とスキャンコードをつなげて書くときの作法
{sc053} → Delete ([Fn]+[Del]) のスキャンコード(Keymillで調べた)

感想

冒頭にも書いたけど、絶対他のやり方あるだろ・・・