changeset 40481:7b44c3509111

(paragraph-indent-minor-mode): Don't set paragraph-separate. Set paragraph-start more carefully. Set indent-line-function. (paragraph-indent-text-mode): Use it and define-derived-mode.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Tue, 30 Oct 2001 05:26:44 +0000
parents 5ebd79883369
children ec3016b59706
files lisp/textmodes/text-mode.el
diffstat 1 files changed, 4 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/textmodes/text-mode.el	Tue Oct 30 04:51:55 2001 +0000
+++ b/lisp/textmodes/text-mode.el	Tue Oct 30 05:26:44 2001 +0000
@@ -82,7 +82,7 @@
   (make-local-variable 'indent-line-function)
   (setq indent-line-function 'indent-relative-maybe))
 
-(defun paragraph-indent-text-mode ()
+(define-derived-mode paragraph-indent-text-mode text-mode "Parindent"
   "Major mode for editing text, with leading spaces starting a paragraph.
 In this mode, you do not need blank lines between paragraphs
 when the first line of the following paragraph starts with whitespace.
@@ -91,13 +91,7 @@
 \\{text-mode-map}
 Turning on Paragraph-Indent Text mode runs the normal hooks
 `text-mode-hook' and `paragraph-indent-text-mode-hook'."
-  (interactive)
-  (kill-all-local-variables)
-  (use-local-map text-mode-map)
-  (setq mode-name "Parindent")
-  (setq major-mode 'paragraph-indent-text-mode)
-  (setq local-abbrev-table text-mode-abbrev-table)
-  (set-syntax-table text-mode-syntax-table)
+  (paragraph-indent-minor-mode)
   (run-hooks 'text-mode-hook 'paragraph-indent-text-mode-hook))
 
 (defun paragraph-indent-minor-mode ()
@@ -109,8 +103,8 @@
 `paragraph-indent-text-mode-hook'."
   (interactive)
   (set (make-local-variable 'paragraph-start)
-       (default-value 'paragraph-start))
-  (set (make-local-variable 'paragraph-separate) paragraph-start)
+       (concat "[ \t\n\f]\\|" paragraph-start))
+  (set (make-local-variable 'indent-line-function) 'indent-to-left-margin)
   (run-hooks 'paragraph-indent-text-mode-hook))
       
 (defalias 'indented-text-mode 'text-mode)