かつてsummarye.elの設定に関する記事を書いたことがあるが、今回いくつか見直した。
display-line-numbers-modeによる行番号の表示を止めた。これをしないと行番号がsummarye由来ものと合わせて2重に行番号が表示されるからである。またサマリがポップアップする位置とサイズをshackleにより制御した。つねにframeの半分以上を占拠してポップアップするsummaryeデフォルトの挙動が不満だったからである。
(eval-when-compile (require 'summarye) (require 'view) (require 'shackle)) (declare-function View-quit "view") ;; fで当該バッファのサマリ位置にジャンプ ;; SPCでカーソル位置のサマリをプレビュー ;; nでプレビューしながら次のサマリを表示 ;; bでプレビューしながら前のサマリを表示 ;; dでサマリ一覧から削除 ;; gでリロード、削除したサマリも復活 ;; mでマーク (autoload 'se/make-summary-buffer "summarye" nil t) (autoload 'socuur "summarye" nil t) (define-key help-map "M" 'se/make-summary-buffer) (defun se/quit-summary-item () "Quit summary." (interactive) (view-mode 1) (View-quit)) (defvar summary-edit-summary-mode-hook nil) (add-hook 'summary-edit-summary-mode-hook #'(lambda () ;; 行番号の表示を止める (display-line-numbers-mode -1) (define-key summary-edit-mode-map (kbd "q") 'se/quit-summary-item))) (with-eval-after-load "shackle" (add-to-list 'shackle-rules '("^function-in-.*" :regexp t :align right :ratio 0.3)) (add-to-list 'shackle-rules '("^Items-in-.*" :regexp t :align right :ratio 0.3)))
バイトコンパイル時の警告を抑制した修正版summarye.elのコードはこちらから。