www.delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2022/07/25/12:50:48

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.7+dev
X-Exmh-Isig-CompType: comp
X-Exmh-Isig-Folder: inbox
From: "karl AT aspodata DOT se [via geda-user AT delorie DOT com]" <geda-user AT delorie DOT com>
To: geda-user AT delorie DOT com
Subject: [geda-user] Defaults for net attribute
Mime-Version: 1.0
Message-Id: <20220725164851.B70A680FBE4D@turkos.aspodata.se>
Date: Mon, 25 Jul 2022 18:48:51 +0200 (CEST)
X-Virus-Scanned: ClamAV using ClamSMTP
Reply-To: geda-user AT delorie DOT com

 Hello, the net symbols I have have a e.g. net=+5V:1
attribute which is visible so it is easily to change.
It would be nice to be able to drop the ":1" part of
the attribute:
. there is only one pin
. without it I could have the rest in a larger font
. it is plain ugly and might confuse beginners

So I'm loocking in the code to find where it is parsed.
Unforturnately gschem doesn't work here so I'm loockin
into lepton.

 Theese two files seems to be related:
liblepton/scheme/netlist/net.scm
liblepton/scheme/symbol/check/net-attrib.scm

In the first of the two I find (line 89-106):

============
(define (check-net-attrib net)
  (let* ((value (attrib-value net))
         (colon-position (string-index value #\:)))
    (if colon-position
        (let ((name (string-take value colon-position))
              (pinnumbers (string-split (string-drop value
                                                     (1+ colon-position))
                                        #\,)))
          (check-duplicates/one-net
           (map (lambda (pinnumber) (make-net-map net pinnumber name))
                (filter (cut check-net-attrib-pinnumber net <>) pinnumbers))))
        (begin
          (blame-object net
                        'error
                        (format #f
                                (G_ "Invalid net attribute: net=~A")
                                value))
          '()))))
============

I can guess what it is about, but there too much I'm unused to in guile,
it looks I have change the "(begin (blame-object" and move the 
"(check-duplicates/one-net" to outside the "(if".

Is there any suggestion how to change this ?

Regards,
/Karl Hammar


- Raw text -


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