Я перехожу на Emacs с TextMate. Одна особенность TextMate, которую я действительно хотел бы иметь в Emacs, - это поле поиска «Найти в проекте», в котором используется нечеткое сопоставление. Emacs вроде как имеет это с ido, но ido не выполняет рекурсивный поиск по дочерним каталогам. Он ищет только в одном каталоге.
Есть ли способ дать ido корневой каталог и искать все, что в нем?
Обновление:
Приведенные ниже вопросы относятся к find-file-in-project.el из ответа Михала Марчика.
Если что-то в этом сообщении кажется очевидным, так это потому, что я использовал Emacs менее одной недели. :-)
Насколько я понимаю, локальные переменные проекта позволяют мне определять вещи в файле .emacs-project, который я храню в корне моего проекта.
Как мне указать find-file-in-project на корень моего проекта?
Я не знаком с синтаксисом регулярных выражений в Emacs Lisp. Значение по умолчанию для ffip-regexp:
".*\\.\\(rb\\|js\\|css\\|yml\\|yaml\\|rhtml\\|erb\\|html\\|el\\)"
Я предполагаю, что могу просто переключить расширения на те, которые подходят для моего проекта.
Не могли бы вы объяснить параметры ffip-find? Из файла:
(defvar ffip-find-options "" "Дополнительные параметры, передаваемые в` find 'при использовании find-file-in-project.
Используйте это, чтобы исключить части вашего проекта: \ "- not -regex \\". vendor. \\ "\" ")
Что именно это означает и как с его помощью исключить файлы / каталоги?
Не могли бы вы поделиться примером файла .emacs-project?