Set up Notepad++ and NppExec to print unicode characters from python

2.9k Views Asked by At

I have an utf-8 encoded file cjk.py:

print("打印")

Unsurprisingly, running python cjk.py yields

Traceback (most recent call last):
  File "cjk.py", line 1, in <module>
    print('\u6253\u5370')
  File "C:\Python33\lib\encodings\cp850.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_map)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 0-1: character maps to <undefined>

Yet running idle -r cjk.py works perfectly:

打印

Can I configure notepad++'s NppExec plugin to behave like Idle? I've trying setting input and output encoding to UTF-8, to no avail (same exception as when running python cjk.py from the console)

1

There are 1 best solutions below

2
On

I had the same problem and fixed it.

Add env_set PYTHONIOENCODING=utf-8 just below C:\Python27\python.exe "$(FULL_CURRENT_PATH)" in the dialog box when you press F6.

Worked like a charm for me, hope it helps.

Source: http://sourceforge.net/p/npp-plugins/discussion/672146/thread/d94ff609/