Hello, Today I took a look at what would be necessary to implement controlling the output of the widestring manager, and implementing this looks rather trivial.
The only thing we need is a switch, to control if widestrings should be converted to the current locale or to utf-8. In the case of current locale one can use the current widestring function Wide2AnsiMoveProc . In case of utf-8 we can use the cross-platform UnicodeToUTF8 function. I would start by adding a new field to TWideStringManager: OutputUTF8ToStrings: Boolean; Then when converting a widestring to a short string one should check which procedure to call. I could check all places that call Wide2AnsiMoveProc and instead do: if OutputUTF8ToStrings then UnicodeToUTF8() else Wide2AnsiMoveProc () Or we could add a procedure which does this automatically. Or maybe something else. So, which would be the prefered way? thanks, -- Felipe Monteiro de Carvalho _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel