<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://fr.battlestarwiki.ddns.net/index.php?action=history&amp;feed=atom&amp;title=Module%3ABiblio%2FArticle</id>
	<title>Module:Biblio/Article - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://fr.battlestarwiki.ddns.net/index.php?action=history&amp;feed=atom&amp;title=Module%3ABiblio%2FArticle"/>
	<link rel="alternate" type="text/html" href="https://fr.battlestarwiki.ddns.net/index.php?title=Module:Biblio/Article&amp;action=history"/>
	<updated>2026-04-04T10:37:32Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.44.0</generator>
	<entry>
		<id>https://fr.battlestarwiki.ddns.net/index.php?title=Module:Biblio/Article&amp;diff=135&amp;oldid=prev</id>
		<title>LIMAFOX76 : Page créée avec « local Article = { }   local Commun = require( &#039;Module:Biblio/Commun&#039; ) local References = require( &#039;Module:Biblio/Références&#039; ) local Outils = require( &#039;Module:Outils&#039; )... »</title>
		<link rel="alternate" type="text/html" href="https://fr.battlestarwiki.ddns.net/index.php?title=Module:Biblio/Article&amp;diff=135&amp;oldid=prev"/>
		<updated>2017-06-03T20:30:06Z</updated>

		<summary type="html">&lt;p&gt;Page créée avec « local Article = { }   local Commun = require( &amp;#039;Module:Biblio/Commun&amp;#039; ) local References = require( &amp;#039;Module:Biblio/Références&amp;#039; ) local Outils = require( &amp;#039;Module:Outils&amp;#039; )... »&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local Article = { }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
local Commun = require( &amp;#039;Module:Biblio/Commun&amp;#039; )&lt;br /&gt;
local References = require( &amp;#039;Module:Biblio/Références&amp;#039; )&lt;br /&gt;
local Outils = require( &amp;#039;Module:Outils&amp;#039; )&lt;br /&gt;
local TableBuilder = require( &amp;#039;Module:TableBuilder&amp;#039; )&lt;br /&gt;
local Langue = require( &amp;#039;Module:Langue&amp;#039; )&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function Article.article( args )&lt;br /&gt;
	-- La table wiki va recevoir tout les petits bouts de texte, et sera concaténtée à la fin.&lt;br /&gt;
	-- Elle utilise la metat-table de TableBuilder, permettant d&amp;#039;utiliser les fonctions de la &lt;br /&gt;
	-- librairy table comme des mèthodes. minsert permet d&amp;#039;insérer plusieurs élément en une &lt;br /&gt;
	-- seule fois en, ignorant les paramètre nil.&lt;br /&gt;
	local wiki = TableBuilder.new()&lt;br /&gt;
	&lt;br /&gt;
	-- validArg renvoi le premier paramètre non vide, ou nil s&amp;#039;ils sont tous vides.&lt;br /&gt;
	-- Seul les noms des paramètres doivent être transmis à la fonction.&lt;br /&gt;
	local validArg = function ( ... ) return Commun.validTextArg( args, ... ) or false end&lt;br /&gt;
	&lt;br /&gt;
	-- table servant à la catégorisation&lt;br /&gt;
	args.categ = {}&lt;br /&gt;
	&lt;br /&gt;
	-- clarification paramètre nécessaire pour les COinS&lt;br /&gt;
	args[&amp;#039;périodique&amp;#039;] = validArg( &amp;#039;périodique&amp;#039;, &amp;#039;revue&amp;#039;, &amp;#039;journal&amp;#039; )&lt;br /&gt;
	args.titre = validArg( &amp;#039;titre&amp;#039;, &amp;#039;title&amp;#039; )&lt;br /&gt;
	args.passage = validArg( &amp;#039;pages&amp;#039;, &amp;#039;page&amp;#039;, &amp;#039;passage&amp;#039;, &amp;#039;p.&amp;#039;, &amp;#039;pp.&amp;#039; )&lt;br /&gt;
	args[&amp;#039;format électronique&amp;#039;] = args.format&lt;br /&gt;
	args.format = false&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
	-- span initial (id) et libellé&lt;br /&gt;
	local spanInitial, spanFinal = Commun.spanInitial ( args, validArg )&lt;br /&gt;
	wiki.minsert( spanInitial,  Commun.libelle( args ) )&lt;br /&gt;
	&lt;br /&gt;
	-- indication de langue&lt;br /&gt;
	local indicLangue, codeLangue = Commun.indicationDeLangue ( args, validArg )&lt;br /&gt;
	if Outils.notEmpty( indicLangue ) then&lt;br /&gt;
		wiki.minsert( indicLangue, &amp;#039; &amp;#039; )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Liste des auteurs et de leur responsabilités (principale et secondaire)&lt;br /&gt;
	local auteur = validArg( &amp;#039;nom1&amp;#039;, &amp;#039;nom&amp;#039;, &amp;#039;auteur1&amp;#039;, &amp;#039;auteur&amp;#039;, &amp;#039;auteurs&amp;#039;, &amp;#039;auteur institutionnel&amp;#039;, &amp;#039;last1&amp;#039;, &amp;#039;last&amp;#039;, &amp;#039;author1&amp;#039;, &amp;#039;author&amp;#039; )&lt;br /&gt;
	if auteur then&lt;br /&gt;
		if validArg( &amp;#039;auteurs&amp;#039; ) then&lt;br /&gt;
			wiki.minsert( args.auteurs )&lt;br /&gt;
		else&lt;br /&gt;
			 wiki.minsert( Commun.responsabilitePrincipale( args, validArg ) )&lt;br /&gt;
		end&lt;br /&gt;
		wiki.minsert( Commun.responsabiliteSecondaire( args, validArg ), &amp;#039;, &amp;#039; )&lt;br /&gt;
		&lt;br /&gt;
		args.categ.auteur = validArg( &amp;#039;auteur&amp;#039;, &amp;#039;auteurs&amp;#039;, &amp;#039;author1&amp;#039;, &amp;#039;author&amp;#039;, 1, 2, 3, 4 )&lt;br /&gt;
		args.categ.coauteur = validArg( &amp;#039;coauteurs&amp;#039;, &amp;#039;coauteur&amp;#039;, &amp;#039;coauthors&amp;#039; )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- titre, sous-titre&lt;br /&gt;
	if args.titre then&lt;br /&gt;
		if codeLangue then&lt;br /&gt;
			local dir = Langue.directionLangue( codeLangue )&lt;br /&gt;
			if dir == &amp;#039;rtl&amp;#039; then dir = &amp;#039;&amp;quot; dir=&amp;quot;rtl&amp;#039;&lt;br /&gt;
			else dir = nil&lt;br /&gt;
			end&lt;br /&gt;
			wiki.minsert( &amp;#039;&amp;lt;span lang=&amp;quot;&amp;#039;, codeLangue, dir, &amp;#039;&amp;quot;&amp;gt;&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local titre, sousTitre = args.titre, validArg( &amp;#039;sous-titre&amp;#039; )&lt;br /&gt;
		if sousTitre then&lt;br /&gt;
			titre = titre .. &amp;#039; : &amp;#039; .. sousTitre&lt;br /&gt;
		end&lt;br /&gt;
		titre = Commun.fusionTexteLien( titre, args[&amp;#039;lien titre&amp;#039;], args.categ )&lt;br /&gt;
		&lt;br /&gt;
		wiki.minsert( &amp;#039;« &amp;lt;cite style=&amp;quot;font-style:normal;&amp;quot;&amp;gt;&amp;#039;, titre, &amp;#039;&amp;lt;/cite&amp;gt; »&amp;#039;, codeLangue and &amp;#039;&amp;lt;/span&amp;gt;&amp;#039; )&lt;br /&gt;
	else&lt;br /&gt;
		args.categ.titre = true&lt;br /&gt;
		wiki.minsert( Outils.erreur( &amp;#039;[[Modèle:Article|{{Article}}]] : paramètre « &amp;lt;code&amp;gt;titre&amp;lt;/code&amp;gt; » manquant&amp;#039; ) )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Titre original et traducteur&lt;br /&gt;
	local traductionTitre = validArg( &amp;#039;traduction titre&amp;#039;, &amp;#039;titre original&amp;#039; )&lt;br /&gt;
	if traductionTitre and traductionTitre ~= args.titre then&lt;br /&gt;
		wiki.minsert( &amp;#039; [« &amp;#039;, traductionTitre, &amp;#039; »]&amp;#039; )&lt;br /&gt;
	end&lt;br /&gt;
	if not auteur then&lt;br /&gt;
		local responsabiliteSecondaire = Commun.responsabiliteSecondaire( args, validArg )&lt;br /&gt;
		if responsabiliteSecondaire then&lt;br /&gt;
			wiki.minsert( &amp;#039; &amp;#039;, responsabiliteSecondaire )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Nature du document et établissement (pour les thèses...)&lt;br /&gt;
	local nature = validArg( &amp;#039;nature article&amp;#039;, &amp;#039;nature ouvrage&amp;#039; )&lt;br /&gt;
	if nature then&lt;br /&gt;
		wiki.minsert( &amp;#039; (&amp;#039;, nature, &amp;#039;)&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	local etablissement = validArg( &amp;#039;établissement&amp;#039; )&lt;br /&gt;
	if etablissement then&lt;br /&gt;
		wiki.minsert( &amp;#039;, &amp;#039;, etablissement )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- périodique&lt;br /&gt;
	local periodique = validArg( &amp;#039;périodique&amp;#039; )&lt;br /&gt;
	if periodique then&lt;br /&gt;
		-- on applique le code langue spécifique ou celui de l&amp;#039;article&lt;br /&gt;
		local languePeriodique = validArg( &amp;#039;langue périodique&amp;#039; )&lt;br /&gt;
		if languePeriodique then&lt;br /&gt;
			languePeriodique = Langue.codeLangue2( languePeriodique )&lt;br /&gt;
		end&lt;br /&gt;
		languePeriodique = languePeriodique or codeLangue&lt;br /&gt;
		if languePeriodique and languePeriodique ~= &amp;#039;fr&amp;#039; then&lt;br /&gt;
			periodique = Langue.lang{ languePeriodique, periodique }&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local periodiqueEtLien = Commun.fusionTexteLien( periodique, args[&amp;#039;lien périodique&amp;#039;], args.categ )&lt;br /&gt;
		if Langue.nonLatin( periodique ) then&lt;br /&gt;
			-- caractères non latin donc police droite&lt;br /&gt;
			wiki.minsert( &amp;#039;, &amp;#039;, periodiqueEtLien )&lt;br /&gt;
		else&lt;br /&gt;
			-- le titre et son lien éventuel son affichés en italique&lt;br /&gt;
			wiki.minsert( &amp;#039;, &amp;lt;i&amp;gt;&amp;#039;, periodiqueEtLien, &amp;#039;&amp;lt;/i&amp;gt;&amp;#039; )&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
	else&lt;br /&gt;
		args.categ.periodique = true&lt;br /&gt;
		if args.categ.titre then&lt;br /&gt;
			wiki.minsert( &amp;#039;, &amp;#039;, Outils.erreur( &amp;#039;paramètre « &amp;lt;code&amp;gt;périodique&amp;lt;/code&amp;gt; » manquant&amp;#039; ) )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( &amp;#039;, &amp;#039;, Outils.erreur( &amp;#039;[[Modèle:Article|{{Article}}]] : paramètre « &amp;lt;code&amp;gt;périodique&amp;lt;/code&amp;gt; » manquant&amp;#039; ) )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- références : lieu, éditeur&lt;br /&gt;
	local lieu = validArg( &amp;#039;lieu&amp;#039;, &amp;#039;lieu édition&amp;#039;, &amp;#039;location&amp;#039; )&lt;br /&gt;
	if lieu then&lt;br /&gt;
		wiki.minsert( &amp;#039;, &amp;#039;, lieu )&lt;br /&gt;
	end&lt;br /&gt;
	local editeur = validArg( &amp;#039;éditeur&amp;#039;, &amp;#039;publisher&amp;#039; )&lt;br /&gt;
	if editeur then&lt;br /&gt;
		local lienEditeur = validArg( &amp;#039;lien éditeur&amp;#039; )&lt;br /&gt;
		wiki.minsert( &amp;#039;, &amp;#039;, Commun.fusionTexteLien( editeur, lienEditeur, args.categ ) )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- références : série, volume&lt;br /&gt;
	local serie = validArg( &amp;#039;série&amp;#039; )&lt;br /&gt;
	if serie then&lt;br /&gt;
		if tonumber( serie ) then&lt;br /&gt;
			wiki.minsert( &amp;#039;, &amp;#039;, Outils.ordinal( serie, true ), &amp;#039; série&amp;#039; )&lt;br /&gt;
		else&lt;br /&gt;
			if string.match( serie, &amp;#039;&amp;lt;sup&amp;gt;e&amp;lt;/sup&amp;gt;$&amp;#039;) then&lt;br /&gt;
				wiki.minsert( &amp;#039;, &amp;#039;, serie, &amp;#039; série&amp;#039; )&lt;br /&gt;
			else&lt;br /&gt;
				wiki.minsert( &amp;#039;, série &amp;#039;, serie )&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	local volume = validArg( &amp;#039;volume&amp;#039;, &amp;#039;vol&amp;#039; )&lt;br /&gt;
	if volume then&lt;br /&gt;
		wiki.minsert( &amp;#039;, &amp;#039;, Commun.vol, volume )&lt;br /&gt;
	end&lt;br /&gt;
	local tome = validArg( &amp;#039;tome&amp;#039; )&lt;br /&gt;
	if tome then&lt;br /&gt;
		wiki.minsert( &amp;#039;, &amp;#039;, Commun.tome, tome )&lt;br /&gt;
	end&lt;br /&gt;
	local titreVolume = validArg( &amp;#039;titre volume&amp;#039;, &amp;#039;titre vol&amp;#039; )&lt;br /&gt;
	if titreVolume then&lt;br /&gt;
		if codeLangue then&lt;br /&gt;
			wiki.minsert( &amp;#039; &amp;#039;, Langue.lang{ codeLangue, &amp;#039;« &amp;#039; .. titreVolume .. &amp;#039; »&amp;#039; } )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( &amp;#039; « &amp;#039;, titreVolume, &amp;#039; »&amp;#039; )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- références : n° du périodique et titre du n° et date de publication&lt;br /&gt;
	local numero = validArg( &amp;#039;numéro&amp;#039;, &amp;#039;no&amp;#039;, &amp;#039;issue&amp;#039; )&lt;br /&gt;
	if numero then&lt;br /&gt;
		wiki.minsert( &amp;#039;, &amp;#039;, Commun.numero, numero )&lt;br /&gt;
	end&lt;br /&gt;
	local titreNumero = validArg( &amp;#039;titre numéro&amp;#039;, &amp;#039;titre no&amp;#039; )&lt;br /&gt;
	if titreNumero then&lt;br /&gt;
		if codeLangue then&lt;br /&gt;
			wiki.minsert( &amp;#039; &amp;#039;, Langue.lang{ codeLangue, &amp;#039;« &amp;#039; .. titreNumero .. &amp;#039; »&amp;#039;  } )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( &amp;#039; « &amp;#039;, titreNumero, &amp;#039; »&amp;#039; )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if validArg( &amp;#039;année&amp;#039;, &amp;#039;date&amp;#039;, &amp;#039;year&amp;#039; ) then&lt;br /&gt;
		args.mois = validArg( &amp;#039;mois&amp;#039;, &amp;#039;saison&amp;#039; )&lt;br /&gt;
		wiki.minsert( &amp;#039;,&amp;amp;lrm; &amp;#039;, Commun.inscriptionDate( args ) )&lt;br /&gt;
		-- le &amp;amp;lrm est une marque de texte gauche à droite, utile si le texte qui précède est en droite à gauche (arabe, hébreux...)&lt;br /&gt;
	else&lt;br /&gt;
		args.categ.date = true&lt;br /&gt;
		if args.categ.titre or args.categ.periodique then&lt;br /&gt;
			wiki.minsert( &amp;#039;, &amp;#039;, Outils.erreur( &amp;#039;paramètre « &amp;lt;code&amp;gt;année&amp;lt;/code&amp;gt; » ou « &amp;lt;code&amp;gt;date&amp;lt;/code&amp;gt; » manquant&amp;#039; ) )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( &amp;#039;, &amp;#039;, Outils.erreur( &amp;#039;[[Modèle:Article|{{Article}}]] : paramètre « &amp;lt;code&amp;gt;année&amp;lt;/code&amp;gt; » ou « &amp;lt;code&amp;gt;date&amp;lt;/code&amp;gt; » manquant&amp;#039; ) )&lt;br /&gt;
		end&lt;br /&gt;
	end	&lt;br /&gt;
	&lt;br /&gt;
	-- format livre&lt;br /&gt;
	local format = validArg( &amp;#039;format livre&amp;#039; )&lt;br /&gt;
	if format then&lt;br /&gt;
		wiki.minsert( &amp;#039;, &amp;#039;, format )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- pages&lt;br /&gt;
	local page =  validArg( &amp;#039;passage&amp;#039;, &amp;#039;pages&amp;#039;, &amp;#039;page&amp;#039;, &amp;#039;p.&amp;#039;, &amp;#039;pp.&amp;#039; )&lt;br /&gt;
	if page then&lt;br /&gt;
		if string.match ( page, &amp;#039;^[%dIVXL]&amp;#039; ) then&lt;br /&gt;
			wiki.minsert( &amp;#039;, &amp;#039;, Commun.page, page )&lt;br /&gt;
		else&lt;br /&gt;
			wiki.minsert( &amp;#039;, &amp;#039;, page )&lt;br /&gt;
		end&lt;br /&gt;
	end	&lt;br /&gt;
	local noArticle = validArg( &amp;#039;numéro article&amp;#039; )&lt;br /&gt;
	if noArticle then&lt;br /&gt;
		wiki.minsert( &amp;#039;, article &amp;#039;, Commun.numero, noArticle )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- lien vers l&amp;#039;article en ligne (isbn, issn, pmid, doi, lire en ligne, résumé...)&lt;br /&gt;
	wiki.minsert( References.affichageLiensExternes( args, validArg, true, false ) )&lt;br /&gt;
	-- consulté le n&amp;#039;est plus affiché, voir [[Discussion_modèle:Ouvrage/Archive_5#.C3.89volution_documentation]]&lt;br /&gt;
	&lt;br /&gt;
	local patternPonct = &amp;#039;[,.;:!?]$&amp;#039;&lt;br /&gt;
	local ponctuation = wiki.concat():gsub( &amp;#039;%b&amp;lt;&amp;gt;&amp;#039;, &amp;#039;&amp;#039; ):match( patternPonct )&lt;br /&gt;
	&lt;br /&gt;
	-- ajout des méthadonnées COinS (ContextObjects in Spans)&lt;br /&gt;
	wiki.minsert( Commun.COinS( args, validArg, &amp;#039;article&amp;#039; ) )&lt;br /&gt;
	&lt;br /&gt;
	-- fin du span (id) et de la description de l&amp;#039;ouvrage&lt;br /&gt;
	wiki.minsert( spanFinal )&lt;br /&gt;
	&lt;br /&gt;
	-- citation et commentaire de cet ouvrage&lt;br /&gt;
	local citation = validArg( &amp;#039;extrait&amp;#039;, &amp;#039;quote&amp;#039;, &amp;#039;citation&amp;#039; )&lt;br /&gt;
	if citation then&lt;br /&gt;
		wiki.minsert( &amp;#039; :&amp;lt;blockquote&amp;gt;« &amp;#039;, citation, &amp;#039; »&amp;lt;/blockquote&amp;gt;&amp;#039; )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if validArg( &amp;#039;plume&amp;#039; ) then&lt;br /&gt;
		local point&lt;br /&gt;
		if not citation and not ponctuation then&lt;br /&gt;
			point = &amp;#039;.&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
		wiki.minsert( point, Commun.plume )&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	wiki.minsert( Commun.commentaire( args ) )&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
	if mw.title.getCurrentTitle().namespace == 0 then&lt;br /&gt;
		wiki.minsert(&lt;br /&gt;
			args.categ.coauteur and &amp;#039;[[Catégorie:Recension temporaire pour le modèle Article|coauteur]]&amp;#039;,&lt;br /&gt;
			args.categ.langue  and &amp;#039;[[Catégorie:Page du modèle Article comportant une erreur|langue]]&amp;#039;,&lt;br /&gt;
			args.categ.titre and &amp;#039;[[Catégorie:Page du modèle Article comportant une erreur|titre]]&amp;#039;,&lt;br /&gt;
			args.categ.periodique and &amp;#039;[[Catégorie:Page du modèle Article comportant une erreur|périodique]]&amp;#039;,&lt;br /&gt;
			args.categ.date and &amp;#039;[[Catégorie:Page du modèle Article comportant une erreur|date]]&amp;#039;,&lt;br /&gt;
			args.categ.lienExterne and &amp;#039;[[Catégorie:Page du modèle Article comportant une erreur|externe]]&amp;#039;,&lt;br /&gt;
			args.categ.isbnInvalid and &amp;#039;[[Catégorie:Page avec ISBN invalide]]&amp;#039;,&lt;br /&gt;
			args.categ.issnInvalid and &amp;#039;[[Catégorie:Page avec ISSN invalide]]&amp;#039;&lt;br /&gt;
		)&lt;br /&gt;
		if codeLangue then&lt;br /&gt;
			if Langue.directionLangue( codeLangue ) == &amp;#039;rtl&amp;#039; then&lt;br /&gt;
				wiki.minsert( &amp;#039;[[Catégorie:Recension temporaire pour le modèle Article|rtl]]&amp;#039; )&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
	return wiki.concat()&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return Article&lt;/div&gt;</summary>
		<author><name>LIMAFOX76</name></author>
	</entry>
</feed>