diff options
| author | Stefan Monnier | 2014-10-15 11:25:47 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2014-10-15 11:25:47 -0400 |
| commit | d7b601108d48e2508ce1bcbd5bacb2d8e0bd0f78 (patch) | |
| tree | 142b22f35b3317109c71df0a14bca02899630abd | |
| parent | ed7ebd933a5294e0f27cb49268e7b6376de36648 (diff) | |
| download | emacs-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/ChangeLog | 14 | ||||
| -rw-r--r-- | lisp/progmodes/compile.el | 20 |
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 @@ | |||
| 1 | 2014-10-15 Eli Zaretskii <eliz@gnu.org> | 1 | 2014-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 | |||
| 7 | 2014-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 |