Extension:WikiHiero

WikiHiero is a PHP script to be able to render hieroglyphs from a text written according to the Hieroglyph coding manual syntax.

Syntax
Look at the Hieroglyph coding manual for details.

In brief:
 * - separator
 * : subdivision
 * * juxtaposition
 * ! end of line

Each hieroglyph is given a unique code: This unique code is an extension of Gardiner's list of hieroglyph. The Hieroglyph coding manual also allows using the more common phonemes as well as unique code.
 * A letter [A-Z + Aa] that represents the hieroglyph category (human, god, bird, etc.)
 * A number that represents the rank in this category [1-...]

For details, see WikiHiero's syntax.

Licence

 * Sources are copyrighted G. Blanchard and released under GNU Public License.
 * Hieroglyph pictures are copyrighted S. Rosmorduc, G. Watson and J. Hirst and released under GNU Free Documentation License.
 * Interface translation by Mats Halldin, Erik Zachte, Tomos, Samuel, ArnoLagrange, Llull, Hajor, N-true and Gregg (DCLXVI).

Version history

 * 0.2.0: New parser
 * 0.2.1: Fix link to hieroglyph tables
 * 0.2.2:
 * Fix hieroglyph size when into a cartouche
 * Fix phonemes table to use 'Aa' category rather than 'J'
 * 0.2.3: Add Swedish interface
 * 0.2.4: Add Japanese and Dutch interface
 * 0.2.5:
 * Fix Swedish interface
 * Create a function to handle language entries lack
 * Change 'height' option by a 'scale' (in percentage)
 * Add a 'line' option to split text lines
 * 0.2.6:
 * Add source annotation.
 * Support of both '-' and ' ' as separator
 * 0.2.7:
 * Add parsing process duration.
 * Add download section
 * 0.2.8:
 * Add Chinese interface.
 * Minor fix
 * 0.2.9: This version is running at http://test.wikipedia.org/
 * Add Esperanto interface.
 * Fix cartouche size
 * 0.2.10:
 * Add Interlingua and Portuguese interface.
 * Fix cartouche images
 * 0.2.11 & 12: XHTML 1.0 validation
 * 0.2.15: incoming...
 * Add Català, Deutsch, Español and Latina interface.
 * Add a setting file for project specific features.

Todo list

 * Add number converter
 * Add space as a separator (like '-')
 * Add bracket support
 * Fix cartouche rendering (90%)
 * Optimize parser (avoid buffer reallocation)
 * Comment the source
 * Add individual glyph scale
 * Create CSS only rendering version (30%)
 * Add support for shading (need CSS)
 * Add individual glyph rotation (for image rendering)
 * Add support for comment and annotation code
 * Create image rendering (for far future)
 * Add red font

Known issues
HTH HAND --Phil Boswell 13:00, 5 May 2004 (UTC)
 * 1) Fix that bug which produced a PHP error given numbers: WikiHiero should gracefully echo the input if it can't be translated, as it does for unrecognised Phonemes
 * I will fix it. A &#9774; ineko
 * 1) Talking of which, it remains to be seen whether the reason for some Phonemes not being translated is that they are incorrect (they're copied direct from the Manuel de Codage at http://www.catchpenny.org/codage/ which seems to contain other errors, so it's not impossible) or that WikiHiero should recognise them but doesn't.
 * I will take a look it. A &#9774; ineko
 * 1) Should the alt text for Phoneme-derived Glyphs not be the Phoneme itself? At the moment it seems to be the Class Letter for the Glyph from Gardiner's List (so all A-class Glyphs are being labelled "A") which seems to be minimally helpful. Given that several Phonemes might map to the same Glyph, it would be better to use the more specific label.
 * Version on test.wp is bugged ;o) Last version show both phoneme and Gardiner's code when both available. A &#9774; ineko

Translation
The WikiHiero homepage interface in available in French, English, Esperanto, Interlingua, Portuguese, Swedish, Dutch, Japanese and Chinese. Thanks to all translators!

See the Interface translation page to add new languages.

How to Install on MediaWiki
cd wiki/extensions/ svn co http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/wikihiero nano ../LocalSettings.php require_once("extensions/wikihiero/wikihiero.php");
 * 1) Add to localsettings, near the end:

Then try with some example wiki text like this:

The above instructions worked on MediaWiki 1.6.6.