[PD] Patch load path

Krzysztof Czaja czaja at chopin.edu.pl
Fri Nov 9 20:22:34 CET 2001


hi,

in simple cases, I think, the best way is what Miller suggests: to copy
the main patch into user's directory (or create a link) and to prepend
library directory to the -path.

But unfortunately the whole problem propagates, if user wishes to replace
an abstraction, which is not directly contained in the main patch.  In
such cases user has to copy (or link to) all intermediate patches. I can
imagine, that in a complex, multiuser Pd-environment this may become
a large obstacle indeed.

Maybe one possible solution is to introduce a `virtual function'
mechanism.  What I mean here, is for a designer of library patches to
declare any overridable abstraction as `virtual', by writing, for example,
[.abs] into an object box instead of plain [abs].  Virtual resolution
would start from `user directory', and, only after failure, continue
searching in the regular order (first canvas environment, then pd_path).
The `user directory' might be set with yet another command option to pd,
or, in the absence of such, default to startup directory.

(Do not blame _me_ for using an analogy to virtual functions, please:-)

Krzysztof

Btw. there is also a nasty trick having the same effect as coping or
linking main library patch to user's directory.  It is to write, for
example

pd open ../../usr/local/pdlibdir/main.pd /home/userdir

in the sendpanel.

Peter Lunden wrote:
> 
> The problem is that I have a PD application installed on a system. The
> application consists of a library of patches. Now the directory of the
> lib is not writable by the normal users. Normaly the user starts the
> application from his own directory but the main patch is in the library.
> So the user that likes to override some behavior of the default
> application can not do this without copying a large part of the library
> to his own directory. I would perfere that the user only needs to copy
> the patches hi like to change, not half the library. It could also be
> very difficult to understand what needs to be copyed, the user has to
> understand the dependencies of the library patches. I consider this as a
> large problem.



More information about the Pd-list mailing list