Установка PSGML
Пользователь обычно получает PSGML как совокупность файлов, объединенных в один сжатый файл типа DOS/Windows ZIP или UNIX GNU zip. Файлы, извлеченные из этого дистрибутивного файла относятся к трем главным категориям:
- Файлы с расширением .el, которые являются совокупностями функций LISP, подобных файлу .emacs.
- Файлы с расширением .elc, которые являются откомпилированными версиями файлов .el. Они выполняются быстрее.
- Все другие файлы, которые содержат информацию относительно установки и использования PSGML.
Пользователи UNIX обнаружат инсталляционные команды и сценарии, включенные в комплект поставки PSGML. Пользователям DOS/Windows придется выполнить важные шаги вручную.
Файлы .elc созданные для какой-либо конкретной версии Emacs или в специфической операционной системе скорее всего не будут работать с другой версией программы или на другой операционной системе. Но файлы .elc всегда можно создать самостоятельно из файлов .el. PSGML может работать и .el-файлами, но это несколько замедлит работу, поскольку перед каждым выполнением такого файла будет проходить процесс его компиляции.
Сначала, поместите все файлы из пакета PSGML в их собственный подкаталог и удостоверьтесь, что Emacs осведомлен об их местоположении. Для этого добавьте следующий LISP-код в файл .emacs:
(setq load-path (append (list nil "/app/emacs/psgml") ; substitute your PSGML directory name load-path)) |
ПРИМЕЧАНИЕ:Даже при использовании Emacs и PSGML под DOS/Windows, PSGML ожидает, что в имени каталога будет присутствовать прямой слеш ("/"), а не обратный ("\"), как это имеет место в упомянутых операционных системах.
Тем самым переменной Emacs load-path, содержащей имена каталогов, откуда происходит загрузка программ, будет добавлено имя каталога, содержащего файлы PSGML. Переместите файлы PSGML в каталог /app/emacs/psgml.
Затем, нажмите M-x и в командной строке наберите byte-compile-file. Нажмите ввод, и после Byte compile file: введите имя .el-файла. Снова нажмите ввод.
Повторите процедуру для всех файлов с расширением .el. Если в процессе трансляции появляются сообщения об ошибках, компилируйте другие файлы, а затем вернитесь к тем файлам, где были ошибки и попробуйте снова. Возможно, ошибки - это результат наложения от других файлов.
Ускорить процесс компиляции можно, если вместо команды byte-compile-file использовать команду byte-force-recompile, которая запрашивает имя каталога, а затем компилирует все .el-файлы из этого каталога.
Выше было упомянуто, что Emacs имеет встроенный режим SGML, который, однако, имеет ограниченный набор возможностей, поэтому следующим шагом нужно сообщить Emacs использовать PSGML вместо встроенного режима SGML. Сделать это можно добавлением строки
(autoload sgml-mode "psgml" "Major mode to edit SGML files." t ) |
Помимо программных файлов пакет PSGML включает в себя документацию, которую можно просматривать в Emacs средствами справки. Поместите файл psgml.info в каталог (вероятно, подкаталог главного каталога Emacs называемого info), где лежат все файлы подсказки. Отредактируйте файл dir, находящийся в том же каталоге, включив в него следующую строку:
* PSGML: (psgml). SGML editing. |
C-h i g (/pathname/psgml.info) |
При определении местоположения файла информации учтите, что DOS/Windows Emacs допускает в названиях каталогов как прямых слешей ("/"), так и обратных ("\")