hitode909の日記

以前はプログラミング日記でしたが、今は子育て日記です

anything-iswitchb-setupがdefine-keyしてるのに気づかず困っていた

anything.elを、どこかのブログのエントリを見て、こう設定していたのだけど、なぜかC-n,C-pで候補を選択できなくて、困っていた。

  (define-key anything-map "\C-p" 'anything-previous-line)
  (define-key anything-map "\C-n" 'anything-next-line)
  (define-key anything-map "\C-v" 'anything-next-page)
  (define-key anything-map "\M-v" 'anything-previous-page)
  (anything-iswitchb-setup)


anything.elを起動するといろいろリストが出て、矢印キーだとそこから選択できるのに、C-n, C-pだとこう言われる。

End of history; no default available


Messageを見ると、anything-next-lineが呼ばれてほしいところで、anything-next-history-elementが呼ばれてた。

anything-next-history-element: End of history; no default available [209 times]


anything-next-history-elementでanything.elを検索すると、anything-iswitchb-setup内でキーバインドが上書きされてた。

  (define-key anything-map (kbd "C-p") 'anything-previous-history-element)
  (define-key anything-map (kbd "C-n") 'anything-next-history-element)


anything-iswitchb-setupをコメントアウトするか、anything-iswitchb-setupしたあとにdefine-keyするようにしたら、C-n,C-pで選択できるようになった。
そもそも、anything-iswitchb-setupが何してくれるか知らずに使っていたので、反省しようと思って、コメントアウトしておいた。


今後は使う前にソースを読むようにしたいですね。