>>21
1回目のC-lはrecenterが呼ばれるがその関数はCのソース内にある
試しに見てみたら恐ろしく複雑で直接カスタマイズするのは困難と思われる
とりあえず動くのは出来たから貼っておく
(defun recenter-smooth ()
(interactive)
(let ((from (1+ (count-lines 1 (point))))
to
sub
num)
(save-excursion
(call-interactively 'move-to-window-line)
(setq to (1+ (count-lines 1 (point)))))
(setq sub (- to from))
(setq num (abs sub))
(while (> num 0)
(redisplay)
(sleep-for 0 10)
(if (>= sub 0)
(scroll-down-line)
(scroll-up-line))
(setq num (1- num)))))