I second this. So far, I've been putting abstractions / libs in a top level folder and add a declare to them in the main patch. I *only* use [decalre -stdpath] in an abstraction as a simple replacement for [import] in vanilla.
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.
Yeah, this is what I do. A similar setup:
project/
libs/
lib_declares.pd <-- has one big [declare -lib lib1 -lib lib2 ...etc] inside for all the needed pd-ext externals
rjlib
rc-patches
... etc
Unit-Control.pd <--- main pd patch that opens and closes song patches
songs/
Song1.pd <---- [declare -path . -path ../../libs/rj -path ../../libs/rc-patches] + include [../../libs/lib_declare.pd]
Song2.pd <-- same deal
Song 3.pd <--- loading some of the shared samples via ../../samples/drums/kick1.wav, etc
etc ...
samples/
drums/kick1.wav etc
effects/
Subject: Re: [PD] declare and abstraction
Date: October 8, 2013 10:30:38 AM EDT
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
--
Frank
--------
Dan Wilcox
@danomatika