1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
|
% This is is the code for the french documentation of the `chronosys' package.
%
% The maintener of this work is Mathieu Long.
% email : mlong.tex@hotmail.fr
% the `chronosys' package consists in the 9 files :
% -- `docchronosys_en.tex' and `docchronosys_en.pdf' (english manual)
% -- `docchronosys_fr.tex' and `docchronosys_fr.pdf' (french manual)
% -- README
% -- `chronosys.tex' (file for plain TeX)
% -- `chronosyschr.tex' (main file of the `chronosys' package)
% -- `chronosys.sty' (file for LaTeX)
% -- `x-chronosys.tex' (file for ConTeXt)
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
% The latest version of this license is in
% http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2005/12/01 or later.
%
% This work has the LPPL maintenance status `maintained'.
%
% The Current Maintainer of this work is Mathieu Long.
%
\starttext
\enableregime[utf8]
\setupinteraction[title=Chronosys - Documentation, author=Mathieu Long, title=Documentation de chronosys -français-,
subtitle=Dessinez des frises chronologiques]
\setupcolors[state=start]
\unless\ifdefined\XeTeXpicfile \unless\ifdefined\directlua
\setupoutput[pdftex]
\fi\fi
\setupheadertexts%
[chapter][section]
\setupheader[text][style=\ss]
\mainlanguage[fr]
\setupbodyfont[14pt,regular]
\setuppapersize[B4]
\setupinteraction[state=start,color=middlered]
\setupcapitals[sc=yes]
\setupindenting[yes,20pt]
\setuppagenumbering[location={bottom,right},left=--~]
\definetyping[typingTEX][option=TEX]
\setuptyping[typingTEX][color=darkblue]
\setupwhitespace[big]
\setupcolors[state=start]
\useURL[MetaPost_TUG][http://www.tug.org/docs/metapost/mpman.pdf]
\useURL[Tikz_CTAN][http://mirror.ctan.org/graphics/pgf/base/doc/generic/pgf/pgfmanual.pdf]
\unprotect
\placebookmarks[chapter,section,subsection][chapter,section]
\usemodule[chronosys]
\startstandardmakeup
\switchtobodyfont[16pt]
\midaligned{Chronosys}
\midaligned{Réalisez des frises chronologiques !}
\bigskip
\startchronology[width=\hsize,height=7ex,stopyear=\numexpr\year+38\relax,startyear=1982,color=darkgreen,dates=true]
\chronoevent[textwidth=7cm]{2011}{Création de \type{chronosys}}
\stopchronology
\bigskip\bigskip
\midaligned{Mathieu \sc Long}
\midaligned{\color[darkgreen]mlong.tex@hotmail.fr}
\stopstandardmakeup
\completecontent[level=subsection,interaction=pagenumber]
\startmode[mkiv]
\def\METAPOST{MetaPost}
\stopmode
\def\HeadTitle#1#2%
{\hbox to \hsize
{ \vbox{\hrule\par\noindent\vrule height1.15cm depth0pt\leaders\hrule\hskip10pt \lower5pt\vbox{\hbox{ #1\hskip10pt#2 }}\leaders\hrule\hfill\vrule height1.15cm depth0pt}
}}
\setuphead[chapter][command=\HeadTitle]
\unprotect
\parskip 1cm
\chapter{Introduction}
\type{Chronosys} est distribué sous licence LaTeX Project Public Licence. Il utilise l'extension \type{tikz}\footnote{pour plus d'informations sur \type{tikz}, voir \from[Tikz_CTAN]} pour réaliser les dessins de frises. Il nécessite l'utilisation de \ETEX. Ce package fournit des commandes pour la création de frises chronologiques.
\blank
Le fichier est actuellement en version \unprotect\catcode`\@=11\relax\chron@sysversion , d'autres versions seront susceptibles de venir par la suite.
\bigskip
Il est recommandé de ne pas charger le fichier \type{color.tex} lors de son utilisation en plain \TeX.
\bigskip
\type{Chronosys} se charge de la façon habituelle selon votre format~:
\startitemize[4]
\item \tex{usemodule[chronosys]} pour \CONTEXT.
\item \tex{usepackage{chronosys}} pour \LaTeX.
\item \tex{input chronosys} pour plain \TeX.
\stopitemize
\subject{Historique des mises à jour}
\startitemize[2]
\item 1.10 :
ajout de la possibilité de modifier l'alignement des frises sur la page, de modifier la largeur des textes de commentaire des
événements, meilleur support des événements placés au-dessus de la frise, ajout de la possibilité de colorer le fond des textes des événements et périodes.
\item 1.15 : ajout de la possibilité de créer ses propres nouvelles commandes, de graduer automatiquement les frises, changer l'alternance de couleurs
des périodes et corrige quelques problèmes de compatibilité.
\item 1.2 (version actuelle) : réduit l'utilisation du module \type{tikz} au minimum possible, retire la limitation de l'impossibilité
de changer la valeur par défaut de \type{textwidth}. Sous \CONTEXT, ajout de la possibilité d'utiliser \METAPOST\footnote{pour plus d'informations sur \METAPOST, voir \from[MetaPost_TUG]} à la place de \type{tikz} (et
réciproquement, de réutiliser \type{tikz} à la place de \METAPOST{}) via les commandes \tex{chronoswitchtomodeMP} et \tex{chronoswitchtomodeTikz}~; sous
la version Mark IV utilisation de \METAPOST{} par défaut.
\stopitemize
\blank
\hairline
Je tiens à remercier Gonçalo {\sc Pereira} pour son idée de colorer l'arrière-fond des textes des périodes et événements en blanc, afin qu'il ne soit pas mélangés avec d'autres éléments de la frise, tels des traits verticaux.
\blank
\hrule
\chapter{Première utilisation}
\section{Fonction principale : \tex{startchronology}}
La macro \tex{startchronology}\index{startchronology} est la première à retenir\footnote{Il existe aussi \tex{begin}\arg{chronology} et \tex{end}\arg{chronology} pour \LaTeX}~: elle prépare la frise chronologique. Voici sa structure :
\startalignment[middle]
\starttypingTEX
\startchronology[...=...]
\stoptypingTEX
\stopalignment
\leftaligned{\switchtobodyfont[12.4pt] On se reportera à \in[startchronologyoptions] pour connaître les différentes options}
\blank[small]
\noindent La suivante à retenir est \tex{stopchronology}\index{stopchronology}\footnote{ou \tex{end}\arg{chronology}}, elle termine le tout :
\startalignment[middle]
\starttypingTEX
\stopchronology
\stoptypingTEX
\stopalignment
Voyons maintenant le résultat~:
\starttypingTEX
\startchronology
\stopchronology
\stoptypingTEX
\startchronology
\stopchronology
\bigskip
Une première observation~: par défaut, d'une part la frise occupe toute la largeur de la page, d'autre part elle place au début et à la fin l'année {\os 0} et
l'année courante ({\os\number\year} lors de la compilation de ce document). Ces dates sont les dates de début et de fin de
la frise, dates par rapport auxquelles \type{chronosys} comparera les événements et périodes donnés (voir \in[event] et \in[period]).
\blank[small] Maintenant voyons comment rajouter des événements sur la frise.
\section[event]{Les événements : \tex{chronoevent}}
Il est possible de rajouter des événements sur la frise chronologique via \tex{chronoevent}\index{chronoevent}~:
\startalignment[middle]
\starttypingTEX
\chronoevent[...=...]{1.}{2.}
\stoptypingTEX
\stopalignment
\starttabulate[|l|l|]
\NC \color[darkblue]\tt...=...\NC arguments optionnels (voir \in[eventoptions])\NC\NR
\NC \color[darkblue]1. \NC date ({\em nombre})\NC\NR
\NC \color[darkblue]2. \NC commentaire \NC\NR
\stoptabulate
Cette commande prend deux arguments~: le premier est la date\footnote{voir \in[eventnewdate] pour plus de détails sur la façon de spécifier la date} et le second est le texte relatif à cet événement.
\blank[small]
Voyons un exemple.
\starttypingTEX
\startchronology
\chronoevent{1977}{Création de \TeX}
\stopchronology
\stoptypingTEX
\startchronology
\chronoevent{1977}{Création de \TeX}
\stopchronology
\bigskip
L'événement a été placé entre {\os 0} et {\os\the\year}, proportionnellement en fonction de l'écart entre {\os0}, {\os1977} et {\os\the\year}. Il est également possible de préciser plusieurs événements~:
\starttypingTEX
\startchronology
\chronoevent{476}{Chute de l'empire romain}
\chronoevent{1492}{Découverte de l'Amérique}
\chronoevent{1969}{Premiers pas sur la Lune}
\stopchronology
\stoptypingTEX
\switchtobodyfont[9pt]
\startchronology
\chronoevent{476}{Chute de l'empire romain}
\chronoevent{1492}{Découverte de l'Amérique}
\chronoevent{1969}{\quad Premiers pas sur la Lune}
\stopchronology
\switchtobodyfont[14pt]
\bigskip Note : la taille d'écriture a été réduite lors de la création de cette frise afin que les textes ne se chevauchent pas~; une meilleure méthode sera donnée plus loin (voir \in[eventoptions]).\blank
\type{Chronosys} ne produira pas d'erreur si un événement a une date en dehors de l'intervalle de la frise, mais il sera ignoré. La personnalisation des frises pour modifier les dates de début et de fin de frise sera vue plus loin (voir \in[startchronologyoptions]).
\section[period]{Les périodes : \tex{chronoperiode}}
Il est également possible de placer toute une période (ou plusieurs\footnote{si plusieurs périodes se chevauchent sur la frise, la dernière donnée écrase l'autre}) sur la frise grâce à \tex{chronoperiode}\index{chronoperiode} :
\startalignment[middle]
\starttypingTEX
\chronoperiode[...=...]{1.}{2.}{3.}
\stoptypingTEX
\stopalignment
\starttabulate[|l|l|]
\NC \tt\color[darkblue]...=...\NC options (voir \in[periodoptions])\NC\NR
\NC \color[darkblue]1. \NC date de début ({\em nombre})\NC\NR
\NC \color[darkblue]2. \NC date de fin ({\em nombre}) \NC\NR
\NC\color[darkblue]3. \NC commentaire \NC\NR
\stoptabulate
\starttypingTEX
\startchronology
\chronoperiode{1000}{1999}{2$^{\rm è}$ millénaire}
\chronoperiode{192}{476}{Bas-Empire romain}
\chronoevent{1969}{Premiers pas sur la Lune}
\stopchronology
\stoptypingTEX
\switchtobodyfont[9pt]
\startchronology
\chronoperiode{1000}{1999}{2\high{è} millénaire}
\chronoperiode{192}{476}{Bas-Empire romain}
\chronoevent{1969}{\quad Premiers pas sur la Lune}
\stopchronology
\switchtobodyfont[14pt]
\blank
Note : sur la période de {\os1000} à {\os1999} de fond bleu, le trait vertical marquant la position de l'événement sur la frise est visible. Il est possible de le désactiver (voir \in[eventoptions]), mais s'il est souhaité il est recommandé de placer les événements après les périodes afin qu'ils ne soient pas écrasés.
La couleur a automatiquement été placée afin de rendre bien visible la période sur la frise, ainsi que les dates (voir \in[periodoptions] pour les désactiver) et le
texte de commentaire. La couleur automatique alterne entre cinq couleurs : bleu, rouge, cyan, violet, jaune, sauf si la frise est d'une de ces couleurs, dans
ce cas cette couleur est ignorée. Il est également possible de spécifier la couleur de la période (voir \in[periodoptions]).
\section[chronograduation]{Graduation automatique : \tex{chronograduation}}
Pour graduer automatiquement la frise, utilisez \tex{chronograduation}\index{chronograduation}.
\startalignment[middle]
\starttypingTEX
\chronograduation[style][...=...]{1.}
\stoptypingTEX
\stopalignment
\starttabulate[|l|l|]
\NC \color[blue] \type{style} \NC \type{periode} \em ou \type{event}\FR
\NC \color[blue] ...=... \NC options (voir \in[chronoperiodsoptions] et \in[chronoeventsoptions]) \FR
\NC \color[blue] 1. \NC intervalle ({\em nombre})\FR
\stoptabulate
\starttypingTEX
\startchronology
\chronograduation{100}
\stopchronology
\startchronology
\chronograduation[periode][dateselevation=0pt]{100}
\stopchronology
\stoptypingTEX
\startchronology
\chronograduation[][]{100}
\stopchronology
\startchronology
\chronograduation[periode][dateselevation=\z@]{100}
\stopchronology
\chapter[Personnalisation]{Personnalisation des frises}
\section{\tex{startchronology}}
\subsection{Exemple}
\tex{startchronology} accepte des arguments optionnels spécifié entre crochets.
Voyons un exemple :
\starttypingTEX
\startchronology
[startyear=-800,stopyear=500,
color=darkblue,height=7ex,width=\hsize]
\chronoevent{-753}{Fondation de Rome}
\stopchronology
\stoptypingTEX
\startchronology
[startyear=-800,stopyear=500,color=darkblue,height=7ex,width=\hsize]
\chronoevent{-753}{Fondation de Rome}
\stopchronology
\bigskip
Le style de la frise ainsi que les années de début et de fin ont été modifiées~.
\subsection{Options possibles}
Les différentes options de \tex{startchronology}\index{startchronology} sont les suivantes~:
\startitemize[2]
\head \type{startyear}\index{startyear} :\par année de début de la frise chronologique. Elle doit être un \type{nombre} valide. Elle vaut par défaut {\os0}
\head \type{stopyear}\index{stopyear} :\par année de fin de la frise chronologique. Elle doit aussi être un \type{nombre} valide. Elle vaut par défaut l'année en cours.
\head \type{color}\index{color} :\par couleur de la frise. Elle doit être une \type{couleur} valide. Elle est noire par défaut.
\head \type{height}\index{height} :\par hauteur de la frise. Elle doit être une \type{dimension} valide et vaut \type{0.7pc} par défaut.
\head \type{width}\index{width} :\par largeur de la frise. Elle doit être une \type{dimension} valide et vaut \tex{hsize}\footnote{\tex{textwidth} en \LaTeX} par défaut.
\head \type{datesstyle}\index{datessyle} :\par style à appliquer aux dates. Ce doit être une \type{commande} (pouvant prendre un argument entre accolades, qui sera chacune des deux dates), est vide par défaut.
\head \type{dateselevation}\index{dateselevation} :\par hauteur des dates par rapport à la frise, elle doit être une \type{dimension} valide et vaut \type{20pt} par défaut.
\head \type{startdate}\index{startdate} :\par valeur booléenne qui indique si la date de début doit être placée. Elle doit être soit \type{true} soit \type{false} et vaut \type{true} par défaut.
\head \type{stopdate}\index{stopdate} :\par valeur booléenne qui indique si la date de fin doit être placée. Elle doit être soit \type{true} soit \type{false} et vaut \type{true} par défaut.
\head \type{dates}\index{dates} :\par valeur booléenne qui indique si les deux dates doivent être placées. Elle doit être soit \type{true} soit \type{false} et vaut \type{true} par défaut.
\head\type{arrow}\index{arrow} :\par valeur booléenne qui indique si une pointe de flèche doit être placée en fin de frise. Elle doit être soit \type{true} soit \type{false} et vaut \type{true} par défaut.
\head \type{arrowheight}\index{arrowheight} :\par hauteur de la pointe de flèche. Elle doit être une \type{dimension} valide et est identique à la hauteur de la frise par défaut.
\head \type{arrowwidth}\index{arrowwidth} :\par largeur de la pointe de la flèche. Elle empiète sur la largeur totale (\type{width}) de la frise. Elle doit être une \type{dimension} valide et vaut 1/10\high{è} de la largeur totale (\type{width}) par défaut.
\head \type{arrowcolor}\index{arrowcolor} :\par couleur de la pointe de la flèche. Elle doit être une \type{couleur} reconnue par l'extension tikz. Elle est identique à la couleur de la frise par défaut.
\head \type{box}\index{box} :\par valeur booléenne qui indique si la frise doit être repassée d'un trait noir. Elle doit être soit \type{true} soit \type{false} et vaut \type{false} par défaut.
\head \type{align} \index{align} :\par alignement de la frise sur la page. Il peut être soit \type{center} pour centré, soit \type{left} pour aligné à gauche soit \type{right} pour aligné à droite. Il vaut \type{center} par défaut.
\stopitemize
\subsection[startchronologyoptions]{Résumé}
\placetable[here][fig:startchronologyoptions]{Options de \type{startchronology}}
\starttable[|l|c|l|]
\HL\VL\use{3}\ReFormat[cB]{\tex{startchronology[}\em ...=...\type{]}}\VL\SR
\VL\type{startyear} \NC=\NC\type{<nombre>}
\VL\FR\VL
\type{stopyear} \NC=\NC\type{<nombre>}\VL\FR
\VL
\type{color} \NC=\NC\type{<couleur>}\VL\FR
\VL
\type{height} \NC=\NC\type{<dimension>}\VL\FR
\VL
\type{width} \NC=\NC\type{<dimension>}\VL\FR
\VL
\type{datesstyle} \NC=\NC\type{<commande>} {\em ou} \type{<commande#1>}\VL\FR
\VL
\type{dateselevation} \NC=\NC\type{<dimension>}\VL\FR
\VL
\type{startdate} \NC=\NC\type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{stopdate} \NC=\NC\type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{dates} \NC=\NC\type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{arrow} \NC=\NC\type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{arrowheight} \NC=\NC\type{<dimension>}\VL\FR
\VL\type{arrowwidth} \NC=\NC\type{<dimension>}\VL\FR
\VL\type{arrowcolor} \NC=\NC\type{<couleur>}\VL\FR
\VL\type{box} \NC=\NC\type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{align} \NC =\NC \type{<right>} {\em ou} \type{<center>} {\em ou} \type{<left>} \VL\FR\HL
\stoptable
\page[yes]
\section{\tex{chronoperiode}}
\subsection{Exemple}
Tout comme \tex{startchronology}, \tex{chronoperiode} admet des arguments optionnels pour la personnalisation de la période.
\starttypingTEX
\startchronology[startyear=-800,stopyear=500,
color=darkgreen, height=3cm]
\chronoperiode[color=orange,bottomdepth=1cm, topheight=2cm,
textstyle=\it, dateselevation=-15pt, ifcolorbox=false,
box=true]{-753}{-509}{Période royale romaine}
\chronoperiode[color=cyan,startdate=false, textstyle=\bf,
textdepth=30pt, bottomdepth=1cm, topheight=2cm,
ifcolorbox=false, dateselevation=-15pt,
box=true]{-509}{-27}{République romaine}
\stopchronology
\stoptypingTEX
\startchronology[startyear=-800,stopyear=500,color=darkgreen, height=3cm]
\chronoperiode[color=orange,bottomdepth=1cm, topheight=2cm, textstyle=\it, dateselevation=-15pt, ifcolorbox=false, box=true]{-753}{-509}{Période royale romaine}
\chronoperiode[color=cyan,startdate=false, textstyle=\bf,textdepth=30pt, bottomdepth=1cm, topheight=2cm, ifcolorbox=false, dateselevation=-15pt, box=true]{-509}{-27}{République romaine}
\stopchronology
\subsection{Couleur d'arrière-plan}
Afin d'éviter que d'éventuels traits verticaux soit superposés avec le texte des périodes sur la frise, \type{chronosys} colorie l'arrière-plan du texte de commentaire en
blanc par défaut. Il est possible de changer cette couleur ou de désactiver cette colorisation (voir \in[chronoperiodsoptions]).
\subsection{Alternance des couleurs}
Comme vu précédemment, la couleur des périodes alterne par défaut entre bleu, rouge, cyan, violet et jaune. Il est possible de modifier ces couleurs
grâce à \crlf\tex{chronoperiodecoloralternation}\index{chronoperiodecoloralternation}.
\startalignment[middle]
\starttypingTEX
\chronoperiodecoloralternation{1.}
\stoptypingTEX
\stopalignment
\starttabulate[|l|l|]
\NC\color[darkblue] 1. \NC couleurs ({\em\type{couleur}, \type{couleur},... \type{couleur}})\FR
\stoptabulate
\blank[big]
Exemple d'utilisation :
\starttypingTEX
\chronoperiodecoloralternation{orange, darkgreen,
violet, purple, cyan}
\startchronology
\chronoperiode[startdate=false]{0}{500}{}
\chronoperiode[startdate=false]{500}{1000}{}
\chronoperiode[startdate=false]{1000}{1500}{}
\stopchronology
\stoptypingTEX
\restartchronoperiodecolor
\startchronology
\chronoperiodecoloralternation{orange, darkgreen,
violet, purple, cyan}
\chronoperiode[startdate=false]{0}{500}{}
\chronoperiode[startdate=false]{500}{1000}{}
\chronoperiode[startdate=false]{1000}{1500}{}
\stopchronology
Enfin il est également possible de restaurer l'alternance des couleurs, au début ou bien sur une couleur précise grâce à
\tex{restartchronoperiodecolor}\index{restartchronoperiodecolor}.
\startalignment[middle]
\starttypingTEX
\restartchronoperiodecolor[...]
\stoptypingTEX
\stopalignment
\starttabulate[|l|l|]
\NC\color[darkblue] ... \NC nom d'une couleur de l'alternance automatique ({\em couleur})\FR
\stoptabulate
\subsection[chronoperiodsoptions]{Différentes options}
Les différentes options de \tex{chronoperiode}\index{chronoperiode} sont listées ici~:
\startitemize[2]
\head \type{startdate}\index{startdate} :\par valeur booléenne. Elle indique si la date de départ doit être affichée, et doit être soit \type{true} soit \type{false}. Elle vaut \type{true} par défaut.
\head \type{stopdate}\index{stopdate} :\par valeur booléenne. Elle indique si la date de fin doit être affichée, et doit être soit \type{true} soit \type{false}. Elle vaut \type{true} par défaut.
\head \type{dates}\index{dates} :\par valeur booléenne. Elle indique si les dates de début et de fin doivent être affichées, et doit être soit \type{true} soit \type{false}. Elle vaut \type{true} par défaut.
\head \type{datesstyle}\index{datesstyle} : \par définit les style à appliquer aux dates. Elle doit être une \type{commande} ou \type{commande#1} et est vide par défaut.
\head \type{textstyle}\index{textstyle} : \par définit les style à appliquer au texte de commentaire. Elle doit être une \type{commande} ou \type{commande#1} et est vide par défaut.
\head \type{color}\index{color} :\par couleur de la période sur la frise. Ce doit être une \type{couleur} valide. Elle alterne entre bleu, rouge, cyan, violet et jaune par défaut.
\head \type{dateselevation}\index{dateselevation} :\par hauteur des dates par rapport à la frise. Elle doit être une \type{dimension} valide et vaut \type{0pt} par défaut.
\head \type{textdepth}\index{textdepth} :\par profondeur du texte par rapport à la frise. Elle doit être une \type{dimension} valide et vaut {15pt} par défaut.
\head \type{ifcolorbox} \index{ifcolorbox}: \par valeur booléenne qui indique si le fond du texte de commentaire de la période doit être colorié. Elle doit valoir soit \type{true} soit \type{false} et vaut \type{true} par défaut.
\head \type{colorbox}\index{colorbox} : \par couleur du fond du commentaire. Ce doit être une \type{couleur} valide et vaut \type{white} par défaut.
\head \type{topheight}\index{topheight} : \par hauteur du haut de la période sur la frise. Ce doit être une \type{dimension} valide et est égale à la \type{hauteur de la frise} par défaut.
\head \type{bottomdepth}\index{bottomdepth} : \par hauteur du bas de la période sur la frise. Ce doit être une \type{dimension} valide et est égale à la \type{0pt} par défaut.
\stopitemize
\subsection[periodoptions]{Résumé}
\placetable[here][fig:chronoperiodeoptions]{Options de \type{chronoperiode}}
\starttable[|l|c|l|]
\HL\VL\use{3}\ReFormat[cB]{\tex{chronoperiode[}\em ...=...\type{]{...}{...}{...}}}\VL\SR
\VL\type{startdate} \NC=\NC\type{<true>} {\em ou} \type{<false>}\VL\LR
\VL\type{stopdate} \NC=\NC\type{<true>} {\em ou} \type{<false>}\VL\LR
\VL\type{dates} \NC=\NC\type{<true>} {\em ou} \type{<false>}\VL\LR
\VL\type{datesstyle} \NC=\NC\type{<commande>} {\em ou} \type{<commande#1>}\VL\LR
\VL\type{textstyle} \NC=\NC\type{<commande>} {\em ou} \type{<commande#1>}\VL\LR
\VL\type{color} \NC=\NC\type{<couleur>}\VL\LR
\VL\type{dateselevation} \NC=\NC\type{<dimension>}\VL\LR
\VL\type{textdeph} \NC=\NC\type{<dimension>}\VL\LR
\VL\type{ifcolorbox} \NC =\NC \type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{colorbox} \NC =\NC \type{<couleur>}\VL\FR
\VL\type{topheight} \NC =\NC \type{<dimension>}\VL\FR
\VL\type{bottomdepth} \NC =\NC \type{<dimension>}\VL\FR\HL
\stoptable
\section{\tex{chronoevent}}
De même que \tex{startchronology} et \tex{chronoperiode}, \tex{chronoevent} accepte lui-aussi un argument optionnel entre crochets qui contient les options de personnalisation.
\subsection{Exemple}
\starttypingTEX
\def\MyIcon{{\color{orange}\vrule height5pt width5pt}}
\startchronology[startyear=-800,stopyear=500,
color=darkgreen,height=7ex]
\chronoevent[textstyle=\bf,
datesstyle=\it,datesseparation=/,
conversionmonth=false,icon=\MyIcon,
year=false, textwidth=5cm]{15/3/-44}
{\qquad Ides de mars~; \endgraf
assassinat de Jules César}
\stopchronology
\stoptypingTEX
\def\MyIcon{{\color[orange]\vrule height5pt width5pt\relax}}
\startchronology[startyear=-800,stopyear=500,color=darkgreen,height=7ex]
\chronoevent[textstyle=\bf,datesstyle=\it,datesseparation=/,conversionmonth=false,icon=\MyIcon,year=false, textwidth=5cm]{15/3/-44}{\qquad Ides de mars~; \hfill\null\penalty-10000 assassinat de Jules César}
\stopchronology
\subsection{Spécificités}
\subsubsection{Couleur d'arrière-plan}
De même que pour les périodes, \type{chronosys} colorie le fond des textes et dates des événements en blanc, afin de ne pas obtenir ceci :
\starttypingTEX
\startchronology
\chronoevent{1500}{Texte A}
\chronoevent{1525}{Texte B}
\stopchronology
\stoptypingTEX
\startchronology
\chronoevent{1500}{Texte A}
\chronoevent[markdepth=70pt,ifcolorbox=false]{1525}{Texte B}
\stopchronology
mais bien ceci :
\startchronology
\chronoevent[markdepth=70pt]{1525}{Texte B}
\chronoevent{1500}{Texte A}
\stopchronology
Vous devez placer les événements dans l'ordre du plus éloigné de la frise au plus proche. Vous pouvez bien sûr changer la couleur par défaut ou désactiver ceci (voir \in[chronoeventsoptions]).
\subsubsection[eventnewdate]{Une nouvelle façon d'exprimer la date}
Il est possible de préciser la date précise d'un événement toujours en utilisant \tex{chronoevent}\index{chronoevent}. Nous avons vu que taper
\tex{chronoevent}\arg{-44}\arg{Assassinat de César} permettait de spécifier l'année d'un événement, et toujours sur le même principe nous allons voir comment spécifier
le mois ou le jour d'un événement. Il faut pour cela adopter la notation \type{<numéro du jour>/<numéro du mois>/année}, mais seule l'année est obligatoire.
Ainsi il est possible de donner uniquement le mois et l'année, juste l'année comme nous l'avons vu ou encore le jour, le mois et l'année. Le numéro du mois est automatiquement transformé en le nom du mois correspondant en français. Il est possible de désactiver cette conversion (voir \in[eventoptions]). La commande de conversion est définie ainsi :
\starttypingTEX
\def\chron@selectmonth#1{\ifcase#1\or janvier\or f\'evrier\or
mars\or avril\or mai\or juin\or juillet\or
ao\^ut\or septembre\or octobre\or novembre\or
d\'ecembre\fi}
\stoptypingTEX
Pour changer la langue, il suffit de redéfinir la commande suivant le même modèle.
\bigskip
Voyons un exemple :
\starttypingTEX
\startchronology[startyear=-44,
stopyear=-43,color=darkgreen,height=7ex]
\chronoevent{15/03/-44}
{Assassinat de César}
\stopchronology
\stoptypingTEX
\startchronology[startyear=-44,stopyear=-43,color=darkgreen,height=7ex]
\chronoevent{15/03/-44}{Assassinat de César}
\stopchronology
\blank
\subsection[chronoeventsoptions]{Options possibles}
Voici la liste des options possibles\index{chronoevent}.
\startitemize[2]
\head \type{barre}\index{barre} :\par valeur booléenne qui indique si une barre noire verticale doit être placée sur la frise à l'endroit de l'événement. Elle doit valeur \type{true} ou \type{false} et vaut \type{true} par défaut.
\head \type{date}\index{date} :\par valeur booléenne qui indique si la date de l'événement doit être placée. Elle doit valeur \type{true} ou \type{false} et vaut \type{true} par défaut.
\head \type{conversionmonth}\index{conversionmonth} :\par valeur booléenne qui indique si le mois de l'événement doit être transformé en nom de mois. Elle doit valeur \type{true} ou \type{false} et vaut \type{true} par défaut.
\head \type{mark}\index{mark} :\par valeur booléenne qui indique si une barre verticale en-dessous de la frise à l'endroit de l'événement doit être placée. Elle doit valeur \type{true} ou \type{false} et vaut \type{true} par défaut.
\head \type{year}\index{year} :\par valeur booléenne qui indique si l'année de l'événement doit être placée. Elle doit valeur \type{true} ou \type{false} et vaut \type{true} par défaut.
\head \type{icon}\index{icon} :\par symbole à rajouter sur la frise à l'endroit de l'événement. Ce peut être du texte ou une commande. Il est vide par défaut.
\head \type{markdepth}\index{markdepth} : \par profondeur du texte par rapport à la frise et désigne aussi la profondeur de la barre verticale en-dessous de la frise. Elle doit
être une \type{dimension} valide et vaut \type{10pt} par défaut.
\head \type{iconheight}\index{iconheight} :\par hauteur de l'icône sur la frise. Elle doit être une \type{dimension} valide et vaut la moitié de la hauteur de la frise par défaut.
\head \type{textstyle}\index{textstyle} :\par style à appliquer au texte de commentaire. Ce doit être une \type{commande} ou \type{commande#1}.
\head \type{datesseparation}\index{datesseparation} :\par symbole de séparation entre chaque partie de la date, si le mois ou le jour est donné. Ce peut être une commande ou du texte et correspond à une espace par défaut.
\head \type{datestyle}\index{datestyle} :\par style à appliquer à l'ensemble de la date, symboles de séparation compris. Ce doit être une \type{commande} ou \type{commande#1}.
Elle est vide par défaut.
\head \type{datesstyle}\index{datesstyle} :\par style à appliquer à chaque élément de la date séparément, symbole de séparations exclus. Ce doit être une \type{commande} ou \type{commande#1}. Elle est vide par défaut.
\head \type{ifcolorbox} \index{ifcolorbox}: \par valeur booléenne qui indique si le fond du texte de commentaire et de la date de l'événement doivent être coloriés. Elle doit valoir soit \type{true} soit \type{false} et vaut \type{true} par défaut.
\head \type{colorbox}\index{colorbox} : \par couleur du fond du commentaire et de la date. Ce doit être une \type{couleur} valide et vaut \type{white} par défaut.
\head \type{textwidth}\index{textwidth} :\par
largeur du texte de commentaire sur la page. Ce doit être une \type{dimension} valide.
\stopitemize
\subsection[eventoptions]{Résumé}
\placetable[here][fig:chronoeventoptions]{Options de \type{chronoevent}}
\starttable[|l|c|l|]
\HL\VL\use{3}\ReFormat[cB]{\tex{chronoevent[}\em ...=...\type{]{...}{...}}}\VL\SR
\VL\type{barre}\NC=\NC \type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{date}\NC=\NC \type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{conversionmonth}\NC=\NC \type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{mark}\NC=\NC \type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{icon}\NC=\NC \type{<séquence de texte>} {\em ou} \type{<commande>} \bf\dots\VL\FR
\VL\type{datesseparation}\NC=\NC \type{<séquence de texte>} {\em ou} \type{<commande>} \bf\dots\VL\FR
\VL\type{markdepth}\NC=\NC \type{<dimension>}\VL\FR
\VL\type{iconheight}\NC=\NC \type{<dimension>}\VL\FR
\VL\type{textstyle}\NC=\NC \type{<commande>} {\em ou} \type{<commande#1>}\VL\FR
\VL\type{datestyle}\NC=\NC \type{<commande>} {\em ou} \type{<commande#1>}\VL\FR
\VL\type{datesstyle}\NC=\NC \type{<commande>} {\em ou} \type{<commande#1>}\VL\FR
\VL\type{ifcolorbox} \NC =\NC \type{<true>} {\em ou} \type{<false>}\VL\FR
\VL\type{colorbox} \NC =\NC \type{<couleur>}\VL\FR
\VL\type{textwidth} \NC =\NC \type{<dimension>}\VL\FR\HL
\stoptable
\page[yes]
\chapter[permanentchanges]{Changements permanents}
\section[definecommands]{Créer de nouvelles commandes}
Les commandes \tex{definechronoevent}\index{definechronoevent} et \tex{definechronoperiode}
\index{definechronoperiode} permettent de définir de nouvelles commandes pour placer respectivement
des événements et des périodes.
\startalignment[middle]
\starttypingTEX
\definechronoperiode{1.}[...=...]
\definechronoevent{1.}[...=...]
\stoptypingTEX
\stopalignment
\starttabulate[|l|l|]
\NC \color[blue] 1. \NC nom pour définir la nouvelle commande \FR
\NC \color[blue] ...=... \NC options du type de commande définie(voir \in[Personnalisation])\FR
\stoptabulate
\blank
Note : pour \CONTEXT, la syntaxe est
\startalignment[middle]
\starttypingTEX
\definechronoperiode[1.][...=...]
\definechronoevent[1.][...=...]
\stoptypingTEX
\stopalignment
Les commandes \tex{chrono<nom de la commande>} sont désormais définies. Voyons un exemple :
\starttypingTEX
\definechronoperiode{MaPeriode}[color=yellow, textstyle=\it]
\definechronoevent{MonEvent}[textstyle=\it, barre=false]
\startchronology[color=darkgreen]
\chronoMaPeriode{100}{500}{Quelque chose}
\chronoMonEvent{800}{Autre chose}
\stopchronology
\stoptypingTEX
\definechronoperiode[MaPeriode] [color=yellow, textstyle=\it]
\definechronoevent[MonEvent][textstyle=\it, barre=false]
\startchronology[color=darkgreen]
\chronoMaPeriode{100}{500}{Quelque chose}
\chronoMonEvent{800}{Autre chose}
\stopchronology
\section[setupdefaultvalues]{Modifier les valeurs par défaut}
Il est également possible de changer les valeurs par défaut de chaque commande en utilisant \tex{setupchronology}, \tex{setupchronoevent} et
\tex{setupchronoperiode}.\index{setupchronology}\index{setupchronoperiode} \index{setupchronoevent} Chacu\-ne de ces commandes prennent les mêmes
options que nous avons vu auparavant respectivement.
\startalignment[middle]
\starttypingTEX
\setupchrono<text>[...]{1.}
\stoptypingTEX
\stopalignment
\starttabulate[|l|l|]
\NC \color[blue] <text> \NC \type{periode} \em ou \type{event} ou \type{logy} ou \type{graduation}\FR
\NC \color[blue] ...\NC nom de la commande à personnaliser (sauf pour \tex{setupchronology}, et \FR
\NC\NC pour \tex{setupchronograduation} il s'agit du style de graduation ; voir \in[definecommands])\FR
\NC \color[blue] 1. \NC options (voir \in[Personnalisation])\FR
\stoptabulate
Note : de même pour \CONTEXT, la syntaxe est :
\startalignment[middle]
\starttypingTEX
\setupchrono<text>[...][1.]
\stoptypingTEX
\stopalignment
L'option \type{nom de la commande à personnaliser} n'est disponible que pour \crlf\tex{setupchronoevent} et \tex{setupchronoperiode}, et dans le cas de \tex{setupchronograduation} elle correspond au style de graduation (\type{event} ou \type{periode}).
Si elle n'est pas donnée, les modifications affecteront \tex{chronoperiode} et \tex{chronoevent}, sinon elles affecteront la commande donnée en
option.
Ainsi, on peut avoir :
\starttypingTEX
\definechronoperiode{MaPeriode} [color=yellow, textstyle=\it]
\setupchronology{startyear=1000,color=darkblue,
stopdate=false}
\setupchronoperiode{color=darkgreen}
\setupchronoevent{textstyle=\it}
\setupchronoperiode[MaPeriode]{color=red}
\setupchronograduation[event]{markdepth=2cm}
\startchronology
\chronograduation{250}
\chronoperiode{1050}{1450}{Quelque chose}
\chronoevent{1600}{autre chose}
\chronoMaPeriode {1800}{1900}{Encore autre chose}
\stopchronology
\stoptypingTEX
\setupchronology[startyear=1000,color=darkblue,stopdate=false]
\setupchronoperiode[color=darkgreen]
\setupchronoevent[textstyle=\it]
\setupchronoperiode[MaPeriode][color=red]
\setupchronograduation[event][markdepth=2cm]
\startchronology
\chronograduation{250}
\chronoperiode{1050}{1450}{Quelque chose}
\chronoevent{1600}{autre chose}
\chronoMaPeriode {1800}{1900}{Encore autre chose}
\stopchronology
Si vous souhaitez reprendre l'alternance automatique des couleurs des périodes, utilisez
\startalignment[middle]
\starttypingTEX
\setupchronoperiode{color=\chronoperiodcolor}
\stoptypingTEX
\stopalignment
\catcode`\@=11
Ainsi, on réobtient
\setupchronoperiode[color=\chronoperiodcolor]
\startchronology
\chronograduation{250}
\chronoperiode{1050}{1450}{Quelque chose}
\chronoevent{1600}{autre chose}
\chronoperiode{1800}{1900}{Encore autre chose}
\stopchronology
\completeindex
\midaligned{\button{Aller à la table des matières}[content]}
\midaligned{\button{Quitter}[ExitViewer]}
\stoptext
|