Subject: Re: bug#68559: [PATCH] Improve Python shell completion

From: "Basil L. Contovounesios" <[email-masked]>
Date: Thu, 22 Feb 2024 14:56:38 +0100

Liu Hui [2024-02-22 18:31 +0800] wrote:

> On Wed, Feb 21, 2024 at 10:55 PM Basil L. Contovounesios
> <[email-masked]> wrote:
>>
>> Liu Hui [2024-02-21 18:00 +0800] wrote:
>>
>> > The attached patch should fix the problem.
>>
>> Thanks!  The patch fixes the error, but that's because
>> python-shell-completion-at-point-ipython is now skipped:
>
> Only the native completion part is skipped for the reason below.
>
>> in particular, python-shell-readline-completer-delims evaluates to
>> "\s\t\n`~!@#$%^&*()-=+[{]}\\|;:'\",<>/?" rather than the empty string.
>
> "\s\t\n`..." is the delimiter used by rlcompleter, which is the
> default completer used by the readline. rlcompleter cannot complete
> module names or parameters, so in this case the native completion part
> is skipped.
>
> The test is intended to be used with Jedi as the completion backend,
> e.g. setting PYTHONSTARTUP="$(python -m jedi repl)", or with a custom
> IPython completer defined in the PYTHONSTARTUP file. I have updated the
> patch to make the test use Jedi when possible.

Thanks, looks fine to me and runs without issue.

The python-shell-completion-at-point-ipython test is still skipped, with
or without specifying PYTHONSTARTUP="$(python -m jedi repl)", but like
you suggest that's not necessarily a problem.

I'm guessing you don't have write access to emacs.git, but have signed
the CA?  If so, and if there are no other comments/objections in a few
days, I'll apply the patch in your name.

Thanks,
-- 
Basil