I want to have different libraries for different voltage rated capacitor (e.g. Capacitor_SMD_16V, Capacitor_SMD_50V, etc…) .
Inside each of these library I have for example a symbol named 1uF.
How can I specify in the schematic from which library take the symbol instead that just relying on library priorities (which dosen’ t work for me!).
For 4.0.7 the symbol names must be unique over all libs. Otherwise kicad decides based on library priority which symbol to use. This is fixed in the current nightly (will become kicad 5 quite shortly)
More details about the v4 behavior see: Any conflict with names of modules and libraries?
Thanks, When KiCad 5 will be available?
If I have to start a new project in these days, will you suggest me to switch over to the nightly version or keep using the 4.0.7 until Kicad 5 is available?
How much history do you have with v4? (*)
The sooner you switch and the less you have to convert, the better.
But be warned, the transition is bumpy.
Best advice - completely remove v4 and go fresh (which has implications for (*) above…).
That is totally up to you. The current nightlies look very similar to how an eventual kicad 5 release will look like. But the documentation is still lacking (This will not change just because v5 is released. It will take a while till user build documentations catch up to v5.)
Another problem is that your personal library setup is not handled well on update. (The fp-lib-table will happily continue to point to the old official v4 lib. But the symbol and 3d libs are installed from version 5. Meaning without user intervention you end up with a set of libs that is out of sync.)
I would at least suggest to use the backport libraries as it will ease transferring the project over to version 5 (Assuming you use the official library. Otherwise this is not really necessary)
In v5 you will only need to take care that within a library all symbol names are unique. (The same symbol name can be used in other libraries.)
And also that the library nicknames are unique within a given symbol library table. (If a library nickname exists in the project local sym-lib-table and in the global table then the project local table is used.) The nickname is typically the same as the file name for the library but it can be set differently by the user by using the library manager or by editing the library table.