From b33808ce77ef15c1f233790a2c93d9db4cc588ab Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Mon, 2 Oct 2017 22:54:36 -0400 Subject: [PATCH] Give more helpful messages for python completion setup failures * lisp/progmodes/python.el (python-shell-completion-native-setup): In case the completion setup failed with some exception, print out the exception type and message. If libedit is detected, raise an exception, since this is known to fail. --- lisp/progmodes/python.el | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index 365191c56b0..9aa5134ca0d 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -3442,6 +3442,8 @@ def __PYTHON_EL_native_completion_setup(): instance.rlcomplete = new_completer if readline.__doc__ and 'libedit' in readline.__doc__: + raise Exception('''libedit based readline is known not to work, + see etc/PROBLEMS under \"In Inferior Python mode, input is echoed\".''') readline.parse_and_bind('bind ^I rl_complete') else: readline.parse_and_bind('tab: complete') @@ -3450,7 +3452,9 @@ def __PYTHON_EL_native_completion_setup(): print ('python.el: native completion setup loaded') except: - print ('python.el: native completion setup failed') + import sys + print ('python.el: native completion setup failed, %s: %s' + % sys.exc_info()[:2]) __PYTHON_EL_native_completion_setup()" process) (when (and -- 2.39.5