Anthony Carrico <acarrico@memebeam.org> writes:
>> Michel Schinz <Michel.Schinz@epfl.ch> writes:
>> > Martin Gasbichler <gasbichl@informatik.uni-tuebingen.de> writes:
>> >> Michel Schinz <Michel.Schinz@epfl.ch> writes:
> ...
>> > Which reminds me of the fact that tilde-expansion is not performed on
>> > the paths contained in SCSH_LIB_DIRS:
>> > ----------------------------------------------------------------------
>> > % SCSH_LIB_DIRS='"~/projects/scsh-packages/root/"' scsh -ll sunet/pkg.scm
> ...
>> > Maybe it would be nice (and helpful for users who need their own
>> > package root) to perform tilde-expansion on all components of
>> > SCSH_LIB_DIRS at scsh startup.
>
> I think the correct way is to just let your shell to do the expansion
> when the variable is being set. For example:
>
> bash$ SCSH_LIB_DIRS=~/projects/scsh-packages/root
> bash$ echo $SCSH_LIB_DIRS
> /home/acarrico/projects/scsh-packages/root
>
> I don't think it is correct for scsh to massage the value.
The small problem is that the value of SCSH_LIB_DIRS has to be
readable by (read), which means all its elements have to be enclosed
inside quotes so that they are legal Scheme strings. Your example
above is in fact not legal:
[lamppc3 ~]% SCSH_LIB_DIRS=~/projects/scsh-packages/root scsh -ll toto
Error: Illegal path element in $SCSH_LIB_DIRS
"/home/schinz/projects/scsh-packages/root"
/home/schinz/projects/scsh-packages/root
Now if I try to put the (double) quotes around the path to make it
valid, I also need to put single quotes around the whole thing to
"quote the double quotes", as follows:
[lamppc3 ~]% SCSH_LIB_DIRS='"~/projects/scsh-packages/root"' scsh -ll toto
and then the tilde is inside single quotes, and therefore not expanded
anymore... I'm sure there's a solution to that, but I believe it's not
trivial. I would be delighted to be proven wrong, though.
>> > Yes, I guess if we say that versions are sequences of integers, and
>> > that they are ordered lexicographically, it's enough.
>>
>> Plus, that the sequence delimiter in the version number is a simple
>> dot...
>
> (1 2 3) < (1 20 3)
> "1.2.3" ?< "1.20.3"
>
> True or false?
Yes, for me version 1.2.3 is smaller than 1.20.3 (since the first
components of the two versions are equal, but the second are 2 and 20,
respectively, which means that the first is smaller). Do you think it
should be otherwise?
Thanks,
Michel.
|