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

Re: [RFC] Towards translatable entities



On Fri, 2006-02-24 at 15:27 -0600, Tommy Reynolds wrote:
> Uttered "Paul W. Frields" <stickster gmail com>, spake thus:
> 
> > > I considered this step.  
> > I think the difference is trivial, but...
> 
> Well, I could be, well, (cough) w-w-wrong.  Care to mini-hack one I
> could play with?

I'll come right out and admit my first thought was to say "uh, erm,
*mumble*, duh...", but instead I gamely took this the way it was
undoubtedly intended, as an opportunity to rise to the occasion.  And
judging by how fast I did this, it's either (1) the obvious solution to
this problem *and* world peace; (2) not as hard as it sounds; or (3)
evidence I am FLAT-OUT ROCKING.  (I was holding out for (3) but my wife
is giving me funny looks, so I'm down to hoping for one of the other
two.)

Grab this file:

http://paul.frields.org/images/fdp-en.dtd  (use a frames-capable browser
or just use the source, Luke)

Drop that into your docs-common/common/ folder.  Then get a fresh copy
of "mirror-tutorial" (a doc I can vouch for working with current build
standards).  Replace the DOCTYPE declaration in
mirror-tutorial/en/mirror-tutorial.xml as follows:

<!DOCTYPE article PUBLIC "-//Fedora//DTD DocBook XML V4.4-Based
Variant//en" "../../docs-common/common/fdp-en.dtd" [
...
]>

For the "..." part, *REMOVE* the declaration and call for
FEDORA-ENTITIES-EN, and leave everything else alone (the other entities
are doc-specific and no reason for people not to use those when they
need them... for now... although we can probably get rid of these too
using some cleverness).

The document should build fine.  Now logic says we should be able to
simply do XSLT magic on newly-born XML from PO, to replace the DOCTYPE
declaration with the appropriate call to the langified DTD.  That DTD is
simply a wrapper like my fdp-en.dtd pointing to the appropriate entities
file.  So:

  XML(orig) --> POT --> PO(langXX) --> XML(langXX) --> XML'(langXX)
                   xml2po        xml2po'        xsltproc

Does that make sense?  As far as the doc-specific entities go, like
DOCNAME, DOCVERSION, etc., we should be able to write a fragment at
build time (it doesn't have to validate to be included) for this
non-language specific data.  Unless someone has qualms about using *ANY*
entities, which I would hope we're not against in principle.

What do you think?

-- 
Paul W. Frields, RHCE                          http://paul.frields.org/
  gpg fingerprint: 3DA6 A0AC 6D58 FEC4 0233  5906 ACDB C937 BD11 3717
 Fedora Documentation Project: http://fedora.redhat.com/projects/docs/

Attachment: signature.asc
Description: This is a digitally signed message part


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