6
6

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 5 years have passed since last update.

Esc と ~ を入れ替えてノート PC 本体のキーボードとタッチパッドはオフにする (HHKB Pro2 用設定)

Posted at

Esc と ~ を入れ替える

.xmodmap
keycode   9 = grave asciitilde grave asciitilde
keycode  49 = Escape NoSymbol Escape

昔からこういうの見た時に「どうやって keycode の値だの grave asciitilde だの調べるねん?」って思ってたんですが,

xmodmap -pke

で一覧が出てくるんですね… 他にも

xmodmap -pm

で Ctrl や Alt みたいな特別なキーの名前が分かるとか.

あと xev というコマンドで keycode 調べることも出来ますね.

ちなみに .xmodmap ファイル内でのコメントは ! で始まる行らしいですよ.# とか ; じゃないです.

ノート PC のキーボードとタッチパッドをオフにする

HHKB Pro2 をノート PC に乗っけて使うとき,ノート自体に付いてるキーボードとタッチパッドを無効化しておかないと誤動作がよく起こるじゃないですか.で,本日それらをオフにする方法も知りました.

こういうの,知ってる人には当たり前なんでしょうけど知らないと知らないままで居てしまうんですよね.で知らないままでもそう大して困らないというのも困ったもんです.そもそもノートに外付けキーボードを置いて使うとかしなければいいだけですしね.

xinput disable '<device name>'
xinput enable '<device name>'

これで無効,有効の切り替え (オフとオンの切り替え) が出来ます. '<device name>' とさらっと書きましたがこいつを調べるには,

xinput --list

とすれば良いです.一覧が出てきます.

(前略)
    ↳ Topre Corporation HHKB Professional       id=10   [slave  keyboard (3)]
(後略)

例えばこう出力された場合は,'<device name>''Topre Corporation HHKB Professional' になります.ちなみに 10 と指定しても大丈夫です.

ところでなんで Topre なんでしょうか…?PFU では… 余談でした.

なお,今回に限った話ではなくキーボードをオフにするときは気をつけてやりましょう.オフにしたままになるとオンにする手立てが無くなると思います (多分).なのでテストをする際には,

sleep 0.1; xinput disable '<device name>'; sleep 5; xinput enable '<device name>'

とコマンドを叩いて,5 秒間入力を受け付けなくなることを確認しましょう.5 秒後には必ず復帰します.

最初の sleep 0.1 は,Enter の入力を受け付けてもらうためだとか何だとかだそうで.

References

なんか the old way とか書かれてるのでもしかしたら今は何か違う何かがあるのかも?最近のことは分からん…

xinput enablexinput disablexinput コマンド自身に教えてもらいました.何かミスしたときに使えるサブコマンド一覧が出てきたのです.

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?