From e846825fc812cdf48717dd1c156d430101e2f5d0 Mon Sep 17 00:00:00 2001 From: Emmanuel Gil Peyrot Date: Thu, 7 Jun 2018 14:42:14 +0200 Subject: Add a check for Unicode support. This makes poezio refuse to run if the environment is known broken. --- poezio/poezio.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'poezio/poezio.py') diff --git a/poezio/poezio.py b/poezio/poezio.py index 841e706f..d74eca74 100644 --- a/poezio/poezio.py +++ b/poezio/poezio.py @@ -53,6 +53,23 @@ def test_env(): return True +def test_unicode(): + import poopt + try: + poopt.wcswidth('✔') + except UnicodeError: + print("""\ +ERROR: The current system is misconfigured for Unicode. + +Check your locale setup, especially the $LANG environment variable and \ +whether it matches a locale built on your system. Also check that it is a \ +.UTF-8 locale, and not using some legacy encoding. + +Poezio is unable to display characters properly, so it will now exit.""") + return False + return True + + def main(): """ Entry point. -- cgit v1.2.3