Help us understand the problem. What is going on with this article?

物覚えが悪いから同時に押す

More than 3 years have passed since last update.

この記事はEmacs Advent Calendarではない

Emacsの初期化ファイルのちょっとした工夫を紹介したりする.emacs Advent Calendar 2015です!

key-chordと私

自分のTwitterログを検索してみてもkey-chordについては二度しか言及してないのだけれど、ことし一年で無くてはならない存在になったので紹介したい。

人間がコードを書くための最大の敵は自分自身であり、つまりは不器用な指と物覚えの悪い頭が制約になります。

key-chordは、複数のキーの「同時押し」に機能を割り当てることができます。指がつるような運動をする必要もなく、手軽に機能を起動することができます。

key-chordを入れるには

パッケージリポジトリとしてMELPAを登録すれば、容易に導入可能です。2015年Emacsパッケージ事情をお読みください。ヾ(〃><)ノ゙

key-chordの設定

私は以下のような設定をしてます。

init.el
;; key-chord
(use-package key-chord
  :init
  (custom-set-variables
   '(key-chord-two-keys-delay 0.02))
  (key-chord-mode t)
  (key-chord-define-global "df" 'find-function)
  (key-chord-define-global "fh" 'describe-function)
  (key-chord-define-global "fv" 'find-variable)
  (key-chord-define-global "p@" 'package-install)
  (key-chord-define-global "kl" 'align-regexp)
  (key-chord-define-global "rt" 'toggle-load-theme)
  (key-chord-define-global "wr" 'writeroom-mode)
  (key-chord-define-global "m," 'reload-major-mode))

find-variablefind-functionをkey-chordに割り当てることで、Emacs Lispのコードリーディングが抜群に捗るようになりました。

キーの選びかた

key-chordはその特性上、「同時押し」の判定は厳密ではなく、高速に打鍵すると誤爆するおそれがあります。基本は隣接するキーか、一つ空けた程度の距離を組合せるのが押しやすいですが、連続して押されやすいキーは避けた方が懸命です1。また、キーの組合せは、ある程度は機能と連想できるようにすると忘れにくくなるように感じます。

増やしすぎない

重ねて、筆者は物覚えが悪いので、一気に定義すると覚えられず破綻することは目に見えてました。なので増やしすぎないように自制して、少しづつ増やしてます。


  1. key-chordの利用を初めた当初はpackage-install"pi"に割り当ててましたが、筆者は仕事柄piを連続して打鍵することが多いのでしょっちゅう誤爆してました p(ixi)v 

tadsan
僕に警備する自宅をください。Emacs初心者。Rubyist。 全ての投稿された記事は別段の表記がない限りはCC 3.0 BY-SA https://creativecommons.org/licenses/by-sa/3.0/deed.ja で二次利用できます。 記事中に含まれる全てのコードスニペットの著作権は抛棄するので、煮るなり焼くなりお好きにどうぞ。
https://tadsan.github.io/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away