Commit 25a1817a authored by Jean Vintache's avatar Jean Vintache

etherpad to hdoc

parent 8746e1a1
emplacement_hdoc=./to_zip
rootfile1=../OPS/file1.xml
output_xml=./to_zip/OPS/file1.xml
\ No newline at end of file
<project name="EtherpadToHdoc" default="convert" basedir=".">
<property file="build.properties"/>
<!-- Builds Hdoc structure -->
<target name="construct_hdoc">
<mkdir dir="${emplacement_hdoc}" />
<mkdir dir="${emplacement_hdoc}/META-INF" />
<mkdir dir="${emplacement_hdoc}/OPS" />
<touch file="${emplacement_hdoc}/META-INF/container.xml" />
<touch file="${emplacement_hdoc}/mimetype" />
<echo message="application/x-hdoc+zip" file="${emplacement_hdoc}/mimetype" />
</target>
<!-- Fills Hdoc container -->
<target name="fill_container" depends="construct_hdoc">
<echoxml file="${emplacement_hdoc}/META-INF/container.xml">
<container version="1.0">
<rootfiles>
<rootfile full-path="${rootfile1}" media-type="text/xml" />
</rootfiles>
</container>
</echoxml>
</target>
<!-- Applies Perl Script to exported HTML file from Etherpad -->
<target name="perl_exec" depends="fill_container">
<exec executable="perl">
<arg value="src/normalization.pl"/>
<arg value="${InputPath}"/>
<!-- output dans intermediaire.xml -->
</exec>
</target>
<!-- Launches XSLT transform to Perl script output -->
<target name="xslt_exec">
<xslt style="src/etherpadTohdoc.xsl" in="tmp/intermediaire.xml" out="${output_xml}" />
</target>
<!-- Zipping Hdoc container -->
<target name="zip">
<zip basedir="${emplacement_hdoc}" destfile="${OutputPath}" />
</target>
<target name="convert" depends="fill_container, perl_exec, xslt_exec, zip"/>
</project>
=== TITRE DE NIVEAU 3 LOL ===
{#
#auteur nom de l'auteur
#sujet le sujet de cet article
#}
{$
blablabla ce bloc est d'une importance capitale
$}
{-
un superbe exemple
sur
plusieurs
lignes
-}
=== TITRE DE NIVEAU 3 LOL ===
{#
#auteur nom de l'auteur
#sujet le sujet de cet article
#}
{$
blablabla ce bloc est d'une importance capitale
$}
{-
un superbe exemple
sur
plusieurs
lignes
-}
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<html>
<head>
<xsl:apply-templates select="//meta" mode="inHead"/>
<title><xsl:value-of select="//title"/></title>
</head>
<body>
<section>
<xsl:apply-templates select="@*|node()[not(self::meta)]" />
</section>
</body>
</html>
</xsl:template>
<xsl:template match="title">
</xsl:template>
<xsl:template match="meta" mode="inHead">
<xsl:for-each select="./*">
<meta name="{local-name(.)}" content="{./text()}"/>
</xsl:for-each>
<meta charset="utf-8"/>
<meta generator="HdocConverter/Etherpad"/>
</xsl:template>
<xsl:template match="meta">
</xsl:template>
<xsl:template match="h1 | h2 | h3 | h4 | h5 | h6">
<xsl:copy>
<xsl:value-of select="."/>
</xsl:copy>
</xsl:template>
<xsl:template match="important">
<div class="emphasis"><xsl:value-of select="."/></div>
</xsl:template>
<xsl:template match="exemple">
<div class="example"><xsl:value-of select="."/></div>
</xsl:template>
<xsl:template match="definition">
<div class="definition"><xsl:value-of select="."/></div>
</xsl:template>
<xsl:template match="br">
<xsl:copy>
<xsl:value-of select="."/>
</xsl:copy>
</xsl:template>
<xsl:template match="br|b|i|ul|ol|li|u|del">
<xsl:copy>
<xsl:value-of select="."/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
#!/usr/bin/perl
($InputPath) = @ARGV;
use FindBin;
# OPENING INPUT AN OUTPUT FILES
open(FICH_IN, '<', $InputPath) or die $!;
open(FICH_OUT, '+>', $FindBin::Bin . "/../tmp/intermediaire.xml") or die $! . $FindBin::Bin . "/../tmp/intermediaire.xml";
$insideMeta = 0;
$insideImportant = 0;
$insideExemple = 0;
$insideDefinition = 0;
$insideAttention = 0;
print FICH_OUT '<!-- <?oxygen RNGSchema="http://scenari.utc.fr/hdoc/schemas/xhtml/hdoc1-xhtml.rng" type="xml"?> -->';
while($_ = <FICH_IN>)
{
#print "\n current line : " . $_;
$isDone = 0;
# REMOVE NON-BREAKABLE SPACES AT END OF LINES (USELESS)
while ($_ =~s/&nbsp;//s) {
$_ =~s/&nbsp;//s;
}
# REPLACE BROKEN <br tags by <br/>
while ($_ =~ s/<br$//) {
$_ = $_ . "<br/>";
}
# REMOVE ends of broken br tags
if ($_ =~ /^\/>/) {
$_ =~ s/\/>//;
}
# REMOVE EXISTING DOCTYPE AND META
if ($_ =~ /<!DOCTYPE|<meta|<META/) {
$isDone = 1;
}
# REPLACE HTML TAG BY A SIMPLE ONE (WITHOUT NAMESPACE)
if ($_ =~ /<html/) {
print FICH_OUT "<html>";
$isDone = 1;
}
# TITLE LEVELS
if ($_ =~ /(={1,6})\s(.*)?\s\1/) {
$title_lvl = length $1;
print FICH_OUT '<h' . $title_lvl . '>' . $2 . '</h' . $title_lvl . '>';
$isDone = 1;
}
# META DATA BLOCK
if ($_ =~ /\{#/) {
$insideMeta = 1;
print FICH_OUT '<meta>';
$isDone = 1;
}
if ($_ =~ /#}/) {
$insideMeta = 0;
print FICH_OUT '</meta>';
$isDone = 1;
}
if ($insideMeta == 1)
{
if ($_ =~ /\#([a-z]{1,15})\s([^\#]+)/g)
{
print FICH_OUT "<" . $1 . ">" . $2 . "</" . $1 . ">";
}
$isDone = 1;
}
# IMPORTANT BLOCK
if ($_ =~ /.*\$}/ && !($_ =~ /{\$.*/)) {
$insideImportant = 0;
print FICH_OUT '</important>';
$isDone = 1;
}
if ($insideImportant == 1) {
print FICH_OUT $_;
$isDone = 1;
}
if ($_ =~ /{\$.*/) {
$insideImportant = 1;
print FICH_OUT '<important>';
$isDone = 1;
}
# EXAMPLE BLOCK
if ($_ =~ /.*-}/ && !($_ =~ /{-.*/)) {
$insideExemple = 0;
print FICH_OUT '</exemple>';
$isDone = 1;
}
if ($insideExemple == 1) {
print FICH_OUT $_;
$isDone = 1;
}
if ($_ =~ /{-.*/) {
$insideExemple = 1;
print FICH_OUT '<exemple>';
$isDone = 1;
}
# DEFINITION BLOCK
if ($_ =~ /.*:}/ && !($_ =~ /{:.*/)) {
$insideDefinition = 0;
print FICH_OUT '</definition>';
$isDone = 1;
}
if ($insideDefinition == 1) {
print FICH_OUT $_;
$isDone = 1;
}
if ($_ =~ /{:.*/) {
$insideDefinition = 1;
print FICH_OUT '<definition>';
$isDone = 1;
}
# attention BLOCK
if ($_ =~ /.*!}/ && !($_ =~ /{!.*/)) {
$insideAttention = 0;
print FICH_OUT '</attention>';
$isDone = 1;
}
if ($insideAttention == 1) {
print FICH_OUT $_;
$isDone = 1;
}
if ($_ =~ /{!.*/) {
$insideAttention = 1;
print FICH_OUT '<attention>';
$isDone = 1;
}
if ($isDone == 0) { # if line has been handled without detecting anything, we print it
print FICH_OUT $_;
}
} # END OF FILE LOOP
close(FICH_IN);
close(FICH_OUT);
\ No newline at end of file
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="en-us" />
<title>/4DC226pyXC</title>
</head>
<body>Réunion EPIN du 5 janvier 2012<br
/><br
/>Intervention de Virginie Julliard et Julia Bonaccorsi<br
/><br
/><b>Introduction</b><br
/>Projet CDE: divers terrains: aujourd'hui débat CNDP Ivry.<br
/><br
/>Postulat: dispositif norme et régule l'action en mettant à disposition une forme<br
/>positionnement socio-sémiotique<br
/>texte supporté par un artefact technique<br
/>orise en compte de la matérialité sémiotique et documentaire qui sont autant de formes de médiation du politique<br
/>&nbsp;<br
/><b>Cadre théorique</b><br
/>Focus sur le concept de <b>dispositif </b>à partir de la relecture de Foucault par D&amp;G<br
/><br
/>4 dimensions&nbsp;&nbsp;<br
/><br
/><ul><li>1 : que rend visible le dispositif ( courbes de visibilité )&nbsp;&nbsp;<br/><br
/></li
><li>2 : régime d'énoncé : quels types de discours sont rendus possibles&nbsp;&nbsp;<br/><br
/></li
><li>3: dimension de rapport de pouvoir entre acteurs<br/><br
/></li
><li>4ème dimension : la créativité =&gt; comment des choses échappent, fuient<br/><br
/></li></ul
>étude d'une construction du sens<br
/><br
/>La technologie joue un rôle particulier dans le phénomèe de la médiation<br
/>dispositif : en mouvement, rend possible la notion de mouvement<br
/><br
/>focus notion de<b> format</b><br
/>Structure récurrente, traits reproductibles, qui induit standardisation des contenus.&nbsp;<br
/>pour les médias informatisées: ce qui va orienter le regard, donner à voir et à lire selon des traits reproductibles et permanents. Lien avec notion de <b>cadre</b>: ce qui sépare/ ce qui organise et met en forme un contenu interne.<br
/><br
/><b>Cas d'étude du débat CPDP</b><br
/>importance de la temporalité: saisir l'évolution du dispositif dans le temps long, qu'est ce qui est cadré? qu'est ce qui va évoluer?&nbsp;<br
/><br
/>Polysémie du concept qui charrie incompréhensions et malentendus.&nbsp;<br
/>Cas de la CNDP : macro-dispo (la procédure), le site web (méso) et les formats d'expression en micro-dispositifs.<br
/>Imbrication des dispositifs dans la procédure de concertation, multiplicité des formats<br
/><br
/>QR: comment les acteurs s'approprient les formats?&nbsp;<br
/><br
/>1) comment le dispositif va canaliser le débat dans une multiplicité de format<br
/>2/ interpretation du format par les acteurs du débat<br
/><br
/><br
/><b>Terrain</b><br
/><br
/><ul><li>1. faire participer</li></ul
>Corrélation entre élargissement du débat et multiplication des formats qui le canalisent.&nbsp;<br
/>l'imbrication des dispositifs<br
/>Mise en abyme du dispositif, diffusion des questions web lors des rencontres en face-à-face et réappropriation des débats web par les participants en face-à-face.&nbsp;<br
/>focus sur les cahiers d'acteurs: fort contrôle éditorial: s'explique par une volonté d'inclusion et de limiter les asymétries de ressources.&nbsp;<br
/><br
/>l'exemple des cahiers d'acteurs<br
/><br
/>volonté d'imbriquer les deux types de dispositifs : site web et réunions publiques (hybridation en ligne/hors ligne)<br
/><br
/>vie et rajectoire d'un texte depuis un blog jusqu'aux Q/R<br
/>Variété des formats qui s'explique par la circulation des acteurs : circulation des énoncés à travers les formats?&nbsp;<br
/>L'appropriation des formats est stratégique.&nbsp;<br
/>La sémiotique des formats n'est pas toujours perçue par les concepteurs.<br
/>Etude de la trajectoire des énoncés à travers les différents formats.&nbsp;<br
/>Une "balistique" des énoncés à la Chateauraynaud? (pas vraiment, la temporalité n'est pas la même.<br
/><br
/>opérationnaliser la notion de dispositif dans le c&nbsp;&nbsp;&nbsp; aadre des procédures délibératives.<br
/>imbrication tellement forte qu'il a fallu piocher dans la notion de format.&nbsp;<br
/><br
/>les dispositifs servent de support aux sorties du dispositifs.&nbsp; Comment en suivant des textes on peut voir comment les acteurs s'approprisent des formats et stratégisent leur usage.&nbsp;<br
/><br
/>Débat<br
/>Jérôme : dimensions substantielle et formelle du dispositif, à ne pas confondre.<br
/>Serge : Genre et format. Genre comme système d'attente et de reconnaissance.&nbsp;<br
/>Virginie : Format et mise en scène qui fige le texte. Le genre ne fige pas, ne reproduit pas le contenu.&nbsp;<br
/><br
/><br
/></body>
</html>
<?oxygen RNGSchema="http://scenari.utc.fr/hdoc/schemas/xhtml/hdoc1-xhtml.rng" type="xml"?><html><head>
<title>/WgiCsM6pyN</title>
</head>
<body>
<br/><meta><auteur>Cécile
<br/></auteur><date>26/12/13
<br/></date></meta>
<br/><h2>Titre de niveau 2 : démo NF29 Etherpad vers Hdoc</h2>
<br/><definition> Une définition ici
<br/></definition>
<br/>Du texte simple en plein milieu
<br/>
<br/><exemple>Et un paragraphe exemple avec un bout en<i> italique</i>
<br/></exemple>
<br/>
<br/>
<br/>
<br/></body>
</html>
<?xml version="1.0" encoding="UTF-8"?>
<container version="1.0">
<rootfiles>
<rootfile full-path="../OPS/file1.xml" media-type="text/xml" />
</rootfiles>
</container>
<?xml version="1.0" encoding="UTF-8"?><html>
<head>
<meta content="Cécile&#10;" name="auteur"/>
<meta content="26/12/13&#10;" name="date"/>
<meta charset="utf-8"/>
<meta generator="HdocConverter/Etherpad"/>
<title>/WgiCsM6pyN</title>
</head>
<body>
<section>
<br/>
<br/>
<h2>Titre de niveau 2 : démo NF29 Etherpad vers Hdoc</h2>
<br/>
<div class="definition"> Une définition ici
</div>
<br/>Du texte simple en plein milieu
<br/>
<br/>
<div class="example">Et un paragraphe exemple avec un bout en italique
</div>
<br/>
<br/>
<br/>
<br/>
</section>
</body>
</html>
application/x-hdoc+zip
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment