Also wenn Du unbedingt wegen einer Definition [superfish] als Section in den lang_xxx.conf Dateien haben möchtest, dann mußt Du diese Section auch in der index.html aufrufen. So wie momentan die Section [index].
Also entweder so wie ich es Dir bereits oben erklärt habe die Definition in der Section [index] hinzufügen - dann funktioniert es auch (evtl. Cache vorher leeren) oder wenn es unbedingt so sein soll mit einer eigenen Section [superfish] dann diesen ganz oben in der index.html einbinden.
Was soll da nicht ganz richtig aussehen? Du hast ja auch z.B.{#link_index#} das in der Section [index] der lang_german.conf definiert ist. Analog läuft es hier beim Begriff Katalog.
In der german.php brauchst Du wegen dem "Katalog" gar nichts machen. Dort sind die Platzhalter aus den php Dateien definiert. Smarty html hat die Platzhalter in der lang_german.conf und dort sind sie abrufbar, wenn oben in der jeweiligen html Datei die Section definiert wird, in dem sie stehen. Für die index.html eben die Section [index].
Momentan hast Du halt, entgegen meines Vorschlags eine eigene Section [superfish] angelegt und der ist in der index.html eben wegen der fehlenden Definition nicht bekannt.
Kannst es ja ausprobieren und füge nach
{config_load
file="$language/lang_$language.conf" section
="index"} die passende Definition ein:
{config_load
file="$language/lang_$language.conf" section
="superfish"} und es wird funktionieren.