There are two ways to search for a part for a PCB. You can search based on its function or you can search based on it’s manufacturer.
I tried creating a set of cmpcats to add the ability to search for parts by manufacturer to the LibrePCB libraries. I created a ROOT level cmpcat named “Manufacturer”. Then each vendor library could create a cmpcat with its own name under “Manufacturer” and attach all of their parts to that cmpcat as well as its functional cmpcat.
I ran into a problem with devices that used the standard libraries for both component and package. If I have a op-amp in a Texas Instruments library that used a component from the ICs library then it was not listed under Manufacturer/TI category. I would need to put the component in the TI library and assign it to the TI cmpcat before it would be included.
We need to extend the cmpcats on a Device to also include their components if this feature is going to be useful.
I also thought about that a long time ago. But IMHO somehow it feels wrong to use component categories to group by manufacturers. Categories and manufacturers are two completely independent properties of a library element and thus should be handled separately I think.
There was already the idea to let library elements have a property for storing its manufacturer. This property would allow LibrePCB to also let you filter library elements by manufacturer. It’s not the same concept as for categories (since it would be based just on comparing strings, e.g. “ST” and “ST Microelectronics” would be considered as two different manufacturers) but I think it would be simple and good enough.