Hi Mosè,

Mosè Giordano <m...@gnu.org> writes:

> 2015-09-28 20:29 GMT+02:00 Arash Esbati <esb...@gmx.de>:
>> Thanks for looking at this, installing and updating the style.  There is
>> still one `pushnew' in the code, line 118:
>>
>> --8<---------------cut here---------------start------------->8---
>>     ((string-equal type "verbatim")
>>      (LaTeX-add-environments flt)
>>      (make-local-variable 'LaTeX-indent-environment-list)
>>      (pushnew `(,flt current-indentation)
>>                LaTeX-indent-environment-list :test #'equal)
>>      ...
>> --8<---------------cut here---------------end--------------->8---
>>
>> Is this on purpose?
>
> Of course no, thanks.

Many thanks for updating the style.  I also found a bug in the way I
used `(LaTeX-largest-level)'.  Please find attached a patch fixing the
issue and also adapting it caption.el.  I would appreciate if you could
install it.

Best, Arash

>From fcb714af8e7d5d84cbf73a99a4ae30d45af335e3 Mon Sep 17 00:00:00 2001
From: Arash Esbati <esb...@gmx.de>
Date: Mon, 5 Oct 2015 22:56:08 +0200
Subject: [PATCH] Support caption.el and some other fixes.

* style/newfloat.el (LaTeX-newfloat-auto-cleanup): Check if
`LaTeX-caption-supported-float-types' from caption.el is bound and
update it accordingly.  Fix docstring.
("newfloat"): Fix wrong check with (LaTeX-largest-level).
("newfloat"): Use `LaTeX-newfloat-key-val-options-local' and
delete redundant code.
---
 ChangeLog         |  9 +++++++++
 style/newfloat.el | 25 +++++++++++--------------
 2 files changed, 20 insertions(+), 14 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 0f9b067..61de4d3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2015-10-05  Arash Esbati  <esb...@gmx.de>
+
+	* style/newfloat.el (LaTeX-newfloat-auto-cleanup): Check if
+	`LaTeX-caption-supported-float-types' from caption.el is bound and
+	update it accordingly.  Fix docstring.
+	("newfloat"): Fix wrong check with (LaTeX-largest-level).
+	("newfloat"): Use `LaTeX-newfloat-key-val-options-local' and
+	delete redundant code.
+
 2015-10-04  Mosè Giordano  <m...@gnu.org>
 
 	* context.el (ConTeXt-Mark-version): New customizable and
diff --git a/style/newfloat.el b/style/newfloat.el
index 48cee5e..4cde32e 100644
--- a/style/newfloat.el
+++ b/style/newfloat.el
@@ -87,7 +87,7 @@
 
 (defun LaTeX-newfloat-auto-prepare ()
   "Clear `LaTeX-auto-newfloat-DeclareFloatingEnvironment' before parsing."
-  (setq	LaTeX-auto-newfloat-DeclareFloatingEnvironment nil))
+  (setq LaTeX-auto-newfloat-DeclareFloatingEnvironment nil))
 
 (defun LaTeX-newfloat-auto-cleanup ()
   "Process definded floats with \\DeclareFloatingEnvironment.
@@ -97,7 +97,9 @@ AUCTeX (\"figure\", \"table\" or \"verbatim\"), update
 loaded, add the new floating environment via
 `reftex-add-label-environments'.  For \"verbatim\" environments,
 update `LaTeX-indent-environment-list' to suppress indentation.
-Also define the macros \"listofENVs\" and \"listofENVes\"."
+If `caption.el' is loaded, add the new floating environment to
+`LaTeX-caption-supported-float-types'.  Also define the macros
+\"listofENVs\" and \"listofENVes\"."
   (dolist (flt-type (LaTeX-newfloat-DeclareFloatingEnvironment-list))
     (let ((flt  (car  flt-type))
 	  (type (cadr flt-type)))
@@ -122,6 +124,9 @@ Also define the macros \"listofENVs\" and \"listofENVes\"."
 		`((,flt ?l "lst:" "~\\ref{%s}" caption nil nil)))))
 	    (t
 	     (LaTeX-add-environments flt)))
+      (when (boundp 'LaTeX-caption-supported-float-types)
+	(add-to-list (make-local-variable 'LaTeX-caption-supported-float-types)
+		     flt))
       (if (string-equal "e" (substring flt -1))
 	  (TeX-add-symbols (concat "listof" flt "s"))
 	(TeX-add-symbols
@@ -144,7 +149,7 @@ Also define the macros \"listofENVs\" and \"listofENVes\"."
    (setq LaTeX-newfloat-key-val-options-local
 	 (copy-alist LaTeX-newfloat-key-val-options))
 
-   (if (= (LaTeX-largest-level) 1)
+   (if (< (LaTeX-largest-level) 2)
        (add-to-list 'LaTeX-newfloat-key-val-options-local
 		    '("within" ("chapter" "section" "none")))
      (add-to-list 'LaTeX-newfloat-key-val-options-local
@@ -165,15 +170,7 @@ Also define the macros \"listofENVs\" and \"listofENVes\"."
       (TeX-arg-eval completing-read
 		    (TeX-argument-prompt nil nil "Floating environment")
 		    (mapcar 'car (LaTeX-newfloat-DeclareFloatingEnvironment-list)))
-      (TeX-arg-eval
-       (lambda ()
-	 (let ((keyvals (TeX-read-key-val
-			 nil
-			 (append (if (= (LaTeX-largest-level) 1)
-				     '(("within" ("chapter" "section" "none")))
-				   '(("within" ("section" "none"))))
-				 LaTeX-newfloat-key-val-options))))
-	   (format "%s" keyvals)))))
+      (TeX-arg-key-val LaTeX-newfloat-key-val-options-local))
 
     '("ForEachFloatingEnvironment" t)
     '("ForEachFloatingEnvironment*" t)
@@ -190,7 +187,7 @@ Also define the macros \"listofENVs\" and \"listofENVes\"."
 	 (let ((keyvals (TeX-read-key-val
 			 nil
 			 (append '(("chapterlistsgap"))
-				 (if (= (LaTeX-largest-level) 1)
+				 (if (< (LaTeX-largest-level) 2)
 				     '(("within" ("chapter" "section" "none")))
 				   '(("within" ("section" "none"))))))))
 	   (format "%s" keyvals))))))
@@ -212,7 +209,7 @@ Also define the macros \"listofENVs\" and \"listofENVes\"."
    t
    (append
     '(("chapterlistsgap"))
-    (if (= (LaTeX-largest-level) 1)
+    (if (< (LaTeX-largest-level) 2)
 	'(("within" ("chapter" "section" "none")))
       '(("within" ("section" "none")))))))
 
-- 
2.6.0

_______________________________________________
auctex-devel mailing list
auctex-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/auctex-devel

Reply via email to