{"thread":{"id":"43970","subject":"Request for advice: visual diffing kicad EDA schematics","startedAt":"2016-08-31T17:05:17Z","lastAt":"2016-08-31T17:05:17Z","messageCount":1,"participants":["Jean-Noël AVILA"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"300698","messageId":"1557694.5M8WYtoMm1@cayenne","threadId":"43970","inReplyTo":null,"subject":"Request for advice: visual diffing kicad EDA schematics","fromName":"Jean-Noël AVILA","fromEmail":"jn.avila@free.fr","sentAt":"2016-08-31T17:05:05Z","receivedAt":"2016-08-31T17:05:17Z","isPatch":false,"sender":{"key":"jn.avila@free.fr","avatar":"https://avatars.githubusercontent.com/u/156172?v=4"},"body":"Hi all,\n\nI would like to be able to visually see the differences between two versions \nof schematic sheets of a kicad project.\n\nKicad file format is ascii based, which allows to generate text diff between \nversions of schematic files. However, except for adding and removing \ncomponents, when the modified lines refer to drawing primitives, it isn't \nobvious what has changed.\n\nSchematic file format differs from text picture formats (e.g. svg, pnm) in that \nthe schematics is made of an assembly of lines, texts and references to \nelectronic parts whose symbols are stored in external library files. Hopefully, \nfor each project, Kicad stores a local cache library of all the parts used in \nthe project, so the project directory is self contained.\n\nBut of course, to be able to plot a schematic sheet, you need the schematic \nsheet file and the project cache library at the same version, which defeats the \ncustom diff mechanics of git that can be used for plain pictures.\n\nMy questions:\n * Does this sound familiar to any body ?\n * Is there some hook in git to deal with this or will I have to roll my own \nutility? In which case, would you advise to use git porcelain or libgit binded \nto a favorite script language?\n\nThanks in advance for all information.\n\nJean-Noël\n"}]}