Emacs для начинающих

       

Выделение Разметки шрифтом и цветом


При использовании терминала (или программы эмуляции терминала) и версии Emacs, поддерживающей отображение текста различным шрифтом или цветом, PSGML может использовать эти возможности для облегчения восприятия разных видов разметки. Настройки PSGML по умолчанию отображают комментарии SGML курсивом; ссылки на объект - полужирным курсивом; тэги, встроенные инструкции, SGML и DOCTYPE объявления, а также короткие ссылки - полужирным шрифтом.

Если используемая версия Emacs может работать с различными шрифтами, то скорее всего это версия редактора под UNIX с XWINDOWS терминалом. Другие версии обычно вместо различных шрифтов используют выделение цветом. Так поступает, например, EMX версия GNU Emacs 19.29.2, отображая комментарии красным, ссылки на объект желтым, и тэги и прочую разметку белым цветом на общем сером фоне.

Если была использована команда sgml-next-trouble-spot, а выделение шрифтом или цветом отсутствует, то можно задать Emacs и PSGML отображать разметку выбранным способом, добавив несколько строк к .emacs-файл. Создание этих строк можно разбить на следующие четыре этапа:

  1. Создать "ярлыки", чтобы обозначить категории разметки.
  2. Назначить атрибуты для ярлыков.
  3. Присвоить категориям разметки ярлыки.
  4. Присвоить переменной sgml-set-face ненолевое значение, чтобы PSGML "обратил внимание" на параметры настройки ярлыков.

Ниже приводится код .emacs, демонстрирующий назначение разметки цветом для комментариев, тэгов, и ссылки на объект.

;;;;; Assign colors to markup. ;;;;; ; Create faces to assign to markup categories. (make-face sgml-comment-face) (make-face sgml-start-tag-face) (make-face sgml-end-tag-face) (make-face sgml-entity-face)

; Assign attributes to faces. Background of white assumed. (set-face-foreground sgml-comment-face "White") ; Comments: white on (set-face-background sgml-comment-face "Gray") ; gray. (set-face-background sgml-start-tag-face "Gray") ; Tags: black (default) (set-face-background sgml-end-tag-face "Gray") ; on gray. (set-face-foreground sgml-entity-face "White") ; Entity references: (set-face-background sgml-entity-face "Black") ; white on black.

; Assign faces to markup categories. (setq sgml-markup-faces '((comment . sgml-comment-face) (start-tag . sgml-start-tag-face) (end-tag . sgml-end-tag-face) (entity . sgml-entity-face)))

; Tell PSGML to pay attention to face settings. (setq sgml-set-face t)



Содержание раздела