auctex-diffs
[Top][All Lists]
Advanced

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

[AUCTeX-diffs] [elpa] externals/auctex 896346a 01/17: Fix preview-latex


From: Tassilo Horn
Subject: [AUCTeX-diffs] [elpa] externals/auctex 896346a 01/17: Fix preview-latex and regression tests
Date: Fri, 2 Apr 2021 04:13:17 -0400 (EDT)

branch: externals/auctex
commit 896346a4f29823df58c67829c820597e2ebcb50e
Author: Ikumi Keita <ikumi@ikumi.que.jp>
Commit: Ikumi Keita <ikumi@ikumi.que.jp>

    Fix preview-latex and regression tests
    
    * preview.el.in (preview-query-replace-reveal): Add treatment for
    nadvice functions.
    (): Promote defvar's without value to proper defvar's to prevent
    unexpected error when external program calls preview-latex functions.
    * tests/latex/font-latex-test.el (): Add defvar for `font-lock-beg'
    and `font-lock-end' to make dynamic binding at let-binding them.
    * tests/tex/path-expansion.el: Add temporal defvar for dummy variable.
    * tests/japanese/preview-latex.el
    (japanese-preview-preserve-kanji-option2)
    (japanese-preview-preserve-kanji-option3):
    Make cleanup forms more robust.
---
 preview.el.in                   | 40 +++++++++++++++++++++++++++++-----------
 tests/japanese/preview-latex.el | 24 ++++++++++++------------
 tests/latex/font-latex-test.el  |  2 ++
 tests/tex/path-expansion.el     |  7 ++++---
 4 files changed, 47 insertions(+), 26 deletions(-)

diff --git a/preview.el.in b/preview.el.in
index c6bc8b7..efe6603 100644
--- a/preview.el.in
+++ b/preview.el.in
@@ -116,7 +116,9 @@ spec to avoid unnecessary evaluation time."
   :type preview-specs-type
   :set #'preview-specs-setter)
 
-(defvar preview-nonready-icon)
+(defvar preview-nonready-icon nil
+  "The icon used for previews to be generated.
+Suitable spec is chosen from `preview-nonready-icon-specs'.")
 
 (defcustom preview-error-icon-specs
   '((:type xpm :min 22 :file "prverr24.xpm" :ascent 90)
@@ -135,7 +137,9 @@ spec to avoid unnecessary evaluation time."
   :set #'preview-specs-setter
 )
 
-(defvar preview-error-icon)
+(defvar preview-error-icon nil
+  "The icon used for PostScript errors.
+Suitable spec is chosen from `preview-error-icon-specs'.")
 
 (defcustom preview-icon-specs
   '((:type xpm :min 24 :file "prvtex24.xpm" :ascent 75)
@@ -156,7 +160,9 @@ spec to avoid unnecessary evaluation time."
   :type preview-specs-type
   :set #'preview-specs-setter)
 
-(defvar preview-icon)
+(defvar preview-icon nil
+  "The icon used for an open preview.
+Suitable spec is chosen from `preview-icon-specs'.")
 
 (defgroup preview-latex nil "LaTeX options for preview."
   :group 'preview
@@ -1538,7 +1544,11 @@ so that they match the reference face in height."
               10.0)))
     (lambda () (/ d (preview-document-pt)))))
 
-(defvar preview-min-spec)
+(defvar preview-min-spec nil
+  "Value to filter out too large icons.
+Icon specs with :size larger than this value is not used.
+Appropriate value is determined at run time according to the
+display in use.")
 
 (defun preview-make-image (symbol)
   "Make an image from a preview spec list.
@@ -2058,7 +2068,7 @@ overlays not in the active window."
       (push ovr preview-temporary-opened))))
 
 (if (fboundp 'advice-add)               ;Emacsā‰„24.4 (or ELPA package nadvice)
-    (advice-add 'replace-highlight :before #'preview--open-for-replace)
+    nil ; See the defcustom below.
   (defadvice replace-highlight (before preview)
     (preview--open-for-replace (ad-get-arg 0) (ad-get-arg 1))))
 
@@ -2073,10 +2083,16 @@ overlays not in the active window."
   :require 'preview
   :set (lambda (symbol value)
          (set-default symbol value)
-         (if value
-             (ad-enable-advice 'replace-highlight 'before 'preview)
-           (ad-disable-advice 'replace-highlight 'before 'preview))
-         (ad-activate 'replace-highlight))
+         (if (fboundp 'advice-add) ; COMPATIBILITY for Emacs<24.4
+             (if value
+                 (advice-add 'replace-highlight :before
+                             #'preview--open-for-replace)
+               (advice-remove 'replace-highlight
+                              #'preview--open-for-replace))
+           (if value
+               (ad-enable-advice 'replace-highlight 'before 'preview)
+             (ad-disable-advice 'replace-highlight 'before 'preview))
+           (ad-activate 'replace-highlight)))
   :initialize #'custom-initialize-reset)
 
 (defun preview-relaxed-string= (&rest args)
@@ -2293,7 +2309,8 @@ kept."
 (add-hook 'kill-buffer-hook #'preview-kill-buffer-cleanup)
 (add-hook 'before-revert-hook #'preview-kill-buffer-cleanup)
 
-(defvar preview-last-counter)
+(defvar preview-last-counter nil
+  "Last counter information.")
 
 (defun preview-extract-counters (ctr)
   (setq preview-last-counter
@@ -3909,7 +3926,8 @@ This is passed through `preview-do-replacements'."
                          (choice (symbol :tag "Variable with literal string")
                                  (string :tag "non-literal regexp 
replacement")))))))
 
-(defvar preview-format-name)
+(defvar preview-format-name nil
+  "Format name when enabling preamble cache.")
 
 (defcustom preview-dump-replacements
   '(preview-LaTeX-command-replacements
diff --git a/tests/japanese/preview-latex.el b/tests/japanese/preview-latex.el
index 9b5f395..52e98c2 100644
--- a/tests/japanese/preview-latex.el
+++ b/tests/japanese/preview-latex.el
@@ -219,7 +219,7 @@ String encoded in `shift_jis' can have regexp meta 
characters in it."
   (let ((TeX-clean-confirm nil)
         ;; Make `preview-call-hook' inactive.
         (preview-image-creators nil)
-        dummyfile process)
+        dummyfile process buffer)
     (unwind-protect
         (save-window-excursion
           (find-file preserve-kanji-option)
@@ -235,11 +235,11 @@ String encoded in `shift_jis' can have regexp meta 
characters in it."
           (let ((cmd (process-command process)))
             (should (string-match "-kanji" (nth (1- (length cmd)) cmd)))))
       ;; Cleanup.
-      (accept-process-output process)
-      (set-buffer (get-file-buffer preserve-kanji-option))
-      (let* ((buffer (TeX-process-buffer-name (TeX-master-file nil t)))
-             (process (get-buffer-process buffer)))
-        (if process (delete-process process))
+      (when (processp process)
+        (setq buffer (process-buffer process))
+        (accept-process-output process)
+        (delete-process process))
+      (when (buffer-live-p buffer)
         (kill-buffer buffer))
       (TeX-clean t)
       (dolist (dir preview-temp-dirs)
@@ -253,7 +253,7 @@ String encoded in `shift_jis' can have regexp meta 
characters in it."
         ;; Make `preview-call-hook' inactive.
         (preview-image-creators nil)
         (preview-format-name "dummy")
-        dummyfile process)
+        dummyfile process buffer)
     (unwind-protect
         (save-window-excursion
           (find-file preserve-kanji-option)
@@ -269,11 +269,11 @@ String encoded in `shift_jis' can have regexp meta 
characters in it."
           (let ((cmd (process-command process)))
             (should (string-match "-kanji" (nth (1- (length cmd)) cmd)))))
       ;; Cleanup.
-      (accept-process-output process)
-      (set-buffer (get-file-buffer preserve-kanji-option))
-      (let* ((buffer (TeX-process-buffer-name (TeX-master-file nil t)))
-             (process (get-buffer-process buffer)))
-        (if process (delete-process process))
+      (when (processp process)
+        (setq buffer (process-buffer process))
+        (accept-process-output process)
+        (delete-process process))
+      (when (buffer-live-p buffer)
         (kill-buffer buffer))
       (TeX-clean t)
       (dolist (dir preview-temp-dirs)
diff --git a/tests/latex/font-latex-test.el b/tests/latex/font-latex-test.el
index 7484d03..5e5fccf 100644
--- a/tests/latex/font-latex-test.el
+++ b/tests/latex/font-latex-test.el
@@ -24,6 +24,8 @@
 (require 'ert)
 (require 'latex)
 (require 'font-latex)
+(defvar font-lock-beg)
+(defvar font-lock-end)
 
 (ert-deftest font-latex-three-dollars ()
   "Test three consecutive dollar is ignored."
diff --git a/tests/tex/path-expansion.el b/tests/tex/path-expansion.el
index 2246e92..8bce810 100644
--- a/tests/tex/path-expansion.el
+++ b/tests/tex/path-expansion.el
@@ -25,11 +25,12 @@
 
 (ert-deftest TeX-variable-truncation ()
   "Check whether list variable is not truncated as side effect."
-  (let ((var '("str1" "str2"))
+  (defvar TeX--var)
+  (let ((TeX--var '("str1" "str2"))
         (TeX-kpathsea-path-delimiter nil)
         (TeX-search-files-type-alist
-         '((abc "${dummy}" ("str2" var) TeX-file-extensions))))
+         '((abc "${dummy}" ("str2" TeX--var) TeX-file-extensions))))
     (TeX-search-files-by-type 'abc 'global)
-    (should (equal var '("str1" "str2")))))
+    (should (equal TeX--var '("str1" "str2")))))
 
 ;;; path-expansion.el ends here




reply via email to

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