Emacs позволяет вам перехватить некоторые действия на любые
события (открытие файла, сохранение, запуск в новом режиме и т.п.).
Библиотека autoinsert использует это свойство: когда вы
открываете новый файл в Emacs, эта библиотека вставляет, соответственно
типу файла некоторый стандартный заголовок.
В нашем случае этот стандартный заголовок, может содержать
объявления типа документа (LinuxDoc), заголовок самого документа, имя
автора, и дату.
Я здесь опишу два способа для вставки таких заголовков. Вы можете
вставить файл шаблона, который содержит вставляемую информацию, или вы
можете запустить процедуру на elisp.
Вставка файла
Вы должны сначала заставить Emacs запустить auto-insert при
открытии файла, затем считать библиотеку autoinsert, которая
объявляет список auto-insert-alist, который необходимо
изменить. Этот список определяет вставляемые заголовки для каждого типа
файлов. По умолчанию, вставляемый файл должен находиться в директории
~/insert/, но можно переопределить переменную
auto-insert-directory, если вы хотите поместить заголовки в
другое место.
Добавьте следующие строки в ваш фал .emacs для вставки файла
~/emacs/sgml-insert.sgml при каждом открытии нового файла SGML:
Затем вы можете написать файл ~/emacs/sgml-insert.sgml тот
заголовок, который вам необходим, затем перезапустить Emacs и открыть
какой-нибудь новый файл (например foobar.sgml). Emacs должен
спросить у вас подтверждение автоматической вставки заголовка, и если вы
ответите утвердительно, то он вставит заголовок.
Запуск программы
Этот метод работает почти как предыдущий, но вместо установки указателя
auto-insert-alist на вставляемый файл, вам необходимо указать
какую процедуру надо выполнить. Теперь как это работает, допуская, что
вы хотите записать эту функцию в файл, названный
~/emacs/sgml-header.el. (нет необходимости перегружать ваш файл
.emacs такими функциями, поскольку они могут долго не использоваться):
Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!