Programming in Emacs Lisp*1で,Emacs Lispを勉強中です。
6章まで読んだので,以下の練習問題を解いてみました。
(defun q55 (&optional arg) (interactive "P") (let (num) (if arg (setq num (prefix-numeric-value arg)) (setq num 56)) (if (> fill-column num) (message "Fill-column is greater than arg.") (message "Arg is greater than fill-column"))))
問題の中で,
「save-restriction、widen、goto-char、 point-min、buffer-substring、message及び他の関数をうまく組み合わせて使う必要がある。
とあるのですが,goto-charの使いどころが分かっていません…。
(defun q63 () (interactive) (let (head) (save-restriction (widen) (save-excursion (setq head (buffer-substring (point-min) 60)) (message "%s" head)))))
識者の皆さん,アドバイスをお願いします。