Tämä on ohjesivu moduulille Moduuli:Translitteroija/kaannin

Tässä ohjeessa kuvataan toiminnallisuutta jonka kehitys on vielä kesken. Sivu on tarkoitettu lähinnä kehityksen apuvälineeksi, ei yleiseen käyttöön.

Muuttaa muunnossäännöt muuntimen ymmärtämään muotoon.

Muunnostaulukko ja tyhjä taulukko annetaan parametrina populate_conversion_table -funktiolle:

local conversions = {}

compiler.populate_conversion_table(conversions, muunnokset)

return conversions

Muunnossääntötaulukko koostuu riveistä, jotka kertovat mikä merkkijono ja missä ympäristössä munnetaan miksikin.

Jokainen muunnostaulukon rivi on itsessään taulukko, jossa on 4, 2 tai 1 alkio.

Kun merkki tai merkkijono jätetään ennalleen käytetään 1 alkion muotoa:

{merkkijono}

Esim.

{"-"}

Kun merkki muutetaan konteksista riippumatta, käytetään kahden alkion muotoa.

{lähdemerkkjono,   kohdemerkkijono}

Esim.

{"Б",   "B"}

Muuten käytetään 4 alkion muotoa. Neljän alkion muodossa 1. alkio on edeltävä merkkijono, 2. on muutettava merkkijono, 3. seuraava merkkijon ja 4. kohdemerkkijono.

{edeltävä, lähde, seuraava,   kohde}

Esim. ё muunnetaan o:ksi vain jos se sitä edeltää Ж:

   {'Ж', "ё", '',   "o"},

(Tässä kontekstimerkkijonot ja muunnokseen osallistuvat merkkijonot on tyylitelty erilaisilla lainausmerkeillä, mutta niillä ei ole merkitystä säännönkannalta.)

Huom. Jos kaksi sääntöä on ristiriidassa siten, että toisen edeltävä merkkijono sisältyy toisen muunnettavan merkkijonoon, käytetään sitä, jossa kaikki teksti on muunnettavassa merkkijonossa.

Kun sääntötaulukkoon ei tarvitse enää tehdä muutoksia, voi sen hakea funktiolla ??? ja siirtää muunnostaulukon paikalle, jotta sääntötaulukkoa ei tarvitse muuttaa muunnostaulukoksi joka kerta.