Introductory templates for use in r3, everything at a generic level.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
README.markdown
body.html
body_crest.html
body_crest_modules.html
body_deferred.html
body_deferred_analytics.html
body_deferred_javascript.html
body_footer.html
body_footer_modules.html
body_immediate.html
body_mainbody.html
body_masthead.html
body_masthead_modules.html
doctype.html
feed.atom
feed_entries.atom
feed_global.atom
feed_global_author.atom
feed_global_id.atom
feed_global_link.atom
feed_global_title.atom
feed_global_updated.atom
footer_copyright.html
footer_credits.html
footer_legal.html
footer_page_license.html
global_search.html
head.html
head_alternate.html
head_content_type.html
head_favicon.html
head_javascript.html
head_meta.html
head_meta_description.html
head_meta_keywords.html
head_stylesheets.html
head_stylesheets_localised.html
head_stylesheets_site.html
head_title.html
html.html
mainbody_primary.html
mainbody_primary_modules.html
mainbody_secondary.html
mainbody_secondary_modules.html
postamble.html
preamble.html
r3_fetch_page_data.ros
r3_internal_routines.ros
r3_render_output.atom
r3_render_output.html
r3_target_atom.ros
r3_target_html.ros
site_branding.html
xml_version.atom

README.markdown

Generic templates

A set of introductory templates for using in r3. They illustrate the technique of splitting pages up into very small fragments for easier localisation.

Naming scheme

  • Anything which is internal to the workings of r3 is prefixed with r3_.

  • Output type is indicated by the extension. So, for example:

    • HTML pages are produced by templates with the .html extension.
    • Atom feeds are produced by templates with the .atom extension.
    • Any template which is internal to the workings of r3, or otherwise should not produce output, has the extension .ros.
  • Generic target templates (the base template that all others are included by) are named r3_target_OUTPUT.ros, where OUTPUT is the output type. So, for example:

    • The default HTML template is named r3_target_html.ros.
    • The default Atom template is named r3_target_atom.ros.
  • A lightweight namespacing scheme is used in the scaffolding templates (those that build the main sections of a rendered document). This is done by prefixing the filename with the main section it is in, for example head_meta_keywords.html indicates that this is within the head element, and is a sub-template of the head_meta.html template.

    This technique is abandoned very quickly within the body area of HTML however, as this would result in incredibly lengthy filenames. For the most part, prefixes are kept to one level, so for example:

    • body.html includes body_footer.html
    • body_footer.html includes footer_legal.html
    • footer_legal.html includes legal_copyright.html

    Once the progression to actual site content is made, any attempt at consistent naming scheme is then abandoned and left as an exercise to the site authors.