Transforme des textes en lien externe

Utilisation

[modifier]

Fonctions :

  • fonction(lien, texte) – crée un lien vers lien et affiche le texte test, ou à défaut, affiche l'URL du lien moins le "http://" initial. Ne retourne rien si lien est nul ou égal à "-".
  • fonction(liste, séparateur) – crée des liens vers toutes les URL indiquées dans une table passée comme paramètre 1 et les sépare par le paramètre séparateur.

Exemples

[modifier]

Pour des exemples, voir la page de test permettant de tester diverses modifications apportées.



local p = {}  function p.makelink(url, showntext) 	if (not url) or (url == "-") then  		return nil 	end  	--I validation de l'url (paramètre URL) 	url = mw.text.trim(url)   	-- II texte à afficher (paramètre "showntext")  	--- valeur spéciale : aucun texte 	if showntext == "-" then 		return url 	end  	--- laissé vide : texte basé sur l'URL 	if not showntext then 		if mw.ustring.sub(url, 1, 1) == "[" then 			return url 		end 		local space =  mw.ustring.find(url, ' ') -- si le nom du site est passé par mégarde dans l'URL, le séparer 		if space then 			local full = url 			url = mw.ustring.sub(full, 2, space - 1) 			showntext =	mw.ustring.sub(full, space) 		else 			showntext = string.gsub( url, 'https?://', '') 		end 		---- remove trailing slash 		if string.sub(showntext, #showntext, #showntext) == '/' then 			showntext = string.sub(showntext, 1, #showntext - 1) 		end 	end  	return '[' .. url ..  ' ' ..  showntext .. ']' end  function p.makelinks(stringlist, separator) 	if not type(stringlist) == table then 		return error('stringlist should be table') 	end 	if not separator then 		separator = '<br />' 	end 	for i, j in pairs(stringlist) do 		stringlist[i] = p.makelink(k) 	return table.concat(stringlist, separator ) 	end end  return p