Slightly tongue in cheek title, but the idea is to use what we have already in
a more effective way.
What follows leads to a simpler set up than present, but more consistent and
productive! It assumes fairly static content, only published infrequently, but
allows individuals to experiment as much as they like. It is a practical
application of the separation of content from styling. It also loses the curly
braces stuff and the PO files. Can't be done? Read on, in rough note form:
1. Use mod_rewrite RewriteCond %{HTTP:Accept-Language}
No need for choose site language drop down
If no relevant file use default language
No need to worry about language specific URLs
No HTTP redirects, but mod_rewrite points path to relevant language
directory, or default language if relevant file is not translated
2. Use HTML fragments for content, styled separately with CSS
Master directory with default language, contains header, navigation,
footer and content fragments
Directory is listing of available content that needs translating, so
content list held in one place. Translators can pick the file they want to
translate. mod_rewrite will point to default language file if a translation is
not present.
No need to learn yet another set of codes for a given CMS, just a few
good old HTML tags - H1,H2, P, IMG, A, UL, OL and LI should be good enough for
most? This needs to clear guidance from experience.
Clean HTML. No indentation, Line break in source for new section.
Minimise use of class, id and div.
Translators don't need to see header stuff, etc. only HTML content
fragment.
Only problem is TITLE and META name=description translations. Use <!--
--> and script below to extract?
Need to view HTML fragment. OK in Firefox. Has to have .html extension
in Opera. Crashed Midori. OK in IE6.
Need to make sure UTF-8(?) works in text editors, saving, viewing,
distributing.
3. Use git to manage the HTML fragments
Authentication scheme already in place
Distributed system. Translators can work on one page only and feed back
to head translator. Flexibility in working.
Allows changes to be made clear through diffs.
Each language has its own directory accessed using mod_rewrite
Recommend minimal set of git commands for translators. clone --depth ?,
commit -a translated_fragment, patch?
Allows string freeze using a tag
4. Script to combine fragments
CSS, javascript accessed outside of HTML fragments so can be worked on
separately to text.
Separation of style from content.
Script pulls together header fragment, main navigation fragment, relevant
content fragment and footer fragment.
This is essentially a rationalisation of the existing set up in an attempt to
make things clearer and simpler. Ending up with a few directories only such as:
http://git.fedorahosted.org/git/?p=fedora-web.git;a=tree;f=fedoraproject.org/data/content;h=bf8c07fef61768351ef1e7b5e115246b14bfe2c9;hb=f10423692fed44593b934df76fdf99ec538b8409
Get prototype up and working in next two months. Need one or two translators to
test. Need to produce documentation of process, specifically how to use git and
how to edit HTML fragment (don't translate class and id attributes). Work
towards simplicity and clarity of procedure before communicating with rest of
team. Identify any problems that need to be resolved.
I'm away next week so won't be able to elaborate on this for a while. Happily
produce the relevant mod_rewrite commands when I'm back.
All the best
Al
--
websites mailing list
[email protected]
https://admin.fedoraproject.org/mailman/listinfo/websites