GNU bug report logs - #36483
12.1.2; 'lacheck' and 'chktex' results not recongnized by compilation mode when filename has spaces

Previous Next

Package: auctex;

Reported by: Gustavo Barros <gusbrs.2016 <at> gmail.com>

Date: Wed, 3 Jul 2019 00:21:01 UTC

Severity: normal

Tags: fixed

Found in version 12.1.2

Done: Ikumi Keita <ikumi <at> ikumi.que.jp>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 36483 in the body.
You can then email your comments to 36483 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-auctex <at> gnu.org:
bug#36483; Package auctex. (Wed, 03 Jul 2019 00:21:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Gustavo Barros <gusbrs.2016 <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-auctex <at> gnu.org. (Wed, 03 Jul 2019 00:21:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Gustavo Barros <gusbrs.2016 <at> gmail.com>
To: bug-auctex <at> gnu.org
Subject: 12.1.2;
 'lacheck' and 'chktex' results not recongnized by compilation mode
 when filename has spaces
Date: Tue, 02 Jul 2019 21:19:45 -0300
Currently 'lacheck' and 'chktex' results are not recognized as errors or
warnings by compilation mode if the document’s filename has spaces.  This
causes navigation through the errors with "C-x `" ('next-error'), as described
in AUCTeX’s documentation not to work.

Steps to reproduce:

Run =emacs -Q=.

For standard setup, eval:
#+begin_src emacs-lisp
(package-initialize)
(setq TeX-auto-save t)
(setq TeX-parse-self t)
#+end_src

Find file named "filename with spaces.tex" with following contents (just to
generate some issues with the checkers):

#+begin_export latex
\documentclass{article}

\begin{document}

Some "sentence" with some WORDS.

\begin{tabular}{
 c
 c
 }
 1 & 2 \\
 3 & 4 \\
\end{tabular}

\end{document}
#+end_export

Then run "C-c C-c" Check and "C-c C-c" ChkTeX.

In either case, compilation mode will not identify errors or warnings in the
output, and "C-x `" and "M-g p" will echo, respectively, "Moved past last
error" and "Moved back before first error".



Emacs  : GNU Emacs 26.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.30)
of 2019-04-19
Package: 12.1.2

current state:
==============
(setq
AUCTeX-date "2019-02-08"
window-system 'x
LaTeX-version "2e"
TeX-style-path '("~/.emacs.d/auctex" 
"/home/gustavo/.emacs.d/elpa/auctex-12.1.2/style"
		  "/home/gustavo/.emacs.d/auctex/auto" 
		  "/home/gustavo/.emacs.d/auctex/style" "auto" "style")
TeX-auto-save t
TeX-parse-self t
TeX-master t
TeX-command-list '(("TeX" "%(PDF)%(tex) %(file-line-error) %`%(extraopts) 
%S%(PDFout)%(mode)%' %t" TeX-run-TeX
		     nil (plain-tex-mode ams-tex-mode texinfo-mode) :help "Run 
		     plain TeX")
		    ("LaTeX" "%`%l%(mode)%' %T" TeX-run-TeX nil (latex-mode 
		    doctex-mode) :help "Run LaTeX")
		    ("Makeinfo" "makeinfo %(extraopts) %t" TeX-run-compile nil 
		    (texinfo-mode) :help
		     "Run Makeinfo with Info output")
		    ("Makeinfo HTML" "makeinfo %(extraopts) --html %t" 
		    TeX-run-compile nil (texinfo-mode) :help
		     "Run Makeinfo with HTML output")
		    ("AmSTeX" "amstex %(PDFout) %`%(extraopts) %S%(mode)%' %t" 
		    TeX-run-TeX nil (ams-tex-mode)
		     :help "Run AMSTeX")
		    ("ConTeXt" "%(cntxcom) --once --texutil %(extraopts) 
		    %(execopts)%t" TeX-run-TeX nil
		     (context-mode) :help "Run ConTeXt once")
		    ("ConTeXt Full" "%(cntxcom) %(extraopts) %(execopts)%t" 
		    TeX-run-TeX nil (context-mode) :help
		     "Run ConTeXt until completion")
		    ("BibTeX" "bibtex %s" TeX-run-BibTeX nil t :help "Run 
		    BibTeX")
		    ("Biber" "biber %s" TeX-run-Biber nil t :help "Run Biber")
		    ("View" "%V" TeX-run-discard-or-function t t :help "Run 
		    Viewer")
		    ("Print" "%p" TeX-run-command t t :help "Print the file")
		    ("Queue" "%q" TeX-run-background nil t :help "View the 
		    printer queue" :visible
		     TeX-queue-command)
		    ("File" "%(o?)dvips %d -o %f " TeX-run-dvips t t :help 
		    "Generate PostScript file")
		    ("Dvips" "%(o?)dvips %d -o %f " TeX-run-dvips nil t :help 
		    "Convert DVI file to PostScript")
		    ("Dvipdfmx" "dvipdfmx %d" TeX-run-dvipdfmx nil t :help
		     "Convert DVI file to PDF with dvipdfmx")
		    ("Ps2pdf" "ps2pdf %f" TeX-run-ps2pdf nil t :help "Convert 
		    PostScript file to PDF")
		    ("Glossaries" "makeglossaries %s" TeX-run-command nil t 
		    :help
		     "Run makeglossaries to create glossary file")
		    ("Index" "makeindex %s" TeX-run-index nil t :help "Run 
		    makeindex to create index file")
		    ("upMendex" "upmendex %s" TeX-run-index t t :help "Run 
		    upmendex to create index file")
		    ("Xindy" "texindy %s" TeX-run-command nil t :help "Run 
		    xindy to create index file")
		    ("Check" "lacheck %s" TeX-run-compile nil (latex-mode) 
		    :help
		     "Check LaTeX file for correctness")
		    ("ChkTeX" "chktex -v6 %s" TeX-run-compile nil (latex-mode) 
		    :help
		     "Check LaTeX file for common mistakes")
		    ("Spell" "(TeX-ispell-document \"\")" TeX-run-function nil 
		    t :help "Spell-check the document")
		    ("Clean" "TeX-clean" TeX-run-function nil t :help "Delete 
		    generated intermediate files")
		    ("Clean All" "(TeX-clean t)" TeX-run-function nil t :help
		     "Delete generated intermediate and output files")
		    ("Other" "" TeX-run-command t t :help "Run an arbitrary 
		    command"))
)




Information forwarded to bug-auctex <at> gnu.org:
bug#36483; Package auctex. (Sun, 07 Jul 2019 11:25:01 GMT) Full text and rfc822 format available.

Message #8 received at 36483 <at> debbugs.gnu.org (full text, mbox):

From: Ikumi Keita <ikumi <at> ikumi.que.jp>
To: Gustavo Barros <gusbrs.2016 <at> gmail.com>
Cc: 36483 <at> debbugs.gnu.org
Subject: Re: bug#36483: 12.1.2;
 'lacheck' and 'chktex' results not recongnized by compilation mode
 when filename has spaces
Date: Sun, 07 Jul 2019 20:24:36 +0900
Hi Gustavo,

>>>>> Gustavo Barros <gusbrs.2016 <at> gmail.com> writes:
> Currently 'lacheck' and 'chktex' results are not recognized as errors
> or warnings by compilation mode if the document’s filename has
> spaces.  This causes navigation through the errors with "C-x `"
> ('next-error'), as described in AUCTeX’s documentation not to work.

AUCTeX doesn't deal with the output of those commands (actually, all
commands associated with `TeX-run-compile' in `TeX-command-list') at all
and leaves them entirely to compilation-mode of Emacs.

I think that compilation-mode is not ready for file names with spaces,
at least for the output of lacheck and chktex.  It seems that the output
format of these commands are delt with the following entry in
`compilation-error-regexp-alist-alist':

    (comma
     "^\"\\([^,\" \n\t]+\\)\", line \\([0-9]+\\)\
\\(?:[(. pos]+\\([0-9]+\\))?\\)?[:.,; (-]\\( warning:\\|[-0-9 ]*(W)\\)?" 1 2 3 (4))

The regular expression in this entry excludes any space in the file name
explicitly.  I'm not sure whether this exclusion is mandatory for robust
operation of compilation-mode, but it might be worth for you to ask the
maintainer of compilation-mode (emacs-devel <at> gnu.org, according to the
header of compile.el) to accept file names with spaces.

Regards,
Ikumi Keita




Information forwarded to bug-auctex <at> gnu.org:
bug#36483; Package auctex. (Sun, 07 Jul 2019 12:49:02 GMT) Full text and rfc822 format available.

Message #11 received at 36483 <at> debbugs.gnu.org (full text, mbox):

From: Gustavo Barros <gusbrs.2016 <at> gmail.com>
To: Ikumi Keita <ikumi <at> ikumi.que.jp>
Cc: 36483 <at> debbugs.gnu.org
Subject: Re: bug#36483: 12.1.2;
 'lacheck' and 'chktex' results not recongnized by compilation mode
 when filename has spaces
Date: Sun, 07 Jul 2019 09:48:46 -0300
Hi Ikumi Keita,

thank you for looking into this.

On Sun, Jul 07 2019, Ikumi Keita wrote:

> Hi Gustavo,
>
>>>>>> Gustavo Barros <gusbrs.2016 <at> gmail.com> writes:
>> Currently 'lacheck' and 'chktex' results are not recognized as errors
>> or warnings by compilation mode if the document’s filename has
>> spaces.  This causes navigation through the errors with "C-x `"
>> ('next-error'), as described in AUCTeX’s documentation not to work.
>
> AUCTeX doesn't deal with the output of those commands (actually, all
> commands associated with `TeX-run-compile' in `TeX-command-list') at all
> and leaves them entirely to compilation-mode of Emacs.
>
> I think that compilation-mode is not ready for file names with spaces,
> at least for the output of lacheck and chktex.  It seems that the output
> format of these commands are delt with the following entry in
> `compilation-error-regexp-alist-alist':
>
>     (comma
>      "^\"\\([^,\" \n\t]+\\)\", line \\([0-9]+\\)\
> \\(?:[(. pos]+\\([0-9]+\\))?\\)?[:.,; (-]\\( warning:\\|[-0-9 ]*(W)\\)?" 1 2 
> 3 (4))
>
> The regular expression in this entry excludes any space in the file name
> explicitly.  I'm not sure whether this exclusion is mandatory for robust
> operation of compilation-mode, but it might be worth for you to ask the
> maintainer of compilation-mode (emacs-devel <at> gnu.org, according to the
> header of compile.el) to accept file names with spaces.
>
> Regards,
> Ikumi Keita

When I reported, I did fear this might ultimately rely on some change in 
compilation mode.  However, I still reported it here, because I thought that 
was the most appropriate place for me to do it.  Indeed, while I’m a regular 
user of AUCTeX, I’m deeply unacquainted with the workings of compilation mode. 
To the point I’d feel it inappropriate to simply ask the maintainer there to 
accept file names with spaces.

Still, even if the solution may rely on some change in compilation mode, the 
workings of AUCTeX in this respect do not correspond to the behavior described 
in AUCTeX’s documentation in a case where it is reasonable to expect it would.

Furthermore, error navigation for file names with spaces does work for other 
TeX commands which, as you mentioned, are equally left for compilation mode to 
handle.  It doesn’t just for 'lacheck' and 'chktex'.

I just happened to stumble upon this while rereading the documentation, 
tracked down the source of the problem, and reported where I saw it was 
fittest.  It’s really up to you to assess if this is relevant enough from 
AUCTeX’s perspective.  (And I really mean it, I just reported in a 
constructive spirit, without presumptions.)

That said, if you request me to report this to the compilation mode 
maintainers on your behalf, I’d be glad to be of assistance.  But I do believe 
I’d be a less effective and pertinent reporter there due to my own limitations 
regarding compilation mode.

Best regards,
Gustavo Barros.





Information forwarded to bug-auctex <at> gnu.org:
bug#36483; Package auctex. (Mon, 08 Jul 2019 07:21:02 GMT) Full text and rfc822 format available.

Message #14 received at 36483 <at> debbugs.gnu.org (full text, mbox):

From: Ikumi Keita <ikumi <at> ikumi.que.jp>
To: emacs-devel <at> gnu.org
Cc: Gustavo Barros <gusbrs.2016 <at> gmail.com>, 36483 <at> debbugs.gnu.org
Subject: Re: bug#36483: 12.1.2;
 'lacheck' and 'chktex' results not recongnized by compilation mode
 when filename has spaces
Date: Mon, 08 Jul 2019 16:20:02 +0900
Dear Emacs devlopers,

May I ask you to modify compilation-mode to accept file names with
spaces?  I'm contacting at emacs-devel <at> gnu.org because it is presented
as maintainer in the header of compile.el.

It was reported recently in bug-auctex mail list that file names with
space are not recognized in the output of "lacheck" and "chktex"
commands in AUCTeX:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=36483

AUCTeX (an advanced major mode for TeX documents,
https://www.gnu.org/software/auctex/ ) entrust compilation-mode with all
the jobs with respect to those two commands.  It turned out that
compilation-mode is not ready for file names with spaces, at least for
the output of lacheck and chktex.  The relevant entry in
`compilation-error-regexp-alist-alist' is:

    (comma
     "^\"\\([^,\" \n\t]+\\)\", line \\([0-9]+\\)\
\\(?:[(. pos]+\\([0-9]+\\))?\\)?[:.,; (-]\\( warning:\\|[-0-9 ]*(W)\\)?" 1 2 3 (4))

The regular expression in this entry excludes any space in the file name
explicitly, so it doesn't pick up the warnings for file names with
spaces, which look like:

"filename with spaces.tex", line 5.6:(#18) Use either `` or '' as an alternative to `"'.

After I changed the above entry to a form quoted below, compilation-mode
detected the warnings as expected for both lachack and chktex outputs:

    (comma
     "^\"\\([^,\"\n\t]+\\)\", line \\([0-9]+\\)\
\\(?:[(. pos]+\\([0-9]+\\))?\\)?[:.,; (-]\\( warning:\\|[-0-9 ]*(W)\\)?" 1 2 3 (4))

I'm not sure whether this exclusion of spaces is mandatory for robust
operation of compilation-mode.  If not the case, is it acceptable to
modify compilation-mode in some way to work with file names with space?
The core feature of AUCTeX is designed to work with file names with
spaces, so it can work more coherently as a whole if compilation-mode is
aware of such file names as well.

Best regards,
Ikumi Keita

The original bug report follows below:

>>>>> Gustavo Barros <gusbrs.2016 <at> gmail.com> writes:
> Currently 'lacheck' and 'chktex' results are not recognized as errors or
> warnings by compilation mode if the document’s filename has spaces.  This
> causes navigation through the errors with "C-x `" ('next-error'), as described
> in AUCTeX’s documentation not to work.

> Steps to reproduce:

> Run =emacs -Q=.

> For standard setup, eval:
> #+begin_src emacs-lisp
> (package-initialize)
> (setq TeX-auto-save t)
> (setq TeX-parse-self t)
> #+end_src

> Find file named "filename with spaces.tex" with following contents (just to
> generate some issues with the checkers):
> #+begin_export latex
> \documentclass{article}

> \begin{document}

> Some "sentence" with some WORDS.

> \begin{tabular}{
>   c
>   c
>   }
>   1 & 2 \\
>   3 & 4 \\
> \end{tabular}

> \end{document}
> #+end_export
> Then run "C-c C-c" Check and "C-c C-c" ChkTeX.

> In either case, compilation mode will not identify errors or warnings in the
> output, and "C-x `" and "M-g p" will echo, respectively, "Moved past last
> error" and "Moved back before first error".



> Emacs  : GNU Emacs 26.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.30)
>  of 2019-04-19
> Package: 12.1.2

> current state:
> ==============
> (setq
>  AUCTeX-date "2019-02-08"
>  window-system 'x
>  LaTeX-version "2e"
>  TeX-style-path '("~/.emacs.d/auctex" 
>  "/home/gustavo/.emacs.d/elpa/auctex-12.1.2/style"
> 		  "/home/gustavo/.emacs.d/auctex/auto" 
> 		  "/home/gustavo/.emacs.d/auctex/style" "auto" "style")
>  TeX-auto-save t
>  TeX-parse-self t
>  TeX-master t
>  TeX-command-list '(("TeX" "%(PDF)%(tex) %(file-line-error) %`%(extraopts) 
>  %S%(PDFout)%(mode)%' %t" TeX-run-TeX
> 		     nil (plain-tex-mode ams-tex-mode texinfo-mode) :help "Run 
> 		     plain TeX")
> 		    ("LaTeX" "%`%l%(mode)%' %T" TeX-run-TeX nil (latex-mode 
> 		    doctex-mode) :help "Run LaTeX")
> 		    ("Makeinfo" "makeinfo %(extraopts) %t" TeX-run-compile nil 
> 		    (texinfo-mode) :help
> 		     "Run Makeinfo with Info output")
> 		    ("Makeinfo HTML" "makeinfo %(extraopts) --html %t" 
> 		    TeX-run-compile nil (texinfo-mode) :help
> 		     "Run Makeinfo with HTML output")
> 		    ("AmSTeX" "amstex %(PDFout) %`%(extraopts) %S%(mode)%' %t" 
> 		    TeX-run-TeX nil (ams-tex-mode)
> 		     :help "Run AMSTeX")
> 		    ("ConTeXt" "%(cntxcom) --once --texutil %(extraopts) 
> 		    %(execopts)%t" TeX-run-TeX nil
> 		     (context-mode) :help "Run ConTeXt once")
> 		    ("ConTeXt Full" "%(cntxcom) %(extraopts) %(execopts)%t" 
> 		    TeX-run-TeX nil (context-mode) :help
> 		     "Run ConTeXt until completion")
> 		    ("BibTeX" "bibtex %s" TeX-run-BibTeX nil t :help "Run 
> 		    BibTeX")
> 		    ("Biber" "biber %s" TeX-run-Biber nil t :help "Run Biber")
> 		    ("View" "%V" TeX-run-discard-or-function t t :help "Run 
> 		    Viewer")
> 		    ("Print" "%p" TeX-run-command t t :help "Print the file")
> 		    ("Queue" "%q" TeX-run-background nil t :help "View the 
> 		    printer queue" :visible
> 		     TeX-queue-command)
> 		    ("File" "%(o?)dvips %d -o %f " TeX-run-dvips t t :help 
> 		    "Generate PostScript file")
> 		    ("Dvips" "%(o?)dvips %d -o %f " TeX-run-dvips nil t :help 
> 		    "Convert DVI file to PostScript")
> 		    ("Dvipdfmx" "dvipdfmx %d" TeX-run-dvipdfmx nil t :help
> 		     "Convert DVI file to PDF with dvipdfmx")
> 		    ("Ps2pdf" "ps2pdf %f" TeX-run-ps2pdf nil t :help "Convert 
> 		    PostScript file to PDF")
> 		    ("Glossaries" "makeglossaries %s" TeX-run-command nil t 
> 		    :help
> 		     "Run makeglossaries to create glossary file")
> 		    ("Index" "makeindex %s" TeX-run-index nil t :help "Run 
> 		    makeindex to create index file")
> 		    ("upMendex" "upmendex %s" TeX-run-index t t :help "Run 
> 		    upmendex to create index file")
> 		    ("Xindy" "texindy %s" TeX-run-command nil t :help "Run 
> 		    xindy to create index file")
> 		    ("Check" "lacheck %s" TeX-run-compile nil (latex-mode) 
> 		    :help
> 		     "Check LaTeX file for correctness")
> 		    ("ChkTeX" "chktex -v6 %s" TeX-run-compile nil (latex-mode) 
> 		    :help
> 		     "Check LaTeX file for common mistakes")
> 		    ("Spell" "(TeX-ispell-document \"\")" TeX-run-function nil 
> 		    t :help "Spell-check the document")
> 		    ("Clean" "TeX-clean" TeX-run-function nil t :help "Delete 
> 		    generated intermediate files")
> 		    ("Clean All" "(TeX-clean t)" TeX-run-function nil t :help
> 		     "Delete generated intermediate and output files")
> 		    ("Other" "" TeX-run-command t t :help "Run an arbitrary 
> 		    command"))
>  )




Information forwarded to bug-auctex <at> gnu.org:
bug#36483; Package auctex. (Mon, 15 Jul 2019 15:50:01 GMT) Full text and rfc822 format available.

Message #17 received at 36483 <at> debbugs.gnu.org (full text, mbox):

From: Ikumi Keita <ikumi <at> ikumi.que.jp>
To: Gustavo Barros <gusbrs.2016 <at> gmail.com>
Cc: 36483 <at> debbugs.gnu.org
Subject: Re: bug#36483: 12.1.2;
 'lacheck' and 'chktex' results not recongnized by compilation mode
 when filename has spaces
Date: Tue, 16 Jul 2019 00:49:24 +0900
Hi Gustavo,

>>>>> Gustavo Barros <gusbrs.2016 <at> gmail.com> writes:
> When I reported, I did fear this might ultimately rely on some change
> in compilation mode.  However, I still reported it here, because I
> thought that was the most appropriate place for me to do it.  Indeed,
> while I’m a regular user of AUCTeX, I’m deeply unacquainted with the
> workings of compilation mode. To the point I’d feel it inappropriate
> to simply ask the maintainer there to accept file names with spaces.

> Still, even if the solution may rely on some change in compilation
> mode, the workings of AUCTeX in this respect do not correspond to the
> behavior described in AUCTeX’s documentation in a case where it is
> reasonable to expect it would.

> Furthermore, error navigation for file names with spaces does work for
> other TeX commands which, as you mentioned, are equally left for
> compilation mode to handle.  It doesn’t just for 'lacheck' and
> 'chktex'.

> I just happened to stumble upon this while rereading the
> documentation, tracked down the source of the problem, and reported
> where I saw it was fittest.  It’s really up to you to assess if this
> is relevant enough from AUCTeX’s perspective.  (And I really mean it,
> I just reported in a constructive spirit, without presumptions.)

I reported this problem in emacs-devel <at> gnu.org, but didn't get any
response unfortunately.  What we can do tentatively now is to add an
ad-hoc workaround like a patch quoted below to AUCTeX.

What do you think about this?

Regards,
Ikumi Keita

diff --git a/tex-buf.el b/tex-buf.el
index 8b87c4c6..cf3ada95 100644
--- a/tex-buf.el
+++ b/tex-buf.el
@@ -1293,7 +1293,17 @@ run of `TeX-run-TeX', use
 (defun TeX-run-compile (_name command _file)
   "Ignore first and third argument, start compile with second argument."
   (let ((default-directory (TeX-master-directory)))
-    (setq TeX-command-buffer (compile command))))
+    (setq TeX-command-buffer (compile command)))
+  ;; Make `compilation-mode' to recognize file names with spaces.
+  ;; (bug#36483)
+  (with-current-buffer TeX-command-buffer
+    (make-local-variable 'compilation-error-regexp-alist)
+    (add-to-list 'compilation-error-regexp-alist
+		 ;; Add slightly modified entry of the one associated
+		 ;; with `comma' in `compilation-error-regexp-alist-alist'
+		 ;; to pick up file names with spaces.
+		 '("^\"\\([^,\"\n\t]+\\)\", line \\([0-9]+\\)\
+\\(?:[(. pos]+\\([0-9]+\\))?\\)?[:.,; (-]\\( warning:\\|[-0-9 ]*(W)\\)?" 1 2 3 (4)) t))))
 
 (defun TeX-run-shell (_name command _file)
   "Ignore first and third argument, start shell-command with second argument."




Information forwarded to bug-auctex <at> gnu.org:
bug#36483; Package auctex. (Mon, 15 Jul 2019 17:54:02 GMT) Full text and rfc822 format available.

Message #20 received at 36483 <at> debbugs.gnu.org (full text, mbox):

From: Gustavo Barros <gusbrs.2016 <at> gmail.com>
To: Ikumi Keita <ikumi <at> ikumi.que.jp>
Cc: 36483 <at> debbugs.gnu.org
Subject: Re: bug#36483: 12.1.2;
 'lacheck' and 'chktex' results not recongnized by compilation mode
 when filename has spaces
Date: Mon, 15 Jul 2019 14:53:08 -0300
Hi Keita,

On Mon, Jul 15 2019, Ikumi Keita wrote:

> Hi Gustavo,
>
>>>>>> Gustavo Barros <gusbrs.2016 <at> gmail.com> writes:
>
> I reported this problem in emacs-devel <at> gnu.org, but didn't get any
> response unfortunately.  What we can do tentatively now is to add an
> ad-hoc workaround like a patch quoted below to AUCTeX.

Thank you for that.

>
> What do you think about this?
>

Well, the potential repercussions of the change are somewhat beyond my league. 
But I understand the proposed change is restrained to `TeX-command-buffer`, so 
no consequences are expected outside AUCTeX.

However, I don’t have the means to judge if this might cause any side effects 
to other TeX-commands or if dealing with this in ad-hoc fashion is to be 
frowned upon or not (it looks good to me, but I’m no dev). So I trust your 
judgment on that. If you are fine with it, so am I.

Of course, I’ve tested it, and it works. So I’m very happy with this 
result. Thank you very much.

> Regards,
> Ikumi Keita
>
> diff --git a/tex-buf.el b/tex-buf.el
> index 8b87c4c6..cf3ada95 100644
> --- a/tex-buf.el
> +++ b/tex-buf.el
> @@ -1293,7 +1293,17 @@ run of `TeX-run-TeX', use
>  (defun TeX-run-compile (_name command _file)
>    "Ignore first and third argument, start compile with second argument."
>    (let ((default-directory (TeX-master-directory)))
> -    (setq TeX-command-buffer (compile command))))
> +    (setq TeX-command-buffer (compile command)))
> +  ;; Make `compilation-mode' to recognize file names with spaces.
> +  ;; (bug#36483)
> +  (with-current-buffer TeX-command-buffer
> +    (make-local-variable 'compilation-error-regexp-alist)
> +    (add-to-list 'compilation-error-regexp-alist
> +		 ;; Add slightly modified entry of the one associated
> +		 ;; with `comma' in `compilation-error-regexp-alist-alist'
> +		 ;; to pick up file names with spaces.
> +		 '("^\"\\([^,\"\n\t]+\\)\", line \\([0-9]+\\)\
> +\\(?:[(. pos]+\\([0-9]+\\))?\\)?[:.,; (-]\\( warning:\\|[-0-9 ]*(W)\\)?" 1 
> 2 3 (4)) t))))
>  
>  (defun TeX-run-shell (_name command _file)
>    "Ignore first and third argument, start shell-command with second 
>    argument."

Besides that, if I may.
I’m not an English native speaker, but I do think "Make `compilation-mode' 
recognize file names with spaces." would sound better. And, if I am not 
mistaken, I believe there is a (closing) parenthesis too much in the patch.

Thank you again very much for seeing this through.

Best regards,
Gustavo Barros.




Information forwarded to bug-auctex <at> gnu.org:
bug#36483; Package auctex. (Tue, 16 Jul 2019 06:15:01 GMT) Full text and rfc822 format available.

Message #23 received at 36483 <at> debbugs.gnu.org (full text, mbox):

From: Ikumi Keita <ikumi <at> ikumi.que.jp>
To: Gustavo Barros <gusbrs.2016 <at> gmail.com>
Cc: 36483 <at> debbugs.gnu.org
Subject: Re: bug#36483: 12.1.2;
 'lacheck' and 'chktex' results not recongnized by compilation mode
 when filename has spaces
Date: Tue, 16 Jul 2019 15:13:58 +0900
Hi Gustavo,

>>>>> Gustavo Barros <gusbrs.2016 <at> gmail.com> writes:
> Well, the potential repercussions of the change are somewhat beyond my
> league. But I understand the proposed change is restrained to
> `TeX-command-buffer`, so no consequences are expected outside AUCTeX.

> However, I don’t have the means to judge if this might cause any side
> effects to other TeX-commands or if dealing with this in ad-hoc
> fashion is to be frowned upon or not (it looks good to me, but I’m no
> dev). So I trust your judgment on that. If you are fine with it, so am
> I.

> Of course, I’ve tested it, and it works. So I’m very happy with this
> result. Thank you very much.

OK, then I'll commit that fix later.

> Besides that, if I may.
> I’m not an English native speaker, but I do think "Make
> `compilation-mode' recognize file names with spaces." would sound
> better.

Argh.  I've been proving repeatedly to be bad at English, this one puts
another on top of the compilation of existing evidences! :-)

> And, if I am not mistaken, I believe there is a (closing) parenthesis
> too much in the patch.

Thanks, my check was insufficient.

Regards,
Ikumi Keita




Added tag(s) fixed. Request was from Ikumi Keita <ikumi <at> ikumi.que.jp> to control <at> debbugs.gnu.org. (Tue, 16 Jul 2019 12:26:01 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 36483 <at> debbugs.gnu.org and Gustavo Barros <gusbrs.2016 <at> gmail.com> Request was from Ikumi Keita <ikumi <at> ikumi.que.jp> to control <at> debbugs.gnu.org. (Tue, 16 Jul 2019 12:26:01 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 14 Aug 2019 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 249 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.