--- gforth/utf-8.fs 2005/12/31 15:46:10 1.18 +++ gforth/utf-8.fs 2006/02/19 22:35:40 1.21 @@ -128,6 +128,13 @@ $80 Value max-single-byte nip nip over - then ; +[IFDEF] wcwidth +: u8width ( xcaddr u -- n ) + 0 rot rot over + swap ?DO + I xc@+ swap >r wcwidth + + r> I - +LOOP ; +[THEN] + : set-encoding-utf-8 ( -- ) ['] u8emit is xemit ['] u8key is xkey @@ -139,6 +146,9 @@ $80 Value max-single-byte ['] u8!+? is xc!+? ['] u8@+ is xc@+ ['] u8len is xc-size +[ [IFDEF] x-width ] + ['] u8width is x-width +[ [THEN] ] ['] -u8trailing-garbage is -trailing-garbage ;