Выполнение pyflakes удаленно с flymake и бродягой в emacs?

Я пытаюсь использовать flymake для выполнения pyflakes, как предложено сюда

Это хорошо работает для локальных файлов и почти работает с удаленными файлами с небольшим количеством тонкой настройки, но меня оставляют с проблемой, где flymake/pyflakes 'изменяет' буфер, когда это работает (хотя ничто на самом деле, кажется, не изменяется), который представляет его немного бесполезный на практике (например, сохранение файла выполняет flymake, который сразу изменяет буфер снова).

Вот то, что я сделал, чтобы почти получить его работа:

  1. Установленный pyflakes на удаленном поле.
  2. Настроенный мой tramp-remote-process-environment переменная так, чтобы pyflakes мог быть найден в его ПУТИ
  3. Используемый вариант кода от Wiki связываются выше. Очевидно, я исключил проверку, которая отключает его для удаленных буферов. Кроме того, (when (load "flymake" t) ...) конструкция, казалось, не работала, как я ожидал, но я не слишком волнуюсь по поводу этого.
  4. Переопределенный (в тестовых целях - совет должен быть прекрасным, если это может быть сделано работать), flymake-start-syntax-check-process функционируйте так, чтобы это использовало start-file-process (который работает с бродягой) вместо start-process (который не делает).

Изменение в № 4, кажется, не вызывает проблем при обработке локального файла, но хотя это теперь позволяет flymake выполнить удаленный pyflakes для удаленных файлов (ошибки выделяются как ожидалось), в этом экземпляре 'изменяется' буфер каждый раз, когда flymake работает.

Я предполагаю это start-file-process, для удаленных процессов, результатов в некотором дополнительном возвращаемом значении / данные, которые не происходят для локальных процессов.

У кого-либо есть понимание/совет?

  • Emacs 23.1 и 23.2 на Ubuntu
  • Python 2.4.6
  • Pyflakes 0.4.0 (через easy_install)

17
задан Mirzhan Irkegulov 9 March 2013 в 17:48
поделиться