• src/xpdev/unicode.c unicode_defs.h

    From rswindell@VERT to CVS commit on Thu Jul 11 08:52:30 2019
    src/xpdev unicode.c 1.9 1.10 unicode_defs.h 1.4 1.5
    Update of /cvsroot/sbbs/src/xpdev
    In directory cvs:/tmp/cvs-serv10494

    Modified Files:
    unicode.c unicode_defs.h
    Log Message:
    Add/use more UNICODE enum defines (mainly those that map to CP437).
    Fix error in CP437 0x96 (small U with circumflex) translation to UNICODE
    (typo: 0x00FB not 0x00F8).


    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Sun Jul 14 15:19:34 2019
    src/xpdev unicode.c 1.10 1.11 unicode_defs.h 1.6 1.7
    Update of /cvsroot/sbbs/src/xpdev
    In directory cvs:/tmp/cvs-serv24375

    Modified Files:
    unicode.c unicode_defs.h
    Log Message:
    More unicode code point definitions and Unicode -> CP437 translations.


    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Sat Sep 5 11:05:12 2020
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/e2c4f45de48a4d4011e2498b
    Modified Files:
    src/xpdev/unicode.c unicode_defs.h
    Log Message:
    Translate UNICODE KATAKANA letter TU to CP437 Black smiling face (for Hustler)

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Thu Feb 15 21:37:00 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/3b4ec79b4aa0b5bccc389526
    Modified Files:
    src/xpdev/unicode.c unicode_defs.h
    Log Message:
    Better unicode character display-width calculation (in columns)

    Tested with Windows Terminal Version: 1.18.10301.0 and all codepoints between 0x100 and 0x1FFFF, this change reduces the width mismatches from > 8000 to
    349. The "Zero width" mismatches are probably the most important/glaring and will need to be addressed next (since some terminals don't move the cursor
    for zero width chars, and some do).

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on ChromeOS)@VERT to Git commit to main/sbbs/master on Thu Feb 20 20:47:28 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/e616456630ff07132475b1b4
    Modified Files:
    src/xpdev/unicode.c unicode_defs.h
    Log Message:
    Define/use UNICODE_VERTICAL_LINE

    Resolve GCC warning: case value `124' not in enumerated type
    `enum unicode_codepoint'

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Wed Jul 29 23:14:42 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/fc331f0f3e988c2119ab9507
    Modified Files:
    src/xpdev/unicode.c unicode_defs.h
    Log Message:
    xpdev: approximate the remaining dashes as an ASCII hyphen for CP437

    unicode_to_cp437() knew about EM DASH but not the four narrower dashes,
    so U+2010 HYPHEN, U+2011 NON-BREAKING HYPHEN, U+2012 FIGURE DASH and
    U+2013 EN DASH had no CP437 equivalent and came out as the unsupported character. CP437 has an exact glyph for none of them but a perfectly good approximation in the ASCII hyphen, which is already what
    utf8_normalize_str() folds all four into.

    This only shows up on the paths that convert without normalizing first;
    where both run, normalization gets there first and the result is the same either way.

    Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net