delorie.com/archives/browse.cgi | search |
X-Authentication-Warning: | delorie.com: mail set sender to geda-user-bounces using -f |
X-Recipient: | geda-user AT delorie DOT com |
X-Original-DKIM-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; |
d=gmail.com; s=20120113; | |
h=mime-version:in-reply-to:references:date:message-id:subject:from:to | |
:content-type; | |
bh=XjjHN75pesMUeASo6VY8gnLAf6L+3qmnmHO9rjkRkes=; | |
b=cI3cmXZeOVvmRG0yrcrYT8ED6suqZhA1KY2asJ47ssdubjbFfAeoTg49QHulQ1lNya | |
Eouf4QA6aJSATROtc4f0sPcDiZ1itk1RVKgjzltCR7lZ3AyQgMvpI5t2NmthmWSdcsqm | |
bR293rz8c+FxVlu8UstACrHDPG1KSToT3OjOv/d2WUEFLWXeApx44i5K4U/41IENLqQb | |
/ZVa/WVIli8LeFyNmhWXBunCSts45Jh2gK1eRvF4+L9CpPC0v8mhJLhmKLuF/IOLuoTc | |
zATUOR91Z2xUF/5BnRIP4reWAcSvTVUq+TPoXBWrorSYt8ZVfIx2QBAqBUkQXXMsSwui | |
Olng== | |
X-Google-DKIM-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; |
d=1e100.net; s=20130820; | |
h=x-gm-message-state:mime-version:in-reply-to:references:date | |
:message-id:subject:from:to:content-type; | |
bh=XjjHN75pesMUeASo6VY8gnLAf6L+3qmnmHO9rjkRkes=; | |
b=URzxevUMoB2p1H2BnNkYlGo4vhBkUv6kdNpwGU4SPzr+dQJqzWZay3OItMGKZMlub0 | |
KddY1pUYxyMTmkxsRR/pdcfEMqokvxVTpOv4F6iNemmfQrv6KqNurlwcz7BM7FO6Dz38 | |
i/1HoELNU6lHuhDjvQTiI0sYDa0Cu2o7iKmxE0unpkkVlVFhJsxP4P0xaggvrEm1cQL2 | |
R1E83vfgmGquYNrzXX2gMZsr1FW9wSIQmK+aTIJMZLvm1jPShmqGCK0mFLuHws1D8Wob | |
CbY/4V5dP9uPG8J7FWX63Rh2oV56AL2kiO4fKR5smHRf7+cZMNZiVRK7INLBHWmTAqkh | |
AFUA== | |
X-Gm-Message-State: | ALoCoQmYcdBWAlmXUZEdxdJZn8gjjN3u5QYp9A4F5Jv2NV7DWa/bUFG5xn7OWi9wSpSEdS/w4Bjt4ETjOw1YPwyU4zVETChuCA== |
MIME-Version: | 1.0 |
X-Received: | by 10.194.243.6 with SMTP id wu6mr29404917wjc.14.1453212667807; |
Tue, 19 Jan 2016 06:11:07 -0800 (PST) | |
In-Reply-To: | <20160119123332.3A27581053DB@turkos.aspodata.se> |
References: | <20151218205019 DOT 1C1FF809D78C AT turkos DOT aspodata DOT se> |
<20151223141117 DOT D51F6809D795 AT turkos DOT aspodata DOT se> | |
<20151230211705 DOT GE4099 AT localhost DOT localdomain> | |
<20151231021429 DOT EE320809D79B AT turkos DOT aspodata DOT se> | |
<20151231185752 DOT 78437809D79A AT turkos DOT aspodata DOT se> | |
<20151231191107 DOT BCADE809D79A AT turkos DOT aspodata DOT se> | |
<CAMvDHVAqu0Hute-JPRrxRSvy19H1cU4f0ZZ=Lu_6QZeA-q=PUA AT mail DOT gmail DOT com> | |
<20160119091756 DOT B960981053DB AT turkos DOT aspodata DOT se> | |
<CAMvDHVA+dW81TzJAkAvFnB_kaAgO9Rr4Er-QQ0rNzte1GOHgyA AT mail DOT gmail DOT com> | |
<20160119123332 DOT 3A27581053DB AT turkos DOT aspodata DOT se> | |
Date: | Tue, 19 Jan 2016 17:11:07 +0300 |
Message-ID: | <CAMvDHVBo50FJFi9n-Tcvux4ZngRcvBZS2cyQENA7pODEptL9fg@mail.gmail.com> |
Subject: | Re: [geda-user] gnetlist -g partlist3 in error |
From: | "Vladimir Zhbanov (vzhbanov AT gmail DOT com) [via geda-user AT delorie DOT com]" <geda-user AT delorie 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 |
On 1/19/16, karl AT aspodata DOT se <karl AT aspodata DOT se> wrote: ... >> The issue was in incorrect post-processing function you've >> mentioned. It used the 'member' function that gave incorrect >> result if the list contained a searched record twice. > > Did you find out what was the strange thing about R8 = 10k: > > http://www.delorie.com/archives/browse.cgi?p=geda-user/2015/12/31/14:11:23 As I already said, the processing function count-same-parts after filtering out refdeses saw two records ("resistor" "footprint_name" "10k") and chose the wrong one using the 'member' function after 'reverse' list. The 'member' function returns not a record but the list tail starting from this record. After you've changed value to 9k the records got different and it all worked. The way of sorting/hacking the lists was non-functional and opaque there, so I didn't dig down deeper after I found this behaviour, though I believe it worked in some other cases where records were in other places of the whole list (when I saw the wrong behaviour two the same records were the first and the last in the list). > >> I've written other functions for sorting and am planning to >> replace the current ones with them. Didn't yet decided how to do >> this better. As of now, the code in my 'parts' branch on github >> seem to be working, though since it is a draft, it needs much >> rewriting and commenting before pushing upstream. > > Give me a link, I can test it if you like. The parts branch at https://github.com/vzh/geda-gaf >> > But I do think the output should not have its case changed. >> Then we could not join "Resistor 10k" and "resistor 10k" and count >> them together in some cases. > > I think the best thing is to push that problem down to the user. Agreed > >> > If you want to change anything, wouldn't it be better to have a >> > separate >> > sch/sym beautifier script ? >> >> Why not? However, at least basic things have to be done well. > > 1, In 2010 I did one to remove numslots=0 attribute which gsymcheck > complains about: > > $ find . -type f -name \*.sym | xargs perl -i -ne 'if (m/^numslots\=0/) { > undef($old); } else { print $old if $old; undef($old); if (m/^T /) { $old = > $_; } else { print; }}' gsymcheck is broken. I have rewritten it in scheme (see the gsymcheck branch in the above repository on github) and used as a module for gschem to check symbols interactively. However, I won't work on it further yet since I have some other thoughts :) > > 2, upcase 1st char of device attribute. It's easy to do using Scheme, if you want, isn't it ;) > > Any more, do you have a list ? No ... > Great, I'd like to test that. You haven't even recompile gnetlist for that. Just use something like: gnetlist -m ./gnetlist/scheme/*partslist*.scm -g partslist3 -o - test.sch ... >> > And it would be nice if columns lined up as in first example above. >> >> The same. I believe this is a business for some post-processing >> program, since we just output a TSV lists. > > Hmm, maybe we could provide a postprocessor. gnetlist is our postprocessor. You can load your custom/preferred functions either before or after loading backends and thus change its behaviour (e.g., using the -m option mentioned before). Cheers, Vladimir
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |