From 9f15f6766b9298c2b8c514e4b9223655b1ff77a1 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Sat, 22 Dec 2007 18:39:16 +0000 Subject: [PATCH] (comment-region-default): Don't triple the comment starter if the first region line isn't indented enough. --- lisp/ChangeLog | 5 +++++ lisp/newcomment.el | 12 +++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 8ced758706b..43ee81cf12b 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2007-12-22 Richard Stallman + + * newcomment.el (comment-region-default): Don't triple the + comment starter if the first region line isn't indented enough. + 2007-12-21 Martin Rudalics * autoinsert.el (auto-insert-alist): Remove nonsensical precision diff --git a/lisp/newcomment.el b/lisp/newcomment.el index 1841b51e305..23a645d2c8c 100644 --- a/lisp/newcomment.el +++ b/lisp/newcomment.el @@ -1095,16 +1095,22 @@ The strings used as comment starts are built from ((< numarg 0) (uncomment-region beg end (- numarg))) (t (let ((multi-char (/= (string-match "[ \t]*\\'" comment-start) 1)) - indent) + indent triple) (if (eq (nth 3 style) 'multi-char) - (setq indent multi-char) + (save-excursion + (goto-char beg) + (setq indent multi-char + ;; Triple if we will put the comment starter at the margin + ;; and the first line of the region isn't indented + ;; at least two spaces. + triple (and (not multi-char) (looking-at "\t\\| ")))) (setq indent (nth 3 style))) ;; In Lisp and similar modes with one-character comment starters, ;; double it by default if `comment-add' says so. ;; If it isn't indented, triple it. (if (and (null arg) (not multi-char)) - (setq numarg (* comment-add (if indent 1 2))) + (setq numarg (* comment-add (if triple 2 1))) (setq numarg (1- (prefix-numeric-value arg)))) (comment-region-internal -- 2.39.2