Создание интерактивного режима Emacs для подсветки и отступов в Python - PullRequest
6 голосов
/ 14 января 2010

Я использую Emacs 23 с python-mode 5.1.0 для редактирования моих программ на python. Иногда при написании программы я хочу запустить небольшой одноименный скрипт на python и поэтому запускаю интерактивный ход (C-c!). Это нормально, но это не делает отступы и не выделяет код, и если я попытаюсь запустить режим python, находясь в нем, он больше не оценивает. Итак, как мне установить отступ и выделить?

Ответы [ 2 ]

3 голосов
/ 15 января 2010

Добавление их в мой .emacs, похоже, сделало это.

Бит, где он проверяет имя буфера в рекомендации, вероятно, будет лучше в качестве теста для локальной переменной буфера, установленной set-pycomint-Keywords, но вы поймете идею.

(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 голосов
/ 02 февраля 2010

У меня нет времени, чтобы попробовать это сейчас, но я нашел, что вы можете заменить оболочку Python, когда вы нажимаете C-c с этим это должно быть более мощным:

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

Когда у меня будет время, я попробую

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...