* lisp/misc.el (duplicate-line): Add the newline to the string to be
inserted instead of inserting it separately.
This makes duplicate-line as fast as duplicate-dwim with a contiguous
region. Both could easily be made faster yet by making the code more
complex.
(interactive "p")
(unless n
(setq n 1))
- (let ((line (buffer-substring (line-beginning-position) (line-end-position))))
+ (let ((line (concat (buffer-substring (line-beginning-position)
+ (line-end-position))
+ "\n")))
(save-excursion
(forward-line 1)
(unless (bolp)
(insert "\n"))
(dotimes (_ n)
- (insert line "\n")))))
+ (insert line)))))
(declare-function rectangle--duplicate-right "rect" (n))