WYSIWYG Editor for DocBook DTD Content?
Saqib Ali asks: "This week I saw a demo of the Tagless Editor by i4i. The editor is a plugin to Microsoft Word, which can be used to create XML based content. The plugin can handle various custom DTDs. However it can not properly handle the DocBook DTD. I was wondering if there is any WYSIWYG XML editor that can be used to edit DocBook DTD based content? Any ideas?"
I was looking for the same thing not too long ago, and came across Conglomerate, which despite its web page, is no longer dead, and back under development.
I've had a few problems getting it compiled/running well, but from what I've seen, it looks like it's a fairly decent bit of code, so once it gets some polish, it could be pretty handy.
Except for the fact that it's really convenient to not have to edit the raw XML. Yes I can, but I really don't want to; I'd much rather save myself that agrivation and just write what I'm trying to write.
It's just like a lot of other things that people go "well, you can do it manually, so why do you need a fancy tool?" about. Yes, I can manually patch/build/blahblah my own kernel. Do I want to? No, I want to just have things work. Same story here: do I want to sit here remembering what all the docbook tags are? No. Did I want to learn them in the first place? No. There's a time and a place for good tools to make tedious tasks easier.
Just because I could edit a file and manually set all the colors for all the pixels, doesn't mean there's no need for Photoshop/The Gimp.
LyX? I know it's not a true WYSIWYG, but it does have a DocBook mode. I haven't tried it in awhile (went back to xemacs), but it might have all sorts of new goodies.
Keep your packets off my GNU/Girlfriend!
The only problem I see is that Docbook doesn't have a visual representation, it has many, depending on the backend you want (HTML, PDF, PS, TXT, etc.). So a WYSIWYG editor would only show one type of representation.
Besides, Docbook (as many other document formats) is meant to separate the visual from the info. Linking the visual to the edition would only make people try to make it present the info in (what they beleive to be) pretty layout, when Docbook's goal is to concentrate on the structure of the document, which the backend then translates to HTML tags, or PDF fonts and layout, etc.
I agree, you don't really want a WYSIWYG editor for docbook, as that violates the Information/Representation sepperation.
But what would be _really_ useful would be a structured editor, which provided a good mapping at several levels (ala Mozilla's composer, where I can turn on and off tabs). The point of such an editor's representation would not be for final production, but to unambigously display the information's _structure_ to the user, and to facilitate manipulating that structure.
It would be like a very ugly word processor, where the tables would always have borders, etc.
If that editor was then linked with a set of generation tools, to make it EASY to genearte and view PostScript, HTML, XHTML, etc. productions, then you'd really have something. I'd use it, for sure, and I don't mind using docbook tags now.
In fact, would mozilla's composer be a good place to start with a docbook editor? Mozilla has good DOM tools, like the inspector, which loads XML DocBook files just fine.
-- Crutcher --
#include <disclaimer.h>
http://www.xmlmind.com/xmleditor/ Not sure what the license is.
You are missing the point, the whole point is to seperate the content from presentation. WYSIWYG is totally contrary to that. I'd go as far as to say that it's entirely impossible to have such a Docbook editor, since you have pretty much no say in the presentation when you write it. It's the same with any good implementation of XML.
I've had enough abrasive sigs. Kittens are cute and fuzzy.
You are missing the point, the whole point is to seperate the content from presentation.
No offense intended, but I think it is you who is missing the point. The average person doesn't think in XML. The average person thinks in formatted text. When I'm writing, I don't think "<ital>foo</ital>," I think "foo." Being able to see foo on the screen, but get "<ital>foo</ital>" in the output is a big win.
I'd go as far as to say that it's entirely impossible to have such a Docbook editor, since you have pretty much no say in the presentation when you write it.
Oh, sure you can. The editor doesn't need to display it the exact same way the end-user will display it; it just needs to display it in a way that makes the user feel comfortable. On your machine, chapter titles are 24 point serif type; on mine, they're 18 point italic sans-serif type. I don't care that yours are different from mine; I only care that mine look the way I expect them to.
I write in my journal
The presentation is more than just typefaces and formatting, in docbook it goes as far as what gets put on what HTML page, and how they are linked together, or even if some structures are omitted from the presentation.
You have one docbook file that get broken up into make multiple HTML files, or a single TXT file, or whatever.
You designate sections/chapters/whatever, and the presentation decides how to parse those. The point is that only the structure of the document is defined, nothing is assumed about presentation. Nothing at all!
A tool could be developed to assist this, by basically making sure you don't nest improperly, or use tags in an invalid context, or even give you a hint about what some things will look like on the final output using a common style sheet, but ultimately there is no way to approach even close to WYSIWYG.
And no offense intended likewise, but the "average person" shouldn't be trying to write XML documents if they can't understand the concept of seperating content from presentation.
I've had enough abrasive sigs. Kittens are cute and fuzzy.
It isn't a WYSIWYG editor if it isn't displayed the same way the end user will display it. And so you can't have a WYSIWYG editor for DocBook.
If buying it isn't a problem, XMetal works pretty well for DocBook. You can view your document as a tree (i.e., structured); with minimal block formatting and visible tags; as something like WYSIWYG, formatted with a CSS stylesheet; and, preview it as HTML in browser (IE for sure -- I don't know if you could get it to use Mozilla) formatted with an XSL stylesheet. The new version adds PDF preview which I assume is done through XSL-FO, but I haven't used it.
It's not the fastest or smoothest editor to use, but it does a good job of balancing the spirit of XML with the niceness of seeing formatted text as you work.
But docbook has no display info at all! At least with HTML it is fairly close. With docbook you don't even know if it will have a contents page, etc.
And who said anything about editing the raw xml? I'm just saying what he is asking for is just a GUI editor of some kind - not a WYSIWYG. - See lyx for example.
ultimately there is no way to approach even close to WYSIWYG
I think you need to go take a look at FrameMaker. It predates all this new-fangled XML hoo-hah; its native format is SGML. It is entirely WYSIWYG. Your point is thus demonstrably false.
And no offense intended likewise, but the "average person" shouldn't be trying to write XML documents if they can't understand the concept of seperating content from presentation.
Ah, the ugly face of snobbery and elitism raises its ugly head once again. Thanks for the input, GigsVT; since I'm obviously not wanted here, I'll just go back to using Microsoft Word for my documentation. You XML folks have fun playing in your little sandbox all by yourselves.
I write in my journal
Then how can what I see be what's actually encoded in the file?
--Giving to trolls for the benefit of us all
When displaying a docbook file tell me what font I should use, or where I should get this font information from?
Sensible default, with user-configurable options.
Then how can what I see be what's actually encoded in the file?
Magic.
Sometimes I think people just don't get it. It saddens me... but only a little, because I soon get pulled back into my real life where this "docbook" thing pales in comparison to whether table 11 got their watercress soup or not.
I write in my journal
Ok then. Why should foo be italicized? Is it important? Is it an example some something? A variable? A citation? A proper name? A bit of sarcasm? Maybe you just *like* the way italics look and don't really mean anything more by it. Then, perhaps "<ital>foo</ital>," is something of a win. But if "foo" means more than that, then "<ital>foo</ital>," actually loses that meaning.
But that's not really WYSIWYG then, is it? (Unless you want to get all semantic about the Ys in the acronym.) The thing is, if you lobotomize the meta-data so that what you create as a <chapter title> is encoded as <ital>, then you are pretty much forcing the hand of my machine. Your "big win" becomes my loss. Sure, I can remap <ital> so that it renders as 24 point serif, but then everything else that you've flattened down to <ital> for the sake of how it looks (footnotes, dates, marginal commentary, etc.) gets the 24 point serif treatment, too.WYSIWYG for DocBook? You're gonna need a bigger wrench if you want to pound in that screw.
In a related story, the IRS has recently ruled that the cost of Windows upgrades can NOT be deducted as a gambling loss.
1. HTML "wysiwyg" editors were lying. Everyone knows this. If I call a horse an HTML WYSIWYG editor it doesn't mean that there's ever been one.
2. HTML with CSS has some style information, and anyone can define entirely physical real-world measurements. With newer editors such as VS.NET and Dreamweaver MX it's possible (although usually not desirable) to produce onscreen WYSIWYG content that prints the same.
Docbook however can never be WYSIWYG without additional style information.
--Giving to trolls for the benefit of us all
Why should foo be italicized?
That was just an example, and maybe, in retrospect, not the best one. Yes, in a real case the tag wouldn't be <ital> but rather <cite> or <xref> or some such. Same idea applies. I would want an editor to show me foo instead of <cite>foo</cite>, using whatever the appropriate default rendering style is for <cite>.
I write in my journal
--Giving to trolls for the benefit of us all
We use a commercial product to do this at work. It is called Epic, and is available from Arbortext. We've had some real problems with it though, so I think our tech writers are moving to a plain ascii editor. I can't recommend it, but I thought I would provide a data point.
Good luck.
-molo
Using your sig line to advertise for friends is lame.
No, it only "loses" that meaning if you want to parse it. While that may be useful for certain computer applications, or if you need to reformat the text into another style, ultimately the message conveyed (visually) to the reader is the same.
i-name =twylite [http://public.xdi.org/=twylite], see idcommons.net
English is for secret agents and English teachers.
Nerds on the other hand know what a DTD is. Nerds that don't know, know what Google does. "DTD" aint a buzzword, it's a technical abbreviation in common use among nerds.
I don't think it's productive to get into a match about XML/WYSIWIG. I like structured XML editors (like XML Spy). They definitely have their place, I especially like the table format. But for 60% of my XML-editing needs I'll be quite happy with a text editor with syntax coloring (ahh, BBEdit).
I guess it's all about the tools. The right tool in the right place. And for me, when I'm writing a DocBook, it's jEdit. It's not perfect, but it's the best tool I got.
My father is a blogger.
Try OpenOffice. My company sells an XSLT based filter that will turn OpenOffice documents (if using sensible styles) into DocBook XML. You may have to tweak it a bit to get exactly what you desire, but that's going to be the case with any tool.
Matt. Want XML + Apache + Stylesheets? Get AxKit.
I would consider that it is not beyond the wit of even "the 'average person'" to understand the concept of separating content from presentation
The concept? No. But expecting a technical writer to wade through a sea of angle-brackets to produce his documentation is laughable at best.
The vast majority of technical documentation in the world is written by technical writers, not programmers. (I played around as one myself for a while.) That's why the majority of documentation is written with user-friendly tools like Word and FrameMaker. Programmers, of course, will choose things like XML because... I don't know, maybe it makes them feel superior or something. Couldn't say why. It certainly doesn't offer any useful benefits over Frame.
Like so many other "open source" technologies, "Docbook" is irrelevant to most of the world because it's more trouble to use than its worth. Why do you think the submitter is looking for a WYSIWYG tool?
Oh, and elitism is telling someone, "the "average person" shouldn't be trying to write XML documents if they can't understand the concept."
I write in my journal
You strike me as someone who has never even written a docbook.
Once. Well, half of once. One day in a fit of blinding rage, I called up Adobe and moved the whole damn thing over to FrameMaker and SGML the next morning.
I write in my journal
I think we're in agreement that you shouldn't expect people to bother with XML tags themselves.
All authors I have found have loved to express structure through their editor (be in styles and headings in MSWord, or their software of choice) that we can then later map to Docbook or TEI elements. Structure helps them edit as they can see how many chapters at a glance, and drag around branches of the document tree easier than cutting and pasting. They can know that 'MSWord styles' will be converted to a certain visual output and that unlike the past they won't have to trust the editor - who often doesn't understand the content - to style it correctly.
--Giving to trolls for the benefit of us all
I also looked at ArborText and FrameMaker. They claimed to support DocBook, but they supply config files only for (much) older DocBook versions. I found the out-of-the-box support for docBook to be sorely lacking. It looked like it was possible to configure them for better support, but it would have taken many hours to do so.
XML Spy and XMetaL looked pretty good. I don't remember how well they did with DocBook, but they are geared more for data-oriented XML, whereas Morphon and XXE are more suited for document-oriented XML, such as DocBook.
Software sucks. Open Source sucks less.