Seu 'python-shell-interpreter' não parece suportar a linha de leitura

13

Eu tenho esse problema com meus 25.1 e Python 3.5 no Ubuntu 16.10, mas não vejo isso sendo resolvido em nenhum lugar. Pensando em qual era o status mais recente. Reprodução:

> emacs -Q --eval '(setq python-shell-interpreter "python3")'

então

M-x run-python

Warning (python): Your ‘python-shell-interpreter’ doesn’t seem to support readline, yet ‘python-shell-completion-native’ was t and "python3" is not part of the ‘python-shell-completion-native-disabled-interpreters’ list.  Native completions have been disabled locally.

Eu vi uma ideia de onde um M-x find-function python-shell-completion-native-trypuxaria a função do fundo (/usr/local/share/emacs/25.1/lisp/progmodes/python.el.gze a última linha deveria estar nil "_")))e não nil ""))). Outra conversa aqui fala sobre mudarinputrc

Troquei para outro usuário e pude usar o `run-python 'sem nenhum aviso. Acontece que foram minhas configurações de linha de leitura. O Bash 4.3 adicionou um novo recurso de linha de leitura: "definir estatísticas coloridas" em que eu estava.

Alguém sabe o que há de mais recente nisso? BTW, executando Python2 ( (setq org-babel-python-command "python2")) não tem esse problema.

147pm
fonte
O bug do Emacs ao qual você vinculou está marcado como resolvido para 25.2 (ainda não lançado), portanto, você deve esperar que ele ainda esteja presente no 25.1. Você pode tentar a versão pré-teste (25.1.9x).
N18
Sabe quando 25.2 saiu?
147pm 18/01/19
Talvez um mês mais ou menos? Você pode tentar o pré-teste (25.1.91) agora alpha.gnu.org/gnu/emacs/pretest
npostavs
Tenho os mesmos sintomas ("Seu 'python-shell-intérprete' parece não suportar a linha de leitura") executando o Python 3.6.0 e o GNU Emacs 25.2 RC1 no Windows 10; portanto, o problema ainda não está resolvido, ou talvez seja um problema diferente?
Martin Martin

Respostas:

10

Se você não deseja obter um 25.2 rc, pode aplicar a correção de bug adicionando isso ao seu arquivo init.el:

(with-eval-after-load 'python
  (defun python-shell-completion-native-try ()
    "Return non-nil if can trigger native completion."
    (let ((python-shell-completion-native-enable t)
          (python-shell-completion-native-output-timeout
           python-shell-completion-native-try-output-timeout))
      (python-shell-completion-native-get-completions
       (get-buffer-process (current-buffer))
       nil "_"))))

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25753#44

npostavs
fonte
Funciona como um encanto. Obrigado por compartilhar.
dangom
2
Por alguma razão, adicionar isso (setq python-shell-completion-native-enable nil)ao meu init.elarquivo funcionou, sem a necessidade do código acima.
Guilherme Salomé
@ GuilhermeSalomé que suprime o aviso, mas você não obtém a conclusão nativa. Se você estiver no Windows, é a coisa certa a fazer .
N
5
Mesmo no Emacs 26.1, continuo com esse problema.
Guilherme Salomé
1
Também no Emacs 26.2, e essa resposta ainda funciona.
precisa saber é o seguinte
3

Eu também tive esse aviso perturbador no Emacs 25.1.

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24401 possui uma solução adequada para ativar colored-statsapenas o Bash:

$ cat ~/.inputrc
$if Bash
set colored-stats on
$endif
gavenkoa
fonte