| From | Sent On | Attachments |
|---|---|---|
| Massimiliano Mirra | Aug 28, 2001 2:21 pm | |
| Nik Clayton | Aug 28, 2001 5:22 pm | |
| Jonathan Marks | Aug 28, 2001 10:11 pm | |
| Nik Clayton | Aug 29, 2001 5:23 am | |
| ben | Sep 6, 2001 11:13 am |
| Subject: | Re: DOCBOOK: Modularity and (g)vim's sgml or xml syntax highlighing. | |
|---|---|---|
| From: | Jonathan Marks (jm...@cmex.org) | |
| Date: | Aug 28, 2001 10:11:35 pm | |
| List: | org.oasis-open.lists.docbook | |
Hi Nik, All
This is interesting, Thanks. Is there a way one could achieve this functionality in gvim?
Nik Clayton wrote:
On Tue, Aug 28, 2001 at 08:04:25PM +0200, Massimiliano Mirra wrote:
I am adopting the common layout which uses system entities to split the work in more manageable files, like:
<!doctype book public "-//OASIS//DTD DocBook V3.1//EN" [ <!entity chapter1 system "chap1.sgml"> <!entity chapter2 system "chap2.sgml"> ]>
<book> &chapter1 &chapter2 </book>
This means that I cannot begin chap1.sgml and chap2.sgml with:
<!doctype chapter public "-//OASIS//DTD DocBook V3.1//EN" []>
Because, of course, the file will be included and it cannot present such a line in the middle of the document.
However, this also means that I cannot edit chap1.sgml and chap2.sgml taking advantage of Emacs psgml mode, because it won't find any identifier/catalog.
Is there any way to overcome this?
Put something like this at the bottom of chap*.sgml.
<!-- Local Variables: mode: sgml sgml-declaration: "chapter.decl" sgml-indent-data: t sgml-omittag: nil sgml-always-quote-attributes: t sgml-parent-document: ("book.sgml" "part" "chapter") End: -->
Where "../chapter.decl" contains this line.
<!doctype chapter public "-//OASIS//DTD DocBook V3.1//EN">
If your chapters are direct children of the <book> element, without any intervening <part> elements, change the last line to
sgml-parent-document: ("book.sgml" "book" "chapter")
replace "book.sgml" with whatever the name of your master document is.
The FreeBSD project uses this technique extensively. Take a look at
http://www.freebsd.org/cgi/cvsweb.cgi/doc/en_US.ISO8859-1/books/handbook/
for more examples.
N





