changeset 85906:e8570ba362b2

(nroff-mode): Set comment-insert-comment-function rather than indent-line-function. (nroff-indent-line-function): Remove. (nroff-insert-comment-function): New function.
author Glenn Morris <rgm@gnu.org>
date Sat, 03 Nov 2007 03:02:00 +0000
parents 7100260421ed
children 2c822d98b133
files lisp/textmodes/nroff-mode.el
diffstat 1 files changed, 7 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/textmodes/nroff-mode.el	Sat Nov 03 03:00:32 2007 +0000
+++ b/lisp/textmodes/nroff-mode.el	Sat Nov 03 03:02:00 2007 +0000
@@ -132,7 +132,8 @@
   (set (make-local-variable 'comment-start-skip) "\\\\[\"#][ \t]*")
   (set (make-local-variable 'comment-column) 24)
   (set (make-local-variable 'comment-indent-function) 'nroff-comment-indent)
-  (set (make-local-variable 'indent-line-function) 'nroff-indent-line-function)
+  (set (make-local-variable 'comment-insert-comment-function)
+       'nroff-insert-comment-function)
   (set (make-local-variable 'imenu-generic-expression) nroff-imenu-expression))
 
 (defun nroff-outline-level ()
@@ -152,6 +153,7 @@
 	  (skip-chars-backward " \t")
 	  (if (bolp)
 	      (progn
+		;; FIXME delete-horizontal-space?
 		(setq pt (1+ pt))
 		(insert ?.)
 		1)
@@ -164,18 +166,11 @@
 			      9) 8)))))) ; add 9 to ensure at least two blanks
       (goto-char pt))))
 
-;; All this does is insert a "." at the start of comment-lines,
-;; for the sake of comment-dwim adding a new comment on an empty line.
-;; Hack! The right fix probably involves ;; comment-insert-comment-function,
-;; but comment-dwim does not call that for the empty line case.
 ;; http://lists.gnu.org/archive/html/emacs-devel/2007-10/msg01869.html
-(defun nroff-indent-line-function ()
-  "Function for `indent-line-function' in `nroff-mode'."
-  (save-excursion
-    (forward-line 0)
-    (when (looking-at "[ \t]*\\\\\"[ \t]*") ; \# does not need this
-      (delete-horizontal-space)
-      (insert ?.))))
+(defun nroff-insert-comment-function ()
+  "Function for `comment-insert-comment-function' in `nroff-mode'."
+  (indent-to (nroff-comment-indent))
+  (insert comment-start))
 
 (defun nroff-count-text-lines (start end &optional print)
   "Count lines in region, except for nroff request lines.