I don't know if this is purely "canonical", but this is how it works:
The Document's path was added to provide a default location for deken to download externals, ~/Documents/Pd. It is purely optional but builds on the existing search path functionality. The idea is help beginners manage search paths and move away from installing stuff to extra or ~/pd-externals, etc. It is implemented as a gui plugin which is included with Pd. The source is in the Pd tcl folder.
If the Documents path is used, an "externals" subfolder is created and added to the search paths, so installing something via deken, should only require [declare] -path and/or -lib for usage. Basically, if an abstraction-only library is in ~/Documents/Pd/externals ala ~/Documents/Pd/externals/extname, then it should be found with [declare -path extname] assuming the user is using the Documents path *and* has installed the "extname" external to the default location via deken. You can, of course, manually add external folders as well.
Additionally, you can restrict declare to only look in relative paths when adding folders relative to a patch by prepending . or .. to the beginning, ie [declare -path ./extname] will only look for a folder named "extname" in the same folder as the patch, without looking in any of the user or "standard" search paths.
On Feb 16, 2021, at 12:00 PM, pd-list-request@lists.iem.at wrote:
Message: 2 Date: Tue, 16 Feb 2021 10:33:52 +0100 From: João Pais <jmmmpais@gmail.com mailto:jmmmpais@gmail.com> To: pd-list@lists.iem.at mailto:pd-list@lists.iem.at Subject: Re: [PD] list item picker widget - [declare] lib paths Message-ID: <e362b696-301a-ee0d-e4d9-a5db6ee32676@gmail.com mailto:e362b696-301a-ee0d-e4d9-a5db6ee32676@gmail.com> Content-Type: text/plain; charset=utf-8; format=flowed
I'm not quite sure what the canonical declaration style is, -lib/- path or -stdlib/-stdpath. I guess the former will work better for Pd's own default setup.
I should say this is true since 0.50 or so. Before that, -stdlib/- stdpath was the common thing to use.
What would be then the canonical now, no "-std"? I can change that easily in my patches, but would be good to have it confirmed.
Dan Wilcox @danomatika http://twitter.com/danomatika danomatika.com http://danomatika.com/ robotcowboy.com http://robotcowboy.com/
Thanks for the full picture, Dan.
I guess the main point is that when Pd users go along the defaults, they need patches to use -path and -lib.
Even more, -lib and -path _also_ work for stuff installed in any of the standard search paths like <pd-dir>/extra. Assuming that people use a recent version of Pd, there can be no harm in using -lib and -path. They cover more use cases. Thus, I'd say using -lib and -path should be considered the canonical way of loading libraries.
Roman
On Tue, 2021-02-16 at 14:09 +0100, Dan Wilcox wrote:
I don't know if this is purely "canonical", but this is how it works:
The Document's path was added to provide a default location for deken to download externals, ~/Documents/Pd. It is purely optional but builds on the existing search path functionality. The idea is help beginners manage search paths and move away from installing stuff to extra or ~/pd-externals, etc. It is implemented as a gui plugin which is included with Pd. The source is in the Pd tcl folder.
If the Documents path is used, an "externals" subfolder is created and added to the search paths, so installing something via deken, should only require [declare] -path and/or -lib for usage. Basically, if an abstraction-only library is in ~/Documents/Pd/externals ala ~/Documents/Pd/externals/extname, then it should be found with [declare -path extname] assuming the user is using the Documents path *and* has installed the "extname" external to the default location via deken. You can, of course, manually add external folders as well.
Additionally, you can restrict declare to only look in relative paths when adding folders relative to a patch by prepending . or .. to the beginning, ie [declare -path ./extname] will only look for a folder named "extname" in the same folder as the patch, without looking in any of the user or "standard" search paths.
On Feb 16, 2021, at 12:00 PM, pd-list-request@lists.iem.at wrote:
Message: 2 Date: Tue, 16 Feb 2021 10:33:52 +0100 From: João Pais jmmmpais@gmail.com To: pd-list@lists.iem.at Subject: Re: [PD] list item picker widget - [declare] lib paths Message-ID: e362b696-301a-ee0d-e4d9-a5db6ee32676@gmail.com Content-Type: text/plain; charset=utf-8; format=flowed
I'm not quite sure what the canonical declaration style is, -lib/- path or -stdlib/-stdpath. I guess the former will work better for Pd's own default setup.
I should say this is true since 0.50 or so. Before that, -stdlib/- stdpath was the common thing to use.
What would be then the canonical now, no "-std"? I can change that easily in my patches, but would be good to have it confirmed.
Dan Wilcox @danomatika danomatika.com robotcowboy.com
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list