Установка auto-mode-alist в emacs

Я заметил, что все текущие записи автоматического режима-списка заканчиваются одинарной кавычкой, например

 ("\\.java\\'" . java-mode)

Какова цель одиночной кавычки. I я бы ожидал увидеть

 ("\\.java$" . java-mode)

Причина, по которой я спрашиваю, состоит в том, что я пытаюсь получить файлы с именами, соответствующими regexp

^twiki\.corp.* 

, чтобы открыть их в режиме org. Я безуспешно пробовал следующее:

(add-to-list 'auto-mode-alist '("^twiki\\.corp" . org-mode))
(add-to-list 'auto-mode-alist '("\\'twiki\\.corp" . org-mode))

Следующие работы:

(add-to-list 'auto-mode-alist '("twiki\\.corp" . org-mode))

, но это не совсем то, что я хочу, так как имена файлов с твики. Корпорация, встроенная в них, будет открыта в режиме org.

27
задан chris 16 August 2010 в 15:02
поделиться

1 ответ

\\ 'соответствует пустой строке в конце строки / буфера:

http://www.gnu.org/software/emacs/manual/html_node/emacs/Regexp -Backslash.html el

$ будет соответствовать концу строки: Если у вас есть символы новой строки в вашем имени файла (очень редко) $ будет соответствовать новой строке, а не концу строки.

Регулярное выражение сопоставляется с целым именем файла, поэтому вам нужно включить "/" для соответствия разделителю каталогов:

(add-to-list 'auto-mode-alist '("/twiki\\.corp" . org-mode))
29
ответ дан 28 November 2019 в 05:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: