• src/encode/utf8.c utf8.h src/sbbs3/answer.cpp atcodes.cpp con_hi.cpp c

    From Rob Swindell (on Windows 11) to Git commit to main/sbbs/master on Thursday, February 15, 2024 22:55:31
    https://gitlab.synchro.net/main/sbbs/-/commit/2bca54893ab63bdaa1f47410
    Modified Files:
    src/encode/utf8.c utf8.h src/sbbs3/answer.cpp atcodes.cpp con_hi.cpp con_out.cpp email.cpp getstr.cpp js_global.c postmsg.cpp readmsgs.cpp sbbs.h src/xpdev/unicode.c unicode.h
    Log Message:
    UTF-8 improvements

    Don't corrupt UTF-8 strings with SAFECOPY() (use new SAFECOPY_UTF8).

    Some terminals (notably, Windows Terminal) display zero width UNICODE chars
    as a single column-wide space. <sigh> Auto-detect the zero-width "width"
    (1 or 0) of the terminal during connection and UTF-8 auto-detection.

    getstr() works a lot better now with UTF-8 strings with wide chars (e.g. emojis), but likely much more to do.