Hello Guilers, and Happy New Year! :-) My resolution for the beginning of this year is to address this:
> Guile currently uses libunistring’s ‘u32_conv_from_encoding’ when > reading text from an input port whose encoding isn’t Latin-1 (similarly > when writing to output ports.) > > An issue with that is that escaping non-representable characters is > handled by libunistring, with a syntax different from the one we’d like > (Guile or R6RS string escapes.) So > ‘scm_i_unistring_escapes_to_{guile,r6rs}_escapes’ kludgely attempt to > substitute the right escapes. > > The problems with this approach are discussed in the thread at: > > http://lists.gnu.org/archive/html/bug-libunistring/2010-09/msg00004.html > > The conclusion is that we’d better use raw ‘iconv’ calls in such > cases... I’ve just pushed a ‘wip-iconv’ branch, which currently changes ports to use ‘iconv’ for input. Remaining tasks include doing it for output, and finding a solution for ‘scm_{to,from}_stringn’ so that it behaves in the same way wrt. to escapes and error handling. Comments, feedback, suggestions, and patches are all welcome! :-) Ludo’.