Moduuli:artikkeliaakkostaja

Hei, olet tullut tänne etsimään sanan Moduuli:artikkeliaakkostaja merkitystä. DICTIOUS-sanakirjasta löydät paitsi kaikki sanan Moduuli:artikkeliaakkostaja sanakirjamerkitykset, myös sen etymologian, ominaisuudet ja sen, miten Moduuli:artikkeliaakkostaja sanotaan yksikössä ja monikossa. Kaikki mitä sinun tarvitsee tietää sanasta Moduuli:artikkeliaakkostaja on tässä. Sanan Moduuli:artikkeliaakkostaja määritelmä auttaa sinua olemaan täsmällisempi ja oikeampi puhuessasi tai kirjoittaessasi tekstejäsi. Kun tunnet sananModuuli:artikkeliaakkostaja määritelmän sekä muiden sanojen määritelmät, rikastutat sanavarastoasi ja saat lisää ja parempia kielellisiä resursseja.

Moduulin artikkeliaakkostaja käyttöohje

Artikkeliaakkostaja

Käyttö

{{#invoke:artikkeliaakkostaja|Aakkostusavain|kieli=kielikoodi|teksti}}

Muuttaa sanan kirjaimet niiden lajittelussa käytettäviksi muodoiksi, esim. suomessa wv.

Kielikohtaiset aakkostajat

Seuraaville kielille on määritetty erityinen aakkostaja. Muissa käytetään oletusta.

Uuden kielikohtaisen aakkostajan lisääminen

Useimmissa kielissä voi käyttää alla olevaa pohjaa, johon merkkijonoon aakkoset kirjoitetaan kielen sallitut kirjaimet. Taulukkoon muunnokset kirjoitetaan ne kirjaimet, jotka aakkostetaan toisen kirjaimen tai merkkijonon mukaan, esim. jos ß aakkostetaan ss:ksi tulee taulukkoon rivi = "ss" . Näiden muunnosten lisäksi kaikki alla olevalla tavalla tehdyt aakkostajat poistavat tarkkeet kaikista niistä merkeistä, joita ei ole annettu aakkosissa tai muunnoksissa. Tarvittaessa voi perusaakkostajan metodit korvata kokonaan, ks. esim. ].

local perus = require("Moduuli:artikkeliaakkostaja/perus")
local p = perus:kopioi()

p.asetukset{
   aakkoset   = "", 
   muunnokset = { }
}

return p

local p = {}

--- Palauttaa annetun kielelle käytetyn aakkostajan
-- Jos kielelle on määritetty oma aakkostaja palauttaa sen muuten
-- oletusaakkostajan. Aakkostajat sijaitsevat moduulin alasivuilla.
-- Alasivun nimen tulee olla kielen kielikoodi.
-- @param lang alasivun nimi, jolla aakkostaja on
-- @return     kielelle käytettävä aakkostaja
function p.lataa_aakkostaja(lang)
   local aakkostaja
   local stat

   stat, aakkostaja = pcall(require, "Moduuli:artikkeliaakkostaja/" .. lang)

   if stat == false then
      -- Käytetään oletusaakkostajaa
      stat, aakkostaja = pcall(require, "Moduuli:artikkeliaakkostaja/oletus")
      if stat == false then
		error("Ei oletusaakkostajaa")
      end
   end

   return aakkostaja
end


--- Muuttaa `tekstin` kielen `lang` mukaiseksi aakkostusavaimeksi.
-- @param teksti tyypillisesti artikkelin nimi
-- @param lang   kielikoodi. TODO vaihtoehtoisten kielikoodien normalisointi
-- @return       aakkostusavain
function p.hae_aakkostusavain(teksti, lang)
   local aakkostaja = p.lataa_aakkostaja(lang)
   
   return aakkostaja.kuvaa_merkkijono(teksti)
end

function p.Aakkostusavain(frame)
   -- Muutettava artikkelin nimi
   local teksti = frame.args or mw.title.getCurrentTitle().text 
   local lang   = frame.args.kieli   -- Kielitunnus (alisivun nimi)

   if not teksti or not lang then
      error("Virheelliset parametrit")
   end
   
   return p.hae_aakkostusavain(teksti, lang)
end

return p