>>>>> Peter Flynn :
> DTD parsing (I'm sure nxml has this, I just haven't seen it at work).
As others have said: no it doesn't.
But creating a RNG schema from a DTD using trang, is really easy.
And you can persist the association between your DOCTYPE declaration and
the RNG schema you have created.
> C-c C-e element insertion with TAB completion according to the DTD;
> the population of such inserted elements which have required element
> content, and the prompting for required attributes.
nxml did go a different route here. You start typing, and then you
press C-RET (Control+RET) to get the stuff that expansion can offer.
As an example, here's how to create a DocBook document on a nxml on a
debian system (standard setup on debian).
Open the file /tmp/silly.xml
Select Menu XML->Set Schema->For Document Type->DocBook
When prompted, tell it to write this association to schemas.xml (or not,
but at least this will give you a look at at schemas file).
Then start typing:
< C-RET b o o C-RET > C-c C-f
(`C-c C-f' is "insert an end-tag for the current tag")
Will give you a document that looks like this:
If you would like to add some attributes to the top level element, add a
space after "book" in the start element (ie. "") and place the
cursor on the ">" and press C-RET. This will give you the list of all
Typing the following with the cursor placed so
C-c C-x C-RET r e v SPC f RET C-RET a SPC RET
(just to give an example of expansion for an attribute containing an
Elements are inserted similarily. Put the cursor after the ">" on the
first line and press C-j. Then type
< C-RET c h SPC RET SPC C-RET i SPC RET f i r s t _ c h a p t e r " > C-c
What you have then, is this:
The "" in "" is higlighted in red. So select the menu
Then the cursor is moved in front of the red "" and the minibuffer
Missing element "title"
So you type
< t SPC RET > C-c C-f C-j
and you have
The "" in "" is still marked red, and First Error
Required child elements missing
But I know that this is because a chapter needs to have some sort of
content, so I do (with the cursor befor ""
C-p C-e C-j < C-RET p a SPC RET > b l a h C-c C-f
That's as far as I take this little tutorial. I hope that gave some
impression of how it works. Only a few commands: usual SPC and TAB for
completion, RET to end minibuffer prompts, and the new commands C-RET,
and C-c C-f. But the prompting feels natural and the document is quite
quick to write and tag.
> C-c C-r tag-region,
C-w < C-RET tag-prompt SPC RET C-y C-c C-f
> C-c - remove-tag,
> and C-c = change-tag;
> C-c C-k cut-element;
That one I really missed from psgml, so I created one myself a long time
ago. It has been posted to this list, I think...? Maybe in the
> in fact almost all the markup-management commands,
> point movement commands,
If you mean navigate the tree, similar to what you do in outline mode:
up tag, down tag, forward tag etc., you have those, with the expected
> and fold/unfold.
Those you have.
> The highlighting and indentation (I also use xxml-mode); I have no
> doubt nxml-mode can do something similar, as the highlighting is just
> Emacs fontification, and the indentation is a fairly standard
Indentation and highlighting you have.
> C-c C-q Rewrapping elements: psgml correctly rewraps and indents
> start-tags in element content to reveal the hierarchy (although it won't
> add newlines if you have got a start-tag following and end-tag on the
> same line *in element content*, which is a pity; and it rewraps mixed
> content to indent under the start-tag of the closest ancestor which is
> in element content (that is also influenced by xxml-mode).
Hm... I will add some text and try.
If I have
blah blah blah blah blah blah blah blah blah blah blah blah blah
blah blah blah blah blah
and do, `M-q' in the , I get:
blah blah blah blah blah blah blah blah blah blah blah blah
blah blah blah blah blah blah
> C-c C-a The attribute management panel (split screen)
No, that one you don't have. But I find the C-RET works quite well, and
is actually faster than navigating in the split screen with the
> C-c C-w Location-ladder identity
I don't know what that is, so probably not.
> SGML conformance (I still have half a dozen clients using SGML).
No, this is pure XML. No SGML conformance attempted.
> As I said, I'm sure nxml-mode provides some, if not many or even all,
> of these, but I can't yet find any comprehensive documentation,
My debian nxml has an info manual in emacs, so someone has put together
a texinfo file at some point in time.
> user conversion guide,
> or examples of usage.
See the first part of my response. :-)
> It seems to be aimed at the data-xml user, not the document-xml user:
Quite the opposite. I would say that it is so oriented at expanding
tags as you type, that it is far better for typing something like a
DocBook file, than a data-xml style format. For the latter, some kind
of tree oriented editor would be best.
> I actually write whole text documents in XML, and I must have a
> comprehensive set of facilities for doing so (refer to the table of
> features in my paper at Balisage in 2006). I may simply have missed
> something in nxml-mode, though...
I haven't looked at that paper and the list there, but FWIW I have felt
that nxml-mode have been quite good at creating and editing DITA and
Yahoo! Groups Links
<*> To visit your group on the web, go to:
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
(Yahoo! ID required)
<*> To change settings via email:
<*> To unsubscribe from this group, send an email to:
<*> Your use of Yahoo! Groups is subject to: