連番を表示する elisp

ときどき連番を含むファイルとか書くときがあるんだけど、ある程度以上の行数になるとめんどくさいな、と。そんなわけで、下記関数を実行して *scratch* バッファからコピペする。

Emacs Lisp 的に綺麗な書き方とか知らない。

(defun numbers (from &optional to)
  (when (null to)
    (setq to from)
    (setq from 0))
  (while (< from to)
    (insert (format "%d\n" from))
    (setq from (+ from 1))))

あれ? スーパーpre記法って elisp に対応してないんだっけ?