← Back to team overview

kicad-developers team mailing list archive

Re: Re: Library work and project librarian?


Wayne Stambaugh wrote:
Dick Hollenbeck wrote:

Wayne Stambaugh wrote:

SuperLou23 wrote:

<< snipped >>

Unfortunately, from a little digging, I think it would take a pretty big rewrite of the component file spec and other tools to allow tagging in there without it being a hack. I do think (from my own experience) however that the old method of browsing folders for components should have died long ago. Filtering by tags and name in real time would make my life much easier (especially as the company parts db continues geting larger). I think there's a reason why autocomplete is very popular nowadays.

Tags are called key words in the component library object. There is
already some simplified wild card searching built into the component
library class. Adding regular expression searching is on my short list
and should be fairly simple. It would allow for much more sophisticated
search capability compared to the current solution. No rewriting of the
library file structure is necessary. I have begun putting code in place
to merge the separate library and document file implementation that we
currently have. I still have some work to before that takes place but
I'm sneaking up on it. Take a look at class_library.h and
class_library.cpp in the eeschema directory of the Kicad source to see
how key words figure into the library component object search.


Cool. Doing fancy searches like what this will eventually support strikes me as something that would be difficult to do in a relational database. I marvel that the computer I now use has 12 gigabytes of RAM. This sort of means that a relational database is not quite as valuable as it once was. You can load a lot of libraries into 12 gigabytes of ram, and do some pretty fancy searching in pretty short order.

I already have the regular expression component library search code
written in my development branch. It will be in my next commit. Now
someone has to write the code to do something interesting with it. The
big job will be updating all of the component library key words to have
something meaningful to search for. Hats off to every one involved in
cleaning up the component libraries.


We do something like this in a software product we have. Unfortunately, most users do not know the regular expression language, so it was not as well received as we thought it was going to be.

Logical ANDs and ORs might be more useful, possibly with wildcards i.e. '*', at the front or back end of a keyword. My knee jerk reaction is to duplicate something that a user might be able to do at the google search text field.


Follow ups