On Jan 26, 2011, at 11:47 AM, Victor Stinner wrote: > Not exactly. Gtk+ uses the glib library, and to encode/decode filenames, > the glib library uses: > > - UTF-8 on Windows > - G_FILENAME_ENCODING environment variable if set (comma-separated list > of encodings) > - UTF-8 if G_BROKEN_FILENAMES env var is set > - or the locale encoding
But the documentation says: > On Unix, the character sets are determined by consulting the environment > variables G_FILENAME_ENCODING and G_BROKEN_FILENAMES. On Windows, the > character set used in the GLib API is always UTF-8 and said environment > variables have no effect. > > G_FILENAME_ENCODING may be set to a comma-separated list of character set > names. The special token "@locale" is taken to mean the character set for > thecurrent locale. If G_FILENAME_ENCODING is not set, but G_BROKEN_FILENAMES > is, the character set of the current locale is taken as the filename > encoding. If neither environment variable is set, UTF-8 is taken as the > filename encoding, but the character set of the current locale is also put in > the list of encodings. Which indicates to me that (unless you override the behavior with env vars) it encodes filenames in UTF-8 regardless of the locale, and attempts decoding in UTF-8 primarily. And that only when the filename doesn't make sense in UTF-8, it will also try decoding it in the locale encoding. James _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com