Настроить flymake для использования определенного каталога для временных файлов? - PullRequest
8 голосов
/ 07 декабря 2009

Я просматривал документацию и пытался настроить и многое другое, но независимо от того, что я делаю, Flymake просто всегда помещает свои временные файлы в любой каталог, в котором находится исходный файл.

Основная причина, по которой это имеет большое значение, заключается в том, что, когда я выполняю свои программы, используя gdb, иногда я захожу в файл STL или другой файл в непользовательском каталоге. Часто это приводит к тому, что мой процесс GDB перестает отвечать по какой-то причине, что означает, что мне нужно вернуться обратно к началу и либо глобально отключить Flymake, либо надеяться, что мне не придется делать другой файл find в каталоге, который мой процесс emacs не имеет доступа для записи.

Есть ли хороший способ заставить flymake всегда генерировать свои временные файлы, например, ~/.emacs.d/tmp

Ответы [ 3 ]

5 голосов
/ 27 января 2011

Последние версии Emacs сохраняют только «на месте». Вот быстрый взлом, чтобы сохранить «intemp»: http://blog.arithm.com/2011/01/27/save-_flymake-files-in-a-temporary-directory/

2 голосов
/ 09 декабря 2009

Это прекрасно работает для меня:

(setq temporary-file-directory "~/.emacs.d/tmp/")
0 голосов
/ 08 декабря 2009

Не уверен, но для C # flymake переопределяет функцию flymake-get-make-cmdline.

Возвращает строку, командную строку для запуска flymake. Я полагаю, что вы можете изменить эту функцию, чтобы она возвращала все, что вы хотите, включая командную строку, которая определенным образом определяет расположение временных файлов для любого компилятора, который вы используете.

...