2010-01-14 9 views
6

Estoy usando Emacs 23 con python-mode 5.1.0 para editar mis programas de python. A veces, al escribir un programa, quiero ejecutar un pequeño script de python desechable y así ejecutar el movimiento interactivo (C-c!). Esto está bien, pero ni sangra ni resalta el código, y si intento ejecutar el modo python mientras está en él, ya no se evalúa. Entonces, ¿cómo lo configuro para marcar y resaltar?Haciendo que Python Interactive Mode de Emacs Resalte y sangría

Respuesta

3

Agregando esto a mi .emacs parece haberlo hecho.

El bit donde verifica el nombre del búfer en el consejo probablemente sería mejor como una prueba en una variable local de búfer establecida por set-pycomint-keywords, pero se entiende la idea.

(defun set-pycomint-keywords() 
    (setq font-lock-keywords  python-font-lock-keywords)) 

(add-hook 'py-shell-hook 'set-pycomint-keywords) 



(defadvice comint-send-input (around block-comint-formatting activate) 
    (if (string= (buffer-name) "*Python*") 
     (letf (((symbol-function 'add-text-properties) (lambda (x y z) nil))) 
     ad-do-it)) 
    ad-do-it) 
+0

Intenté esto, y colorea el texto correctamente. Sin embargo, cuando escribo def fn (a): y presiono enter, no entra en ... pero en cambio siempre provoca un error de sangría. – Nikwin

-1

no tengo tiempo para probarlo ahora, pero he encontrado que puede reemplazar Python Shell cuando se presiona Cc con esto que debe ser más poderoso:

http://ipython.scipy.org/moin/

Cuando i Tendré tiempo lo intentaré

+0

Esto no responde la pregunta. – Gyuri

+0

Esto es bueno saberlo, y lo intentaré algún día, pero no cambiará la forma en que emacs muestra el shell. – Nikwin

Cuestiones relacionadas