Package: emacs;
Reported by: Magnus Henoch <magnus.henoch <at> gmail.com>
Date: Mon, 25 Jun 2012 11:25:02 UTC
Severity: normal
Tags: patch
Found in version 24.1.50
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: help-debbugs <at> gnu.org (GNU bug Tracking System) To: Magnus Henoch <magnus.henoch <at> gmail.com> Subject: bug#11777: closed (Re: bug#11777: 24.1.50; Format strings for filenames in compilation-error-regexp-alist don't work) Date: Wed, 24 Apr 2013 13:57:09 +0000
[Message part 1 (text/plain, inline)]
Your bug report #11777: 24.1.50; Format strings for filenames in compilation-error-regexp-alist don't work which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 11777 <at> debbugs.gnu.org. -- 11777: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11777 GNU Bug Tracking System Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Stefan Monnier <monnier <at> iro.umontreal.ca> To: Magnus Henoch <magnus.henoch <at> gmail.com> Cc: 11777-done <at> debbugs.gnu.org Subject: Re: bug#11777: 24.1.50; Format strings for filenames in compilation-error-regexp-alist don't work Date: Wed, 24 Apr 2013 09:51:28 -0400> (with-current-buffer > - (compilation-find-file > + (apply > + 'compilation-find-file > marker > (caar (compilation--loc->file-struct loc)) > - (cadr (car (compilation--loc->file-struct loc)))) > + (cadr (car (compilation--loc->file-struct loc))) > + (compilation--file-struct->formats (compilation--loc->file-struct loc))) Looks eminently reasonable, applied, thank you! And sorry for the ridiculous delay, Stefan
[Message part 3 (message/rfc822, inline)]
From: Magnus Henoch <magnus.henoch <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 24.1.50; Format strings for filenames in compilation-error-regexp-alist don't work Date: Mon, 25 Jun 2012 12:01:46 +0100Add a new regexp for compilation-mode: (add-to-list 'compilation-error-regexp-alist-alist (cons 'erlang-eunit (list "^ *\\([^.:( \t\n]+\\):\\([0-9]+\\):.*\\.\\.\\." ;; file (list 1 "%s.erl" "src/%s.erl" "test/%s.erl") ;; line 2 ;; column nil ;; type 0 ))) (add-to-list 'compilation-error-regexp-alist 'erlang-eunit) Create a new file, /tmp/foo.txt, and enter the following line: foo:954: all_test_...ok Switch foo.txt into compilation-mode with M-x compilation-mode. Create the file /tmp/src/foo.erl. In foo.txt, hit RET on the now highlighted line. Expected result: switch to the foo.erl buffer. Actual result: prompt for file to open, default being "foo". This patch seems to fix the problem: diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index 61dc371..d9dd1c0 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el @@ -2344,10 +2344,12 @@ This is the value of `next-error-function' in Compilation buffers." ;; (setq timestamp compilation-buffer-modtime))) ) (with-current-buffer - (compilation-find-file + (apply + 'compilation-find-file marker (caar (compilation--loc->file-struct loc)) - (cadr (car (compilation--loc->file-struct loc)))) + (cadr (car (compilation--loc->file-struct loc))) + (compilation--file-struct->formats (compilation--loc->file-struct loc))) (let ((screen-columns ;; Obey the compilation-error-screen-columns of the target ;; buffer if its major mode set it buffer-locally. If Emacs crashed, and you have the Emacs process in the gdb debugger, please include the output from the following gdb commands: `bt full' and `xbacktrace'. For information about debugging Emacs, please read the file /Applications/Emacs.app/Contents/Resources/etc/DEBUG. In GNU Emacs 24.1.50.1 (x86_64-apple-darwin10.8.0, NS apple-appkit-1038.36) of 2012-05-17 on poki-sona.local Windowing system distributor `Apple', version 10.3.1038 Configured using: `configure '--with-ns' '--without-rsvg'' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: nil value of $XMODIFIERS: nil locale-coding-system: nil default enable-multibyte-characters: t Major mode: Emacs-Lisp Minor modes in effect: diff-auto-refine-mode: t jabber-activity-mode: t shell-dirtrack-mode: t ido-everywhere: t show-paren-mode: t display-time-mode: t server-mode: t tooltip-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Recent input: c o m p i l a t <return> C-x k <return> C-x b u t i p <return> M-x c o m p i l e <return> <return> C-x o <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> <return> C-g C-g q C-x k <return> C-x b e s h e <return> g i t SPC <backspace> <backspace> <backspace> <backspace> s t a s h SPC p o p <return> C-x b <return> M-x e v a l - b u f <return> C-x b C-g q C-x o M-x <up> <up> <return> <return> <down> <down> C-x o C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n <return> C-g q C-x b c a p <backspace> <backspace> <backspace> d o t e m <return> <down> <down> <down> <down> <down> <down> <down> <down> <down> C-c ' <up> C-e C-x C-e <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> C-x C-e C-n C-e C-x C-e C-c ' <up> <up> <up> C-x o C-x k * c o m <return> M-x c o m p l <backspace> i l e <return> <return> SPC C-x o <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> <return> C-g q C-x b c o m p i l e <return> C-x v = <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> <down> C-c C-c y e s <return> C-M-x C-x b <return> C-x k <return> C-x b u t i p <return> M-x c o m p i l e <return> <return> C-x o C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n <return> C-x o C-n C-n C-n <return> C-x b C-s <return> M-x r e c <backspace> p - e m - b u g <return> Recent messages: Entering debugger... Back to top level. Finding changes in /Users/magnus/src/emacs/lisp/progmodes/compile.el...done Previous buffer text saved to kill ring Hunk already applied compilation-next-error-function (No files need saving) Mark set Compilation finished Mark set Load-path shadows: ~/src/emacs-jabber/compat/hex-util hides /Applications/Emacs.app/Contents/Resources/lisp/hex-util Features: (shadow sort mail-extr emacsbug message rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums whitespace diff bookmark cl-specs edebug jka-compr nxml-uchnm rng-xsd xsd-regexp rng-cmpct rng-nxml rng-valid rng-loc rng-uri rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns nxml-mode nxml-outln nxml-rap nxml-util nxml-glyph nxml-enc xmltok vc-annotate conf-mode tramp-cache tramp tramp-compat tramp-loaddefs man log-edit smerge-mode browse-url erlang-flymake flymake find-dired grep cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs debug tabify image-file face-remap imenu erlang etags compile em-unix em-term term disp-table ehelp electric em-script em-prompt em-ls em-hist em-pred em-glob em-dirs em-cmpl em-basic esh-opt em-banner em-alias esh-var esh-io esh-cmd esh-ext esh-proc esh-arg eldoc esh-groups eshell esh-module esh-mode esh-util add-log log-view pcvs-util multi-isearch make-mode diff-mode vc-bzr vc-sccs vc-svn vc-cvs vc-rcs vc-dir vc ediff-merg ediff-diff ediff-wind ediff-help ediff-util ediff-mult ediff-init ediff vc-dispatcher dired sasl-digest hmac-md5 hex-util goto-addr thingatpt jabber-keepalive jabber-ping jabber-bookmarks jabber-private network-stream auth-source eieio password-cache jabber jabber-libnotify dbus jabber-awesome jabber-osd jabber-wmii jabber-xmessage jabber-festival jabber-sawfish jabber-ratpoison jabber-tmux jabber-screen jabber-socks5 jabber-ft-server jabber-si-server jabber-ft-client jabber-ft-common jabber-si-client jabber-si-common jabber-feature-neg jabber-truncate jabber-time jabber-autoaway jabber-vcard-avatars jabber-chatstates jabber-events jabber-vcard jabber-avatar mailcap jabber-activity jabber-watch jabber-modeline jabber-ahc-presence jabber-ahc jabber-version jabber-ourversion jabber-muc-nick-completion hippie-exp jabber-browse jabber-search jabber-register jabber-roster jabber-presence jabber-muc jabber-muc-nick-coloring assoc hexrgb jabber-newdisco jabber-widget jabber-disco jabber-chat jabber-history jabber-chatbuffer jabber-alert jabber-iq jabber-core jabber-sasl sasl sasl-anonymous sasl-login sasl-plain fsm jabber-logon jabber-conn srv dns starttls tls gnutls jabber-xml xml jabber-menu ielm pp help-mode view org-beamer org-clock vc-git org-wl org-w3m org-vm org-rmail org-mhe org-mew org-irc org-jsinfo org-infojs org-html org-exp ob-exp org-exp-blocks find-func org-agenda org-info org-gnus org-docview org-bibtex bibtex org-bbdb jabber-console sgml-mode ewoc jabber-util jabber-keymap ob-sh shell ido gnus gnus-ems nnheader gnus-util mail-utils mm-util mail-prsvr wid-edit cus-start cus-load jabber-autoloads erlang-start tempo derived paren uniquify time org-capture org-mks org byte-opt warnings bytecomp byte-compile cconv macroexp advice help-fns advice-preload ob-emacs-lisp ob-ref ob-lob ob-table org-footnote org-pcomplete pcomplete org-list org-faces org-entities noutline outline easy-mmode format-spec diary-lib diary-loaddefs cal-menu easymenu calendar cal-loaddefs cl server edmacro kmacro ob-tangle org-src ob-comint comint ansi-color ring ob-keys org-compat ob org-macs ob-eval time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind ns multi-tty emacs)
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.