Module:io-flexions

Bonjour, vous êtes venu ici pour chercher la signification du mot Module:io-flexions. Dans DICTIOUS, vous trouverez non seulement toutes les significations du dictionnaire pour le mot Module:io-flexions, mais vous apprendrez également son étymologie, ses caractéristiques et comment dire Module:io-flexions au singulier et au pluriel. Tout ce que vous devez savoir sur le mot Module:io-flexions est ici. La définition du mot Module:io-flexions vous aidera à être plus précis et correct lorsque vous parlerez ou écrirez vos textes. Connaître la définition deModule:io-flexions, ainsi que celles d'autres mots, enrichit votre vocabulaire et vous fournit des ressources linguistiques plus nombreuses et de meilleure qualité.

La documentation pour ce module peut être créée à Module:io-flexions/Documentation

local p = {}
local m_bases = require('Module:bases')
local pronon = require('Module:prononciation')

function p.getTenseAndRoot(verb)
	if verb:sub(-string.len("ar")) == "ar" then
		return verb, "Présent de l’infinitif"
	elseif verb:sub(-string.len("abis")) == "abis" then
		return string.match(verb, '^(.+)abis$') .. "ar", "Passé parfait de l’indicatif"
	elseif verb:sub(-string.len("abos")) == "abos" then
		return string.match(verb, '^(.+)abos$') .. "ar", "Futur parfait de l’indicatif"
	elseif verb:sub(-string.len("abez")) == "abez" then
		return string.match(verb, '^(.+)abez$') .. "ar", "Passé de l’impératif"
	elseif verb:sub(-string.len("abus")) == "abus" then
		return string.match(verb, '^(.+)abus$') .. "ar", "Passé du conditionnel"
	elseif verb:sub(-string.len("as")) == "as" then
		return string.match(verb, '^(.+)as$') .. "ar", "Présent de l’indicatif"
	elseif verb:sub(-string.len("is")) == "is" then
		return string.match(verb, '^(.+)is$') .. "ar", "Passé de l’indicatif"
	elseif verb:sub(-string.len("os")) == "os" then
		return string.match(verb, '^(.+)os$') .. "ar", "Futur de l’indicatif"
	elseif verb:sub(-string.len("ir")) == "ir" then
		return string.match(verb, '^(.+)ir$') .. "ar", "Passé de l’infinitif"
	elseif verb:sub(-string.len("or")) == "or" then
		return string.match(verb, '^(.+)or$') .. "ar", "Futur de l’infinitif"
	elseif verb:sub(-string.len("ez")) == "ez" then
		return string.match(verb, '^(.+)ez$') .. "ar", "Présent de l’impératif"
	elseif verb:sub(-string.len("us")) == "us" then
		return string.match(verb, '^(.+)us$') .. "ar", "Présent du conditionnel"
	else
		error("Unknown verb tense")
	end
end

function p.verbe(frame)
  local args = frame:getParent().args
  local verb = args or mw.title.getCurrentTitle().text
  local label = args or mw.title.getCurrentTitle().text
  local root, tense = p.getTenseAndRoot(verb)
  
  local cat = ""
  
  if not m_bases.page_existe("Conjugaison:ido/" .. root) and mw.ustring.sub(root, -1) == "i" then
    	cat = "]"
  end
  
  return "{| class=\"flextable\"\n"..
	"! colspan=\"2\"|<small>]</small>\n"..
	"|-\n"..
	"| style=\"font-variant:small-caps;text-align:center;vertical-align:top\"|" .. tense .. "\n" ..
	"| " .. label .. "\n" ..
	"|}" .. cat
end

return p