# La documentation de Frantext : un wiki programmable

Exporter
Formats Office
Exporter en PDF Exporter en ODT Exporter en RTF
Autres formats

Sélectionnez les pages à exporter :

Sélectionner tout / aucun

Exporter en HTML

DANS CETTE PAGE

- Éditeur en ligne
- Syntaxe WIKI
  - Gras
  - Italiques
  - Lien
  - Tableau
  - Image
  - Titre H1-H6
    - Titre de niveau 4
  - Classe CSS
- Présentation avancée
  - Code
  - HTML
  - TOC
  - BOOTSTRAP CSS
  - BOOTSTRAP JS
- Programmation côté client
  - JQUERY
- Programmation côté serveur
  - Variables
  - Script
  - Macro
  - Inclusion
- Aller plus loin
- Versions

La documentation de Frantext est rédigée à l'aide d'un wiki open-source baptisé Xwiki développé en Java. Au-delà des fonctionnalités classiques d'un wiki, il a l'originalité de permettre à n'importe quel rédacteur de créer des pages complexes à l'aide de langages de script tels que JavaScript et Apache Velocity, sans nécessiter de droits spécifiques d'administration ou de programmation. Ce type de wiki peut servir à valoriser un projet de recherche ou des publications scientifiques.

Par défaut, le wiki permet d'exploiter les langages suivants : XWIKIsyntax, HTML, CSS, LESS, Javascript, JQuery, Apache Velocity, Apache Groovy, etc. Le thème graphique par défaut utilise quant à lui les bibliothèques suivantes : Bootstrap, Jquery, LESS, etc.

> L'ajout d'extensions peut permettre l'utilisation d'autres langages tels que Python, Ruby, PHP, mais ces derniers ne pourront être exploités que par des utilisateurs ayant des droits d'administration ou de programmation.

## Éditeur en ligne

L'édition de pages se fait par défaut en mode WYSIWYG. L'éditeur CKEditor est installé par défaut. D'autres éditeurs peuvent être installés par l'administrateur.

Il permet notamment d'appliquer les enrichissements de caractères les plus courants tels que le gras et l'italique. Il permet de créer des liens, des tableaux, d'intégrer des images et même d'appliquer des styles prédéfinis tels que les niveaux de titres standards (H1-H6) ou bien des classes issues des feuilles de styles utilisées par le thème graphique.

Pour éditer une page, cliquez en haut à droite sur le bouton Modifier.

## Syntaxe WIKI

Lorsque vous modifiez une page, vous pouvez utiliser la syntaxe WIKI pour appliquer les mêmes enrichissements de caractères que l'éditeur, en cliquant sur le bouton Source depuis la barre de l'éditeur.

Enrichissement | Affichage | Syntaxe WIKI
--- | --- | ---
### Gras | Texte en gras | **Texte en gras**
### Italiques | Texte en italique | //Texte en italique//
### Lien | Lien | [[Lien>>doc:Main.WebHome]]
### Tableau |
Col 1 | Col 2 | Col 3
--- | --- | ---
A | B | C
| |=Col 1|=Col 2|=Col 3 |A|B|C
### Image |  | [[image:Main.WebHome@grammaire.png||alt="Grammaire"]]
### Titre H1-H6 | #### Titre de niveau 4 | ==== Titre de niveau 4 ====
### Classe CSS | Texte d'introduction | (% class="lead" %) Texte d'introduction

## Présentation avancée

Il est possible d'exploiter des composants propres au thème graphique, ou d'utiliser des Macros XWiki.

Enrichissement | Affichage | Syntaxe WIKI
--- | --- | ---
### Code | La macro Code | {{code}}La macro Code{{/code}}
### HTML | La macro HTML | {{html}}<small>La macro HTML</small>{{/html}}
### TOC | DANS CETTE PAGE Éditeur en ligne Syntaxe WIKI Présentation avancée Programmation côté client Programmation côté serveur Aller plus loin Versions | {{box cssClass="floatinginfobox" title="**DANS CETTE PAGE**"}} {{toc start=2 depth=2 numbered=false scope=page /}} {{/box}}
### BOOTSTRAP CSS | Un bouton Bootstrap 3 | [[Un bouton Bootstrap 3>>https://getbootstrap.com/docs/3.3/css/#buttons-sizes||class="btn btn-primary btn-lg"]] et ajout d'un objet XWiki.StyleSheetExtension #xwikicontent .wikiexternallink { background: none; padding-right: 0; }
### BOOTSTRAP JS | Une alerte Bootstrap 3 | (% role="alert" class="alert alert-danger alert-dismissible" %) ((( {{html wiki="true"}} <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button> <strong>Une alerte Bootstrap 3 {{/html}} )))

## Programmation côté client

Enrichissement | Affichage | Syntaxe WIKI
--- | --- | ---
### JQUERY | ### 3 publications HAL | {{html wiki="true"}} <h3>3 publications HAL<span id="halnum"></span></h3> <div id="hal"></div> {{/html}} et ajout d'un objet Xwiki.JavaScriptExtension : require(['jquery'], function($) { var halurl = "https://api.archives-ouvertes.fr/search/hal/?omitHeader=true&wt=json&indent=true&q=Frantext&sort=producedDate_tdate+desc&fq=NOT+instance_s%3Asfo&fq=NOT+instance_s%3Adumas&fq=NOT+instance_s%3Amemsic&fq=NOT+%28instance_s%3Ainria+AND+docType_s%3A%28MEM+OR+PRESCONF%29%29&fq=NOT+%28instance_s%3Aafssa+AND+docType_s%3AMEM%29&fq=NOT+%28instance_s%3Aenpc+AND+docType_s%3A%28OTHERREPORT+OR+MINUTES+OR+NOTE+OR+SYNTHESE+OR+MEM+OR+PRESCONF%29%29&fq=NOT+%28instance_s%3Auniv-mlv+AND+docType_s%3A%28OTHERREPORT+OR+MINUTES+OR+NOTE+OR+MEM+OR+PRESCONF%29%29&fq=NOT+%28instance_s%3Ademocrite+AND+docType_s%3AMEM%29&fq=NOT+%28instance_s%3Aafrique+AND+docType_s%3AMEM%29&fq=NOT+%28instance_s%3Asaga+AND+docType_s%3A%28PRESCONF+OR+BOOKREPORT%29%29&fq=NOT+%28instance_s%3Aunice+AND+docType_s%3AMEM%29&fq=NOT+%28instance_s%3Alara+AND+docType_s%3AREPACT%29&fq=NOT+%28docType_s%3A%28THESE+OR+HDR%29+AND+submitType_s%3A%28notice+OR+annex%29%29&fq=NOT+%28instance_s%3Alaas+AND+docType_s%3AMEM%29&fq=NOT+%28instance_s%3Aephe+AND+docType_s%3AMEM%29&fq=NOT+instance_s%3Ahceres&fq=NOT+status_i%3A111&fq=%7B%21tag%3Dtag0__docType_s%7DdocType_s%3A%28%22ART%22+OR+%22COMM%22+OR+%22OUV%22+OR+%22COUV%22+OR+%22DOUV%22+OR+%22REPORT%22+OR+%22OTHER%22+OR+%22THESE%22+OR+%22HDR%22+OR+%22LECTURE%22+OR+%22UNDEFINED%22%29&fq=%7B%21tag%3Dtag1__submitType_s%7DsubmitType_s%3A%28%22file%22%29&defType=edismax&rows=10"; $.getJSON(halurl, function(data) { var items = []; var j = data.response.docs.length; $("#halnum").text("(sur " + data.response.numFound + ")"); for (i = 0; i < j; i++) { var k = data.response.docs[i]; items.push("<li id='" + k.docid + "'><a href='" + k.uri_s + "'>" + k.label_s + "</a></li>"); } $("<ol/>", { "class": "hal-list", html: items.join("") }).appendTo("#hal"); }); });

## Programmation côté serveur

Enrichissement | Affichage | Syntaxe WIKI
--- | --- | ---
### Variables | Le 26 juin 2026, Frantext intégral contient 5350 ouvrages dans sa version 1.2.21. | {{velocity}} #set ($chaine = "Frantext") #set ($tableau = ["intégral", "démonstration", "agrégation"]) #set ($objet = { "version": "1.2.21", "oeuvres": "5350" }) #set ($date = $datetool.get('dd MMMM yyyy')) Le $date, $chaine $tableau[0] contient $objet["oeuvres"] dans sa version $objet.version. {{/velocity}}
### Script | # Questions fréquentes Base agrégation $temp Base démonstration v1.2.21 Utilisation du logo v1.2.21 La segmentation v1.2.x L'étiquetage v1.2.x | {{velocity}} #set ($query = $services.query.xwql("from doc.object(XWiki.TagClass) as tag where 'faq' member of tag.tags order by doc.date desc")) #set ($recentlyCreated = $query.addFilter('hidden').setLimit(6).execute()) #if ($recentlyCreated.size() > 0 || $showEmptyPanels) #panelheader('Questions fréquentes') #foreach ($docName in $recentlyCreated) #if ($xwiki.hasAccessLevel('view', $docName)) #set ($recentDoc = $xwiki.getDocument($docName).getTranslatedDocument()) #set ($recentTag = $xwiki.getDocument($docName).getTagList()) #foreach ($myTag in $recentTag) #if ($myTag.matches('.*v\d+\.\d+\.(\d+|x).*')) #set ($temp = $myTag) #end #end ## Affichage du résultat en HTML * {{html}}<a href="$recentDoc.getURL()">$escapetool.xml($recentDoc.plainTitle)</a> <small class="text-muted">$temp</small>{{/html}} #end #end #panelfooter() #end {{/velocity}}
### Macro | # Fonctionnalités Les expressions CQL v1.2.23 Recherche v1.2.22 Filtrer les résultats v1.2.22 Correspondance des versions v1.2.x L'interface utilisateur v1.2.x Corpus v1.3.11 | {{velocity}} #macro( listByTagName $title $tag $order $limit) #set ($query = $services.query.xwql("from doc.object(XWiki.TagClass) as tag where '$tag' member of tag.tags order by $order")) #set ($recentlyCreated = $query.addFilter('hidden').setLimit($limit).execute()) #if ($recentlyCreated.size() > 0 || $showEmptyPanels) #panelheader($title) #foreach ($docName in $recentlyCreated) #if ($xwiki.hasAccessLevel('view', $docName)) #set ($recentDoc = $xwiki.getDocument($docName).getTranslatedDocument()) #set ($recentTag = $xwiki.getDocument($docName).getTagList()) #foreach ($myTag in $recentTag) #if ($myTag.matches('.*v\d+\.\d+\.(\d+|x).*')) #set ($temp = $myTag) #end #end ## We use HTML here because we don't have a tool to escape wiki syntax in document title. * {{html}}<a href="$recentDoc.getURL()">$escapetool.xml($recentDoc.plainTitle)</a> <small class="text-muted">$temp</small>{{/html}} #end #end #panelfooter() #end #end #listByTagName('Fonctionnalités','manuel','doc.date desc',6) {{/velocity}}
### Inclusion |  | {{include reference="xwiki:variables.WebHome"/}}{{velocity}}#recherche{{/velocity}}

## Aller plus loin

- XWiki : https://www.xwiki.org/xwiki/bin/view/Main/WebHome
- Syntaxe XWiki : https://www.xwiki.org/xwiki/bin/view/Documentation/UserGuide/Features/XWikiSyntax/
- HTML / CSS / Javascript : https://developer.mozilla.org/fr/docs/Web
- LESS : http://lesscss.org/
- JQUERY : https://jquery.com/
- Apache Velocity : http://velocity.apache.org/
- Apache Groovy : http://groovy-lang.org/index.html
- Bootstrap 3 : https://getbootstrap.com/docs/3.3/
- Les scripts de XWiki : https://network.xwiki.com/xwiki/bin/view/DocXE44Fr/LesScriptsXWiki

## Versions

- getCoreExtension : 10.11.11
- repository.environmentExtension : 10.11.11

Tags : hidden
Modifié par Gilles Toubiana le 2021/07/09 11:39

# Rechercher

Terme de recherche

# Navigation

# bouton

ACCÉDER À FRANTEXT »

Connexion - Documentation - Manuel - Tutoriels - FAQ - Abonnement
Frantext - ATILF (CNRS/UL) - 2018-2026