changeset 10669:53b3d5117779

(texinfo-environment-regexp): Match @menu and @titlepage --- they require @ends. Don't match @defunx commands; they don't. (texinfo-insert-@end): Don't put a command name after the @end if we ran off the top of the buffer looking for its mate.
author Richard M. Stallman <rms@gnu.org>
date Mon, 06 Feb 1995 03:26:35 +0000
parents acbd9fab366a
children f759e91a1654
files lisp/textmodes/texinfo.el
diffstat 1 files changed, 6 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/textmodes/texinfo.el	Sun Feb 05 08:58:27 1995 +0000
+++ b/lisp/textmodes/texinfo.el	Mon Feb 06 03:26:35 1995 +0000
@@ -399,15 +399,11 @@
 (defconst texinfo-environment-regexp
   "^@\\(f?table\\|enumerate\\|itemize\\|ifinfo\\|iftex\\|ifset\\|ifclear\
 \\|example\\|quotation\\|lisp\\|smallexample\\|smalllisp\\|display\\|format\
-\\|flushleft\\|flushright\\|ignore\\|group\\|tex\\|cartouche\\|end\
-\\|def[a-z]*\\)"
+\\|flushleft\\|flushright\\|ignore\\|group\\|tex\\|cartouche\\|menu\
+\\|titlepage\\|end\\|def[a-z]*[a-wyz]\\>\\)"
   "Regexp for environment-like Texinfo list commands.
 Subexpression 1 is what goes into the corresponding `@end' statement.")
 
-;; The following texinfo-insert-@end command not only inserts a SPC
-;; after the @end, but tries to find out what belongs there.  It is
-;; not very smart: it does not understand nested lists.
-
 (defun texinfo-insert-@end ()
   "Insert the matching `@end' for the last Texinfo command that needs one."
   (interactive)
@@ -419,9 +415,10 @@
 	    (setq depth (1+ depth))
 	  (setq depth (1- depth)))))
       (looking-at texinfo-environment-regexp)
-      (setq string
-	    (buffer-substring (match-beginning 1)
-			      (match-end 1))))
+      (if (zerop depth)
+	  (setq string
+		(buffer-substring (match-beginning 1)
+				  (match-end 1)))))
     (insert "@end ")
     (if string (insert string "\n"))))