-
Notifications
You must be signed in to change notification settings - Fork 65
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
kpsewhich: Tilde after delimiter is not expanded #3
Comments
@kberry Any comment? |
well, in most cases, ~ is expanded at the beginning of any path element, not just the first. (i don't think it's supposed to be expanded after commas, as such.) i agree there is some deficiency here, but exactly where is not immediately clear to me. kpsewhich -var-value is not the same thing as having values in config files. it is not supposed to do brace expansions, for one thing. For example, i am getting unexpected results from other tests right now, so i'll have to look further into it later. thanks for the report. |
I've committed changes to kpathsea such that kpsewhich --var-value=VAR and --expand-braces='$VAR' now expand tildes at the beginning of any path element. r49400. Norbert, can you please merge this into Debian and we'll see what happens? The problem seems to have been a clash between the use of ; as the path separator in texmf.cnf vs. the code looking for : as the separator when the current system is Unix-ish. I hope this will be more in the nature of a bug fix than an incompatible interface change (at either the kpsewhich or API level), but I guess we'll find out. Thanks again for the report. P.S. Some of the tests I tried, as Makefile targets. $(wk) is my variable for the kpathsea build directory.
|
… or : regardless of the current system when parsing elements from a path (#3) git-svn-id: svn://tug.org/texlive/trunk/Build/source@49400 c570f23f-e606-0410-a88d-b1316a301751
… or : regardless of the current system when parsing elements from a path (TeX-Live/texlive-source#3) git-svn-id: svn://tug.org/texlive/trunk/Build/source@49400 c570f23f-e606-0410-a88d-b1316a301751
unfortunately the change breaks on windows. back to the drawing board. |
hopeful fix (for Windows) committed in r49410. |
@kberry is this in a state that I can try it in Debian now? |
afaik yes. no more stoppers came in yesterday, so we won't know what other horrible mistakes are lurking until it gets more testing ... thanks. |
Ok, build a new set and testing them locally. If there are not hickups I will upload them today. |
… or : regardless of the current system when parsing elements from a path (TeX-Live/texlive-source#3) git-svn-id: svn://tug.org/texlive/trunk/Build@49400 c570f23f-e606-0410-a88d-b1316a301751
I just updated my TeX Live installation and found out that since then, brace expansion is done für the --var-value case. This breaks my usage case, where I fetched a variable BUILD_FOR_PAPER='paper=a5paper,twoside,top=2cm,bottom=2cm,left=2.5cm,right=2cm', which is no longer passed through verbatim, but commas are changed to colons: `jbglaw@charon:~$ BUILD_FOR_PAPER='paper=a5paper,twoside,top=2cm' kpsewhich --var-value BUILD_FOR_PAPER paper=a5paper:twoside:top=2cm:bottom=2cm:left=2.5cm:right=2cm` This obviously breaks my build. I would strongly appreciate if --var-value would be kept as-is, and a new option (ie. --var-value-expanded) added instead, breaking former semantics. |
thanks for the report. i was afraid of that, but had no way to know without trying. i think it should be feasible to do the brace expansion only if there actually are braces present, which should solve your case, and, i hope/expect, any practical case. we'll see. |
I added a new option -var-brace-value and restored -var-value to its original behavior (I believe). r49446. Sorry Norbert. |
Haha, the previous one is already in Debian. I will reupload a new version to make sure we are consistent with what is in TL. Thanks for the heads up |
Thanks a lot, that was a very quick response! I actually appreciate quite a lot that the turnaround time for changes into the Debian package system is so small. Even when "bugs" sneak in, but also for cases like this where something is fixed. Thanks for the great work! |
@jbglaw Thanks for your remark. Unfortunately things might change wrt Debian in the future due to my reduced involvement. |
Sorry for late reply. |
I tried to overwrite
TEXMFCACHE = $TEXMFSYSVAR;$TEXMFVAR
withTEXMFCACHE = $TEXMFSYSVAR;~/.cache/texlive/2018
in$TEXMFROOT/texmf.cnf
, but the tilde is not expanded:kpsewhich -var-value=TEXMFCACHE
returns/usr/local/texlive/2018/texmf-var:~/.cache/texlive/2018
.texlive-source/texk/kpathsea/doc/kpathsea.info
Lines 693 to 698 in 287946d
Does this mean only the very leading tilde is expanded and any others are not expanded even if they appear immediately after a delimiter (
:
,;
, or,
)?A user needs to expand
~
beforehand to append a path under~
:Environment
$TEXMFDIST/web2c/texmf.cnf
is same astexk/kpathsea/texmf.cnf
(287946d)The text was updated successfully, but these errors were encountered: