Подтвердить что ты не робот

Установка автоматического режима-alist в emacs

Я заметил, что текущие записи auto-mode-alist заканчиваются одной цитатой, например

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

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

 ("\\.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))

но не совсем то, что я хочу, так как имена файлов с встроенным в них twiki.corp будут открываться в org-mode.

4b9b3361

Ответ 1

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

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

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

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

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