ziguzagu.org

『Emacs辞典』と今日の elisp

『Emacs辞典』かなりいい。

Emacs 辞典 (DESKTOP REFERENCE)

2週間くらい前によさげだなぁと思って買ったのに、全然開きもせず机の上に転がっていたのを、今日 .emacs いじってて何気に手を伸ばして気づいた。

基本機能の紹介から、ヌー本では取り上げられてない機能とかもあって、知らないコマンドも案の定いくつか発見。フォントと文字コードのところもわかりやすい。Meadow から coLinux で Emacs 使うようになったとき、この本持ってればあんなに苦労しなかったかも。。

あと、全体の半分近くを占めてる elisp 入門・リファレンスが、僕にはすごくいい感じ。機能ごとに解説つきで関数が網羅されてるから、どの関数使っていいかもわからないレベルの自分にはいい。

でも、関数名のインデックスがついてないので、ある程度知ってる人がリファレンスとして使うにはちょっと効率は悪いかもしれない…。まぁ、インデックス自体あんまりわかりやすくはなってないけど。

そのレベルになるにはまだまだだな。。。他人の設定かき集めてばっかり。

今日かき集めた成果はこれw

;; カーソル動かさずにスクロール
(defun scroll-up-in-place (n)
  (interactive "p")
  (previous-line n)
  (scroll-down n))
(defun scroll-down-in-place (n)
  (interactive "p")
  (next-line n)
  (scroll-up n))
(global-set-key "\M-p" 'scroll-up-in-place)
(global-set-key "\M-n" 'scroll-down-in-place)

;; using ffap
(ffap-bindings)

;; ffap perldoc
(defun ffap-cperl-mode (file)
  (let ((real-file (shell-command-to-string (concat "perldoc -lm " file))))
    (unless (string-match "No module found for " real-file)
      (substring real-file 0 -1)
      )))
(add-to-list 'ffap-alist '(cperl-mode . ffap-cperl-mode))

;; cperl-perldoc-at-point のキーバインド設定
(add-hook 'cperl-mode-hook
          (lambda ()
            (define-key cperl-mode-map "\M-." 'cperl-perldoc-at-point)))

perldoc な ffap はなぜかうまく動かず orz。perldoc されない perldoc が実行されていないっぽい。これを直せれば一人前。。。

参考

入門GNU Emacs (UNIX text processing)