highlight-symbol 20160102.1209(in MELPA)
automatic and manual symbol highlighting

概要

シンボルのハイライトを行う昔からある highlight-symbol.el が進化しました。

  • M-x highlight-symbol でカーソル位置のシンボルをハイライト(トグル)
  • M-x highlight-symbol-mode でカーソル位置のシンボルを自動ハイライト
  • M-x highlight-symbol-query-replace でシンボル置換
  • M-x highlight-symbol-nav-mode マイナーモードでM-p/M-nでシンボル移動(NEW!)
  • カーソル位置のシンボルと同じものの個数を表示(NEW!)

とくに highlight-symbol-nav-mode によってM-p/M-nでシンボル移動できるのは
何気に便利だと思います。

元々M-p/M-nはメジャーモードにふさわしい移動のために予約されているのですが、
実際に割り当てられているモードは少ないです。
そこで、ソースコードにおいて有効にしています。

20151007051031.png
Fig1: 自動ハイライト&M-p/M-nで移動&個数表示

インストール

パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。

(package-initialize)
(setq package-archives
      '(("gnu" . "http://elpa.gnu.org/packages/")
        ("melpa" . "http://melpa.org/packages/")
        ("org" . "http://orgmode.org/elpa/")))

初めてhighlight-symbolを使う方は
以下のコマンドを実行します。

M-x package-install highlight-symbol

アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。

M-x package-install package-utils (初めてアップグレードする場合のみ)
M-x package-utils-upgrade-by-name highlight-symbol

設定 151007044121.highlight-symbol.el(以下のコードと同一)

;;; 1秒後自動ハイライトされるようになる
(setq highlight-symbol-idle-delay 1.0)
;;; 自動ハイライトをしたいならば
(add-hook 'prog-mode-hook 'highlight-symbol-mode)
;;; ソースコードにおいてM-p/M-nでシンボル間を移動
(add-hook 'prog-mode-hook 'highlight-symbol-nav-mode)
;;; シンボル置換
(global-set-key (kbd "M-s M-r") 'highlight-symbol-query-replace)

本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。