--- old/newcomment.el 2008-01-08 21:44:45.000000000 +0100 +++ new/newcomment.el 2008-03-02 16:45:34.000000000 +0100 @@ -679,9 +679,9 @@ (defun comment-kill (arg) "Kill the comment on this line, if any. With prefix ARG, kill comments on that many lines starting with this one." - (interactive "P") + (interactive "p") (comment-normalize-vars) - (dotimes (_ (prefix-numeric-value arg)) + (dotimes (_ arg) (save-excursion (beginning-of-line) (let ((cs (comment-search-forward (line-end-position) t))) @@ -691,8 +691,10 @@ (setq cs (point)) (comment-forward) (kill-region cs (if (bolp) (1- (point)) (point))) - (indent-according-to-mode)))) - (if arg (forward-line 1)))) + (indent-according-to-mode) + (comment-kill 1)))) + (setq arg (1- arg)) + (when (< 0 arg) (forward-line 1)))) (defun comment-padright (str &optional n) "Construct a string composed of STR plus `comment-padding'. Diff finished. Sun Mar 2 16:45:53 2008