Wicri:Dilib source, module MediaWiki, MediaWikiImportClean : Différence entre versions

De Wicri Outils
imported>Jacques Ducloy
imported>Jacques Ducloy
m (14 révisions importées)
 
(10 révisions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 +
Cette page introduit les sources relatifs à la commande MediaWikiImportClean du module [[Dilib, module MediaWiki|MediaWiki]].
 +
==Exemple de fichier d'entrée==
 +
Cet exemple correspond à la sauvegarde de cette page (Wicri:Dilib source, module MediaWiki, MediaWikiImportClean)
 +
<source lang="xml">
 +
<mediawiki xmlns="http://www.mediawiki.org/xml/export-0.4/"  ... >
 +
  <siteinfo>
 +
    <sitename>Wicri Outils</sitename>
 +
    <base>http://ticri.univ-lorraine.fr/wicri-outils.fr/index.php/Accueil</base>
 +
   
 +
    ...
 +
 +
  </siteinfo>
 +
  <page>
 +
    <title>Wicri:Dilib source, module MediaWiki, MediaWikiImportClean</title>
 +
    <id>638</id>
 +
    <revision>
 +
      <id>2733</id>
 +
      <timestamp>2013-09-07T20:07:17Z</timestamp>
 +
      <contributor>
 +
        <username>Jacques Ducloy</username>
 +
        <id>3</id>
 +
      </contributor>
 +
      <text xml:space="preserve">Cette page introduit ...
 +
 +
      ...
 +
 +
%START PAGE
 +
%%
 +
&lt;JUMP&gt;.                        ;
 +
&lt;JUMP&gt;\n                      ;
 +
 +
      ...
 +
 +
[[Catégorie:Dilib source]]</text>
 +
    </revision>
 +
  </page>
 +
</mediawiki>
 +
 +
</source>
 +
 
==Fichier MediaWikiImportClean.lex==
 
==Fichier MediaWikiImportClean.lex==
<source lang="c">
+
===Code source===
 +
<source lang="c"  dilib:file="MediaWiki/MediaWikiImportClean.lex">
 
/*  -*- coding: utf-8 -*-  */
 
/*  -*- coding: utf-8 -*-  */
 
/*
 
/*
   Fichier source géré par Wicri/Outils, page : Wicri:Dilib source, module MediaWiki, MediaWikiImportClean
+
  Dilib Version :
 +
  Date : V0.5.46 (7 septembre 2013
 +
  Module MediaWiki,
 +
  Commande : MediaWikiImportClean
 +
   Fichier source géré par Wicri/Outils, page :  
 +
      Wicri:Dilib source, module MediaWiki, MediaWikiImportClean
 
*/
 
*/
  
 
%START JUMP
 
%START JUMP
 
%START HEAD_PAGE
 
%START HEAD_PAGE
%START JUMP_PAGE
+
%START END_PAGE
 
%START PAGE
 
%START PAGE
 
%%
 
%%
Ligne 14 : Ligne 60 :
 
<JUMP>\n                      ;
 
<JUMP>\n                      ;
 
<JUMP>"<page>"                {ECHO; BEGIN HEAD_PAGE;}
 
<JUMP>"<page>"                {ECHO; BEGIN HEAD_PAGE;}
<HEAD_PAGE>"</title>"         {ECHO; BEGIN JUMP_PAGE;}
+
<HEAD_PAGE>"<text"[^>]+">"     {ECHO; printf("\n<?dilib start wiki ?>\n"); BEGIN PAGE;}
 
<HEAD_PAGE>.                  ECHO;
 
<HEAD_PAGE>.                  ECHO;
 
<HEAD_PAGE>\n                  ECHO;
 
<HEAD_PAGE>\n                  ECHO;
<JUMP_PAGE>.                  ;
 
<JUMP_PAGE>\n                  ;
 
<JUMP_PAGE>"<text"[^>]+">"    {putchar('\n'); BEGIN PAGE;}
 
 
<PAGE>.                        ECHO;
 
<PAGE>.                        ECHO;
 
<PAGE>\n                      ECHO;
 
<PAGE>\n                      ECHO;
Ligne 25 : Ligne 68 :
 
<PAGE>&gt;                    putchar('>');
 
<PAGE>&gt;                    putchar('>');
 
<PAGE>&quot;                  putchar('\"');
 
<PAGE>&quot;                  putchar('\"');
<PAGE>"</text>"                {printf("\n</page>"); BEGIN JUMP;}
+
<PAGE>"</text>"                {printf("\n<?dilib end wiki ?>\n</text>"); BEGIN END_PAGE;}
 +
<END_PAGE>"</page>"           {ECHO; putchar('\n'); BEGIN JUMP;}
 +
<END_PAGE>.                    ECHO;
 +
<END_PAGE>\n                  ECHO;
 
%%
 
%%
 
main()
 
main()
Ligne 33 : Ligne 79 :
 
}
 
}
 
</source>
 
</source>
 +
 +
===Commentaires===
 +
L'état » JUMP » permet de sauter le début du fichier (jusqu'à la balise <code><nowiki><page></nowiki></code>.
 +
[[Catégorie:Dilib source|MediaWikiImportClean]]

Version actuelle datée du 16 juin 2017 à 19:04

Cette page introduit les sources relatifs à la commande MediaWikiImportClean du module MediaWiki.

Exemple de fichier d'entrée

Cet exemple correspond à la sauvegarde de cette page (Wicri:Dilib source, module MediaWiki, MediaWikiImportClean)

<mediawiki xmlns="http://www.mediawiki.org/xml/export-0.4/"   ... >
  <siteinfo>
    <sitename>Wicri Outils</sitename>
    <base>http://ticri.univ-lorraine.fr/wicri-outils.fr/index.php/Accueil</base>
    
    ...

  </siteinfo>
  <page>
    <title>Wicri:Dilib source, module MediaWiki, MediaWikiImportClean</title>
    <id>638</id>
    <revision>
      <id>2733</id>
      <timestamp>2013-09-07T20:07:17Z</timestamp>
      <contributor>
        <username>Jacques Ducloy</username>
        <id>3</id>
      </contributor>
      <text xml:space="preserve">Cette page introduit ...

       ...

%START PAGE
%%
&lt;JUMP&gt;.                        ;
&lt;JUMP&gt;\n                       ;

       ...

[[Catégorie:Dilib source]]</text>
    </revision>
  </page>
</mediawiki>

Fichier MediaWikiImportClean.lex

Code source

/*   -*- coding: utf-8 -*-  */
/*
  Dilib Version :
  Date : V0.5.46 (7 septembre 2013
  Module MediaWiki, 
  Commande : MediaWikiImportClean
  Fichier source géré par Wicri/Outils, page : 
       Wicri:Dilib source, module MediaWiki, MediaWikiImportClean
*/

%START JUMP
%START HEAD_PAGE
%START END_PAGE
%START PAGE
%%
<JUMP>.                        ;
<JUMP>\n                       ;
<JUMP>"<page>"                 {ECHO; BEGIN HEAD_PAGE;}
<HEAD_PAGE>"<text"[^>]+">"     {ECHO; printf("\n<?dilib start wiki ?>\n"); BEGIN PAGE;}
<HEAD_PAGE>.                   ECHO;
<HEAD_PAGE>\n                  ECHO;
<PAGE>.                        ECHO;
<PAGE>\n                       ECHO;
<PAGE>&lt;                     putchar('<');
<PAGE>&gt;                     putchar('>');
<PAGE>&quot;                   putchar('\"');
<PAGE>"</text>"                {printf("\n<?dilib end wiki ?>\n</text>"); BEGIN END_PAGE;}
<END_PAGE>"</page>"            {ECHO; putchar('\n'); BEGIN JUMP;}
<END_PAGE>.                    ECHO;
<END_PAGE>\n                   ECHO;
%%
main()
{
  BEGIN JUMP;
  yylex();
}

Commentaires

L'état » JUMP » permet de sauter le début du fichier (jusqu'à la balise <page>.