1. Les chapitres ou sections▲
Les chapitres ou sections permettent d'organiser votre article. Les sections sont automatiquement ajoutées à la table des matières lors de la génération de l'article. Vous pouvez très bien imbriquer les balises sections pour créer des sous-parties.
2. La notion de paragraphe▲
2-1. Balises situées dans une zone <paragraph>▲
Cette balise permet d'insérer du texte. On peut la retrouver à l'intérieur d'une section, d'un synopsis...
2-1-1. Mise en forme▲
Voici un exemple de contenu avec la mise en forme du texte.
Voici un paragraphe utilisant du texte en gras, italique, souligné, avec des mots en exposant comme E=MC2 ou en indice (texte en indice). On peut aussi avoir du texte inline.
Texte avant Ce texte est important Texte après !
Voici une citation récupérée sur Internet.
Décrocher un Oscar, c'est aussi difficile que d'embrasser ses propres fesses...
L'auteur de cette citation devait être inspiré ce jour là !
Il est également possible de mettre du texte en couleur : rouge, vert, bleu...
Sans oublier la possibilité de mettre des caractères spéciaux : ÀÂÆÇÉÈÈÊËÎÏÔÔŒÛÜÙ€ àâæçéèêëîïôœûüù
2-1-2. Images dans le texte▲
Voici une image dans le texte : avec la balise image : .
2-1-3. Liens▲
Voici une liste de type de liens autorisés :
- Relatif : ./images/nono.jpgExemple de titre
- Absolu : https://nono40.developpez.com/images/nono.gifExemple de titre
- FTP : ftp://nono40.developpez.com/nono.jpgExemple de titre
- News : news://borland.public.delphiExemple de titre
- HTTPS : https://www.google.fr/Exemple de titre
- MAILTO :
Nouvelle balise de lien vers un message du forum :
- Liens vers le forum avec note affichée : 170 commentaires
- Liens vers le forum sans note affichée : 170 commentaires
Nous pouvons mettre un lien-forum (170 commentaires ) au milieu du texte
Voici une liste de type de liens avec image autorisés :
Lien avec texte : Site developpez.com
Lien utilisant l'attribut target : Site developpez.com
Lien avec l'attribut langue : Site developpez.com
Lien avec le tag faq : FAQ developpez.com
Lien avec le tag source au singulier : Site de developpez.com
Lien avec le tag sources au pluriel : Site de developpez.com
Lien avec le tag dico : Site de developpez.com
Lien avec l'image ZIP : FAQ Perl de developpez.com
Lien avec l'image PDF : FAQ Perl de developpez.com
Lien avec une mise en forme à l'intérieur : Site de developpez.com
Renvoi : lien à l'intérieur du document : Renvoi vers la section tableaux
2-1-4. Mettre du LaTeX dans le texte▲
Vous pouvez mettre du LaTeX dans le texte d'un paragraphe via la balise <latex>
Voici du texte avant mon code LaTeX : kitxmlcodeinlinelatexdvp\forall 1 \leq j \leq p ,
a_{j} = g(in_{j}) = g(\sum_{i = 0}^{n}w_{i,j} \times x_{i}) = g((\sum_{i = 1}^{n}w_{i,j} \times x_{i}) - w_{0,j})finkitxmlcodeinlinelatexdvp
kitxmlcodeinlinelatexdvp\forall 1 \leq j \leq p ,
a_{j} = g(in_{j}) = g(\sum_{i = 0}^{n}w_{i,j} \times x_{i}) = g((\sum_{i = 1}^{n}w_{i,j} \times x_{i}) - w_{0,j})finkitxmlcodeinlinelatexdvp Merci
Une fonction : kitxmlcodeinlinelatexdvpP(x) = \frac{1}{\sigma.\sqrt{2\pi}} . exp(- \frac{x^2}{2.\sigma^2})finkitxmlcodeinlinelatexdvp
Une formule : kitxmlcodeinlinelatexdvpU(t+\mathrm{d}t)-U(t)=\iiint_\tau \rho c (T(t+\mathrm{d}t)-T(t)) \mathrm{d}\tau = \iiint_\tau \rho c \frac{\partial T}{\partial t} \mathrm{d}t \mathrm{d}\taufinkitxmlcodeinlinelatexdvp
Grande formule : kitxmlcodeinlinelatexdvp\frac{\partial\mathbf{F}} {\partial\mathbf{X}}=
\begin{bmatrix}
\frac{\partial\mathbf F_{1,1}}{\partial \mathbf X} & \cdots & \frac{\partial \mathbf F_{n,1}}{\partial \mathbf X}\\
\vdots & \ddots & \vdots\\
\frac{\partial\mathbf F_{1,m}}{\partial \mathbf X} & \cdots & \frac{\partial \mathbf F_{n,m}}{\partial \mathbf X}\\
\end{bmatrix}finkitxmlcodeinlinelatexdvp
Voici la racine carré de 25 (kitxmlcodeinlinelatexdvp\sqrt 25finkitxmlcodeinlinelatexdvp) égale à 5.
Vous pouvez aussi mettre du LaTeX en dehors d'un paragraphe, les formules seront alors centrées comme des images : (voir chapitre LaTeX hors paragraphe)
2-1-5. Note de bas de page▲
Pour insérer une note de bas de page(1), vous devez utiliser la balise(2) <noteBasPage>. La note doit être écrite dans le paragraphe qui y fait référence.
2-1-6. Acronyme▲
CPANComprehensive Perl Archive Network, A.D.S.L.Asymetric Digital Subscriber Line, A.P.I.Application Programming Interface, R.A.M.Random Acces Memory.
2-1-7. Les index▲
Un index est une liste de mots ordonnés de façon lexicographique. Il permet normalement à la fin d'un livre de lister certains mots-clés avec les numéros auxquels ils sont associés. Dans les tutoriels developpez.com, vous aurez des renvois depuis les index vers le contenu de l'article. Pour créer un index, il suffit d'encadrer chaque mot par une balise « index » : <index>mot</index>.
2-2. Balises situées en dehors d'une zone <paragraph>▲
2-2-1. Images en dehors du texte▲
Image centrée et située en dehors d'un paragraphe.
Images contenant un alignement et une légende.
Il est possible de mettre un lien hypertexte dans une image :
Images avec affichage de miniatures :
2-2-2. Balise imgtext▲
La balise <imgtext>, à placer au même niveau qu'une balise <paragraph>, permet de mettre une image d'agrément sur le côté du texte. On peut mettre une image personnelle ou utiliser le code faisant référence à une idée, une attention ou une information.
La balise <imgtext>, à placer au même niveau qu'une balise <paragraph>, permet de mettre une image d'agrément sur le côté du texte.
: <imgtext type="idea"> J'ai une idée !
HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012.
HTML5
spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.
<imgtext type="info">J'ai une information !
HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012.
HTML5
spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.
<imgtext type="warning"> Attention, message important !
HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.
<imgtext type="error"> Attention, message important !
HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012.
HTML5
spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.
<imgtext src="image.jpg"> Image personnelle de mon profil.
HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant. HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant. HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant. HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant. HTML5 (HyperText Markup Language 5) est la prochaine révision majeure d'HTML (format de données conçu pour représenter les pages web). Cette version HTML5 est en développement en 2012. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été lancé par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie. Le W3C vise la clôture des ajouts de fonctionnalités le 22 mai 2011 et une finalisation de la spécification en 20141, et encourage les développeurs Web à utiliser HTML 5 dès maintenant.
2-2-3. Balise rich-imgtext▲
La balise rich-imgtext est une variante de la balise imgtext vous permettant d'insérer autre chose que du texte : des tableaux, du code, des listes...
Du coup on peut aussi y remettre des imgtext...
Avec un tableau ! |
||
---|---|---|
AAA |
BBB |
CCC |
Attention !
... un petit warning
Mais bon sang c'est bien ça !
...
Et voila !
...
2-2-4. Les tableaux▲
Tableau sans entête
Texte à gauche |
Texte à droite |
Texte centré |
Texte avec une image : |
Tableau sans bordures
l0c0 |
l0c1 |
l0c2 |
l1c0 |
l1c1 |
l1c2 |
Tableau avec légende et cellules groupées.
Entête |
Entête |
---|---|
Cellule 1 |
Cellules fusionnées |
Cellule 2 avec couleur |
Il est possible de fixer les tailles des colonnes dans un tableau à l'aide de l'attribut width.
Col1 |
Col2 |
Col3 |
---|---|---|
20 % |
taille libre |
120 px |
Tableau |
Code |
Liste |
||||
---|---|---|---|---|---|---|
|
Sélectionnez
|
Une liste :
|
2-2-5. Les listes▲
La balise <liste> permet d'afficher une liste d'éléments.
Il est possible de modifier les puces en ajoutant un tag type à la balise liste. Vous devez utiliser dans la balise <liste> l'attribut « type ». Il peut prendre les valeurs : 1, a, A, i, I. En fonction du type choisi, vous obtiendrez, à la place des puces classiques, une numérotation avec des chiffres ou des lettres.
- Liste simple
- liste simple
Liste avec différents types :
- chiffre
-
chiffre
- lettre
- lettre
- chiffre 3
- chiffre 4
- chiffre 5
- Liste avec des lettres
- Suite des lettre
- Liste avec des lettres
- Suite des lettre
- Liste avec des lettres
- Suite des lettre
Liste sans puces :
- liste simple 1
- liste simple 2
- liste simple 3
2-2-6. Zones de code et code inline▲
code inline : print "Bonjour\n";
code inline avec coloration : print
"Bonjour
\n
"
;
Code avec titre
#!/usr/bin/perl
use strict;
use warnings;
# Voici une ligne de commentaire.
print
"Bonjour
\n
"
; # Affichage du mot bonjour (autre commentaire).
Code sans titre
#!/usr/bin/perl
use strict;
use warnings;
# Voici une ligne de commentaire.
print
"Bonjour
\n
"
; # Affichage du mot bonjour (autre commentaire).
Code avec des numéros de lignes
Code avec des numéros de lignes commençant à 3
Code accordéon (montrer/cacher)
Code avec lien vers un fichier
Code Brute copié dans la page web via la balise <html-brut>
<canvas id
=
"canvas"
width
=
"150"
height
=
"150"
>
<p>This example requires a browser that supports the
<a href
=
"http://www.w3.org/html/wg/drafts/html/master/"
>
HTML5</a>
feature.</p>
</canvas>
<script>
var canvas =
document
.getElementById
(
"canvas"
);
if (
canvas.
getContext) {
var ctx =
canvas.getContext
(
"2d"
);
ctx.
fillStyle =
"rgb(200,0,0)"
;
ctx.fillRect
(
10
,
10
,
55
,
50
);
ctx.
fillStyle =
"rgba(0, 0, 200, 0.5)"
;
ctx.fillRect
(
30
,
30
,
55
,
50
);
}
</script>
2-2-7. Les animations, vidéos et présentations▲
Cette balise permet d'ajouter une vidéo de type flash swf, flv, mp4 dans votre article ou même un lien YouTube, Dailymotion ou vimeo. Vous pouvez également insérer un son mp3. Voici comment insérer les différents types de vidéos ou sons.
Liens Youtube
Asa - Broda OLE
Milky Chance - Stolen Dance (Album Version)
Perl Vs Python
Lien Dailymotion
Lien Vimeo
Cliquez sur ma vidéo vimeo : The Mountain
vidéos SWF
vidéos FLV
vidéos MP3
Asa - 360°
Lecture d'une playlist mp3
vidéos MP4
vidéos M4V
présentation slideshare
Perl
présentation speakerdeck
2-2-8. LaTeX hors paragraphe▲
3. Exemple de coloration des codes▲
3-1. CSS▲
/* définition du style de la police, et largeur du select */
select {
font-family :
Courier ;
font-size :
10
px ;
width :
200
px;
}
/* élément de couleur bleu */
option.bl_eu
{
color :
#0000FF
;
background-color :
#00CCFF
;
background :
blue
url(
img.png
)
;
background-color :
blue
;
background-image :
url(
img.png
)
;
}
3-2. Delphi et Delphi pour .NET▲
// commentaire
{
Un commentaire sur
plusieurs lignes }
{$ une directive }
Var
i:Integer
;
(*
Et un autre
*)
begin
For
i:=Onglet.PageCount-1
DownTo
0
Do
Begin
Onglet.ActivePageIndex:=i;
// En commentaire d ON ' euuuuuu
ShowMessage('Truc muche !'
kqjhsd'jhkjh''''''hghg''''hg'
); // c'est un comment !
{ et un autre }
FileName:= 'Document.doc'
; // ou 'Document.rtf'
URL ='http://toto.com'
;
End
;
end
;
3-3. JAVA▲
// un comment en deb
public
class
MaClasse{
public
static
Map uneVariableStatique =
new
HashMap
(
);
static
{
/* uneVariableStatique.put("une clef","une valeur");
uneVariableStatique.put("une autre clef","une autre http:// jshdjshd");*/
//etc un comment et import
uneVariableStatique.put
(
"une clef"
,"une http://valeur"
);
uneVariableStatique.put
(
"une autre clef"
,"une autr
\"
e valeur
\\\"
"
);
qal.declareImports
(
"import com.unilog.data.Track"
);
import
toto;
}
}
3-4. Perl▲
#!/usr/bin/perl
use strict;
use warnings;
# Voici une ligne de commentaire.
print
"Bonjour
\n
"
; # Affichage du mot bonjour (autre commentaire).
say
"Bonjour
\n
"
; # Affichage du mot bonjour (autre commentaire).
my %langs
=
(
England =>
'English'
,
France =>
'French'
,
Spain =>
'Spanish'
,
China =>
'Chinese'
,
Germany =>
'German'
);
3-5. PHP▲
3-6. XML▲
<?xml version="1.0" encoding="ISO-8859-1"?>
<document>
<xiti>
<!-- compteur Dotnet-->
<alias>
Dotnet</alias>
<logg_er>
logv99</logg_er>
<id>
12345</id>
</xiti>
</document>
3-7. HTML▲
3-8. PYTHON▲
class
Personne:
def
__init__
(
self, nom, prenom):
self.nom =
nom
self.prenom =
prenom
def
presenter
(
self) :
return
self.nom +
" "
+
self.prenom
class
Etudiant
(
Personne):
def
__init__
(
self, niveau, nom, prenom):
Personne.__init__
(
self, nom, prenom)
self.niveau =
niveau
def
presenter
(
self):
return
self.niveau +
" "
+
Personne.presenter
(
self)
e =
Etudiant
(
"Licence INFO"
, "Dupontel"
, "Albert"
)
assert
e.nom ==
"Dupontel"
3-9. DELPHI▲
unit
Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class
(TForm)
private
{ Déclarations privées }
public
{ Déclarations publiques }
end
;
var
Form1: TForm1;
implementation
{$R *.dfm}
end
.
3-10. PASCAL▲
unit
Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls;
type
{ TForm1 }
TForm1 = class
(TForm)
Label1: TLabel; { le label "Hello world!" posé sur la fenêtre }
private
{ private declarations }
public
{ public declarations }
end
;
var
Form1: TForm1;
implementation
initialization
{$I unit1.lrs}
end
.
3-11. Perl again▲
#!/usr/bin/perl
use warnings;
use strict;
use Tk;
use Tk::TableMatrix;
use utf8;
my $mw
=
MainWindow->
new(
-
title =>
'Tableau TableMatrix'
,
-
background =>
'snow'
,
);
$mw-
>
Label(
-
text =>
"Tableau redimensionnable à l'aide de TableMatrix"
,
-
background =>
'snow'
,
-
font =>
'{arial} 12 bold'
)->
pack
( -
pady =>
5
);
my $data
=
{}
;
# Création du tableau avec une ligne et une colonne
my $table
=
$mw-
>
Scrolled(
'TableMatrix'
,
-
rows =>
1
,
-
cols =>
1
,
-
width =>
500
,
-
height =>
500
,
-
variable =>
$data
,
-
rowtagcommand =>
\&
type_row,
-
background =>
"#454545"
,
-
titlerows =>
1
,
-
titlecols =>
1
,
-
drawmode =>
'single'
,
-
selectmode =>
'extended'
,
-
scrollbars =>
'osoe'
,
);
# Insertion de données dans le tableau
for my $row
( 0
.. 20
) {
# Calcul du nombre de lignes dans le tableau
my $number_rows
=
$table-
>
cget( -
rows );
# Insertion d'une ligne si nécessaire
$table-
>
insertRows( 'end'
, 1
) if ( $number_rows
<
$row
+
1
);
for my $col
( 0
.. 10
) {
# Calcul du nombre de lignes dans le tableau
my $number_cols
=
$table-
>
cget( -
cols );
# Insertion d'une colonne si nécessaire
$table-
>
insertCols( 'end'
, 1
) if ( $number_cols
<
$col
+
1
);
# Ligne de titre
if ( $row
==
0
and
$col
!=
0
) {
$data-
>{
"
$row
,
$col
"
}
=
"Colonne
$col
"
;
}
# Colonne de titre
elsif ( $col
==
0
and
$row
!=
0
) {
$data-
>{
"
$row
,
$col
"
}
=
"Ligne
$row
"
;
}
elsif ( $col
==
0
and
$row
==
0
) {
# rien ne se passe;
}
# Données
else {
$data-
>{
"
$row
,
$col
"
}
=
"(
$row
,
$col
)"
;
}
}
}
# Configuration des lignes paires et impaires
$table-
>
tagConfigure(
'pair_row'
,
-
bg =>
'white'
,
-
fg =>
'black'
,
-
relief =>
'sunken'
,
-
state =>
'disabled'
);
$table-
>
tagConfigure(
'impair_row'
,
-
bg =>
'#00C0E0'
,
-
fg =>
'black'
,
-
relief =>
'sunken'
,
-
state =>
'disabled'
);
$table-
>
tagConfigure( 'title'
, -
bg =>
'#F0E0FF'
, -
fg =>
'black'
, -
relief =>
'sunken'
);
# Fusion des cellules 1,1 à 1,4
$table-
>
spans( '1,1'
=>
'0,3'
);
$table-
>
pack
(qw/ -fill both -expand 1 -padx 10 -pady 10 /
);
MainLoop;
# Permet d'assigner un tag aux lignes paires et impaires
sub type_row {
my $row
=
shift
;
my $tag_row
=
( $row
>
0
&&
$row
%
2
==
0
) ?
"pair_row"
: "impair_row"
;
return $tag_row
;
3-12. SQL - code long▲
# On supprime les tables si elles existent déjà
DROP
TABLE
POSITION
;
DROP
TABLE
FICHIER;
DROP
TABLE
VERSION
;
# On crée les tables en ajoutant des contraintes de colonnes et de tables afin d'être sûr de garder une table valide quoi qu'il se passe.
CREATE
TABLE
VERSION
(
id MEDIUMINT
PRIMARY
KEY
AUTO_INCREMENT
, Version
VARCHAR
(
20
)
NOT
NULL
, Active CHAR
(
1
)
NOT
NULL
CHECK
Active IN
(
'O'
, 'N'
)
, CHECK
(
Version
<>
'0'
))
;
CREATE
TABLE
FICHIER (
id MEDIUMINT
PRIMARY
KEY
AUTO_INCREMENT
, Version_creation MEDIUMINT
NOT
NULL
REFERENCES
VERSION
.id, Version_suppression MEDIUMINT
REFERENCES
VERSION
.id, Version_maj MEDIUMINT
REFERENCES
VERSION
.id, Version_futur_maj MEDIUMINT
REFERENCES
VERSION
.id, Source
VARCHAR
(
200
)
, CHECK
(
Version_suppression IS
NULL
OR
Version_suppression >
Version_creation)
, CHECK
((
Version_suppression IS
NOT
NULL
AND
Version_maj IS
NULL
)
OR
Version_suppression IS
NULL
)
, CHECK
(
Version_maj IS
NULL
OR
Version_maj >
Version_creation)
, CHECK
((
Source
IS
NULL
AND
Version_maj IS
NULL
AND
Version_futur_maj IS
NULL
)
OR
Source
IS
NOT
NULL
))
;
CREATE
TABLE
POSITION
(
id_Fichier MEDIUMINT
NOT
NULL
REFERENCES
FICHIER.id, id_Version MEDIUMINT
NOT
NULL
REFERENCES
VERSION
.id, Nom VARCHAR
(
100
)
NOT
NULL
, id_dossier MEDIUMINT
REFERENCES
FICHIER.id, Derniere_position CHAR
(
1
)
NOT
NULL
CHECK
Derniere_position IN
(
'O'
, 'N'
, 'T'
, 'P'
)
, PRIMARY
KEY
(
id_Fichier, id_Version)
, CHECK
(
id_Fichier <>
id_dossier))
;
# On crée la version 0 (version vide)
INSERT
INTO
VERSION
VALUES
(
''
, '0'
, 'O'
)
;
3-13. JSON et JavaScript▲
var sum =
function(
) {
var i,
x =
0
;
for (
i =
0
;
i <
arguments.
length;
++
i) {
x +=
arguments[
i];
}
return x;
}
sum
(
1
,
2
,
3
);
// returns 6
{
"firstName"
:
"John"
,
"lastName"
:
"Smith"
,
"isAlive"
:
true,
"age"
:
25
,
"address"
:
{
"streetAddress"
:
"21 2nd Street"
,
"city"
:
"New York"
,
"state"
:
"NY"
,
"postalCode"
:
"10021-3100"
},
"phoneNumbers"
:
[
{
"type"
:
"home"
,
"number"
:
"212 555-1234"
},
{
"type"
:
"office"
,
"number"
:
"646 555-4567"
}
],
"children"
:
[],
"spouse"
:
null
}
4. En savoir plus▲
Pour en savoir plus, merci de lire la documentation officielle du Kit de générationKit de génération.