Printing UTF-8 mail to terminal
Left Right
olegsivokon at gmail.com
Thu Oct 31 12:38:50 EDT 2024
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.
On Thu, Oct 31, 2024 at 5:19 PM Loris Bennett via Python-list
<python-list at 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.
>
> Cheers,
>
> Loris
>
> --
> This signature is currently under constuction.
> --
> https://mail.python.org/mailman/listinfo/python-list
More information about the Python-list
mailing list