Hello,
I'm trying to setup a project organised in folder like this :
projet/ dir1/ abstraction1/ foo patch1.pd
dir2/
abstraction2
bar
patch2.pd
patch.pd
in patch1.pd, i've got a declare -path abstraction1 so that i can use the foo abstraction same in patch2 : declare -path abstraction2 to use the bar abstraction patch1 and patch2 are autonomous.
now, in patch.pd, I want to use patch1 and patch2. when using declare -path dir1, I can use patch1, but the declare in patch1 is relative to the projet directory, not to the dir1, so foo is not found.
when using dir2/patch2, it's the same problem.
i would like that patch1 and patch2 deal with the declaration of path for abstraction there are using. And i would like to be able to use patch1 and patch2 in patch, without having to add declaration. i know that there is a warning in declare help not to do that.
so, what is the vanilla way to organised project like that?
for now, the solution i found is to organised things like this :
projet/ dir1/ abstraction1/ foo patch1.pd
dir2/
abstraction2
bar
patch2.pd
all/
patch.pd
and using declare -path ../patch1/abstraction1 in patch1. but i don't really like that.
thanks cheers Cyrille
Hi Cyrille,
I struggled with that for a long time myself. Unless something changed in 0.44/0.45 the only really reliable solution I found was to *only* use [declare] in a *toplevel* file, and never in any abstraction. So for your layout I would only put a [declare] into "patch.pd" like:
In patch.pd: [declare -path . -path dir1 -path dir2 -path dir1/abstraction1 -path dir2/abstraction2]
Note that the first path that I always set is to the current directory (".") - it's useful to have as well.
Frank
On Tue, Oct 08, 2013 at 02:50:24PM +0200, Cyrille Henry wrote:
Hello,
I'm trying to setup a project organised in folder like this :
projet/ dir1/ abstraction1/ foo patch1.pd
dir2/ abstraction2 bar patch2.pd patch.pd
in patch1.pd, i've got a declare -path abstraction1 so that i can use the foo abstraction same in patch2 : declare -path abstraction2 to use the bar abstraction patch1 and patch2 are autonomous.
now, in patch.pd, I want to use patch1 and patch2. when using declare -path dir1, I can use patch1, but the declare in patch1 is relative to the projet directory, not to the dir1, so foo is not found.
when using dir2/patch2, it's the same problem.
i would like that patch1 and patch2 deal with the declaration of path for abstraction there are using. And i would like to be able to use patch1 and patch2 in patch, without having to add declaration. i know that there is a warning in declare help not to do that.
so, what is the vanilla way to organised project like that?
for now, the solution i found is to organised things like this :
projet/ dir1/ abstraction1/ foo patch1.pd
dir2/ abstraction2 bar patch2.pd all/ patch.pd
and using declare -path ../patch1/abstraction1 in patch1. but i don't really like that.
thanks cheers Cyrille
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
hello,
thanks, but i really want to be able to work on "patch1" without having to open "patch".
c
Le 08/10/2013 16:30, Frank Barknecht a écrit :
Hi Cyrille,
I struggled with that for a long time myself. Unless something changed in 0.44/0.45 the only really reliable solution I found was to *only* use [declare] in a *toplevel* file, and never in any abstraction. So for your layout I would only put a [declare] into "patch.pd" like:
In patch.pd: [declare -path . -path dir1 -path dir2 -path dir1/abstraction1 -path dir2/abstraction2]
Note that the first path that I always set is to the current directory (".") - it's useful to have as well.
Ciao
There's a long-standing bug with putting declares in abstractions (they affect the way the _parent_ patch searches for patches, not the abstraction itself.) It's on my dolist to try to restore sanity to the situation somehow (compatibly) but I won't be able to do that anytime soon.
So, yes, for now put all the declares in the toplevel.
cheers Miller
On Tue, Oct 08, 2013 at 05:16:17PM +0200, Cyrille Henry wrote:
hello,
thanks, but i really want to be able to work on "patch1" without having to open "patch".
c
Le 08/10/2013 16:30, Frank Barknecht a écrit :
Hi Cyrille,
I struggled with that for a long time myself. Unless something changed in 0.44/0.45 the only really reliable solution I found was to *only* use [declare] in a *toplevel* file, and never in any abstraction. So for your layout I would only put a [declare] into "patch.pd" like:
In patch.pd: [declare -path . -path dir1 -path dir2 -path dir1/abstraction1 -path dir2/abstraction2]
Note that the first path that I always set is to the current directory (".") - it's useful to have as well.
Ciao
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list