bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#68559: [PATCH] Improve Python shell completion


From: kobarity
Subject: bug#68559: [PATCH] Improve Python shell completion
Date: Mon, 29 Jan 2024 22:15:20 +0900
User-agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (Gojō) APEL-LB/10.8 EasyPG/1.0.0 Emacs/30.0.50 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO)

kobarity wrote:
> Liu Hui wrote:
> > Thanks for pointing it out. The attached patch should now restore
> > previous basic completion behavior in comments.
> 
> Thanks, I confirmed that basic completion (without keyword argument
> completion) can be performed within comments.

One additional comment regarding ERT.  pyenv installs an ipython shim
to the shims directory, if there is at least one virtualenv providing
ipython.  It can be found by `executable-find'.  However, it is not
usable unless the virtualenv is activated.  As a result, the
`python-shell-completion-at-point-ipython' ERT would fail unless a
virtualenv which provides ipython is activated.

This may be something pyenv users should take care of, but it is more
convenient for pyenv users like me to make the following changes.

diff --git a/test/lisp/progmodes/python-tests.el 
b/test/lisp/progmodes/python-tests.el
index ae23ff8ebe2..9452f136cfb 100644
--- a/test/lisp/progmodes/python-tests.el
+++ b/test/lisp/progmodes/python-tests.el
@@ -4854,7 +4854,10 @@ python-shell-completion-at-point-ipython
   "Check if Python shell completion works for IPython."
   (let ((python-shell-interpreter "ipython")
         (python-shell-interpreter-args "-i --simple-prompt"))
-    (skip-unless (executable-find python-shell-interpreter))
+    (skip-unless
+     (and
+      (executable-find python-shell-interpreter)
+      (eql (call-process python-shell-interpreter nil nil nil "--version") 0)))
     (python-tests-with-temp-buffer-with-shell
      ""
      (python-shell-with-shell-buffer





reply via email to

[Prev in Thread] Current Thread [Next in Thread]