* bug#30131: 26.0.50; compile.el no longer calls compilation-parse-errors-filename-function
@ 2018-01-15 17:28 Gary Oberbrunner
2018-01-16 0:43 ` Noam Postavsky
0 siblings, 1 reply; 4+ messages in thread
From: Gary Oberbrunner @ 2018-01-15 17:28 UTC (permalink / raw)
To: 30131
[-- Attachment #1: Type: text/plain, Size: 1332 bytes --]
In git rev e335e1949, back in 2001,
compilation-parse-errors-filename-function was introduced to compile.el, to
postprocess filenames. Somewhere in the last few months, emacs has stopped
calling that function from compilation-find-file, so it no longer works.
(It's still called from a function that now only is used for display, so it
doesn't actually find the processed filename.)
This patch re-adds it to the new processing path:
modified lisp/progmodes/compile.el
@@ -2745,8 +2745,11 @@ compilation-find-file
;; For each directory, try each format string.
(while (and fmts (null buffer))
(setq name (expand-file-name (format (car fmts) filename) thisdir)
- buffer (and (file-exists-p name)
- (find-file-noselect name))
+ processed-name (if (boundp
'compilation-parse-errors-filename-function)
+ (funcall compilation-parse-errors-filename-function name)
+ name)
+ buffer (and (file-exists-p processed-name)
+ (find-file-noselect processed-name))
fmts (cdr fmts)))
(setq dirs (cdr dirs)))
(while (null buffer) ;Repeat until the user selects an existing
file.
By the way, I did file an emacs contributor release form some years ago.
Hope this is helpful;
Gary Oberbrunner
--
Gary
[-- Attachment #2: Type: text/html, Size: 1918 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#30131: 26.0.50; compile.el no longer calls compilation-parse-errors-filename-function
2018-01-15 17:28 bug#30131: 26.0.50; compile.el no longer calls compilation-parse-errors-filename-function Gary Oberbrunner
@ 2018-01-16 0:43 ` Noam Postavsky
2018-01-16 1:09 ` Gary Oberbrunner
0 siblings, 1 reply; 4+ messages in thread
From: Noam Postavsky @ 2018-01-16 0:43 UTC (permalink / raw)
To: Gary Oberbrunner; +Cc: 30131
Gary Oberbrunner <garyo@oberbrunner.com> writes:
> In git rev e335e1949, back in 2001,
> compilation-parse-errors-filename-function was introduced to
> compile.el, to postprocess filenames. Somewhere in the last few
> months, emacs has stopped calling that function from
> compilation-find-file, so it no longer works. (It's still called from
> a function that now only is used for display, so it doesn't actually
> find the processed filename.)
As far as I can tell, it was never called from compilation-find-file.
Not in e335e1949 that you referenced above, not in 25.3, 25.4, nor 24.3.
In all recent Emacs versions, including latest emacs-26 and master, it
is called from compilation-get-file-structure.
(defun compilation-get-file-structure (file &optional fmt)
[...]
;; If compilation-parse-errors-filename-function is
;; defined, use it to process the filename.
(when compilation-parse-errors-filename-function
(setq filename
(funcall compilation-parse-errors-filename-function
filename)))
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#30131: 26.0.50; compile.el no longer calls compilation-parse-errors-filename-function
2018-01-16 0:43 ` Noam Postavsky
@ 2018-01-16 1:09 ` Gary Oberbrunner
2018-01-16 1:16 ` Noam Postavsky
0 siblings, 1 reply; 4+ messages in thread
From: Gary Oberbrunner @ 2018-01-16 1:09 UTC (permalink / raw)
To: Noam Postavsky; +Cc: 30131
[-- Attachment #1: Type: text/plain, Size: 1412 bytes --]
My apologies. I retract this patch. I had a bug on my end that made it look
like it wasn't calling my function, or not in the right place. But I just
retested it and it works fine.
-- Gary
On Mon, Jan 15, 2018 at 7:43 PM, Noam Postavsky <
npostavs@users.sourceforge.net> wrote:
> Gary Oberbrunner <garyo@oberbrunner.com> writes:
>
> > In git rev e335e1949, back in 2001,
> > compilation-parse-errors-filename-function was introduced to
> > compile.el, to postprocess filenames. Somewhere in the last few
> > months, emacs has stopped calling that function from
> > compilation-find-file, so it no longer works. (It's still called from
> > a function that now only is used for display, so it doesn't actually
> > find the processed filename.)
>
> As far as I can tell, it was never called from compilation-find-file.
> Not in e335e1949 that you referenced above, not in 25.3, 25.4, nor 24.3.
>
> In all recent Emacs versions, including latest emacs-26 and master, it
> is called from compilation-get-file-structure.
>
> (defun compilation-get-file-structure (file &optional fmt)
> [...]
> ;; If compilation-parse-errors-filename-function is
> ;; defined, use it to process the filename.
> (when compilation-parse-errors-filename-function
> (setq filename
> (funcall compilation-parse-errors-filename-function
> filename)))
>
--
Gary
[-- Attachment #2: Type: text/html, Size: 2094 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#30131: 26.0.50; compile.el no longer calls compilation-parse-errors-filename-function
2018-01-16 1:09 ` Gary Oberbrunner
@ 2018-01-16 1:16 ` Noam Postavsky
0 siblings, 0 replies; 4+ messages in thread
From: Noam Postavsky @ 2018-01-16 1:16 UTC (permalink / raw)
To: Gary Oberbrunner; +Cc: 30131
tags 30131 notabug unreproducible
close 30131
quit
Gary Oberbrunner <garyo@oberbrunner.com> writes:
> My apologies. I retract this patch. I had a bug on my end that made
> it look like it wasn't calling my function, or not in the right
> place. But I just retested it and it works fine.
Okay, closing the bug.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-01-16 1:16 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-15 17:28 bug#30131: 26.0.50; compile.el no longer calls compilation-parse-errors-filename-function Gary Oberbrunner
2018-01-16 0:43 ` Noam Postavsky
2018-01-16 1:09 ` Gary Oberbrunner
2018-01-16 1:16 ` Noam Postavsky
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).