Во многих моих проектах я использую .dir-locals.el
файлы для настройки конкретных переменных проекта, таких как команды компиляции. При открытии файла в каталоге, содержащем такой файл, emacs
жалуется на «рискованные локальные переменные» , а именно:
The local variables list in $DIR$/ contains variables that are risky (**)
Do you want to apply it? You can type
y -- to apply the local variables list.
n -- to ignore the local variables list.
** LaTeX-command : "lualatex -shell-escape"
Я не хочу отключать эту функцию, но мне бы хотелось, чтобы меня спросили только один раз (во время сеанса emacs) о конкретном .dir-locals.el
файле.
Я использую некоторые плагины, которые хотят проанализировать все исходное дерево, и довольно раздражает, когда y
сотни раз ударили просто, чтобы разобрать все.
Итак, актуальный вопрос:
Может ли
emacs
механизм загрузки локальных переменных быть сконфигурирован / модифицирован таким образом, чтобы он позволял / запрещал загрузку определенного списка локальных переменных в течение всегоemacs
сеанса?
Вы можете отключить эту функцию «не помнить рискованные переменные» , добавив в ваш файл следующее
~/.emacs
:Тогда он будет подтвержден только после редактирования.
источник
(advice-add 'risky-local-variable-p :override #'ignore)
, что имеет преимущество быть отменяемым черезadvice-remove
.