kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #30558
Re: Symbol library table remapping branch.
On 9/1/2017 5:09 PM, Wayne Stambaugh wrote:
> I finally found the time to finish the symbol library table remapping
> implementation and I would like some help with testing before I merge
> this into the master branch. I would like to get as much testing as
> possible. I remember the issues when we switched from the same library
> lookup format in Pcbnew so I would like to try to get as many of the
> issues resolved before I merge the changes into the master branch.
> Please back up your schematic files before you load them. Otherwise you
> will have a bunch of broken symbol library links in schematic since all
> of the symbols names will now be in the new format
> (LIB_NICKNAME:SYMBOL_NAME). Also, please don't generate any external
> files such as netlists with the remapped symbol names. I haven't tested
> any of that yet. I am just trying to get the remapping as accurate as
> possible. The branch can be found in my dev repo at:
git clone -b remap-symbols-to-sym-lib-table
https://git.launchpad.net/~stambaughw/kicad/+git/kicad-dev
>
>
> Before you test this, please perform the following tasks:
>
> 1. Delete the sym-lib-table file in your user configuration .kicad
> folder if the table is empty.
> 2. If you do not have a relatively recent install of the kicad-library
> repo, install the latest libraries so you have the latest fully
> populated symbol library table template file.
> 3. Start Eeschema and allow the symbol library table config dialog copy
> the default sym-lib-table file to your user config .kicad folder. If
> the default sym-lib-table file cannot be found, please point the
> config dialog to the correct location. Using the latest
> sym-lib-table template file will give you the best remapping results.
>
> The first time you attempt to load a schematic that hasn't been
> remapped, Eeschema will prompt you remap the symbol library links. If
> you choose not to remap, your schematic will most likely appear fine but
> this is because all of the symbols will be linked to the cache library.
> Here is what is happening during the remap process:
>
> 1. Backups of all of the schematic files are made.
>
> 2. The full library file name and path for each symbol is be compared to
> the full library file name and path of every entry in the library
> table. If an exact match is found, the library nickname is added to
> the LIB_ID object to create the fully qualified ID.
>
> 3. If the symbol library is not found in the global symbol library table
> and the library file is valid and on your system, a project symbol
> library is created with the symbol library added to it. I could have
> added an option to add these libraries to the global symbol library
> table but I left that as an exercise for the user.
>
> 4. The symbol library table links in the schematic symbols are
> refreshed.
>
> Obviously, the remapping depends on the availability of the symbol
> libraries used in your project. If you've inadvertently deleted a
> symbol library and the cache library is being used then you are skating
> on thin ice. I don't see that as an issue since you were skating on
> thin ice already. I did change the message panel message when you click
> on symbols in the schematic that are linked to the cache to display the
> library information in red to warn the user that the cache library is
> being used as the symbol link. I am thinking it might be a better idea
> to draw symbols that are linked to the cache library with a different
> color to make it obvious to the user that they should fix their broken
> links.
>
> I still have to convert the symbol chooser, the symbol library viewer,
> the symbol library editor, some other minor bits and peices over to
> use the new symbol library table. Once that is completed, I will make
> a last call before I create the stable 5 branch so if you have anything
> you want to see make it into the stable 5 release, now would be a good
> time to get that ready to go.
>
> If you find any issues please let me know. If possible, the schematic,
> project, and symbol library files that caused the issue would make
> debugging easier.
>
> Cheers,
>
> Wayne
>
Follow ups
References