« zone spéciale » est un terme générique pour désigner des zones qui ont un traitement différents du traitement normal des paragraphes. Les zones spéciales sont aux nombres de quatre : les tableaux, les insertions de média, les lignes de codes et les données HTML brutes. Le début d’une zone est indiquée par la répétition au début d’une ligne de trois caractères identiques propres à la zone et sa fin est indiquée par la répétition de ces mêmes caractères.
Les successions de caractères valides sont les suivants :
=== : tableau
::: : insertion de média
+++ : lignes de code
!!! : encadré
??? : données HTML brutes
En début de zone, le nombre de caractères répétés doit être exactement trois ; en effet, suivant les zones, des paramètres supplémentaires peuvent être attendus après ces trois caractère. En fin de zone, le nombre de caractères est au minimum trois mais peut être supérieur pour mieux marquer la fin de la zone.
Toutes les zones sont susceptibles de posséder un numéro (exemples : Figure 11, Tableau 22) et une légende. Ce numéro et cette légende doivent être définis impérativement juste après la ligne indiquant le début de la zone. Le numéro est défini en commençant une ligne par n= et la légende est définie en commençant une ligne par l=. Comme un paragraphe, numéro et légende peuvent comprendre des mises en forme (gras, italique)
Les tableaux
Une zone de tableau commence par les caractères : ===. Ces trois caractères peuvent être suivi des caractères h et v. Le caractère h indique que la première ligne du tableau est une ligne d’en-tête, le caractère v indique que c’est la première colonne qui est une ligne d’entête. h et v peuvent être combinées.
Il y a deux manières de représenter un tableau, le mode par défaut et le mode d’importation. On bascule en mode d’importation si un des caractères suivants est présent sur la ligne de début de zone (en plus des caractères h et v) : « t,;:|* ». En absence d’un tel caractère, on suit le mode par défaut.
Dans tous les cas, une cellule qui commence par un chiffre ou le signe moins est considéré comme un cellule contenant un nombre, ce qui a pour conséquence de l’aligner à droite (dans l’affichage par défaut).
Mode par défaut de présentation d’un tableau
À l’intérieur de la zone, chaque ligne indique le contenu d’une cellule du tableau Une ligne blanche marque un changement de ligne. Une cellule contenant uniquement le caractère - est considéré comme une cellule vide.
Une cellule peut être étendue sur plusieurs colonnes en la commençant par [(colspan=x)] où x est le nombre de colonnes.
Une cellule peut être étendue sur plusieurs lignes en la commençant par [(rowspan=y)] où y est le nombre de lignes.
Il est possible d’étendre une cellule à la fois sur plusieurs lignes et plusieurs colonnes en la commençant par la combinaison [(colspan=x rowspan=y)]. Les raisons de cette syntaxe sont expliquées en Les attributs des styles de paragraphe, de caractères et des zones spéciales
===h
n= Tableau 1.1
l= Exemple
En-tête 1
En-tête 2
En-tête 3
Cellule 1.1
[(colspan=2)] valeur sur deux colonnes
-
La cellule précédente est vide
Cellule 2.3
Cellule 3.1
[(rowspan=2)] Cellule sur deux lignes
Cellule 4.1
Cellule 4.3
Cellule 5.1
[(colspan=2 rowspan=2)] Cellule sur deux lignes et deux colonnes
Cellule 6.1
===========
Exemple de tableau dans le mode par défaut
Ce qui donne le résultat suivant :
En-tête 1 | En-tête 2 | En-tête 3 |
---|---|---|
Cellule 11 | valeur sur deux colonnes | |
La cellule précédente est vide | Cellule 23 | |
Cellule 31 | Cellule sur deux lignes | |
Cellule 41 | Cellule 43 | |
Cellule 51 | Cellule sur deux lignes et deux colonnes | |
Cellule 61 |
Mode d’importation
Le mode d’importation est conçu pour récupérer facilement des données tabulaires à partir d’un autre programme via un copier/coller. La plupart du temps, en effet, un tableau par copier/coller se présente sous la forme d’une ligne de texte pour une ligne de tableau avec un séparateur délimitant au sein de la ligne les différentes colonnes (dans LibreOffice, il s’agit de la tabulation).
La présence d’un des caractères suivant dans la ligne de début de tableau : « t,;:|* » indique non seulement que ce qui va suivre doit être traité via le mode d’importation mais aussi le caractère à utiliser comme séparateur Le caractère t indique qu’il faut utiliser les tabulations comme séparateur
===h*
n=Tableau 2
l=Avec l'astérisque comme séparteur
Fruits*Prix au kilo*Producteur
Pommes*2,90 €*Saveurs de Normandie
Pêches*4,65 €*Soleil du midi
Abricots*3,90 €*Soleil du midi
===
===hv,
n=Tableau 3
l=Avec la virgule comme séparateur
,Nbre de tables,Nbre de chaises
Salle Victor Hugo,15,75
Salle des fêtes,4,160
============================
Deux exemples de tableau en mode d’importation
Ce qui donne les résultats suivants :
Fruits | Prix au kilo | Producteur |
---|---|---|
Pommes | 2,90 € | Saveurs de Normandie |
Pêches | 4,65 € | Soleil du midi |
Abricots | 3,90 € | Soleil du midi |
Nbre de tables | Nbre de chaises | |
---|---|---|
Salle Victor Hugo | 15 | 75 |
Salle des fêtes | 4 | 160 |
Précisons qu’en mode d’importation, il n’y a ni traitement typographique (remplacement de l’apostrophe, espaces insécables) ni traitement des possibilités de mise en forme des caractères, ceci à fin de réduire le risque de pertes d’information à l’importation.
Les insertions de média
Note : pour le moment, les seuls médias pris en compte sont les images, la prise en compte des vidéos et de l’audio (balises <audio>
et <video>
de HTML5).
Une zone d’insertion de média commence par les caractères :::, qui doivent être suivi par un ou plusieurs caractères indiquant le type de média. Les choix possibles sont les suivants :
i : image traitée comme un bloc indépendant centré (choix par défaut en l’absence de caractères après les :::
ll : image placée en lettrine à gauche (traduit en CSS par float: left
)
lr : image placée en lettrine à droite (traduit en CSS par float: right
)
La zone d’insertion comprend ensuite une série de paramètres (en plus des paramètres n= et l= communs à toutes les zones).
s= : URL de l’image
i= : référence de l’illustration
c= : crédit photo (optionnel)
w= : largeur de l’image (optionnel)
h= : hauteur de l’image (optionnel)
r= : URL extérieure vers laquelle renvoie l’image (optionnel)
a= : Texte alternatif (optionnel)
s= et i= sont deux paramètres mutuellement excluant. s= indique que la source est une URL qui peut être absolue ou relatice (une URL est relative est résolue à partir de l’URL de base des images définie dans la configuration de la fichothèque. i= est une référence à une illustration d’un album de la fiche sous la forme {nom de l'album}/{identifiant de l'illustration}
.
Une « image-bloc » :
:::
n=Schéma 1.2
l= Extrait de schéma
s=exemples/schema.png
w=408
h=106
a=http://www.exemole.fr
::::
Une « lettrine » à gauche :
:::ll
s=illu_paragraphe17.jpg
c=Semences paysannes
:::
Une « lettrine » à droite avec référence à l'illustration d'identifiant 2 de l'album exemple :
:::lr
i=exemple/2
:::
Plusieurs exemples
Ce qui donne le résultat suivant :
Paragraphe « s’écoulant » à droite de l’image en lettrine gauche;
Tout comme le paragraphe suivant
Vient ensuite l’exemple de la lettrine à droite :
Remarque : pour les images, il existe un autre moyen d’insertion au sein d’un texte (voir Les styles de paragraphe).
Lignes de code
Une zone de lignes de code par les caractères +++. Comme son nom l’indique, elle sert à indiquer des lignes de code informatique, ce qui permet d’éviter des traitements typographiques non désirés et de prendre en compte l’indentation (les blocs d’exemple de saisie de cette page sont des zones de ligne de code).
Chaque série de deux espaces ou une tabulation en début de ligne sont considérées comme un « pas » d’indentation.
Lorsque les trois premiers caractères +++ de déclaration de la zone sont suivi de x ou xml, l’indentation est automatiquement calculée en se basant sur les balises fermantes et ouvrantes.
Lorsque les trois premiers caractères +++ de déclaration de la zone sont suivi de s ou script, l’indentation est automatiquement calculée en se basant sur les accolades fermantes et ouvrantes.
Dans les zones de code, les lignes blanches sont prises en compte sauf celles de début et de fin et il n’y a pas de possibilité de mise en forme.
Zone Xml :
+++x
l= Xml d'une fiche
<fiche>
<entete><titre>Titre</titre>
<soustitre>Sous-titre</soustitre>
</entete>
</fiche>
+++
Zone de script
+++s
n=Script 2.2
l=Fonction d'affichage
function affiche(id) {
var el = document.getElementById(id);
if (el != null) {
el.style.display="visible";
}
}
+++
Zone sans indication avec indentation précisée :
+++
Sommaire du guide
Chapitre 1 : la prise en main
1.1 se connecter
1.2 saisir des fiches
Chapitre 2 : aller plus loin
+++
Différents exemples de zone de code
Ce qui donne le résultat suivant :
<fiche>
<entete><titre>Titre</titre>
<soustitre>Sous-titre</soustitre>
</entete>
</fiche>
Xml d’une fiche
function affiche(id) {
var el = document.getElementById(id);
if (el != null) {
el.style.display="visible";
}
}
Script 22 : Fonction d’affichage
Sommaire du guide
Chapitre 1 : la prise en main
1.1 se connecter
1.2 saisir des fiches
Chapitre 2 : aller plus loin
Les encadrés
Les zones d’encadré commence par les caractères !!!. Ces trois caractères peuvent être suivi d’un code de langue, pour indiquer que cet encadré correspond à une langue particulière. Cette indication de langue n’a pas d’effet visible à l’affichage mais peut être utile pour créer des textes multilingues.
Comme toutes autres zones, on peut spécifier un numéro ou une légende à l’encadré avec des lignes commençant par l= ou n= juste après la ligne de déclaration de la zone. Pour la suite, une zone d’encadré se comporte exactement comme du texte normal : on peut y inclure des niveaux de titres, des tableaux, des images, etc. La seule zone que l’on ne peut pas inclure c’est un autre encadré (pas de « sous-encadré).
!!!fr
n=Encadré 1
l= exemple de code
Texte normal avec toutes les possibilités comme {l'italique} et le {{gras}}.
+++
plus une zone de code !
+++
Fin de l'encadré
!!!
Exemple d’encadré comprenant du code avec indication du français (fr) comme langue
Ce qui donne le résultat suivant :
Texte normal avec toutes les possibilités comme l’italique et le gras
plus une zone de code !
Fin de l’encadré
Encadré 1 : exemple de code
Les données brutes HTML
Les zones de données brutes HTML commence par les caractères ???. Le texte à l’intérieur d’une telle zone n’est pas traité et est fourni tel quel lors de l’affichage HTML.
De telles zones sont utiles lorsqu’il s’agit d’insérer une vidéo hébergée sur un serveur de type DailyMotion ou Youtube. Il faut cependant être conscient qu’une zone de données brutes peut entrainer l’insertion de code HTML non valide ou même cassant la mise en forme générale de la page HTML. En outre, les données HTML brutes ne sont pas reprises dans l’exportation au format ODT.
???
n=
l= Code d'insertion d'une carte UMap
<iframe width="100%" height="300px" frameBorder="0" src="http://umap.openstreetmap.fr/fr/map/a-partir-de-chabenet_1200?scaleControl=false&miniMap=false&scrollWheelZoom=false&zoomControl=true&allowEdit=false&moreControl=true&datalayersControl=true&onLoadPanel=undefined"></iframe><p><a href="http://umap.openstreetmap.fr/fr/map/a-partir-de-chabenet_1200">Voir en plein écran</a></p>
???
Ce qui donne :
Code d’insertion d’une carte UMap