> Jakie to ma znaczenie? freedesktop mówi tylko o zmiennych LC_*, stąd > wyjście określam przez :locale, dopóki ktoś explicite nie zażąda innego > kodowania. Ale żeby tego używać, wewnętrzną reprezentacją wszystkich > ciągów musi być UTF. Stąd jeśli .desktop ma Encoding=LegacyMixed, to > muszę uzyskać nazwę encodingu dla danego [lang], a to bez [..._country] > jest niemożliwe w sytuacji obecnej, gdy lang nie jest poprawnym locale.
Chyba mówimy o dwóch różnych rzeczach. Jedna sprawa to wybór spośród różnych wariantów np. Name[xxx] właściwego dla danego locale. Tu sprawę rozwiązuje tabelka 1. standardu -- czyli dla locale (a dokładniej mówiąc, LC_MESSAGES) pl_PL brane są pod uwagę Name[pl_PL], Name[pl] i Name (z dokładnością do sufiksu .ENCODING). Druga sprawa to sposób przedstawienie tej informacji. Tu trzeba, w ogólnym przypadku, przekodować stringa. Kodowanie wyjścia określa $(locale charmap), niezależnie od konkretnego pliku desktop. W przypadku pl_PL może to być ISO-8859-2, ale nie musi. Kodowanie wejścia to albo UTF-8 albo, w przypadku Legacy-Mixed, określone jest przez załącznik D standardu. I dla przykładu: jeżeli locale jest pl_PL a w pliku .desktop występuje jedynie linia Name[pl]=xxx, to linia ta jest interpretowana jako ISO 8859-2, niezależnie od ustawień locale konkretnego systemu. Tak samo byłaby potraktowana linia Name[pl_PL]=xxx. -- +----------------------------------------------------------------------+ | Paweł Sakowski <[EMAIL PROTECTED]> Never trust a man | | who can count up to 1023 on his fingers. | +----------------------------------------------------------------------+ __________________________________________________________ nie pytaj co inni zrobili dla pld, pomysl ile sam zrobiles
