delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2014/04/17/16:21:45

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
Date: Thu, 17 Apr 2014 16:21:29 -0400
Message-Id: <201404172021.s3HKLTWI018066@envy.delorie.com>
From: DJ Delorie <dj AT delorie DOT com>
To: geda-user AT delorie DOT com
In-reply-to: <lipc0k$6cv$1@ger.gmane.org> (message from Kai-Martin Knaak on
Thu, 17 Apr 2014 22:02:28 +0200)
Subject: Re: [geda-user] pcb graphical objects spec
References: <CAHBVutDDe4byff1H62pbpd-AVpPwbabAT7h9tWpqsFZu=_c70A AT mail DOT gmail DOT com> <201404171458 DOT s3HEwG4r032541 AT envy DOT delorie DOT com> <CAC4O8c9YudRFRifhv0bdft2J_7jFVnLD2b1O=BQ8PgGaPJtw=g AT mail DOT gmail DOT com> <201404171815 DOT s3HIFreo008095 AT envy DOT delorie DOT com> <lipc0k$6cv$1 AT ger DOT gmane DOT org>
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

> What are the other generators?

Anything a user writes that conforms to the syntax.

> The only two I can come up with are footprint generators and the pcb
> export of pstotext.

I have some scripts that generate *.pcb files directly.

> If a footprint generator generates *.pcb files that are not
> consistent with the output of pcb, I'd consider this a bug. The bug
> may happen to be inconsequential because pcb interprets the file in
> the intended way, but still a bug.

No, this is the purpose of a spec.  The spec says that line separators
are ignored, and both pcb and the generators honor that.  Just because
the spec allows for arbitrary formatting doesn't mean that we have to
pick one.

> So the spec is incomplete in the sense that it does not completely
> cover what pcb emits and reads.

It is complete in that it specifies what pcb *must* do, not what pcb
*may* do.  It *must* accept any input that matches the spec, but it
*may* output anything that happens to meet the spec.

> In other words, there is room for interpretation for third party
> generators.

No, there isn't.  They must meet the spec too.  The spec just does not
mandate the placement of line separators.  The generators may put them
wherever they please, and pcb is required to accept that.

The part that's broken is scripts that parse *.pcb files and expect
things to be one-line-per-item.  We've maintained that as a
convenience but there's nothing in the spec that requires it.
Certainly, you wouldn't want a whole Element[]() on one line!

- Raw text -


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