www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2011/12/05/15:42:24

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=gamma;
h=mime-version:in-reply-to:references:date:message-id:subject:from:to
:content-type;
bh=ofuTNpA8jcBSo7+T4bmu9beCPPRnDhpU03LdyYXYgHc=;
b=qcWVJLZ06K4sXUx5+vd4axgCus4+WGteD/TESB0qmaPSklY2390AvgPEV5O/rjkqQ6
AZownzMfNtS0Z3MEovRJsPepmnL/e0marsJZgLOwRbMcUaSuEYc1BYGpHCP8Gg/+TfqF
TdMTgjxouVzoKvWVLWugIjC5M0ubPda5HT2ao=
MIME-Version: 1.0
In-Reply-To: <CAAVSQ3uJh64W9wxMof1FS4swK3amYrX0eAqyS+e-nd1vOGJSQA@mail.gmail.com>
References: <CAAVSQ3vnFZkWdWn=LCbf+WSM0vOx9pwW+OaeTs47EdO8nfmC_w AT mail DOT gmail DOT com>
<20111130211002 DOT 32B5081F6275 AT turkos DOT aspodata DOT se>
<CAAVSQ3tkg3es-uBn+yFroysi5xAOtNqW5hTs2yAWQfo47rUaVQ AT mail DOT gmail DOT com>
<20111203133340 DOT E09A181D541B AT turkos DOT aspodata DOT se>
<CAAVSQ3tQLSsBoCjzDE+qAGrVAzCJKzocACyMOkxVBPUqyLBD7Q AT mail DOT gmail DOT com>
<20111203215549 DOT 238A581D5424 AT turkos DOT aspodata DOT se>
<CAAVSQ3uJh64W9wxMof1FS4swK3amYrX0eAqyS+e-nd1vOGJSQA AT mail DOT gmail DOT com>
Date: Mon, 5 Dec 2011 21:42:16 +0100
Message-ID: <CAAVSQ3uuCcY8wwhsAAzC6BktW4wE9N4dHxpxXupnUApZNf52KQ@mail.gmail.com>
Subject: Re: [geda-user] Dynamic loading personal components (with subfolder)
into the search component tree of gschem
From: Luigi Salvatore Palese <ultrabit AT gmail DOT com>
To: geda-user AT delorie DOT com
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

--0016e65dabb4b3e23804b35e5ab5
Content-Type: multipart/alternative; boundary=0016e65dabb4b3e23204b35e5ab3

--0016e65dabb4b3e23204b35e5ab3
Content-Type: text/plain; charset=ISO-8859-1

On Sun, Dec 4, 2011 at 11:19 PM, Luigi Salvatore Palese
<ultrabit AT gmail DOT com>wrote:

>
>
> On Sat, Dec 3, 2011 at 10:55 PM, Karl Hammar <karl AT aspodata DOT se> wrote:
>
>> Luigi:
>> > On Sat, Dec 3, 2011 at 2:33 PM, Karl Hammar <karl AT aspodata DOT se> wrote:
>> ...
>> > To manage $HOME substitution you need getenv:
>> >   (component-library-add-tree "cvs" (build-path (getenv "HOME")
>> "/Net/cvs/
>> > cvs.gedasymbols.org/www/user"))
>>
>> Hmm, my c version [1] got that for free. How should I do to take a
>> string and substitute all $VAR's, it's annoying to do that manually
>> in the gafrc file ?
>>
>
> libgeda already has s_expand_env_variables() method to do this, but is not
> exported to scm (as i can see).
> Before start writing new code someone could ask to developers if is it
> possible to export it for use in guile.
>

gEDA developer Peter Brett, thanks again, explain me the better solution is
to write code directly in scheme instead of export (because of a lot of
maintenance/testing requirements).
So a feature request on the Launchpad bug tracker needs to be opened...


In attachment an improved version of the script.

Regards,
Luigi

--0016e65dabb4b3e23204b35e5ab3
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<br><br><div class=3D"gmail_quote">On Sun, Dec 4, 2011 at 11:19 PM, Luigi S=
alvatore Palese <span dir=3D"ltr">&lt;<a href=3D"mailto:ultrabit AT gmail DOT com"=
 target=3D"_blank">ultrabit AT gmail DOT com</a>&gt;</span> wrote:<br><blockquote =
class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid=
;padding-left:1ex">



<br><br><div class=3D"gmail_quote"><div>On Sat, Dec 3, 2011 at 10:55 PM, Ka=
rl Hammar <span dir=3D"ltr">&lt;<a href=3D"mailto:karl AT aspodata DOT se" target=
=3D"_blank">karl AT aspodata DOT se</a>&gt;</span> wrote:<br><blockquote class=3D"=
gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-=
left:1ex">




Luigi:<br>
<div>&gt; On Sat, Dec 3, 2011 at 2:33 PM, Karl Hammar &lt;<a href=3D"mailto=
:karl AT aspodata DOT se" target=3D"_blank">karl AT aspodata DOT se</a>&gt; wrote:<br>
</div>...<br>
<div>&gt; To manage $HOME substitution you need getenv:<br>
&gt; =A0 (component-library-add-tree &quot;cvs&quot; (build-path (getenv &q=
uot;HOME&quot;) &quot;/Net/cvs/<br>
&gt; <a href=3D"http://cvs.gedasymbols.org/www/user" target=3D"_blank">cvs.=
gedasymbols.org/www/user</a>&quot;))<br>
<br>
</div>Hmm, my c version [1] got that for free. How should I do to take a<br=
>
string and substitute all $VAR&#39;s, it&#39;s annoying to do that manually=
<br>
in the gafrc file ?<br></blockquote></div><div><br>libgeda already has s_ex=
pand_env_variables() method to do this, but is not exported to scm (as i ca=
n see). <br>Before start writing new code someone could ask to developers i=
f is it possible to export it for use in guile.<br>



</div></div></blockquote><div><br>gEDA developer Peter Brett, thanks again,=
 explain me the better solution is to write code directly in scheme instead=
 of export (because of a lot of maintenance/testing requirements).<br>
So a  feature request on the Launchpad bug tracker needs to be opened...<br=
><br><br>
In attachment an improved version of the script.<br><br>Regards,<br>Luigi<b=
r>
</div></div>

--0016e65dabb4b3e23204b35e5ab3--
--0016e65dabb4b3e23804b35e5ab5
Content-Type: text/x-scheme; charset=US-ASCII; name="local-symbols-library.scm"
Content-Disposition: attachment; filename="local-symbols-library.scm"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_gvty48h60

OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IC0qLVNjaGVtZS0qLQo7ICAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu
IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CjsgICAgaXQgdW5kZXIgdGhlIHRlcm1zIG9m
IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKOyAgICB0aGUg
RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl
LCBvcgo7ICAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCjsKOyAgICBUaGlz
IHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1
bCwKOyAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll
ZCB3YXJyYW50eSBvZgo7ICAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKOyAgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm
b3IgbW9yZSBkZXRhaWxzLgo7CjsgICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv
ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKOyAgICBhbG9uZyB3aXRoIHRoaXMgcHJv
Z3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KOwo7IFRo
aXMgY29kZSBpcyBiYXNlZCBvbiB0aGUgc291cmNlIGJ5IFBldGVyIEJUIEJyZXR0IGFuZCBLYXJs
IEhhbW1hci4gCjsKOyBDb3B5cmlnaHQgKEMpIDIwMTEgIEwuUy5QLiA8dWx0cmFiaXRAZ21haWwu
Y29tPgo7CjsgY2hhbmdlbG9nIDEyLzA1LzIwMTE6CjsJKiBzb3J0aW5nIGZvbGRlcmxpc3QgYmVm
b3JlIGFkZGluZyB0cmVlCjsJKiB1c2luZyBzdHJpbmctc3VmZml4LWNpIGluc3RlYWQgb2YgcmVn
ZXggaW4gdGhlIGlzLXRoZXJlLWFueS1zeW1ib2xzLWluPyBwcm9jZWR1cmUKOwo7IGNoYW5nZWxv
ZyAxMi8wNC8yMDExOgo7CSogYWRkZWQgKGlzLXRoZXJlLWFueS1zeW1ib2xzLWluPyBkaXIpIHBy
b2NlZHVyZSB0byBjaGVjayBpZiBhIGZvbGRlciBjb250YWlucyBhbnkgc3ltYm9sIGZpbGUuCjsK
OyBjaGFuZ2Vsb2cgMTIvMDIvMjAxMToKOwkqIHN0YXJ0aW5nIHZlcnNpb24gCjsKOyBUb2RvIDoK
OwkqIEltcGxlbWVudCBlbnZpcm9ubWVudCB2YXJzIHN1YnN0aXR1dGlvbgo7CSogQ29kZSBjbGVh
bnVwIGFuZCBvcHRpbWl6YXRpb24KCih1c2UtbW9kdWxlcyAoaWNlLTkgZnR3KSkKKGRlZmluZSBm
b2xkZXJsaXN0ICcoKSkKCjsKOyBDaGVja2luZyBmb3Igc3ltYm9scyBpbiBmb2xkZXIuLi4gCjsg
cmV0dXJuOgo7CXRydWUgCS0gaWYgYXQgbGVhc3Qgb25lIHN5bWJvbCBmaWxlIGlzIHByZXNlbnQK
OwlmYWxzZSAJLSBpbiBvdGhlciBjYXNlCjsKKGRlZmluZSAoaXMtdGhlcmUtYW55LXN5bWJvbHMt
aW4/IGRpcikKICAobGV0ICgoZGlyLXN0cmVhbSAob3BlbmRpciBkaXIpKSkKICAgIChsZXQgbG9v
cCAoKG5ldyAocmVhZGRpciBkaXItc3RyZWFtKSkKICAgICAgICAgICAgICAgKGFjYyAnKCkpKQkK
ICAgICAgKGlmIChlb2Ytb2JqZWN0PyBuZXcpCgkgIChiZWdpbgoJICAgIChjbG9zZWRpciBkaXIt
c3RyZWFtKQoJICAgICNmKQoJICAobGV0ICgoc3RhdC1vYmogKHN0YXQgKHN0cmluZy1hcHBlbmQg
ZGlyICIvIiBuZXcpKSkpCgkgICAgKGlmIChlcT8gJ3JlZ3VsYXIgKHN0YXQ6dHlwZSBzdGF0LW9i
aikpCgkJKGlmIChzdHJpbmctc3VmZml4LWNpPyAiLnN5bSIgbmV3KQoJCSAgICAoYmVnaW4KCQkg
ICAgICAoY2xvc2VkaXIgZGlyLXN0cmVhbSkKCQkgICAgICAjdCkKCQkgICAgKGxvb3AgKHJlYWRk
aXIgZGlyLXN0cmVhbSkKCQkJICAoaWYgKG9yIChzdHJpbmc9PyAiLiIgIG5ldykgICAgICAgICAg
ICAgOzs7IGlnbm9yZQoJCQkJICAoc3RyaW5nPT8gIi4uIiBuZXcpKSAgICAgICAgICAgIDs7OyBp
Z25vcmUKCQkJICAgICAgYWNjCgkJCSAgICAgIChjb25zIG5ldyBhY2MpKSkpCgkJKGxvb3AgKHJl
YWRkaXIgZGlyLXN0cmVhbSkKCQkgICAgICAoaWYgKG9yIChzdHJpbmc9PyAiLiIgIG5ldykgICAg
ICAgICAgICAgOzs7IGlnbm9yZQoJCQkgICAgICAoc3RyaW5nPT8gIi4uIiBuZXcpKSAgICAgICAg
ICAgIDs7OyBpZ25vcmUKCQkJICBhY2MKCQkJICAoY29ucyBuZXcgYWNjKSkpKSkpKSkpCjsKOyBC
dWlsZHMgYSBsaXN0IG9mIG9ubHkgZm9sZGVycyBjb250YWluaW5nIHN5bWJvbCBmaWxlcy4KOwoo
ZGVmaW5lIGJ1aWxkLXN5bWJvbHMtbGlzdAogIChsYW1iZGEgIChmaWxlbmFtZSBzdGF0aW5mbyBm
bGFncykKICAgIChpZiAoZXE/ICdkaXJlY3RvcnkgZmxhZ3MpCgkoaWYgKGlzLXRoZXJlLWFueS1z
eW1ib2xzLWluPyBmaWxlbmFtZSkKCSAgICAoYmVnaW4gIAoJICAgICAgKHNldCEgZm9sZGVybGlz
dCAgCgkJICAgIChhcHBlbmQgZm9sZGVybGlzdAoJCQkgICAgKGxpc3QgZmlsZW5hbWUgKSkpKQoJ
ICAgICkpCiAgICAjdCkKKQoKOwo7IAo7CihkZWZpbmUgY29tcG9uZW50LWxpYnJhcnktYWRkLXRy
ZWUKCShsYW1iZGEgKHByZWZpeCBtYWluZm9sZGVyKQoJCTsgQnVpbGRpbmcgdGhlIGxpc3Qgb2Yg
Zm9sZGVycwoJCShzZXQhIG1haW5mb2xkZXIgKHN0cmluZy10cmltLXJpZ2h0IChzdHJpbmctdHJp
bS1ib3RoIG1haW5mb2xkZXIgY2hhci1zZXQ6d2hpdGVzcGFjZSkgI1wvKSkKICAgICAgICAJKGZ0
dyBtYWluZm9sZGVyIGJ1aWxkLXN5bWJvbHMtbGlzdCkKCShmb3ItZWFjaAoJCShsYW1iZGEgKGRp
cikKCQkJKGNvbXBvbmVudC1saWJyYXJ5IGRpciAoc3RyaW5nLWFwcGVuZCBwcmVmaXggKHN0cmlu
Zy1jb3B5IGRpciAoc3RyaW5nLWxlbmd0aCBtYWluZm9sZGVyKSkpKQoJCSkKCSAoc29ydC1saXN0
ISBmb2xkZXJsaXN0IHN0cmluZz4/KSkKCSkKKQoK
--0016e65dabb4b3e23804b35e5ab5--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019