On Thu, Jul 28, 2016 at 10:05 AM, hw <h...@gc-24.de> wrote: snip > So which character encoding on STDOUT does perl use by default? That should > be utf-8 without any further ado, shouldn´t it? When I add > > > binmode STDOUT, ":encoding(utf-8)"; > > > the characters are displayed correctly in the terminal. Why would perl use > something else than utf-8 by default?
Take the following with a grain of salt. My knowledge is mostly hearsay and supposition with a dash of cargo cultism on this matter. Perl predates even Unicode (they both came out in '87). Unicode did not get much traction until the mid-nineties when people started realizing that UTF-8 (created in '92) was a good thing. So, for most of its early history, Perl used Latin1. It still does to a large extent for backwards compatibility reasons. To make Perl 5 a proper UTF-8 environment there are a number of knobs to pull and buttons to poke. You may find this video from YAPC NA 2016 enlightening: https://www.youtube.com/watch?v=TmTeXcEixEg Others that may be helpful (I haven't watched them, but I trust the speaker): https://www.youtube.com/watch?v=iZgqhVu72zc https://www.youtube.com/watch?v=X2FQHUHjo8M Also, this answer on StackOverflow by tchrist (Tom Christiansen, who I would say knows the most about the intersection of Perl and Unicode) is a good resource: http://stackoverflow.com/a/6163129/78259 Hope this helps. -- Chas. Owens http://github.com/cowens The most important skill a programmer can have is the ability to read. -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/