aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Monnier2014-10-15 11:25:47 -0400
committerStefan Monnier2014-10-15 11:25:47 -0400
commitd7b601108d48e2508ce1bcbd5bacb2d8e0bd0f78 (patch)
tree142b22f35b3317109c71df0a14bca02899630abd
parented7ebd933a5294e0f27cb49268e7b6376de36648 (diff)
downloademacs-d7b601108d48e2508ce1bcbd5bacb2d8e0bd0f78.tar.gz
emacs-d7b601108d48e2508ce1bcbd5bacb2d8e0bd0f78.zip
* lisp/progmodes/compile.el (compilation--previous-directory): Simplify.
(compilation-next-error): Ensure the parse before we look at compilation-message property.
-rw-r--r--lisp/ChangeLog14
-rw-r--r--lisp/progmodes/compile.el20
2 files changed, 16 insertions, 18 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index f2e2d8b96f2..9b6d532decb 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,13 +1,17 @@
12014-10-15 Eli Zaretskii <eliz@gnu.org> 12014-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
2 2
3 * simple.el (what-cursor-position): Update to support the new bidi 3 * progmodes/compile.el (compilation--previous-directory): Simplify.
4 characters. 4 (compilation-next-error): Ensure the parse before we look at
5 compilation-message property.
6
72014-10-15 Eli Zaretskii <eliz@gnu.org>
5 8
9 * simple.el (what-cursor-position):
6 * descr-text.el (describe-char): Update to support the new bidi 10 * descr-text.el (describe-char): Update to support the new bidi
7 characters. 11 characters.
8 12
9 * emacs-lisp/tabulated-list.el (tabulated-list-mode): Force 13 * emacs-lisp/tabulated-list.el (tabulated-list-mode):
10 bidi-paragraph-direction to 'left-to-right'. This fixes 14 Force bidi-paragraph-direction to 'left-to-right'. This fixes
11 buffer-menu display when the first buffer happens to start with 15 buffer-menu display when the first buffer happens to start with
12 R2L letter. 16 R2L letter.
13 17
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 5d3b6878a70..ee066f4c56c 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -969,19 +969,12 @@ POS and RES.")
969 (cons (copy-marker pos) (if prev (copy-marker prev)))) 969 (cons (copy-marker pos) (if prev (copy-marker prev))))
970 prev) 970 prev)
971 ((and prev (= prev cache)) 971 ((and prev (= prev cache))
972 (if cache 972 (set-marker (car compilation--previous-directory-cache) pos)
973 (set-marker (car compilation--previous-directory-cache) pos)
974 (setq compilation--previous-directory-cache
975 (cons (copy-marker pos) nil)))
976 (cdr compilation--previous-directory-cache)) 973 (cdr compilation--previous-directory-cache))
977 (t 974 (t
978 (if cache 975 (set-marker cache pos)
979 (progn 976 (setcdr compilation--previous-directory-cache
980 (set-marker cache pos) 977 (copy-marker prev))
981 (setcdr compilation--previous-directory-cache
982 (copy-marker prev)))
983 (setq compilation--previous-directory-cache
984 (cons (copy-marker pos) (if prev (copy-marker prev)))))
985 prev)))) 978 prev))))
986 (if (markerp res) (marker-position res) res)))) 979 (if (markerp res) (marker-position res) res))))
987 980
@@ -2286,6 +2279,7 @@ looking for the next message."
2286 (or (compilation-buffer-p (current-buffer)) 2279 (or (compilation-buffer-p (current-buffer))
2287 (error "Not in a compilation buffer")) 2280 (error "Not in a compilation buffer"))
2288 (or pt (setq pt (point))) 2281 (or pt (setq pt (point)))
2282 (compilation--ensure-parse pt)
2289 (let* ((msg (get-text-property pt 'compilation-message)) 2283 (let* ((msg (get-text-property pt 'compilation-message))
2290 ;; `loc', `msg', and `last' are used by the compilation-loop macro. 2284 ;; `loc', `msg', and `last' are used by the compilation-loop macro.
2291 (loc (and msg (compilation--message->loc msg))) 2285 (loc (and msg (compilation--message->loc msg)))
@@ -2298,7 +2292,8 @@ looking for the next message."
2298 (line-beginning-position))) 2292 (line-beginning-position)))
2299 (unless (setq msg (get-text-property (max (1- pt) (point-min)) 2293 (unless (setq msg (get-text-property (max (1- pt) (point-min))
2300 'compilation-message)) 2294 'compilation-message))
2301 (setq pt (next-single-property-change pt 'compilation-message nil 2295 (setq pt (compilation-next-single-property-change
2296 pt 'compilation-message nil
2302 (line-end-position))) 2297 (line-end-position)))
2303 (or (setq msg (get-text-property pt 'compilation-message)) 2298 (or (setq msg (get-text-property pt 'compilation-message))
2304 (setq pt (point))))) 2299 (setq pt (point)))))
@@ -2309,7 +2304,6 @@ looking for the next message."
2309 "No more %ss yet" 2304 "No more %ss yet"
2310 "Moved past last %s") 2305 "Moved past last %s")
2311 (point-max)) 2306 (point-max))
2312 (compilation--ensure-parse pt)
2313 ;; Don't move "back" to message at or before point. 2307 ;; Don't move "back" to message at or before point.
2314 ;; Pass an explicit (point-min) to make sure pt is non-nil. 2308 ;; Pass an explicit (point-min) to make sure pt is non-nil.
2315 (setq pt (previous-single-property-change 2309 (setq pt (previous-single-property-change