Eu tenho tentado configurar o Emacs para usar o modo Python adequado. Para esse fim, li alguns tutoriais. O mais importante é este . O tutorial usa o python-mode
pacote. No entanto, quando o instalo através do gerenciador de pacotes ( M-x package-install RET python-mode RET
), não consigo usar os atalhos disponíveis para esse pacote.
Abri um arquivo Python para testar alguns atalhos como C-c |
, que devem avaliar a expressão selecionada. No entanto, para minha surpresa, eles não funcionaram, então decidi descobrir outros tutoriais sobre o assunto. No entanto, na minha linha de modo, eu vejo Python
, então há alguns python-mode
habilitados.
No wiki do emacs, encontrei o seguinte snippet para adicionar ao meu init.el
arquivo:
(autoload 'python-mode "python-mode" "Python Mode." t)
(add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode))
(add-to-list 'interpreter-mode-alist '("python" . python-mode))
Quando adiciono isso, ele python-mode
realmente funciona e os atalhos mencionados também funcionam.
Não entendo corretamente o que isso faz mais do que executar manualmente M-x python-mode
em um buffer de arquivo python.
Quando removi todos os rastreios da python-mode
minha pasta .emacs e abri um arquivo python, notei que ainda tinha um python-mode
. Então, meu palpite é que existem dois python-mode
s?
Eu acho que eu quero a python-mode
partir https://launchpad.net/python-mode . Parece que ele está presente no repositório de pacotes, mas não sei como remover o outro modo Python.
Alguém poderia elaborar por favor?
Respostas:
Bem, sim, existem dois modos python: o que acompanha o emacs
python.el
e o outropython-mode.el
que é realmente esse: https://launchpad.net/python-modeSeu tutorial referenciou o posterior.
Seu
python-mode
snippet de configuração faz o seguinte:fonte
init.el
portátil seja portátil, portanto, a remoçãopython.el
pode não ser uma opção.Como mantenedor do python-mode.el e, além de responder por @Adobe: python-mode.el não descarrega comandos do python.el - ambos estão disponíveis. Devido ao nome do python-mode-map - que é usado por ambos e não pode ser alterado sem quebrar muitas coisas - as combinações de teclas e o menu são entregues a partir do último carregado.
C-c |chama
py-execute-region
e funciona muito bem aqui. Talvez python.el tenha sido carregado posteriormente e a ligação tenha desaparecido. Chamar o comando via Mx pode ser uma opção que. Em caso de problemas, considere um relatório de erro em https://bugs.launchpad.net/python-modefonte