auctex-diffs
[Top][All Lists]
Advanced

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

[AUCTeX-diffs] GNU AUCTeX branch, master, updated. 57147c706465942709733


From: Mosè Giordano
Subject: [AUCTeX-diffs] GNU AUCTeX branch, master, updated. 57147c70646594270973364a0130650d419c9b34
Date: Sat, 27 Feb 2016 00:31:36 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU AUCTeX".

The branch, master has been updated
       via  57147c70646594270973364a0130650d419c9b34 (commit)
      from  2e543efcc625e2e8645c934e01d3baf76b104bee (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 57147c70646594270973364a0130650d419c9b34
Author: Mosè Giordano <address@hidden>
Date:   Sat Feb 27 01:25:39 2016 +0100

    Another fix for vertical bad box warnings
    
    * tex-buf.el (TeX-parse-error): Use different regexps for horizontal and
      vertical bad boxes, they cannot be handled together.
    (TeX-warning): Do not move point when a vertical bad box has been found.
    * tests/tex/compilation-log.txt: Add a test where the parser used to
      fail to find the file for warnings after a vertical bad box warning.
    * tests/tex/error-parsing.el: Update result accordingly.

diff --git a/tests/tex/compilation-log.txt b/tests/tex/compilation-log.txt
index 3598af4..f3d2b00 100644
--- a/tests/tex/compilation-log.txt
+++ b/tests/tex/compilation-log.txt
@@ -47,6 +47,20 @@ Overfull \hbox (0.93071pt too wide) detected at line 31
  []\T1/jkpl/m/n/10.95 144
 )
 
+(./file  name/with spaces.tex
+chapter 5.
+<use image/an_image.pdf> [82] [83 <./image/an_image.pdf>] [84] [85] [86] 
(./image/another.tex
+<image/another.pdf, id=1357, 208.78pt x 146.5475pt> <use image/another.pdf>)
+<image/another2.pdf, id=1358, 542.025pt x 481.8pt> <use image/another2.pdf>
+Underfull \vbox (badness 3942) has occurred while \output is active [87 
<./image/another.pdf> <./image/another2.pdf>] [88] (./image/beta.tex
+<image/beta.pdf, id=1410, 289.08pt x 201.75375pt>
+<use image/beta.pdf>) [89] [90 <./image/beta.pdf>]
+Overfull \hbox (13.59138pt too wide) in paragraph at lines 367--368
+[]\T1/pplj/m/n/10.95 Un qua-dri-vet-to-re co-va-rian-te $\OMS/zplm/m/n/10.95 
f\OML/zplm/m/it/10.95 A[]\OMS/zplm/m/n/10.95 g$ \T1/pplj/m/n/10.95 e un 
in-sie-me di quat-tro quan-ti-ta $\OT1/zplm/m/n/10.95 (\OML/zplm/m/it/10.95 
A[]; A[]; A[]; A[]\OT1/zplm/m/n/10.95 )$
+[91] [92]
+
+[93])
+
 LaTeX Warning: There were undefined references.
 
 )
diff --git a/tests/tex/error-parsing.el b/tests/tex/error-parsing.el
index 170c8bf..2d0f282 100644
--- a/tests/tex/error-parsing.el
+++ b/tests/tex/error-parsing.el
@@ -100,7 +100,17 @@ ABD: EveryShipout initializing macros"
              ;; context of the first one.
              (bad-box "./test.lof" 31 "Overfull \\hbox (0.93071pt too wide) 
detected at line 31"
               0 "\n []\\T1/jkpl/m/n/10.95 144" "144" 31 t 1733 nil)
+             ;; The line of this warning ends with a new file opened.  This 
test
+             ;; makes sure point stays exactly at the end of the warning so 
that
+             ;; the next the next warning in the list has the right file
+             ;; (otherwise it would be nil).
+             (bad-box "./file  name/with spaces.tex" nil "Underfull \\vbox 
(badness 3942) has occurred while \\output is active [87 <./image/another.pdf> 
<./image/another2.pdf>]"
+              0 "\nUnderfull \\vbox (badness 3942) has occurred while \\output 
is active [87 <./image/another.pdf> <./image/another2.pdf>]"
+              nil nil t 2142 nil)
+             (bad-box "./file  name/with spaces.tex" 367 "Overfull \\hbox 
(13.59138pt too wide) in paragraph at lines 367--368"
+              0 "\n[]\\T1/pplj/m/n/10.95 Un qua-dri-vet-to-re co-va-rian-te 
$\\OMS/zplm/m/n/10.95 f\\OML/zplm/m/it/10.95 A[]\\OMS/zplm/m/n/10.95 g$ 
\\T1/pplj/m/n/10.95 e un in-sie-me di quat-tro quan-ti-ta $\\OT1/zplm/m/n/10.95 
(\\OML/zplm/m/it/10.95 A[]; A[]; A[]; A[]\\OT1/zplm/m/n/10.95 )$" "$"
+              368 t 2600 nil)
              (warning "./test.tex" nil "LaTeX Warning: There were undefined 
references."
-              0 "LaTeX Warning: There were undefined references.\n" nil nil 
nil 1785 nil)))))
+              0 "LaTeX Warning: There were undefined references.\n" nil nil 
nil 2667 nil)))))
 
 ;;; error-parsing.el ends here
diff --git a/tex-buf.el b/tex-buf.el
index 15e9a69..9a3662b 100644
--- a/tex-buf.el
+++ b/tex-buf.el
@@ -2328,9 +2328,12 @@ Return non-nil if an error or warning is found."
          " !\\(?:offset(\\([---0-9]+\\))\\|"
          ;; Hook to change file name
          "name(\\([^)]+\\))\\)\\|"
-         ;; LaTeX bad box
-         "^\\(\\(?:Overfull\\|Underfull\\|Tight\\|Loose\\)\
- \\\\[hv]box.*\\)\\|"
+         ;; Start of LaTeX bad box
+         "^\\(\\(?:Overfull\\|Underfull\\|Tight\\|Loose\\) "
+         ;;   Horizontal bad box
+         "\\(?:\\\\hbox.* at lines? [0-9]+\\(?:--[0-9]+\\)?$\\|"
+         ;;   Vertical bad box.  See also `TeX-warning'.
+         "\\\\vbox ([ a-z0-9]+) has occurred while \\\\output is active 
\\[[^]]+\\]\\)\\)\\|"
          ;; LaTeX warning
          "^\\(" LaTeX-warnings-regexp ".*\\)"))
        (error-found nil))
@@ -2586,8 +2589,25 @@ warning."
                     line))
 
         ;; Find the context
-        (context-start (progn (if bad-box (end-of-line)
-                                (beginning-of-line))
+        (context-start (progn (cond
+                               ((and bad-box (string-match "\\\\hbox" warning))
+                                ;; Horizontal bad box
+                                (end-of-line))
+                               (bad-box
+                                ;; Vertical bad box (by exclusion), don't move
+                                ;; point.  In the output buffer, unlike in the
+                                ;; actual *.log file, these warnings do not end
+                                ;; with "...is active []", but in the same line
+                                ;; there may be something else, including a new
+                                ;; file opened.  Thus, point shouldn't move
+                                ;; from the end of the actual bad box warning.
+                                ;; This is why the corresponding regexp in
+                                ;; `TeX-parse-error' doesn't match everything
+                                ;; until the end of the line.
+                                nil)
+                               (t
+                                ;; Generic warning.
+                                (beginning-of-line)))
                               (point)))
 
         (context (cond ((string-match LaTeX-warnings-regexp warning)
@@ -2603,11 +2623,11 @@ warning."
                                                                (point))))
 
                        ((and bad-box (string-match "\\\\vbox" warning))
-                       ;; Vertical bad boxes don't provide any additional
-                       ;; information.  In this case, reuse the `warning' as
-                       ;; `context' and don't move point, so that we avoid
-                       ;; eating the next line that may contain another
-                       ;; warning.
+                        ;; Vertical bad boxes don't provide any additional
+                        ;; information.  In this case, reuse the `warning' as
+                        ;; `context' and don't move point, so that we avoid
+                        ;; eating the next line that may contain another
+                        ;; warning.  See also comment for `context-start'.
                         (concat "\n" warning))
 
                        (t

-----------------------------------------------------------------------

Summary of changes:
 tests/tex/compilation-log.txt |   14 ++++++++++++++
 tests/tex/error-parsing.el    |   12 +++++++++++-
 tex-buf.el                    |   40 ++++++++++++++++++++++++++++++----------
 3 files changed, 55 insertions(+), 11 deletions(-)


hooks/post-receive
-- 
GNU AUCTeX



reply via email to

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