Question about symbol libraries vs footprint libraries

This is more a curiosity than anything else. Each footprint in KiCad is an individual file with extension “.kicad_mod”, and a “library” is just a directory with name ending in “.pretty” that contains all of the “.kicad_mod” files of the footprints that are in that library.

However, the schematic symbols are entries within a library file whose name ends in “.kicad_sym”. That is, a schematic symbol library is a file that contains multiple symbols.

Is there a reason why the two different systems were chosen to organize the two library types? I can see advantages and disadvantages to both (personally I prefer the directory containing individual files for each symbol approach taken by the footprints), but I’m curious as to why a common approach is not taken to both.

It’s probably mostly for “historical” reasons, but I have read a few times that symbols are combined into a single library file for performance reasons too. But because either method has it’s advantages and disadvantages, there already are proposals to support all combinations and make it “symmetrical” again.

Many thanks! That’s interesting to see the interest in supporting both systems. When I used to work with Altium, It was recommended for some types of repository-based library management to use the one-symbol/footprint-per-file approach. Unless there was a significant performance hit, I would be interested in adopting the footprint-based approach for the schematic libraries.

If you like it, you can give those gitlab issues an upvote.