view-mode とディレクトリ変数
プロジェクトルートに、下の内容の .dir-locals.el を入れておく。 すると、プロジェクト下のファイルを開いたときに view-mode になっている。
ライブラリとかカーネルとかを読むときはありがたい。
((nil . ((eval . (view-mode 1)))))
find-file-hook にひっかけるという手もあるけど、なんでもかんでも view-mode になるのはちょっと煩わしい。
標準拡張は view-mode で読みたい
find-library
とか describe-function
でライブラリのファイルに飛ぶときに、view-mode になっているといいなあと思って設定した。
地味にありがたい存在。
(add-hook 'find-function-after-hook 'view-mode-when-el) (add-hook 'xref-after-jump-hook 'view-mode-when-el) (defun view-mode-when-el () (when (or (string-suffix-p ".el.gz" (buffer-file-name)) (string-suffix-p ".el" (buffer-file-name))) (view-mode 1)))
scheme-send-last-sexp
直前の式を評価するコマンドで、おなじみ C-x C-e
にバインドされている。
cmuscheme.el の定義を読んだら、単にプロセスに対してリージョンを送るというものだった。
save-excursion
内で一時的に前のS式に戻って、戻ったところの位置をリージョン開始にしている。なるほど。
;;; cmuscheme.el (defun scheme-send-last-sexp () "Send the previous sexp to the inferior Scheme process." (interactive) (scheme-send-region (save-excursion (backward-sexp) (point)) ;; 戻ったところのポイントをリージョン開始位置とする (point)))