Module:frm-utilities
Appearance
- This module lacks a documentation subpage. Please create it.
- Useful links: subpage list • links • transclusions • testcases • sandbox
--[[
Utilities for Middle French
]]--
local export = {}
local links = require("Module:links")
-- Reduce any words or phrases to sorting order form
function export.sort(word)
return require('Module:fr-utilities').sort(word)
end
-- Return plural form(s) of a word
function export.pluralize(word)
local plurals = {}
local pl = word
pl = pl:gsub('e[lfp]$', 'és')
pl = pl:gsub('al$', 'aulx')
pl = pl:gsub('t$', 's')
pl = pl:gsub('é$', 'ez')
pl = pl:gsub('([^sxz])$', '%1s')
if pl ~= word then
table.insert(plurals, pl)
end
return plurals
end
-- Return feminine form of a word
function export.feminine(word)
if type(word) == 'table' then word = word.args[1] end
if mw.ustring.sub(word, -1) == "e" then
return word
elseif mw.ustring.sub(word, -2) == "if" then
return mw.ustring.sub(word, 1, -2) .. 'fve'
else
word = word .. 'e'
word = word:gsub('ée$', 'ee')
return word
end
end