I' Estoy a punto de leer la elisp para verificar, pero apostaría que si agregaras una bandera --version
que diera los resultados guardados como /usr/bin/python
, emacs estaría feliz.
actualización
Aquí está el código en línea python.el 1555 y siguientes en Emacs 23.3.1:
(defvar python-version-checked nil)
(defun python-check-version (cmd)
"Check that CMD runs a suitable version of Python."
;; Fixme: Check on Jython.
(unless (or python-version-checked
(equal 0 (string-match (regexp-quote python-python-command)
cmd)))
(unless (shell-command-to-string cmd)
(error "Can't run Python command `%s'" cmd))
(let* ((res (shell-command-to-string
(concat cmd
" -c \"from sys import version_info;\
print version_info >= (2, 2) and version_info < (3, 0)\""))))
(unless (string-match "True" res)
(error "Only Python versions >= 2.2 and < 3.0 are supported")))
(setq python-version-checked t)))
lo que está haciendo está ejecutando una sola línea
from sys import version_info;
print version_info >= (2, 2) and version_info < (3, 0)
que solo imprime "Verdadero" o "Falso". Arregle su script para manejar el indicador -c y debería estar bien.
Alternativamente, podría tomar la salida del hacker y forzar el valor de python-version-checked
a t
, y nunca lo hará.
Gracias por el puntero, al buscar en el archivo encontré otro problema: el indicador "-i" está cableado (por lo que quitarlo de python-python-command-args no evitará que se pase) –
Bueno, es por eso que te dan las fuentes. Pero eso, en particular, me parece un error; cámbialo y envía un parche. –