Chris Vine <ch...@cvine.freeserve.co.uk> writes: > A number of guile's scheme procedures look-up or reference files on a > file system (open-file, load and so forth). > > How does guile translate filenames from its internal string > representation (ISO-8859-1/UTF-32) to narrow string filename encoding > when looking up the file? Does it assume filenames are in locale > encoding (not particularly safe on networked file systems) or does it > provide a fluid for this? (glib caters for this with the > G_FILENAME_ENCODING environmental variable.)
It assumes filenames are in locale encoding. Ditto for virtually everything that interfaces with POSIX-style byte strings, including environment variables, command-line arguments, etc. Encoding errors will raise exceptions by default. My hope is that this will become less of an issue over time, as systems increasingly standardize on UTF-8. I see no other good solution. Thoughts? Mark