Конвейер ресурсов Rails 3.1: игнорирование файлов резервных копий из Emacs и других редакторов - PullRequest
3 голосов
/ 21 июля 2011

В проекте Rails 3.1, если я редактирую app/assets/javascripts/users.js.coffee с помощью Emacs, тогда Emacs создает файл резервной копии с именем app/assets/javascripts/users.js.coffee~ (обратите внимание на завершающий символ "~").

К сожалению, новый конвейер ресурсов Rails 3.1 видит этот файл .coffee~ и вставляет его непосредственно в сгенерированный application.js, что, в свою очередь, вызывает ошибки JavaScript в браузере.

Я мог бы отключить резервное копирование в Emacs, написав:

(setq backup-directory-alist nil)

... или я мог бы использовать:

(setq backup-directory-alist `(("." . "~/.emacs-backups")))

... чтобы переместить их в другой каталог.

Но для этого потребуется, чтобы каждый пользователь Emacs в проекте перенастроил свои Emacs, что нежелательно. Я бы предпочел настроить Rails 3.1, чтобы игнорировать файлы, оканчивающиеся на .coffee~. Есть ли простой способ сделать это?

1 Ответ

4 голосов
/ 21 июля 2011

Я думал, что это был дефект в методе require_tree;и вроде как, кажется, есть несколько проблем, поданных по этому вопросу:

https://github.com/rails/rails/issues/1863#issuecomment-1543809 (Rails) https://github.com/sstephenson/sprockets/pull/119 (Sprockets) https://github.com/sstephenson/hike/issues/9 (Hike, fixбыло сделано здесь)

похоже, что это было исправлено недавно, после того, как Rails rc4 (hike-1.1.0), похоже, что hike-1.2.0 был выпущен с исправлением, вы можете попробовать обновить Gemfile для использованияболее новая версия

...