.\" -*- coding: UTF-8 -*-
.\" Copyright (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de)
.\" and Copyright (C) 2014 Michael Kerrisk <mtk.manpages@gmail.com>
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.\" Modified Sat Jul 24 17:28:34 1993 by Rik Faith <faith@cs.unc.edu>
.\" Modified Sun Jun 01 17:16:34 1997 by Jochen Hein
.\"   <jochen.hein@delphi.central.de>
.\" Modified Thu Apr 25 00:43:19 2002 by Bruno Haible <bruno@clisp.org>
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH locale 7 "15 czerwca 2024 r." "Linux man\-pages 6.9.1" 
.SH NAZWA
locale \- opis obsługi wielu języków
.SH SKŁADNIA
.nf
\fB#include <locale.h>\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<locale.h>\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<langinfo.h>\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<langinfo.h>\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<langinfo.h>\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<langinfo.h>\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]\[rs]0\[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
Tłumaczenie niniejszej strony podręcznika:
Gwidon S. Naskrent <naskrent@hoth.amu.edu.pl>,
Robert Luberda <robert@debian.org>
i
Michał Kułach <michal.kulach@gmail.com>
.
.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 .
