[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Xemacs psgml mode
On Tue, 06 Oct 1998 17:13:00 +0400, "Valeriy E. Ushakov" wrote:
> > А существует какой-либо несложный (т.е. не требующий многочасового копания
> > в Лиспе) способ научить xemacs в psgml-mode, что в данном конкретном
> > документе я хочу покрасить все от, скажем, <head> до </head> в зеленый
> > цвет?
> >
> > Я даже готов не писать <head/.../ или <head>...</> по такому случаю.
>
> hilit'ом - да, font-lock'ом - нет.
:-O
>
> Вообще я font-lock не люблю, слишком он жесткий, нерасширяемый, но
> зато поддерживает lazy/fast lock. Вот если бы hilit этому научить...
>
> В hilit'е можно задать абстрактные сущности, которые хайлайтятся неким
> заданным образом, а затем в каждой моде, где эти сущности имеют смысл
> задать regexp'ы, которые эти сущности для этой моды определяют.
>
> А font-lock только и знает про keyword'ы и еще несколько жестко
> заданных вещей.
Ну, и вполне хватает.
(add-hook 'sgml-mode-hook 'My-SGML-highlight)
(make-face 'tei-head-face)
(set-face-foreground 'tei-head-face "dark green")
(defun My-SGML-highlight ()
(setq
font-lock-keywords
'(
("<head/[^/]*/" . tei-head-face)
("<head>.*</>" . tei-head-face)
("<head>.*</head>" . tei-head-face)
)
)
)
И можно даже продолжать писать <head/.../ и <head>...</> ;-)
Остальные теги раскрашиваются по образу и подобию.
--
Best regards, -- Boris.