emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ELPA] Update package: psgml (discard patch)


From: Stefan Monnier
Subject: Re: [ELPA] Update package: psgml (discard patch)
Date: Fri, 21 Apr 2017 10:00:49 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux)

>> Do you use a dsssl-mode major mode for it?  Can you point me to it?
> It's lisp and entity references between two SGML tags, like this:
>   <style-specification>
>   (element par (make paragraph start-indent: &indentS;))
>   </style-specification>

Thanks.

> The mode is dsssl-mode from the built-in scheme elisp library.

Duh!

[ After so many years using, contributing, and maintaining Emacs,
  I still bump into "unknown" packages and major modes bundled with
  Emacs several times a year (I suspect that some of those "unknown" are
  really that I forgot about them since last time I bumped into them,
  but still).  ]

>> In the specific case of psgml, I think the real fix should be to make
>> psgml interact more normally with font-lock.  I haven't looked into it
>> hard enough yet, tho.
> PSGML only understands the reference concrete syntax, so, with a few
> exceptions such as for fontifying Null End Tags only when they can occur
> and using the value of parameter entities for marked sections, it should
> be able to use font lock using regular expressions.

>From a cursory look at how it currently works, I got the impression that
it can be made to use font-lock without changing fundamentally how it's
done.  Using regexps would probably be more painful, less efficient,
and/or less reliable (luckily, font-lock is not limited to regexps).

>> This makes me feel like you indeed have a multi-major-mode situation, in
>> which case sgml-set-face is probably just one part of the problem (and
>> using indirect buffers would just add more problems).
> I've run into multi-major-mode a lot while doing SGML stuff.

[ Side note: given the goal of SGML/XML to provide a kind of "universal
  syntax", the frequency with which even things specifically designed
  for XML/SGML end up using a completely different syntax (e.g. CSS,
  RNC, DSSSL, etc...), seems to be a strong indication of failure.
  Of course, that's just the opinion of someone who's never much liked
  the SGML/XML tags because of their verbosity.  ]

> I do miss MuMaMo integration with nHTML,

Did MuMaMo disappear?

BTW, Tom Tromey has recently added a new mhtml-mode to Emacs, which
"simply" combines Emacs's html-mode js-mode and css-mode.  It won't
directly help your dsssl-mode, but maybe you could try to see if his
approach could be used for your SGML+DSSSL case.  I don't see any strong
reason why sgml-mode + dsssl-mode would be harder than what he did.
I think making it work with psgml rather than the plain html-mode could
be a fair bit of work, OTOH.

While talking about ideas, I'd like to "merge" psgml-mode and sgml-mode.
What "merge" means here is not completely clear, but most likely it
means that psgml-mode would derive from sgml-mode, a bit like js2-mode
derives from js-mode nowadays.

> but I hardly write directly in HTML any more and I don't use PHP,
> so...  There's something about the NOTATION attribute giving the
> editor access to which major mode element content is in that lends
> itself to multi-major-mode.

I must admit that I don't know what you mean by "NOTATION attribute".

> At least, that's how I'd like to use psgml, but I need to learn a lot
> more about modes before I tried something like making emacs SGML-aware.

The SGML/XML support in Emacs is indeed in need of work.  Partly because
of the amount of distinct solutions reinventing the wheel slightly
differently (e.g. between sgml-mode, psgml-mode, nxml-mode, ...).


        Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]