On Sun, Jun 17, 2012 at 4:50 PM, Camillo Bruni <[email protected]>wrote:
> indeed this is a bit tricky... but what can you explicitely say :/
>
> foo.tar
> foo.tar.gz
> foo.1.tar
> foo.1.tar.gz
>
> it's rather hard to decide which is the real extension and which one not :)
>
Why not
#('foo' 'foo.tar' 'foo.tar.gz' 'foo.1.tar' 'foo.1.tar.gz') collect:
[:thing| thing extension] => #('' 'tar' 'gz' 'tar' 'gz')
and
#('foo' 'foo.tar' 'foo.tar.gz' 'foo.1.tar' 'foo.1.tar.gz') collect:
[:thing| thing extensions] => #(#() #('tar') #('gz' 'tar') #('tar' '1')
#('gz' 'tar' '1'))
or
#('foo' 'foo.tar' 'foo.tar.gz' 'foo.1.tar' 'foo.1.tar.gz') collect:
[:thing| thing extensions] => #(#() #('tar') #('tar' 'gz') #('1' 'tar')
#('1' 'tar' 'gz'))
?
foo.1.tar.gz is still (supposedly) gzipped data. foo.1.tar is
still (supposedly) a tar file.
so it might make sense to define a couple of test cases to see what we want
> (and maybe compare it to ruby / python / java)
>
> maybe we can add at least an #extensions method returning a list or so.
> If you check `man basename` you can pass explicitly an extension name to
> be stripped away from the full basename. maybe that's a better strategy?
>
> we should definitely find a solution for this!
>
>
> On 2012-06-17, at 19:43, Guillermo Polito wrote:
>
> > Hi!
> >
> > I've seen that FS takes as a file extension everything after the first
> dot,
> > instead of the last one.
> >
> > Now, that conflicts with the naming we are using for our files:
> >
> > - changesets and fileouts often take the form something.cs,
> something.1.cs,
> > something.2.cs
> > - image names: pharo-2.0.image, pharo-2.0.1.image
> >
> > One of them has to be changed I think... :)
> >
> > Also, I'm more used to the other definition of extension: All after the
> > last dot :S
> >
> > Guille
>
>
>
--
best,
Eliot