Następna strona Poprzednia strona Spis treści

7. Naprawa błêdu "catopen".

Instalacja obsługi ustawieñ lokalnych naprawia automatycznie błąd (a może zaletê) w poleceniu "catopen" w bibliotece libc. Powiedzmy, że napiszesz program, który używa komunikatów z katalogu /home/peeter/catalogs/de_DE.

Teraz - jeśli wykonasz nastêpujące polecenia nie mając zainstalowanych ustawieñ lokalnych dla de_DE,

   export LC_MESSAGES=de_DE
   export NLSPATH=/home/peeter/catalogs/%L/%N.cat:$NLSPATH

katalog z niemieckimi komunikatami nie zostanie otwarty. Funkcja catgets pobierze komunikaty z katalogu standardowego.

Dzieje siê tak ponieważ funkcja "catopen" wywołuje funkcjê "setlocale", żeby pobraæ odpowiednie komunikaty, a funkcja "setlocale" zwróci błąd pomimo tego, że została ustawiona zmienna środowiskowa. Nastêpnie funkcja "catopen" próbuje załadowaæ komunikaty zastêpując wszystkie "L" literą "C" w zmiennej NLSPATH.

Możesz nadal używaæ swojego katalogu z komunikatami bez definiowania ustawieñ lokalnych, ale musiałbyś bezpośrednio ustawiæ czêśæ "L" zmiennej NLSPATH:

   export NLSPATH=/home/peeter/catalogs/de_DE/%N.cat:$NLSPATH

ale to mija siê z celem zastosowania zmiennych ustawieñ lokalnych.


Następna strona Poprzednia strona Spis treści