Charset nazw plików (Re: Gnome2 - OpenDialog)

Paweł Sakowski pawel w sakowski.eu.org
Czw, 27 Lis 2003, 19:58:54 CET


> Natomiast _interpretacja_ owego ciągu 8bit bajtów na potrzeby użytkownika 
> powinna być sprawą aplikacji z zastrzeżeniem że każdy ciąg jest akceptowalny.
> 
> Idąc dalej aplikacja która wymagania kodowania plików w utf-8 jest równie 
> błędna jak wymaganie że nazwy plików mają składać się tylko z liter 'a'.

A jak może nie wymagać żadnego kodowania? OK, np. taki grep może. Ale
większa aplikacja czasami będzie musiała wypisać nazwę pliku na ekranie.
I jak to zrobić? Przyjąć ISO 8859-(rand()%16+1)?

> G_BROKEN_FILENAMES powinno się nazywać STOP_BEING_BUGGY_WITH_FILENAMES i 
> ustawione na 1 na stałe ;)

Taki scenariusz:
$ export STOP_BEING_BUGGY_WITH_FILENAMES=1
$ LANG=pl_PL gedit
Tworzę plik o nazwie "Paweł"
$ LANG=es_ES gedit
File-Open...

Hej! Kto zmienił mojemu plikowi nazwę na "Pawe" do potęgi trzeciej?

W tym sensie zdecydowanie jest to zachowanie BUGGY. Trochę lepsze jest
rozwiązanie z GLib 2.3.x: G_FILENAME_ENCODING=ISO-8859-2. Tu już
zachowanie nie zależy od języka w jakim czytamy teksty, chociaż dalej
różne programy mogą dostawać różne zachowanie z zależności od zawartości
środowiska. A przecież zapis danych na dysku jest parametrem systemu, a
nie środowiska (w odróżnieniu od np. DISPLAY).

No i oczywiście FILENAME_ENCODING!=UTF-8 jest niefunkcjonalne, bo "Nas
nie dogoniat.mp3" trzeba pisać literkami łacińskimi ;-)

-- 
+----------------------------------------------------------------------+
| Paweł Sakowski <pawel w sakowski.eu.org>            Never trust a man  |
|                            who can count up to 1023 on his fingers.  |
+----------------------------------------------------------------------+
-------------- następna część ---------
Załącznik, który nie był tekstem został usunięty...
Name: nie znany
Type: application/pgp-signature
Size: 189 bytes
Desc: Ceci est une partie de message
	=?ISO-8859-1?Q?numériquement?Url : /mailman/pipermail/pld-devel-pl/attachments/20040626/26c86170/attachment.bin


Więcej informacji o liście dyskusyjnej pld-devel-pl