<%inherit file="/base/index.html" /> <%namespace file="/base/javascriptDefs.html" name="javascriptDefs" \ import="getCharCodeScript, translateOrthographyScript"/> <%def name="writeJavascriptToHead()"> ${getCharCodeScript()} ${translateOrthographyScript()} <%def name="heading()">

Orthographies & Inventories

This page facilitates interaction with the orthographies and inventories specified in the system.

Interactive Orthography Conversion

Input Orthography ${h.select(name='inputOrthography', id='inputOrthography', \ selected_values="", options=c.orthOptions, tabindex=1)}
Output Orthography ${h.select(name='outputOrthography', id='outputOrthography', \ selected_values="", options=c.orthOptions[::-1], tabindex=2)}

Enter some text and press CTRL + ENTER to translate it from the input to the output orthography.

% for id in c.orthographiesAsInventories: <% orth = c.orthographiesAsInventories[id] name = orth[0] inv = orth[1] %> ${inventoryTester(name, inv)} % endfor ${inventoryTester('Narrow Phonetic Inventory', c.narrPhonInventory)} ${inventoryTester('Broad Phonetic Inventory', c.broadPhonInventory)} ${inventoryTester('Morphophonemic Inventory', c.morphPhonInventory)} ${inventoryTester('Punctuation', c.punctuation)} <%def name="inventoryTester(name, inv)">

${name}

Try typing the graphemes/polygraphs of this orthography. Press enter and the system will indicate whether you are typing the correct characters. Click on the code points to view their names.

Note that the OLD performs canonical decompositional unicode normalization (NFD) on all input. This means, for example, that the precomposed character LATIN SMALL LETTER A WITH ACUTE (U+00E1) will be converted (decomposed) into two characters, viz. base character LATIN SMALL LETTER A (U+0061) followed by combining character COMBINING ACCUTE ACCENT (U+0301).

% for index in range(len(inv.inventoryWithUnicodeMetadata)): <% grapheme = inv.inventoryWithUnicodeMetadata[index][0] graphemeName = inv.inventoryWithUnicodeMetadata[index][1] graphemeCode = inv.inventoryWithUnicodeMetadata[index][2] %> % endfor
Grapheme/ Polygraph Code Point(s) Input Input Code Point(s)
${grapheme}
${graphemeCode}
${graphemeName}