<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Arial,Helvetica,sans-serif;" dir="ltr">
<p></p>
<div>Ok, Thanx for the detalis.</div>
<div><br>
</div>
<div>Anyway before concluding this thread I must said that this year I've been connecting the pref.file to 2 things:</div>
<div><br>
</div>
<div>Purr-Data : <a href="https://lists.puredata.info/pipermail/pd-list/2017-01/117407.html" id="LPlnk932569" previewremoved="true">
https://lists.puredata.info/pipermail/pd-list/2017-01/117407.html</a></div>
<div>Deken : If necessary the pref.file can hold the deken path.for.externals.</div>
<div><br>
</div>
<div>And most importantly I connected the pref.file cuz Miller announced it this year for Win & Mac.</div>
<div><br>
</div>
<div>Do you think there's need to add a couple of things to the actual prefs?</div>
<div><br>
</div>
<div>Font metrics?</div>
<div>Deken path?</div>
<div><br>
</div>
<div>Salutti,</div>
<div>Lucarda.</div>
<br>
<p></p>
<p><br>
</p>
<div id="Signature"><font face="Courier New, Courier, Monospace" size="2">Mensaje telepatico asistido por maquinas.</font>
</div>
<br>
<br>
<div style="color: rgb(0, 0, 0);">
<div>
<hr style="display:inline-block; width:98%" tabindex="-1">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> Pd-list <pd-list-bounces@lists.iem.at> on behalf of IOhannes m zmoelnig <zmoelnig@iem.at><br>
<b>Sent:</b> Monday, February 20, 2017 10:15 AM<br>
<b>To:</b> pd-list@lists.iem.at<br>
<b>Subject:</b> Re: [PD] (wip) Preferences file.</font>
<div> </div>
</div>
</div>
<font size="2"><span style="font-size:10pt;">
<div class="PlainText">On 2017-02-20 03:08, Lucas Cordiviola wrote:<br>
>> What are the practical problems with using the current<br>
>> format for the Pd preferences file under Linux?<br>
> <br>
> I don't know,<br>
<br>
so you would like to replace tried-and-tested code with something else<br>
that is known to be hard to implement correctly.<br>
for no appararent reason (apart from breaking compatibility).<br>
<br>
i would say, this is a strinct "nono"<br>
<br>
<br>
apart from that, XML is a buzzword of the 90ies, and has been superceded<br>
by various better formats.<br>
nobody in their right mind would jump on the XML train these days (OSX's<br>
plist is an XML file; but it has been like that for ever; they also<br>
haven't changed it to json or whatever, probably because they also<br>
prefer to not replace tried-and-tested code with new buggy code for no<br>
apparaent reasons.)<br>
<br>
<br>
> I'm a windows user, and think that the linux .pdsettings will be a better substitute for the actual windows method of writing in the registry.<br>
<br>
how so?<br>
<br>
the differences between the .pdsettings stored on the filesystem resp.<br>
in the w32 registry are really small.<br>
the registry entry is really just the .pdsettings, but with the data<br>
stored on a "virtual filesystem" (the registry), that already provides a<br>
parser for the key/value mapping required by .pdsettings.<br>
<br>
i think part of the hate for the registry stems from the repeated mantra<br>
that "you can kill your system if you don't know what you do when<br>
editing the registry".<br>
in principle, i think the mantra is correct.<br>
but the problem does not come from the registry itself, but because you<br>
can shoot your system if fuck your system configuration.<br>
moving the system configuration to the filesystem would only change the<br>
mantra to "you can kill your system if you don't know what you do when<br>
editing files". (which is correct as well).<br>
<br>
<br>
> And think that it should live on the pd/bin dir & not in a user dir. <br>
<br>
hmm, no.<br>
<br>
in general, the pd/bin dir is a read-only directory.<br>
this is a good thing, as it helps ensuring that some random malware you<br>
just clicked on in InternetExplorer10 won't be capable of changing Pd<br>
itself (if you can write to pd\bin to create your preferences file, then<br>
you can also replace pd\bin\pd.exe)<br>
<br>
things might be different on *your* personal setup, e.g. because you run<br>
Pd from a FAT32 formatted USB-stick (which doesn't allow any access<br>
control); or because you are running all applications as Administrator<br>
(which bypasses a lot of access control). but that doesn't change the<br>
general principle¹. some things have changed since the 80ies...<br>
<br>
also, there is a very good reason that virtually all OSs have agreed on<br>
central storage locations for configuration *besides* the<br>
application-folders.<br>
<br>
<br>
> to disallow sharing prefs. on multiple installations. (Pd, Purr-Data, PsVST)<br>
<br>
hmm, no.<br>
the proper way to disallow sharing prefs, is by using different<br>
namespaces for all these projects.<br>
if Pd-vanilla uses ~/.pdsettings and ~/.config/pure-data/ for its<br>
configuration, then other programs simply should not (if they don't want<br>
to share prefs, that is).<br>
instead they should use ~/.config/pd-l2ork/ or whatever.<br>
problem solved.<br>
<br>
if you do want to have multiple configurations for the same flavour of<br>
Pd (e.g. pd-vanilla), you can already simply use batch-files.<br>
all the things settable via the config are also settable via cmdline<br>
args (if they are not, you should file a bugreport).<br>
"pd -noprefs -jack -channels 16".<br>
<br>
fgadr<br>
IOhannes<br>
<br>
<br>
<br>
¹ having said this, there *is* already a way to embed preferences on OSX<br>
and linux alongside your binary.<br>
just put a default.pdsettings file into your PD directory (on linux) or<br>
a plist-file with the name of "org.puredata.pd" into your App-bundle (on<br>
OSX).<br>
this seems to be somewhat broken, at least on linux (it get's ignored if<br>
you also have a ~/.pdsettings file), and might be worth fixing.<br>
<br>
<br>
<br>
<br>
</div>
</span></font></div>
</div>
</body>
</html>