On Jan 17, 2011, at 5:41 PM, Peter TB Brett wrote:
> 
> Due to the way the gschem editing model works, and particularly the undo 
> system, stuff tends to get shifted to the end of the file when edited.  
> This is something that I've made a few improvements to in the past, but 
> fundamentally the problem hasn't gone away.
> 
> This is actually an extremely difficult problem to solve.  Saving a file 
> could be considered as mapping a three-dimensional space (x position, y 
> position, z-index) onto a one-dimensional space (file position).  At the 
> moment, the file position is mapped 1:1 to z-index, i.e. last-on-top.  
> Other possibilities (assuming that an alternative way of indicating z-
> ordering can be found) include defining a Hilbert-Peano curve on the x-y 
> schematic plane and mapping position along that curve to file position.
> 
> There is no easy fix here.

When it comes to gschem files, I believe there is a potentially useful 
compromise. The .sch file structure describes a tree. At each level in this 
tree the order of the branches does not matter. So, a canonical ordering of a 
.sch file just requires some sorting criterion. Sort the branches at each level 
to achieve canonical ordering. Small changes won't scramble the canonical 
representation much.

Canonicalizing .sch files would be easy in our lambda-geda framework. Is there 
any interest?

---
John Doty              Noqsi Aerospace, Ltd.

This message contains technical discussion involving difficult issues. No 
personal disrespect or malice is intended. If you perceive such, your 
perception is simply wrong. I'm a busy person, and in my business "go along to 
get along" causes mission failures and sometimes kills people, so I tend to be 
a bit blunt.



_______________________________________________
geda-user mailing list
geda-user@moria.seul.org
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

Reply via email to