Я пытаюсь связать режим CPerl с исходными файлами Perl в emacs (23.1.1 в CentOS 6).
Если я включу следующую строку в мой .emacs
(defalias 'perl-mode 'cperl-mode)
, тогда режим CPerl будет загружен при открытии исходного файла Perl.
Однако следующая строка, которая выглядит так, как будто она должна работать, приводит к загрузке режима Perl:
(add-to-list 'auto-mode-alist '("\\.p[lm]$" . cperl-mode))
Там нет сообщения об ошибке - он просто загружает режим Perl вместо режима CPerl.
Причина, по которой я спрашиваю, состоит в том, что у меня возникли некоторые проблемы с использованием стиля cperl-set (работает из меню emacs, но не в том случае, если я добавляю его в качестве ловушки в режим CPerl, когда он был добавлен в perl-mode ) и я хотел попробовать загрузить режим CPerl напрямую.
Оператор, который я использую в своем .emacs, чтобы установить стиль отступа в качестве привязки к режиму CPerl:
(eval-after-load "cperl-mode"
add-hook 'cperl-mode-hook (lambda() (cperl-set-style 'C++))))
Это, очевидно, не имеет никакого эффекта, если режим CPerl не загружен (когда я использую подход auto-mode-alist), и не делает правильную вещь (кажется, использует стиль отступа GNU), когда я загружаю режим CPerl, накладывая его на Perl mode.