La ducumintazzioni di stu mòdulu si pò criari nta Mòdulu:lingui/doc

local m_basi = require("Mòdulu:basi")
local m_params = require("Mòdulu:paràmitri")
local lingui = mw.loadData("Mòdulu:lingui/data")
local p = {}
p.specialCodes = {
  ["zh-Hans"] = "zh",
  ["zh-Hant"] = "zh",
  ["ko-Hani"] = "ko",
  ["vi-Hani"] = "vi",
  ["vi-Hans"] = "vi",
  ["vi-Hant"] = "vi",
  ["nan-Hani"] = "nan",
  ["nan-Hans"] = "nan",
  ["nan-Hant"] = "nan",
}
function p.get_nomu(codici)
  if not codici then
    return nil
  end
  codici = mw.text.trim(codici)
  if lingui[codici] and lingui[codici]["nomu"] then
    return lingui[codici]["nomu"]
  else
    return nil
  end
end
function p.get_ordini(codici)
  if not codici then
    return nil
  end
  codici = mw.text.trim(codici)
  if lingui[codici] and lingui[codici]["ordini"] then
    return lingui[codici]["ordini"]
  else
    if lingui[codici] then
      return lingui[codici]["nomu"]
    else
      return nil
    end
  end
end
function p.nomu_lingua(frame)
  local args
  if frame.args ~= nil and frame.args[1] ~= nil then
    args = frame.args
  else
    args = frame:getParent().args
  end
  local codici = args[1]
  local lingua = p.get_nomu(codici)
  if lingua == nil or lingua == "" then
    return ''
  else
    return lingua
  end
end
function p.ordini_lingua(frame)
  local args
  if frame.args ~= nil and frame.args[1] ~= nil then
    args = frame.args
  else
    args = frame:getParent().args
  end
  local codici = args[1]
  local ordini = p.get_ordini(codici)
  if ordini == nil or ordini == "" then
    return ''
  else
    return ordini
  end
end
function p.lingua_pi_lista(frame)
  local args
  if frame.args ~= nil and frame.args[1] ~= nil then
    args = frame.args
  else
    args = frame:getParent().args
  end
  local codici = args[1]
  if codici == nil or mw.text.trim(codici) == "" then
    return "''Nuḍḍu còdici nzirutu''" .. m_basi.fa_catiguria_cuntinutu("Wikizziunariu:Codes lingua manquants")
  end
  codici = mw.text.trim(codici)
  local lingua = p.get_nomu(codici)
  if lingua == nil or lingua == "" then
    return codici .. "*" .. m_basi.fa_catiguria_cuntinutu("Wikizziunariu:Còdici lingua nun difinuti")
  else
    return m_basi.ucfirst(lingua)
  end
end
function p.get_link_Wikimedia(codici)
  if table.getn(mw.getCurrentFrame()) == 0 then
    codici = mw.getCurrentFrame().args[1] or codici
  end
  if codici == nil then
    return nil
  end
  codici = mw.text.trim(codici)
  if lingui[codici] and lingui[codici]["wmlink"] then
    return lingui[codici]["wmlink"]
  else
    return nil
  end
end
function p.has_purtali(codici)
  return lingui[codici] and lingui[codici]["purtali"]
end
function p.has_wiktionary(codici)
  return lingui[codici] and lingui[codici]["wikizziunariu"]
end
function p._getLanguageCode(languageName)
  for codici, lingua_tabbedda in pairs(lingui) do
    if languageName == lingua_tabbedda["nomu"] then
      return codici
    end
  end
  return nil
end
function p.getLanguageCode(frame)
  local args = m_params.process(frame.args, {
    [1] = { required = true }
  })
  return p._getLanguageCode(args[1]) or ""
end
return p