On Fri, Jul 30, 2021 at 8:28 PM Leon Timmermans <fawaka@gmail.com> wrote: > On Fri, Jul 30, 2021 at 7:56 PM Felipe Gasper <felipe@felipegasper.com> > wrote: > >> >> Itâll downgrade it, but it wonât encode it, so youâll get mojibake: >> >> > perl -Mutf8 -e'print "é"' >> � >> > > It will print mojibake as well if the script is latin-1 encoded. It's > mojibake because the terminal is utf-8, but the IO handle is latin1. > In this case there is no "script" other than the command line, in the terminal. Round-tripping characters from the terminal to the terminal, broken. Sounds painful. I'd expect the encoding to be the same for the code as for the standard handles, unless either is otherwise specified. It would surprise me if a simple perl -E broke that. I'm leaning towards thinking that, while there's no problem with lexical, explicit declarations of source encodings, the default source encoding is more of a global thing, and to avoid nasty surprises, ought to correspond to the default encoding of the standard handles. EirikThread Previous | Thread Next