Subj : Re: Need volonteers to test another patch To : Michiel van der Vlist From : Vitaliy Aksyonov Date : Wed Mar 06 2024 10:32 am Hello Michiel. 06 Mar 24 13:38, you wrote to me: VA>> Best possible way is to use UTF-8 for all strings inside and only VA>> convert text when read/write from/to message base and to screen. MvdV> I agree. That will be the easiest way to make as many Fidonet MvdV> participants use UTF-8 all the way. With the sceen set to CP65001 MvdV> writing to and from the screen should need no conversion. VA>> And even if drop DOS support - need to take into account OS VA>> specifics for Unicode. MvdV> Such as? Even OS/2 has full UTF-8 support doesn't it? Windows and Linux works with console very differently. Even support those two together is a challenge. Code is not very well encapsulated in GoldEd and OS specifics just everywhere. I haven't tried OS/2 at all, so have no idea, how UTF-8 works there. Does it use ncurses too? VA>> As long as GoldEd uses fixed size buffers in many places - VA>> that's huge refactoring. Better to replace it with std::string VA>> almost everywhere. MvdV> Perhaps, but that won't solve the problem that when writing back to MvdV> the message base strings have to be of fixed lenght for the To:, MvdV> From:, Subj: and other fields. It may be necessary to truncate in MvdV> order to fit. Truncating should be done on a UTF-8 sequence boundery. MvdV> If need be step back until a byte with bit 7 and 6 set. VA>>>> For example function, which splits message to lines is almost VA>>>> 1000 lines long! It has variables, used in multiple places, it VA>>>> not only splits the message, but guess charset, do recoding and VA>>>> other fun stuff. MvdV>>> Wauw! VA>> That's one of the reasons, why progress is slow. MvdV> Keep up the good work! Thanks. I try to fix or enhance something which doesn't break existing functionality. Hope some day we'll have UTF-8 support too. Vitaliy .... 640K ought to be enough for anybody --- GoldED+/LNX 1.1.5-b20240305-beta * Origin: Aurora, Colorado (1:104/117) .