On Jul 21, 2008, at 3:46 PM, Frank Barknecht wrote:
Hallo, Atte André Jensen hat gesagt: // Atte André Jensen wrote:
Ok, thanks for all the advice, I'll look at sssad, then.
First problem: It seems it's there, but broken (is it my that's
broken?):Pd-extended is broken in that it cannot load abstractions that are in directories which have the same name as the abstraction. At least that's how I understand the problem. Users of upstream Pd like me aren't affected.
"Pd-extended is broken" is much too broad. Saying the whole thing is
broken doesn't help anyone. The problem is somewhere in the
relationship of the libdir loader and Pd's logic for checking if it
has already loaded a binary library. If you load a libdir called
"blah", you won't be able to load [blah/blah] or [blah].
.hc
However google suggested that I should create [sssad/sssad],
Don't believe google: the official name for [sssad] is [sssad].
But see below.
and that worked. Unfortunately right-clicking->help totally freezes up my system (something that never happens). What's up with that? Is that just a single bug (so "don't click here") or a symptom of something bad?
Maybe it's the same issue of pd-extended that makes it fail to load [sssad]? I have no idea.
Additional question: I never saw the slash in objects (like in [sssad/ssad]) before, it that some kind of namespace thing? Where
can I read more on that, including pros/cons and recommended ways/ conventions?Can of worms here, you may want to read up in the archives.
Basically it's like this: If your -path setting points to "somedir" and there is a directory "test" in it like "somedir/test", then you can load an abstration "myabs.pd" in "test" like this:
[test/myabs]
This use of directory prefixes as a primitive namespace replacement is tricky, however. For one, you also have to set the -helppath to "somedir", if you want to let Pd find the test/myabs-help.pd file in. This helpfile next to myabs.pd can use [myabs] directly, without prefix.
But if you put the helpfile somewhere else, say into /doc/5.reference, then it won't find [myabs] without directory prefix anymore, so it has to use [test/myabs]. But if it uses [test/myabs] it won't work anymore if you copy myabs.pd and myabs-help.pd directly into your -path or into some other directory with a different name than "test"!
Directory prefixes can make things messy, if you want to just copy abstractions around, e.g. to make self-contained packages or use project directories with everthing included.
Pd-extended installs sssad.pd into extra/sssad/sssad.pd and as "extra" is in your pd-path, you can create [sssad/sssad] in pd-extended as well as [sssad] - or you used to until something broke. I was never fond of the additional and redundant "sssad/sssad", but I'm all for freedom of choice so people may do whatever they like. But the official name as far as I'm concerned is [sssad].
As a workaround you can move the content of extra/sssad into the "extra" directory or another directory of your Pd-path.
E.g. if you have a checkout of the Pd subversion trunk in "PDSVN", you can use this in your .pdrc:
-path PDSVN/trunk/abstractions/footils/sssad/
to always load the "trunk" version of sssad.
Ciao
Frank Barknecht _
______footils.org__
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/ listinfo/pd-list
I have the audacity to believe that peoples everywhere can have three
meals a day for their bodies, education and culture for their minds,
and dignity, equality and freedom for their spirits. - Martin
Luther King, Jr.