--- id: win-unicode-console version: "0.5" license: MIT license_treatment: permissive maintenance: abandoned --- # win_unicode_console — Enable Unicode input and display when running Python from Windows console. License: permissive · Maintenance: abandoned · Downloads: 493.2K/mo ## What it is and what it does win-unicode-console patches Python's standard input/output streams on Windows to handle Unicode correctly. The Windows console has fundamental limitations: sys.stdin, sys.stdout, and sys.stderr cannot natively read or display Unicode characters through normal Python I/O. This package replaces those streams with custom implementations that use Windows API functions (ReadConsoleW and WriteConsoleW) to communicate with the console in UTF-16-LE, then transcodes to UTF-8 for Python's tokenizer. It also installs a custom readline hook to fix interactive input and, on Python 2, monkeypatches raw_input and sys.argv to handle Unicode. The package is designed as an external patch—a user-level fix rather than something application developers should bundle as a dependency. Once enabled via win_unicode_console.enable(), Unicode characters can be printed and entered normally. However, the package is abandoned (last release 2016-06-25, last commit 2021-01-04) and targets only Python 2.7 and 3.4–3.5, making it unsuitable for modern Python environments. Use it for: - Running legacy Python 2 scripts on Windows that need to accept or display Unicode input from the console. - Interactive Python REPL sessions on Windows where you need to enter or see non-ASCII characters. - Debugging or testing Python code that processes Unicode on a Windows machine with older Python versions. - Standalone Windows console applications written in Python 2 that require international character support. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Fixes Unicode input and display in Python when running from the Windows console by replacing standard streams and input handling with WinAPI-based alternatives. No. The package is abandoned (last release 2016-06-25) and targets only Python 2.7 and 3.4–3.5, all of which are end-of-life. Modern Python has significantly improved Unicode handling on Windows. If you are on a supported Python version, the standard streams should work correctly; if you are on Python 2 or early versions, you should upgrade rather than apply this patch. Install only if you are stuck maintaining legacy code on an unsupported Python version and have no path to upgrade. ## Install pip install win-unicode-console uv add win-unicode-console poetry add win-unicode-console ## Installing win_unicode_console Before you install: High install friction: distributed as a .zip archive requiring manual extraction or pip install from archive. Package is abandoned—last release was 2016-06-25, last commit 2021-01-04, and no maintenance activity since. Targets Python 2.7 and Python 3.4–3.5, which are no longer supported. License in practice: MIT license is permissive and imposes no restrictions on use or redistribution, but the package's abandonment means no legal recourse for issues. Quickstart: pip install win-unicode-console import win_unicode_console win_unicode_console.enable() print("α") # Unicode now displays correctly Windows only; Python 2.7 or Python 3.4–3.5 (older Python versions only). Verify before relying: - Whether the package works with Python versions released after 3.5. - Whether the WinAPI approach remains effective on modern Windows console implementations. - Whether the package's fixes are still necessary given Python's improved Unicode handling in recent versions. ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: high - Maintenance: abandoned - Downloads: 493.2K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags windows console unicode input, python windows unicode display, fix unicode windows terminal, windows console encoding python, unicode stdin stdout windows, windows-only, end-of-life [View on SkillFed](https://skillfed.io/packages/win-unicode-console) · [View on PyPI](https://pypi.org/project/win-unicode-console/)