>>39
ボヨーンじゃなくてボヨンだな
(defun recenter-smooth ()
(interactive)
(catch 'end
(while t
(let* ((sub (- (save-excursion
(move-to-window-line nil)
(line-number-at-pos))
(line-number-at-pos)))
(num (abs sub)))
(if (zerop num) (throw 'end t))
(dotimes (_ (+ num (min 8 (/ num 2))))
(redisplay)
(condition-case nil
(scroll-down (/ sub num))
(beginning-of-buffer
(throw 'end nil))))))))