Inada Naoki <songofaca...@gmail.com> writes: > 2024年11月2日(土) 0:36 Loris Bennett via Python-list <python-list@python.org>: > >> Left Right <olegsivo...@gmail.com> writes: >> >> > There's quite a lot of misuse of terminology around terminal / console >> > / shell. Please, correct me if I'm wrong, but it looks like you are >> > printing that on MS Windows, right? MS Windows doesn't have or use >> > terminals (that's more of a Unix-related concept). And, by "terminal" >> > I mean terminal emulator (i.e. a program that emulates the behavior of >> > a physical terminal). You can, of course, find some terminal programs >> > for windows (eg. mintty), but I doubt that that's what you are dealing >> > with. >> > >> > What MS Windows users usually end up using is the console. If you >> > run, eg. cmd.exe, it will create a process that displays a graphical >> > console. The console uses an encoding scheme to represent the text >> > output. I believe that the default on MS Windows is to use some >> > single-byte encoding. This answer from SE family site tells you how to >> > set the console encoding to UTF-8 permanently: >> > >> https://superuser.com/questions/269818/change-default-code-page-of-windows-console-to-utf-8 >> > , which, I believe, will solve your problem with how the text is >> > displayed. >> >> I'm not using MS Windows. I am using a Gnome terminal on Debian 12 >> locally and connecting via SSH to a AlmaLinux 8 server, where I start a >> tmux session. >> >> > On Thu, Oct 31, 2024 at 5:19 PM Loris Bennett via Python-list >> > <python-list@python.org> wrote: >> >> >> >> Hi, >> >> >> >> I have a command-line program which creates an email containing German >> >> umlauts. On receiving the mail, my mail client displays the subject and >> >> body correctly: >> >> >> >> Subject: Übung >> >> >> >> Sehr geehrter Herr Dr. Bennett, >> >> >> >> Dies ist eine Übung. >> >> >> >> So far, so good. However, when I use the --verbose option to print >> >> the mail to the terminal via >> >> >> >> if args.verbose: >> >> print(mail) >> >> >> >> I get: >> >> >> >> Subject: Übungsbetreff >> >> >> >> Sehr geehrter Herr Dr. Bennett, >> >> >> >> Dies ist eine =C3=9Cbung. >> >> >> >> What do I need to do to prevent the body from getting mangled? >> >> >> >> I seem to remember that I had issues in the past with a Perl version of >> >> a similar program. As far as I recall there was an issue with fact the >> >> greeting is generated by querying a server, whereas the body is being >> >> read from a file, which lead to oddities when the two bits were >> >> concatenated. But that might just have been a Perl thing. >> >> > > Try PYTHONUTF8=1 envver. >
This does not seem to affect the way the email body is printed. Cheers, Loris -- This signature is currently under constuction. -- https://mail.python.org/mailman/listinfo/python-list