I see ČĆŠŽ missing from the layout, only Đ is here from the letters used in a Croatian alphabet, Slovenian as well, although they don't use Ć.
This is an impossible task, just use the standard "Programmers" layout for your language which maps to US and allows access to accented characters via modifiers. The entire notion of a "local" keyboard layout sounds like a nationalistic throwback to the days where the world was much smaller. Some languages really need it, but most using the Latin alphabet simply don't, just stick to US.