Hi! <dsm...@roadrunner.com> writes:
> ---- "Ludovic Courtès" <l...@gnu.org> wrote: [...] >> (define p (open-bytevector-input-port #vu8(255 1 2 3 103 110 117))) >> (set-port-conversion-strategy! p 'substitute) >> (get-line p) >> >> Here on x86_64-linux-gnu, with libunistring 0.9.3, it returns a >> 7-character string ending in “gnu”. > > scheme@(guile-user)> (use-modules (rnrs)) > scheme@(guile-user)> (define p (open-bytevector-input-port #vu8(255 1 2 3 103 > 110 117))) > scheme@(guile-user)> (set-port-conversion-strategy! p 'substitute) > scheme@(guile-user)> (get-line p) > $1 = "�\x01\x02\x03gnu" And this? (let* ((t (make-transcoder (utf-8-codec) (native-eol-style) (error-handling-mode replace))) (b (open-bytevector-input-port #vu8(255 1 2 3 103 110 117))) (tp (transcoded-port b t))) (port-conversion-strategy tp)) Ludo’.