auctex-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[AUCTeX-devel] Fix about usage of kpsewhich


From: Ikumi Keita
Subject: [AUCTeX-devel] Fix about usage of kpsewhich
Date: Sat, 02 Dec 2017 03:11:19 +0900

Hi all,

First of all, I apologize my repeated mistakes in recent commits with
regard to the usage of kpsewhich.  The function `TeX-tree-expand' in the
latest git repository is broken badly.

Since the new release is planned to be soon, it's better to clean up
the things without much delay, I think.

There are three ways that we can take.  I would like to hear your
opinions about what to do.

(1) Commit my pending patch proposed in
https://lists.gnu.org/archive/html/auctex-devel/2017-11/msg00030.html
.

(2) Revert my relavant commits:
Mon Nov 13 23:41:18 2017 +0900 Bug fix and code refactoring related to kpathsea
Thu Nov 30 00:32:49 2017 +0900 Re-implement auto-detect of path separator from 
kpsewhich output

(3) Other way
I don't have any particular solution other than (1) and (2), but any
other good idea should be appreciated, of course.

If we choose (2), we still have to fix the following piece of code in
`TeX-tree-expand':
----------------------------------------------------------------------
                              (call-process
                               "kpsewhich"  nil
                               (list standard-output nil) nil
                               "--progname" program
                               "--expand-path"
                               (mapconcat #'identity vars
                                          (if (eq system-type 'windows-nt)
                                              ";" ":"))))))))
----------------------------------------------------------------------
This chooses the path delimiter given to kpsewhich command based on
`system-type'.  So this doesn't work well when emacs is w32 native
application and kpsewhich is cygwin application, in which case ";" is
used and the result would be as demonstrated in
https://lists.gnu.org/archive/html/auctex-devel/2017-11/msg00026.html
https://lists.gnu.org/archive/html/auctex-devel/2017-11/msg00029.html
.

It doesn't work well also with the opposite combination, i.e., cygwin
emacs and w32 native kpsewhich, in which case ":" is used and the
output of kpsewhich would be inadequate.  Quoted below is a result of
giving ":" as delimiter to kpsewhich of w32 TeXLive 2027:
----------------------------------------------------------------------
address@hidden ~
$ kpsewhich --progname latex --expand-path '$TEXMFDIST:$TEXMFHOME'


address@hidden ~
$ kpsewhich --progname latex --expand-path '$TEXMFDIST;$TEXMFHOME'
c:/texlive/2017/texmf-dist;c:/Users/keita/texmf

address@hidden ~
$ kpsewhich --version
kpathsea version 6.2.3
Copyright 2017 Karl Berry & Olaf Weber.
License LGPLv2.1+: GNU Lesser GPL version 2.1 or later 
<http://gnu.org/licenses/lgpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
----------------------------------------------------------------------

Note that we cannot rely on the auto detection of the delimiter here
because we don't have the output of kpsewhich yet at this time of
building the argument to be given to kpsewhich command.


Any opinions, comments and suggestions are welcome.

Best regards,
Ikumi Keita



reply via email to

[Prev in Thread] Current Thread [Next in Thread]