bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#10772: 24.0.93; [patch] Convert tcl-auto-fill-mode to use define-min


From: William Stevenson
Subject: bug#10772: 24.0.93; [patch] Convert tcl-auto-fill-mode to use define-minor-mode
Date: Thu, 09 Feb 2012 06:49:19 +0000

In the documentation of auto-fill-mode it says:
"When `auto-fill-mode' is on, the `auto-fill-function' variable is
non-`nil'."
Which makes the `if' redundant in this case, the THEN & ELSE bodies can
be placed below the call to turn auto-fill-mode on/off.

Also updated the documentation to reflect the auto generated
`tcl-auto-fill-mode-hook'.


=== modified file 'lisp/progmodes/tcl.el'
--- lisp/progmodes/tcl.el       2012-01-19 07:21:25 +0000
+++ lisp/progmodes/tcl.el       2012-02-09 06:18:32 +0000
@@ -1408,13 +1408,18 @@
                     tcl-application file tcl-command-switches)
        (if and-go (switch-to-tcl t)))))))
 
-(defun tcl-auto-fill-mode (&optional arg)
-  "Like `auto-fill-mode', but sets `comment-auto-fill-only-comments'."
-  (interactive "P")
-  (auto-fill-mode arg)
-  (if auto-fill-function
-      (set (make-local-variable 'comment-auto-fill-only-comments) t)
-    (kill-local-variable 'comment-auto-fill-only-comments)))
+(define-minor-mode tcl-auto-fill-mode
+  "Like `auto-fill-mode', but sets `comment-auto-fill-only-comments'.
+Turning the mode on or off runs `tcl-auto-fill-mode-hook'."
+  :init-value nil
+  (cond ((null tcl-auto-fill-mode)
+        ;; Turn mode off
+        (auto-fill-mode 0)
+        (kill-local-variable 'comment-auto-fill-only-comments))
+       (t
+        ;; Turn mode on
+        (auto-fill-mode)
+        (set (make-local-variable 'comment-auto-fill-only-comments) t))))
 
 (defun tcl-electric-hash (&optional count)
   "Insert a `#' and quote if it does not start a real comment.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]