.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de) .\" and Copyright (C) 2014 Michael Kerrisk .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" Modified Sat Jul 24 17:28:34 1993 by Rik Faith .\" Modified Sun Jun 01 17:16:34 1997 by Jochen Hein .\" .\" Modified Thu Apr 25 00:43:19 2002 by Bruno Haible .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH locale 7 "2 maja 2024 r." "Linux man\-pages 6.8" .SH NAZWA locale \- opis obsługi wielu języków .SH SKŁADNIA .nf \fB#include \fP .fi .SH OPIS Locale to zestaw reguł językowych i kulturalnych. Obejmują one aspekty takie, jak język komunikatów, różne zestawy znaków, konwencje leksykograficzne itd. Program musi umieć określić swoje locale i zachowywać się odpowiednio, aby można go było przenieść do innych kultur. .P Nagłówek \fI\fP deklaruje typy danych, funkcje i makra przydatne w tym przedsięwzięciu. .P Funkcje deklarowane to \fBsetlocale\fP(3), ustawiająca bieżące locale, i \fBlocaleconv\fP(3), pobierająca informacje o formatowaniu liczb. .P Istnieją różne kategorie informacji regionalnych, których potrzebować może program; zadeklarowane są one jako makra. Używając ich jako pierwszego argumentu funkcji \fBsetlocale\fP(3), możliwe jest ustawienie poniższych informacji regionalnych: .TP \fBLC_ADDRESS\fP (rozszerzenie GNU, od glibc 2.2) .\" See ISO/IEC Technical Report 14652 Zmienia ustawienia opisujące formaty (np. adresy pocztowe) służące do opisywania położenia i rzeczy okołogeograficznych. Aplikacje wymagające tej informacji mogą korzystać z \fBnl_langinfo\fP(3) do pozyskania niestandardowych elementów, takich jak \fB_NL_ADDRESS_COUNTRY_NAME\fP (nazwa kraju w danym języku) i \fB_NL_ADDRESS_LANG_NAME\fP (nazwa języka w danym języku), które zwracają przykładowo łańcuchy "Deutschland" i "Deutsch" (dla niemieckich locale). Inne nazwy elementów są wypisane w \fI\fP.) .TP \fBLC_COLLATE\fP Kategoria obejmuje zasady zestawiania używane do sortowania i wyrażeń regularnych, w tym klasy ekwiwalentów znaków i zestawiania elementów wieloznakowych. Ta kategoria locale zmienia zachowanie funkcji \fBstrcoll\fP(3) i \fBstrxfrm\fP(3), porównujących łańcuchy znaków w alfabecie lokalnym. Na przykład niemieckie scharfes S sortowane jest jako "ss". .TP \fBLC_CTYPE\fP Kategoria określa interpretację sekwencji bajtów jako znaków (np. znaki jednobajtowe albo wielobajtowe), klasyfikację znaków (np. alfabetyczna lub numeryczna) i zachowanie klas znaków. W systemach glibc ta kategoria określa również reguły transliteracji znaków do \fBiconv\fP(1) i \fBiconv\fP(3). Zmienia zachowanie operacji na znakach i funkcji klasyfikacyjnych, takich jak \fBisupper\fP(3) i \fBtoupper\fP(3), oraz znakowych funkcji wielobajtowych, takich jak \fBmblen\fP(3) i \fBwctomb\fP(3). .TP \fBLC_IDENTIFICATION\fP (rozszerzenie GNU, od glibc 2.2) .\" See ISO/IEC Technical Report 14652 Zmienia ustawienia powiązane z metadanymi locale. Aplikacje wymagające tej informacji mogą korzystać z \fBnl_langinfo\fP(3) do pozyskania niestandardowych elementów takich jak \fB_NL_IDENTIFICATION_TITLE\fP (tytuł tego dokumentu locale) i \fB_NL_IDENTIFICATION_TERRITORY\fP (terytorium geograficzne do którego odnosi się ten dokument locale), które mogą zwrócić łańcuchy takie jak "English locale for the USA" i "USA". Inne nazwy elementów są wypisane w \fI\fP. .TP \fBLC_MONETARY\fP Kategoria określa formatowanie używane do wartości numerycznych związanych z pieniędzmi. Zmienia informację zwracaną przez \fBlocaleconv\fP(3), która opisuje sposób, w jaki zwykle drukowane są liczby, ze szczegółami takimi jak kropka dziesiętna kontra przecinek dziesiętny. Informacja ta jest używana wewnętrznie przez funkcję \fBstrfmon\fP(3). .TP \fBLC_MESSAGES\fP Kategoria wpływa na język, w którym wyświetlane są komunikaty, oraz to, jak wygląda odpowiedź twierdząca i przecząca. Biblioteka GNU C zawiera funkcje \fBgettext\fP(3), \fBngettext\fP(3) oraz \fBrpmatch\fP(3), ułatwiające użycie tych informacji. Funkcje GNU z rodziny gettext biorą pod uwagę również zmienną środowiska \fBLANGUAGE\fP (zawierającą rozdzieloną dwukropkami listę ustawień językowych), jeśli bieżące ustawienia językowe są poprawne i różne od \fB\[dq]C\[dq]\fP. Ta kategoria wpływa również na zachowanie \fBcatopen\fP(3). .TP \fBLC_MEASUREMENT\fP (rozszerzenie GNU, od glibc 2.2) Zmienia ustawienia związane z systemem miar w locale (np. metryczny albo jednostki używane w USA). Aplikacje mogą korzystać z \fBnl_langinfo\fP(3) do pozyskania niestandardowego elementu \fB_NL_MEASUREMENT_MEASUREMENT\fP, który zwraca wskaźnik do znaku który ma wartość 1 (system metryczny) lub 2 (system imperialny). .TP \fBLC_NAME\fP (rozszerzenie GNU, od glibc 2.2) .\" See ISO/IEC Technical Report 14652 Zmienia ustawienia opisujące formy grzecznościowe. Aplikacje wymagające tej informacji mogą korzystać z \fBnl_langinfo\fP(3) do pozyskania niestandardowych elementów takich jak \fB_NL_NAME_NAME_MR\fP (forma grzecznościowa dla panów) i \fB_NL_NAME_NAME_MS\fP (forma grzecznościowa dla pań), które zwracają łańcuchy takie jak "Herr" i "Frau" (dla niemieckich ustawień regionalnych). Inne nazwy elementów są wypisane w \fI\fP. .TP \fBLC_NUMERIC\fP Kategoria określa reguły formatowania używane dla wartości numerycznych niezwiązanych z pieniędzmi \[em] np. separator tysięcy i separator dziesiętny (kropka w większości krajów anglojęzycznych lub przecinek w wielu innych). Wpływa na takie funkcje, jak \fBprintf\fP(3), \fBscanf\fP(3) i \fBstrtod\fP(3). Tę informację można również odczytać za pomocą \fBlocaleconv\fP(3). .TP \fBLC_PAPER\fP (rozszerzenie GNU, od glibc 2.2) .\" See ISO/IEC Technical Report 14652 Zmienia ustawienia związane z wymiarami standardowego rozmiaru papieru (np. letter albo A4). Aplikacje wymagające wymiarów mogą je pozyskać korzystając z \fBnl_langinfo\fP(3), aby otrzymać niestandardowe elementy \fB_NL_PAPER_WIDTH\fP i \fB_NL_PAPER_HEIGHT\fP, które zwrócą wartości \fIint\fP określające wymiary w milimetrach. .TP \fBLC_TELEPHONE\fP (rozszerzenie GNU, od glibc 2.2) .\" See ISO/IEC Technical Report 14652 Zmienia ustawienia opisujące formaty używane w telefonii. Aplikacji potrzebujące tej informacji mogą korzystać z \fBnl_langinfo\fP(3) aby pobrać niestandardowe elementy takie jak \fB_NL_TELEPHONE_INT_PREFIX\fP (międzynarodowy prefiks używany do wybrania numerów w tym locale), który zwróci przykładowo "49" (dla Niemiec). Inne elementy są wypisane w \fI\fP. .TP \fBLC_TIME\fP Kategoria określa formatowanie wartości daty i czasu. Przykładowo większość Europy używa zegara 24\-godzinnego, a w USA korzysta się z zegara 12\-godzinnego. Ustawienie w tej kategorii wpływa na zachowanie funkcji takich jak \fBstrftime\fP(3) i \fBstrptime\fP(3). .TP \fBLC_ALL\fP Wszystko powyższe. .P Jeśli drugim argumentem \fBsetlocale\fP(3) jest łańcuch pusty \fI\[dq]\[dq]\fP oznaczający locale domyślne, ustala się je w następujący sposób: .IP (1) 5 Jeśli istnieje niepusta zmienna środowiskowa \fBLC_ALL\fP, używana jest wartość \fBLC_ALL\fP .IP (2) Jeśli istnieje i jest niepusta zmienna środowiskowa o tej samej nazwie co jedna z kategorii powyżej, dla tej kategorii używana jest jej wartość. .IP (3) Jeśli istnieje niepusta zmienna środowiskowa \fBLANG\fP, używana jest wartość \fBLANG\fP .P Wartości dotyczące lokalnego formatowania dostępne są w strukturze \fIlconv\fP, zwracanej przez funkcję \fBlocaleconv\fP(3). \fIlconv\fP ma następującą deklarację: .P .in +4n .EX struct lconv { \& /* Informacje numeryczne (niewalutowe) */ \& char *decimal_point; /* Znak dziesiętny */ char *thousands_sep; /* Separator grup cyfr po lewej stronie znaku dziesiętnego */ char *grouping; /* Każdy element jest liczbą cyfr w grupie; elementy z wyższym indeksem są bardziej na lewo. Element o wartości CHAR_MAX oznacza, że dalsze grupowanie nie następuje. Element o wartości 0 oznacza, że poprzedni element jest używany do pozostałych grup po lewej stronie. */ \& /* Pozostałe pola służą do informacji walutowych */ \& char *int_curr_symbol; /* Pierwsze trzy znaki to symbol waluty z ISO 4217. Czwarty znak to separator. Piąty to \[aq]\e0\[aq]. */ char *currency_symbol; /* Symbol lokalnej waluty */ char *mon_decimal_point; /* Znak dziesiętny */ char *mon_thousands_sep; /* Jak \fIthousands_sep\fP (powyżej) */ char *mon_grouping; /* Jak \fIgrouping\fP (powyżej) */ char *positive_sign; /* Znak dla wartości dodatnich */ char *negative_sign; /* Znak dla wartości ujemnych */ char int_frac_digits; /* Międzynarodowe cyfry dziesiętne */ char frac_digits; /* Lokalne cyfry dziesiętne */ char p_cs_precedes; /* 1, jeśli symbol waluty poprzedza wartość dodatnią, 0, jeśli następuje po niej */ char p_sep_by_space; /* 1, jeśli symbol waluty oddziela od wartości dodatniej spacja */ char n_cs_precedes; /* 1, jeśli symbol waluty poprzedza wartość ujemną, 0 jeśli następuje po niej */ char n_sep_by_space; /* 1, jeśli symbol waluty oddziela od wartości ujemnej spacja */ /* Dodatnie i ujemne pozycje znaku: 0 Wartość i symbol waluty w nawiasach. 1 Znak poprzedza wartość i symbol waluty. 2 Znak następuje po wartości i symbolu waluty. 3 Znak następuje tuż przez symbolem waluty. 4 Znak następuje tuż po symbolu waluty. */ char p_sign_posn; char n_sign_posn; }; .EE .in .SS "Rozszerzenia POSIX.1\-2008 do API locale" POSIX.1\-2008 standaryzuje wiele rozszerzeń API locale w oparciu o implementację, która pojawiła się jako pierwsza w glibc 2.3. Rozszerzenia opracowano aby rozwiązać problemy z tradycyjnym API locale, które nie radziło sobie dobrze z aplikacjami wielowątkowymi i z programami które korzystają z wielu ustawień regionalnych. .P Rozszerzenia zajmują się formą nowych funkcji do tworzenia i działania na obiektach locale (\fBnewlocale\fP(3), \fBfreelocale\fP(3), \fBduplocale\fP(3) i \fBuselocale\fP(3)) oraz różnymi nowymi funkcjami bibliotecznymi z przyrostkiem "_l" (np. \fBtoupper_l\fP(3)), które rozszerzają tradycyjne, zależne od ustawień regionalnych API (np. \fBtoupper\fP(3)) pozwalając na określenie obiektu locale który ma zostać zastosowany przy wykonywaniu funkcji. .SH ŚRODOWISKO Następujące zmienne środowiskowe są używane przez \fBnewlocale\fP(3) i \fBsetlocale\fP(3) wpływając na wszystkie nieuprzywilejowane zlokalizowane programy: .TP \fBLOCPATH\fP Lista ścieżek oddzielonych dwukropkami (\[aq]:\[aq]), które służą do odnalezienia danych locale. Jeżeli zmienna jest ustawiona, to używane są tylko skompilowane indywidualnie pliki z danymi z \fBLOCPATH\fP oraz z domyślnej ścieżki danych locale, natomiast dostępne archiwa lokalne nie są wykorzystywane (zob. \fBlocaledef\fP(1)). Indywidualnie kompilowane pliki z danymi locale są wyszukiwane w podkatalogach zależnych od bieżących ustawień regionalnych. Przykładowo jeśli dla kategorii wykorzystuje się \fIen_GB.UTF\-8\fP, to przeszukiwane są następujące podkatalogi (w podanej kolejności): \fIen_GB.UTF\-8\fP, \fIen_GB.utf8\fP, \fIen_GB\fP, \fIen.UTF\-8\fP, \fIen.utf8\fP i \fIen\fP. .SH PLIKI .TP \fI/usr/lib/locale/locale\-archive\fP Zwykle domyślne położenie archiwum locale. .TP \fI/usr/lib/locale\fP Zwykle domyślna ścieżka dla skompilowanych indywidualnie plików locale. .SH STANDARDY .\" .\" The GNU gettext functions are specified in LI18NUX2000. POSIX.1\-2001. .SH "ZOBACZ TAKŻE" \fBiconv\fP(1), \fBlocale\fP(1), \fBlocaledef\fP(1), \fBcatopen\fP(3), \fBgettext\fP(3), \fBiconv\fP(3), \fBlocaleconv\fP(3), \fBmbstowcs\fP(3), \fBnewlocale\fP(3), \fBngettext\fP(3), \fBnl_langinfo\fP(3), \fBrpmatch\fP(3), \fBsetlocale\fP(3), \fBstrcoll\fP(3), \fBstrfmon\fP(3), \fBstrftime\fP(3), \fBstrxfrm\fP(3), \fBuselocale\fP(3), \fBwcstombs\fP(3), \fBlocale\fP(5), \fBcharsets\fP(7), \fBunicode\fP(7), \fButf\-8\fP(7) .PP .SH TŁUMACZENIE Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Gwidon S. Naskrent , Robert Luberda i Michał Kułach . .PP Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License w wersji 3 .UE lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI. .PP Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej .MT manpages-pl-list@lists.sourceforge.net .ME .