He estado tratando de configurar Emacs para usar el modo Python adecuado. Con este fin, he leído algunos tutoriales. Lo más importante este . El tutorial usa el python-mode
paquete. Sin embargo, cuando lo instalo a través del administrador de paquetes ( M-x package-install RET python-mode RET
) no puedo usar los accesos directos que están disponibles para ese paquete.
Abrí un archivo de Python para probar algunos accesos directos como C-c |
, que deberían evaluar la expresión seleccionada. Sin embargo, para mi sorpresa, estos no funcionaron, así que decidí buscar otros tutoriales sobre el tema. Sin embargo, en mi línea de modo sí veo Python
, por lo que hay algunos python-mode
habilitados.
En el wiki de emacs encontré el siguiente fragmento para agregar a mi init.el
archivo:
(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))
Cuando agrego esto, el python-mode
realmente funciona y los accesos directos mencionados también funcionan.
No entiendo correctamente qué hace esto más que ejecutarlo manualmente M-x python-mode
en un búfer de archivos de Python.
Cuando python-mode
eliminé cada rastro de mi carpeta .emacs y abrí un archivo de Python, noté que todavía tengo un python-mode
. ¿Entonces supongo que hay dos python-mode
s?
Creo que quiero el python-mode
de https://launchpad.net/python-mode . Parece que está presente en el repositorio de paquetes, pero no estoy seguro de cómo eliminar el otro modo Python.
¿Podría alguien dar más detalles por favor?
Respuestas:
Bueno, sí, hay dos modos de Python: el que se envía con emacs es
python.el
y el otro es elpython-mode.el
que es este: https://launchpad.net/python-modeSu tutorial ha estado haciendo referencia al posterior.
Su
python-mode
fragmento de configuración hace lo siguiente:fuente
init.el
sea portátil, por lo que la eliminaciónpython.el
podría no ser una opción.Como mantenedor de python-mode.el y además de responder por @Adobe: python-mode.el no descarga comandos de python.el, ambos están disponibles. Debido al nombre de python-mode-map, que es utilizado por ambos y no se puede cambiar sin romper muchas cosas, las combinaciones de teclas y el menú se entregan desde el último cargado.
C-c |llama
py-execute-region
y funciona muy bien aquí. Quizás python.el se cargó después y la unión desapareció. Llamar al comando a través de Mx podría ser una opción que. En caso de problemas, considere un informe de error en https://bugs.launchpad.net/python-modefuente