Aller au contenu

Module:Capitalize

Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 2 septembre 2021 à 03:32 et modifiée en dernier par Od1n (discuter | contributions) (correction de variables globales, retrait de code de debug). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

 Documentation[voir] [modifier] [historique] [purger]

Utilisation

Fonctions exportables :

  • fonction(frame) – description (courte description de fonction(frame) et autres informations pertinentes).
  • fonction2() – description2 (courte description de fonction2() et autres informations pertinentes).

Autres fonctions :

  • fonction() – description2 (courte description de fonction() et autres informations pertinentes).

Modules externes et autres éléments dont ce module a besoin pour fonctionner :

  • mw.title – description (courte description expliquant la dépendance de ce module externe).

Exemples

plop

Plop

plop

Plop

plop


local p = {}

function p.cap(str, uncap)
	local lang = mw.getContentLanguage()
	local cap = not (uncap)
	local change = function(str)
		if cap then 
			return lang:ucfirst(str) 
		else
			return lang:lcfirst(str)
		end
	end
	if change(str) ~= str then
		return change(str)
	else
		local substr = mw.ustring.sub 
		local b, e = mw.ustring.find(str, ">%s*%a")
		while e ~= nil do
			if mw.ustring.find(">", substr(str, b,e)) == nil then 
				return substr(str, 1, e-1) .. change(substr(str,e,e)) .. substr(str, e+1)
			end
			b, e = mw.ustring.find(str, ">%s*%a", e)
		end
		return str
	end
end

function p.capitalize(frame) 
	local uncap = (frame.args[2] ~= nil and frame.args[2] ~= "") or false
	local res = frame:preprocess(frame.args[1])
	return p.cap(res, uncap) 
end

return p