Guide de syntaxe XWiki

Modifié par Yuraï Slovaque le 2017/03/22 11:14

Syntaxe XWiki 2.1

Syntaxe XWiki 2.1: Tout

General

Introduction

2.1 Introduction

Depuis l'introduction de la syntaxe XWiki 2.0, quelques lacunes de cette syntaxe ont été trouvées. Pour y remédier, la syntaxe XWiki 2.1, actuellement expérimentale, a été ajoutée dans XWiki Enterprise version 3.0. Cette nouvelle syntaxe a été notamment développée pour les raisons suivantes:

  • Homogénéiser la syntaxe des liens et des images pour plus de cohérence et de clarté, ainsi que la possibilité de l'étendre ultérieurement.
  • Ajouter la possibilité d'afficher des icônes, d'utiliser la notation UNC pour ajouter des liens, et de créer des liens vers des adresses relatives.
 La syntaxe XWiki 2.1 étant basée sur la syntaxe XWiki 2.0, toute la syntaxe XWiki 2.0 reste valable sauf si les caractéristiques de la syntaxe XWiki 2.1 précisent un changement. 

En plus de ces 2 syntaxes XWiki, nous avons aussi changé notre moteur de rendu sous-jacent (précédemment c'était Radeox) en faveur de notre propre moteur, qui est un sur-ensemble emballé autour de Wikimodel et Doxia (et éventuellement d'autres dans le futur). Cela nous a permis de fournir d'autres syntaxes dans le wiki: MediaWiki, Confluence, JSPWiki, Creole, TWiki et plus

Remarques générales

2.0 General Remarks

La syntaxe XWiki v2.1 corrige quelques erreurs et le problème de la syntaxe ambiguë comme indiqué dans les exemples du tableau ci-dessous:

DescriptionExemple de syntaxe invalide ou ambiguëCorrigé dans la syntaxe XWiki 2.1
Des styles de texte non fermés**gras**gras**
Deux éléments autonomes non séparés par 2 nouvelles lignes| cellule de tableau
* élément de liste
| cellule de tableau

* élément de liste
Deux éléments autonomes non séparés par 2 nouvelles lignesparagraphe
----
paragraphe
paragraphe

----

paragraphe
Nouvelle ligne ignorée au début du document<nouvelle ligne au début du document>
paragraphe
paragraphe
La syntaxe avec des titres non fermés=== titre=== titre ===

D'autres syntaxes

1.0 Other Syntaxes

Les syntaxes suivantes sont mises en œuvre dans XWiki Enterprise 1.6 et dans les version ultérieures:

Mise en forme

Paragraphes

2.0 Paragraphs

Les paragraphes sont des éléments de texte séparés par 2 ou plusieurs nouvelles lignes.

La syntaxe XWiki 2.1 tient compte des sauts de ligne, ce qui n'est pas le cas des syntaxes XWiki 1.0 et Creole.
FonctionnalitéSyntaxe XWiki 2.1Résultat
Paragraphe simpleCeci est un paragrapheCeci est un paragraphe
Paragraphe sur plusieurs lignes Paragraphe sur
plusieurs lignes
Paragraphe sur
plusieurs lignes
Deux paragraphesLe premier paragraphe

Le deuxième paragraphe
Le premier paragraphe

Le deuxième paragraphe
Paragraphe personnalisé(% style="text-align:center; color:blue" %)
Paragraphe centré et bleu

Paragraphe centré et bleu

Titres

2.0 Headings

FonctionnalitéSyntaxe XWiki 2.1Résultat
Titres standard
= niveau 1 = 
== niveau 2 ==
=== niveau 3 ===
==== niveau 4 ====
===== niveau 5 =====
====== niveau 6 ======

niveau 1

 

niveau 2

niveau 3

niveau 4

niveau 5
niveau 6
Titres paramétrés(% style="color:blue" %)
= titre =

titre

Titres en syntaxe wiki=== Titre en **gras** ===

Titre en gras

Formatage du texte

2.0 Text Formatting

Nouveau en syntaxe XWiki  2.1 sur la syntaxe XWiki 1.0:

  • Les espaces sont autorisés, juste après les symboles de syntaxe.
  • L'utilisation des symboles doubles au cas où il y avait seulement un symbole en syntaxe XWiki 1.0, de sorte qu'il soit moins probable que l'utilisateur s'en serve dans le texte de manière erronée.
  • La possibilité d'avoir plusieurs lignes.
FonctionnalitéSyntaxe XWiki  2.1Résultat
Gras**gras**gras
Souligné__souligné__souligné
Italique//italique//italique
Barré--barré--barré
Espacement fixe##espacement fixe##espacement fixe
Puissanceutilisation de la ^^puissance^^utilisation de la puissance
Indiceutilisation de l',,indice,,utilisation de l'indice

La ligne horizontale

2.0 Horizontal Line

FonctionnalitéSyntaxe XWiki 2.1Résultat
Ligne horizontale simple----

Ligne horizontale paramétrée
(% style="color:blue" %)
----

Listes

2.0 Lists

FeatureXWiki Syntax 2.1Result
Liste à puces
* élément 1
** élément 2
*** élément 3
* élément 4
  • élément 1
    • élément 2
      • élément 3
  • élément 4
Liste numérotée
1. élément 1
11. élément 2
111. élément 3
1. élément 4
  1. élément 1
    1. élément 2
      1. élément 3
  2. élément 4
Liste mixte
1. élément 1
1*. élément 2
1*. élément 3
1. élément 4
  1. élément 1
    • élément 2
    • élément 3
  2. élément 4
Liste aux carrés
(% style="list-style-type: square" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste aux disques
(% style="list-style-type: disc" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste alphabétique en minuscules
(% style="list-style-type: lower-alpha" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste alphabétique en majuscules
(% style="list-style-type: upper-alpha" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Romaine en minuscules
(% style="list-style-type: lower-roman" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Romaine en majuscules
(% style="list-style-type: upper-roman" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Grecque en minuscules
(% style="list-style-type: lower-greek" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Grecque en majuscules
(% style="list-style-type: upper-greek" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Hiragana
(% style="list-style-type: hiragana" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Hiragana Iroah
(% style="list-style-type: hiragana-iroha" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Katakana
(% style="list-style-type: katakana" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Katakana Iroha
(% style="list-style-type: katakana-iroha" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Arménienne
(% style="list-style-type: armenian" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Hébraïque
(% style="list-style-type: hebrew" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste Géorgienne
(% style="list-style-type: georgian" %)
* élément 1
* élément 2
  • élément 1
  • élément 2
Liste CJK idéographique
(% style="list-style-type: cjk-ideographic" %)
* élément 1
* élément 2
  • élément 1
  • élément 2

Listes de définitions

2.0 Definition Lists

FonctionnalitéSyntaxe XWiki 2.1Résultat
Définition standard
; terme
: définition
terme
définition
Définitions imbriquées
; terme1
: définition1
:; terme2
:: définition2
terme1
définition1
terme2
définition2
Définition paramétrée
(% style="color:blue" %)
; terme
: définition
terme
définition

Nouvelle ligne/Sauts de ligne

2.0 New Line Line Breaks

Une nouvelle ligne est un retour chariot. Un saut de ligne est une nouvelle ligne forcée qui peut apparaître n'importe où dans le texte.

En syntaxe XWiki 2.0, les nouvelles lignes sont ignorées, ce qui n'est pas le cas de la syntaxe XWiki 1.0 et Creole.
FonctionnalitéSyntaxe XWiki 2.1Résultat
Saut de ligneLigne\\Nouvelle ligneLigne
Nouvelle ligne
Nouvelle ligneLigne
Nouvelle ligne
Ligne
Nouvelle ligne

Liens

FonctionnalitéSyntaxe XWiki 2.1Résultat
Lien vers une page de l'espace courant[[WebHome]]XWiki
Lien avec étiquette[[étiquette>>WebHome]]étiquette
Lien vers une page avec l'espace spécifié[[Main.WebHome]]Main
Lien vers un sous-wiki[[sous-wiki:Main.WebHome]]Main
Lien qui s'ouvre dans une nouvelle page[[étiquette>>WebHome||rel="__blank"]]étiquette
Lien vers un URL placé directement dans le texteCeci est un URL: http://xwiki.orgCeci est un URL: http://xwiki.org
Lien vers un URL[[http://xwiki.org]]http://xwiki.org
Lien vers un URL avec étiquette[[XWiki>>http://xwiki.org]]XWiki
Lien vers une adresse émail[[john@smith.net>>mailto:john@smith.net]]john@smith.net
Lien image

[[image:Espace2.Page2@img.png>>Espace1.Page1]]
La syntaxe Wiki est supportée dans les étiquettes des liens.

img.png
Image Link with image parameters[[[[image:Space2.Page2@img.png||width="26" height="26"]]>>Space1.Page1]]img.png
Lien vers une pièce jointe à la page courante[[texte>>attach:img.png]]texte
Lien vers une pièce jointe à une autre page[[texte>>attach:Space.Page@img.png]]texte
Lien vers une ancre dans une page[[label>>Space.Page||ancre=ancre]]label
Lien vers un titre dans une page[[label>>XWiki.XWikiSyntax||anchor=HMontitre]]label
Quand vous ajoutez un Titre, une ancre nommée "H" suivie du titre avec uniquement les lettres est créé. Par exemple, pour le Titre "Mon titre", l'ancre générée sera "HMontitre".

Spécifications des liens pour la syntaxe XWiki 2.1

La syntaxe complète\ d'un lien est (label>>)?(link)(||parameters)*

  • label: L'étiquette du lien qui peut contenir de la syntaxe wiki 
  • link: La cible du lien, c'est-à-dire, où aller après cliquer sur un lien.  La syntaxe ressemble à la syntaxe XWiki 1.0 et peut contenir 2 types de URI: mailto: etattach:pour des liens vers une adresse émail et vers une pièce jointe.
  • parameters: Une liste optionnelle de paramètres transmis au lien.
    • queryString: An optional query string for specifying parameters that will be appended to the link target address and used in the rendered URL. Example: url:http://domain.com/path||queryString="mydata1=5&mydata2=Hello" produces target address http://domain.com/path?mydata1=5&mydata2=Hello
    • anchor: An optional anchor name pointing to an anchor defined in the referenced link. Note that in XWiki anchors are automatically created for headings. Example: url:http://domain.com/path||anchor="HTableOfContents" produces target address http://domain.com/path#HTableOfContents
    • rel: An optional parameter that allows to open link target in new window. Example: rel="__blank"

Tableaux

2.0 Tables

En syntaxe XWiki 2.0, il est également possible d'avoir des paramètres pour le tableau, la ligne ou la cellule.

FonctionnalitéSyntaxe XWiki 2.1Résultat
Tableau standard
|=Titre 1|=Titre 2
|Mot 1|Mot 2
ou
!=Titre 1!=Titre 2
!!Mot 1!!Mot 2
Titre 1Titre 2
Mot 1Mot 2
Tableau paramétré
(% style="background-color:

red;align=center" %)
|=Titre 1|=(% style="background-color: yellow" %)Titre 2
|Mot 1|Mot 2

Titre 1Titre 2
Mot 1Mot 2
Tableau filtrable et pouvant
être trié
{{velocity}}
$xwiki.ssfx.use
("js/xwiki/table/table.css")
$xwiki.jsfx.use
("js/xwiki/table/tablefilterNsort.js", true)
{{/velocity}}

{{html}}
<table id="tableid" 

class="grid sortable filterable doOddEven"> <tr class="sortHeader"> <th>Titre1</th> <th>Titre2</th> </tr> <tr> <td>Cellule11</td> <td>Cellule12</td> </tr> <tr> <td>Cellule21</td> <td>Cellule22</td> </tr> </table> {{/html}}

Titre1 Titre2
Cellule11 Cellule12
Cellule21 Cellule22

Images

2.1 Images

FonctionnalitéSyntaxe XWiki 2.1Résultat
Image d'une pièce jointe à la page couranteimage:img.pngimg.png
Image d'une pièce jointe à un autre documentimage:Space.Page @img.pngimg.png
Image avec des paramètres[[image:img.png|| width="25" height="25"]]img.png
Images localisées dans un URLimage:http://some/url/img.pngimg.png
Iconsimage:icon:acceptaccept

Avancé

Verbatim

2.0 Verbatim

Vous permet d'avoir un contenu qui ne sera pas formaté . En d'autres termes, la syntaxe wiki ne sera pas prise en compte.

FonctionnalitéSyntaxe XWiki 2.1Résultat
Verbatim en-ligneDu contenu verbatim {{{**[[non rendu]]**}}}Du contenu verbatim **[[non rendu]]**
Le bloc Verbatim
{{{
Du contenu
**verbatim**
sur plusieurs lignes
}}}
Du contenu 
**verbatim**
sur plusieurs lignes

Citations

2.0 Quotations

FonctionnalitéSyntaxe XWiki 2.1Résultat
Citation simple
> John a dit cela.
J'ai dit ok.

 John a dit cela.

J'ai dit ok.

Citations imbriquées
> John a dit cela.
>> Marie a répondu cela.
J'ai dit ok.

 John a dit cela.

 Marie a répondu cela.

J'ai dit ok.

Groupes

2.0 Groups

Les groupes peuvent être utilisés pour insérer un autre document  directement dans le document courant. Cela permet par exemple d'insérer des éléments complexes à l'intérieur d'un élément d'une liste ou dans une cellule de tableau. Les groupes sont délimités par les éléments syntaxiques suivants:(((...))). Un groupe peut contenir un autre groupe et il n'y a pas de limite d'imbrication.

Syntaxe XWiki 2.1Résultat
|=Titre 1|=Titre 2|=Titre 3
|Cellule 1|(((
= Document ancré

Un paragraphe ancré.

* élément de liste 1
* élément de liste 2
  ** sous-élément 1
  ** sous-élément 2
))) | Cellule 3

Le paragraphe suivant dans le document de haut niveau
Titre 1Titre 2Titre 3
Cellule 1

Document ancré

Un paragraphe ancré.

  • élément de liste 1
  • élément de liste 2
    • sous-élément 1
    • sous-élément 2
 Cellule 3

Le paragraphe suivant dans le document de haut niveau

Protéger les caractères

2.0 Escapes

FonctionnalitéSyntaxe XWiki 2.1Résultat
Pour un caractère

Ceci n'est pas un ~[~[lien~]~]
Pour renseigner le caractère ~ utilisez l'Escape double: ~~

Ceci n'est pas un [[lien]]

Paramètres

2.0 Parameters

En syntaxe XWiki 2.1, il est possible de passer des paramètres aux divers éléments de syntaxe et aussi aux blocs de texte. Vous pouvez utiliser ces paramètres par exemple pour créer des styl. Il est possible de choisir n'importe quelle paire clé/valeur. Le moteur de rendu XHTML va passer ces paramètres en tant que XHTML attributs à la représentation XHTML sous-jacente des éléments de syntaxe. 

Syntaxe XWiki 2.1XHTML généré
(% class="myClass" style="myStyle" id="myId" %)
= titre =
<h1 class="myClass" style="myStyle" id="myId">titre</h1>

Programmer

Macros

2.0 Macros

En syntaxe XWiki 2.0, il y a aussi deux types de macros:

  • Les macros Velocity appelées en utilisant la syntaxe #macroname(param1 ... paramN) dans la Macro Velocity
  • Les macros XWiki appelées en utilisant la syntaxe{{macroname param1="value1" ... paramN="valueN"}}
Pour accéder à la liste de toutes les macros disponibles, allez à la page de référence des macros.
FonctionnalitéSyntaxe XWiki 2.1Result
Macro
{{code language="java"}}
System.out.println("Hello World!");
{{/code}
System.out.println("Hello World!");
Les macros Radeox ne peuvent pas être utilisées en syntaxe XWiki 2.0. C'est la raison pour laquelle elles ont été ré-écrites comme des macros XWiki. 

HTML

2.0 HTML

En syntaxe XWiki 2.1, le code HTML ou XHTML doit être écrit en utilisant la macro {{html}}.
Syntaxe XWiki 2.1Résultat
{{html}}<b>gras</b>{{/html}}gras
En syntaxe XWiki 2.1, par défaut, la macro {{html}} ne peut pas analyser la syntaxe wiki. Pour l'activer, utilisez {{html wiki="true"}}.

Scripts

2.0 Scripts

En syntaxe XWiki 1.0, il était possible d'inclure des scripts Velocity directement dans la page. Cela a créé quelques problèmes, par exemple, les cas où l'utilisateur avait inclus involontairement du contenu Velocity. Cela affectait aussi la performance des pages qui ne nécessitaient pas de contenu Velocity. Il y avait eu d'autres limitations techniques. Ainsi, en syntaxe XWiki 2.1, les scripts Velocity doivent être inclus en utilisant la macro velocity. En va de même pour l'inclusion des scripts Groovy.
FeatureSyntaxe XWiki 2.1
Script Velocity
{{velocity}}
#set ($var = "quelquechose")
{{/velocity}}
Script Groovy
{{groovy}}
def var = "quelquechose"
{{/groovy}}
Tags:
Créé par Yuraï Slovaque le 2013/11/14 17:41
    
FabLab Chambéry
Association Loi 1901