summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-04-09 16:58:02 +0000
committerKarl Berry <karl@freefriends.org>2012-04-09 16:58:02 +0000
commit4daddc1a68d865d868563e7e0dc2b3734be5a68e (patch)
treebeb13ce1e74b9743d8f33b2ae66f029bb7cb092a
parent679579624c137e7415178bdd8fd882133799ae62 (diff)
chronosys (8apr12)
git-svn-id: svn://tug.org/texlive/trunk@25889 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/generic/chronosys/README13
-rw-r--r--Master/texmf-dist/doc/generic/chronosys/docchronosys_en.pdfbin157018 -> 336602 bytes
-rw-r--r--Master/texmf-dist/doc/generic/chronosys/docchronosys_en.tex303
-rw-r--r--Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.pdfbin157640 -> 340557 bytes
-rw-r--r--Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.tex266
-rw-r--r--Master/texmf-dist/tex/generic/chronosys/chronosys.sty4
-rw-r--r--Master/texmf-dist/tex/generic/chronosys/chronosys.tex28
-rw-r--r--Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex305
-rw-r--r--Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex47
9 files changed, 751 insertions, 215 deletions
diff --git a/Master/texmf-dist/doc/generic/chronosys/README b/Master/texmf-dist/doc/generic/chronosys/README
index 79fa31ae1ac..c4185c085fe 100644
--- a/Master/texmf-dist/doc/generic/chronosys/README
+++ b/Master/texmf-dist/doc/generic/chronosys/README
@@ -1,11 +1,17 @@
-This is the `chronosys' package v1.0, 2011/11/11.
+This is the `chronosys' package v1.15, 2012/04/08.
_____________________________________________________________
You can find the documentation of this package in docchronosys_fr.pdf (french) and docchronosys_en.pdf (english).
The current maintener of this package is Mathieu Long (mail : mlong.tex@hotmail.fr).
-This package enables the commandes \startchronology, \stopchronology, \chronoevent and \chronoperiode.
+This package contains the files docchronosys_en.tex,
+docchronosys_en.pdf, docchronosys_fr.tex, docchronosys_fr.pdf,
+chronosys.sty, chronosys.tex, x-chronosys.tex, chronosyschr.tex and
+this README, and it enables the commandes \startchronology,
+\stopchronology, \definechronoevent, \definechronoperiode,
+\setupchronoperiode, \setupchronoevent, \chronograduation,
+\chronoevent and \chronoperiode.
It uses the package `tikz' for drawing.
@@ -14,4 +20,5 @@ You can use it in plain TeX, LaTeX and ConTeXt.
_____________________________________________________________
This material is subject to the LaTeX Project Public License. See
-http://www.latex-project.org/lppl.txt for the details of that license.
+http://www.latex-project.org/lppl.txt for the details of that
+license.
diff --git a/Master/texmf-dist/doc/generic/chronosys/docchronosys_en.pdf b/Master/texmf-dist/doc/generic/chronosys/docchronosys_en.pdf
index 59e0db80b37..c0b20a56035 100644
--- a/Master/texmf-dist/doc/generic/chronosys/docchronosys_en.pdf
+++ b/Master/texmf-dist/doc/generic/chronosys/docchronosys_en.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/chronosys/docchronosys_en.tex b/Master/texmf-dist/doc/generic/chronosys/docchronosys_en.tex
index f20799416a1..6e3dd08d221 100644
--- a/Master/texmf-dist/doc/generic/chronosys/docchronosys_en.tex
+++ b/Master/texmf-dist/doc/generic/chronosys/docchronosys_en.tex
@@ -1,5 +1,3 @@
-% interface=en tex=xetex
-
% This is is the english code for the documentation of the `chronosys' package.
%
% The maintener of this work is Mathieu Long.
@@ -25,14 +23,8 @@
%
% The Current Maintainer of this work is Mathieu Long.
%
-\setupinteraction[title=Chronosys - Documentation, author=Mathieu Long, title=Chronosys documentation -english-, subtitle=Draw time-lines]
-\setupcolors[state=start]
-\beginXETEX
-\definetypeface[myface][rm][Xserif][Calibri]
-\definetypeface[myface][ss][Xsans][Calibri]
-\definetypeface[myface][tt][Xmono][Courier New-Bold]
-\setupbodyfont[myface]
-\endXETEX
+\setupinteraction[title=Chronosys - Documentation, author=Mathieu Long, title=Chronosys documentation -english-, subtitle=Draw timelines]
+\setupcolors[state=start]
\unless\ifdefined\XeTeXpicfile \unless\ifdefined\directlua
\setupoutput[pdftex]
\fi\fi
@@ -56,9 +48,9 @@
\usemodule[chronosys]
\startstandardmakeup\switchtobodyfont[myface,16pt]
\midaligned{Chronosys}
-\midaligned{Draw time-lines diagrams !}
+\midaligned{Draw timelines diagrams !}
\bigskip
-\startchronology[width=\hsize,height=7ex,stopyear=2050,startyear=1982,color=darkgreen]
+\startchronology[width=\hsize,height=7ex,stopyear=\numexpr\year+38\relax,startyear=1982,color=darkgreen]
\chronoevent{2011}{\type{chronosys}'s creation}
\stopchronology
\bigskip\bigskip
@@ -69,16 +61,16 @@
\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}
+{ \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]
\setupbodyfont[14pt]
\parskip 1cm
\chapter{Introduction}
-\type{Chronosys} is distributed under the LaTeX Project Public License.You may use it for drawing time-lines. It uses the \type{tikz} package for drawing. You need to have \ETEX\ to use it.
+\type{Chronosys} is distributed under the LaTeX Project Public License.You may use it for drawing timelines. It uses the \type{tikz} package for drawing. You need to have \ETEX\ to use it.
\blank
-
+\unprotect
This package is version {\unprotect\chron@sysversion\protect}, others versions might be created later.
\bigskip
It is recommended not to load the \type{color.tex} file if you use plain \TeX.
@@ -91,13 +83,15 @@ You can load \type{chronosys} by~:
\item \type{\input chronosys} in plain \TeX.
\stopitemize
-With the new version you can modify the alignment of the time-line on the page, the width of the labels of the events; it provides a better support
-of the events placed over the time-line, the possibility of colour the background of the labels of the periods and events and corrects problems of compatibility.
+With the new version you can modify the alignment of the timeline on the page, the width of the labels of the events; it provides a better support
+of the events placed over the timeline, the possibility of colouring the background of the labels of the periods and events, of creating new commands
+and corrects problems of compatibility.
\blank
\hairline
I wish to thank Gonçalo {\sc Pereira} for his idea about colouring in white the background of the labels of events and periods to avoid them to be mixed with other vertical straights.
+
\blank
\hrule
@@ -114,7 +108,7 @@ The control sequence \type{\startchronology}\index{startchronology} is the first
\stopalignment
\leftaligned{\switchtobodyfont[12.4pt] See \in[startchronologyoptions] to have the different possible options}
\blank[small]
-The next one is \type{\stopchronology}\index{stopchronology}\footnote{or \type{\end{chronology}}}, it ends the time-line.
+The next one is \type{\stopchronology}\index{stopchronology}\footnote{or \type{\end{chronology}}}, it ends the timeline.
\startalignment[middle]
\starttypingTEX
@@ -131,8 +125,8 @@ The next one is \type{\stopchronology}\index{stopchronology}\footnote{or \type{\
\startchronology
\stopchronology
\bigskip
-You can see the time-line is on all the page's width, furthermore it starts at {\os0} and ends at the current year {\os\the\year} when this document was compiled. \type{Chronosys} will compare these years with the events and periods you will give him (see \in[event] and \in[period]).
-\blank[small]Now let's learn how to add events on the time-line.
+You can see the timeline is on all the page's width, furthermore it starts at {\os0} and ends at the current year {\os\the\year} when this document was compiled. \type{Chronosys} will compare these years with the events and periods you will give him (see \in[event] and \in[period]).
+\blank[small]Now let's learn how to add events on the timeline.
\section[event]{Events: \type{\chronoevent}}
@@ -151,7 +145,7 @@ You can add events with \type{\chronoevent}\index{chronoevent}. This control seq
\stoptabulate
\blank[small]
-For example:
+For instance:
\starttypingTEX
\startchronology
\chronoevent{1977}{\TeX's creation}
@@ -181,7 +175,7 @@ The event appears between {\os 0} et {\os\the\year}, proportionally with his gap
\bigskip N.B.: the font size has been reduced to avoid label to overlap; a best way will be given further (see \in[eventoptions]).\blank
\type{Chronosys} won't generate any error if the event's date is out of the starting year and ending year, however it will be ignored. The way of customize
-the time-line, especially the starting year and ending year, will be seen further(see \in[startchronologyoptions]).
+the timeline, especially the starting year and ending year, will be seen further(see \in[startchronologyoptions]).
\section[period]{Periods: \type{\chronoperiode}}
@@ -202,22 +196,53 @@ You can also add one period (or several\footnote{If two periods are overlapping,
\starttypingTEX
\startchronology
\chronoperiode{1000}{1999}{2\high{nd} Millennium}
-\chronoperiode{476}{1453}{Eastern Roman Empire}
+\chronoperiode{192}{476}{Eastern Roman Empire}
\chronoevent{1969}{first steps on the Moon}
\stopchronology
\stoptypingTEX
\switchtobodyfont[9pt]
\startchronology
\chronoperiode{1000}{1999}{2\high{nd} Millennium}
-\chronoperiode{14}{476}{Roman empire (without Augustus)}
+\chronoperiode{192}{476}{Eastern Roman Empire}
\chronoevent{1969}{first steps on the Moon}
\stopchronology
\switchtobodyfont[14pt]
\blank
-N.B.: on the period from {\os1000} to {\os1999}, blue on the time-line, we can now see the vertical straight under the frieze. You can disable it (see \in[eventoptions]), but if you want it you should place the events after the periods.
+N.B.: on the period from {\os1000} to {\os1999}, blue on the timeline, we can now see the vertical straight under the frieze. You can disable it (see \in[eventoptions]), but if you want it you should place the events after the periods.
The period appears automatically with colour, and the dates are also visible (see \in[periodoptions] to disable them) and the label. The periods can be automatically coloured in 5 colours : blue, red, cyan, purple and yellow, except if the colour is identical to the frieze's one. Of course you can choose the colour of the period (see \in[periodoptions]).
+\section[chronograduation]{Automatic graduation : \type{\chronograduation}}
+
+Use \type{\chronograduation} to add a graduation on the timeline.
+
+\startalignment[middle]
+\starttypingTEX
+\chronograduation[style][...=...]{1.}
+\stoptypingTEX
+\stopalignment
+
+\starttabulate[|l|l|]
+\NC \color[blue] \type{style} \NC \type{periode} \em or \type{event}\FR
+\NC \color[blue] ...=... \NC options (see \in[chronoperiodsoptions] et \in[chronoeventsoptions]) \FR
+\NC \color[blue] 1. \NC interval ({\em number})\FR
+\stoptabulate
+
+\starttypingTEX
+\startchronology
+\chronograduation{100}
+\stopchronology
+\startchronology
+\chronograduation[periode][dateselevation=\z@]{100}
+\stopchronology
+\stoptypingTEX
+\startchronology
+\chronograduation[][]{100}
+\stopchronology
+\startchronology
+\chronograduation[periode][dateselevation=\z@]{100}
+\stopchronology
+
\chapter[Personnalisation]{Time-lines' customization}
\section{\type{\startchronology}}
@@ -227,9 +252,9 @@ For example:
\starttypingTEX
\startchronology
-[startyear=–800,stopyear=500,
+[startyear=-800,stopyear=500,
color=darkblue,height=7ex,width=\hsize]
-\chronoevent{–753}{Rome's foundation}
+\chronoevent{-753}{Rome's foundation}
\stopchronology
\stoptypingTEX
\startchronology
@@ -241,22 +266,22 @@ color=darkblue,height=7ex,width=\hsize]
\subsection{Different options}
The different options of \type{\startchronology}\index{startchronology} are:
\startitemize
-\head \type{startyear}\index{startyear} :\par starting year of the time-line. It needs to be a valid \type{number}. It is by default {\os0}
-\head \type{stopyear}\index{stopyear} :\par ending year of the time-line. It also needs to be a valid \type{number}. It is the current year by default.
+\head \type{startyear}\index{startyear} :\par starting year of the timeline. It needs to be a valid \type{number}. It is by default {\os0}
+\head \type{stopyear}\index{stopyear} :\par ending year of the timeline. It also needs to be a valid \type{number}. It is the current year by default.
\head \type{color}\index{color} :\par colour of the frieze. It must be a \type{colour} recognized by the \type{tikz} package. It is black by default.
\head \type{height}\index{height} :\par height of the frieze. It must be a valid \type{dimen} and it is \type{0.7pc} by default.
\head \type{width}\index{width} :\par width of the frieze. It must be a valid \type{dimen} and it is \type{\hsize}\footnote{\type{\textwidth} in \LaTeX} by default.
\head \type{datesstyle}\index{datessyle} :\par style to apply to dates. It must be a \type{control sequence} (it can take one argument, which will be the dates), is empty by default.
-\head \type{dateselevation}\index{dateselevation} :\par height of the dates from the time-line, it must be a valid \type{dimen} and it is \type{20pt} par by default.
+\head \type{dateselevation}\index{dateselevation} :\par height of the dates from the timeline, it must be a valid \type{dimen} and it is \type{20pt} par by default.
\head \type{startdate}\index{startdate} :\par boolean which indicate if the starting year has to be placed. It must be either \type{true} or \type{false} and it is \type{true} by default.
\head \type{stopdate}\index{stopdate} :\par boolean which indicate if the ending year has to be placed. It must be either \type{true} or \type{false} and it is \type{true} by default.
\head \type{dates}\index{dates} :\par boolean which indicate if both dates have to be placed. It must be either \type{true} or \type{false} and it is \type{true} by default.
\head\type{arrow}\index{arrow} :\par boolean which indicate if an arrowhead has to be placed. It must be either \type{true} or \type{false} and it is \type{true} by default.
-\head \type{arrowheight}\index{arrowheight} :\par height of the arrowhead. It must be a valid \type{dimen} and it is identical to the height of the time-line by default.
-\head \type{arrowwidth}\index{arrowwidth} :\par width of the arrowhead. It encroaches on the entire (\type{height}) width of the frieze. It must be a valid \type{dimen} and it is 1/10 of the entire width of the time-line (\type{width}) by default.
+\head \type{arrowheight}\index{arrowheight} :\par height of the arrowhead. It must be a valid \type{dimen} and it is identical to the height of the timeline by default.
+\head \type{arrowwidth}\index{arrowwidth} :\par width of the arrowhead. It encroaches on the entire (\type{height}) width of the frieze. It must be a valid \type{dimen} and it is 1/10 of the entire width of the timeline (\type{width}) by default.
\head \type{arrowcolor}\index{arrowcolor} :\par colour of the arrowhead. It must be a \type{colour} recognized by the \type{tikz} package. It is identical to the colour of the frieze by default.
-\head \type{box}\index{box} :\par boolean which indicates if the time-line should be passed back with a black line. It must be either \type{true} or \type{false} and it is \type{false} by default.
-\head \type{align}\index{align} :\par alignment of the time-line on the page. You can choose between \type{right}, \type{center} and \type{left}. It is \type{center} by default.
+\head \type{box}\index{box} :\par boolean which indicates if the timeline should be passed back with a black line. It must be either \type{true} or \type{false} and it is \type{false} by default.
+\head \type{align}\index{align} :\par alignment of the timeline on the page. You can choose between \type{right}, \type{center} and \type{left}. It is \type{center} by default.
\stopitemize
\subsection[startchronologyoptions]{Summary}
@@ -293,26 +318,77 @@ The different options of \type{\startchronology}\index{startchronology} are:
\subsection{Example}
\type{\chronoperiode} can have an optional argument for the options' customization.
\starttypingTEX
-\startchronology[startyear=–800,
-stopyear=500,color=darkgreen]
-\chronoperiode[color=orange,
-stopdate=false,textstyle=\it]
-{–753}{–509}{Roman Royal period}
-\chronoperiode[color=cyan,textstyle=\bf,textdepth=35pt]
-{–509}{–27}{Roman Republic}
+\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}{Roman Royal period}
+\chronoperiode[color=cyan,startdate=false, textstyle=\bf,
+textdepth=35pt, bottomdepth=1cm, topheight=2cm,
+ifcolorbox=false, dateselevation=-15pt,
+box=true]{-509}{-27}{Roman Republic}
\stopchronology
\stoptypingTEX
-\startchronology[startyear=-800,stopyear=500,color=darkgreen]
-\chronoperiode[color=orange,stopdate=false,textstyle=\it]
-{-753}{-509}{Roman Royal period}
-\chronoperiode[color=cyan,textstyle=\bf,textdepth=35pt]
-{-509}{-27}{Roman Republic}
+\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}{Roman Royal period}
+\chronoperiode[color=cyan,startdate=false, textstyle=\bf,textdepth=35pt, bottomdepth=1cm, topheight=2cm, ifcolorbox=false, dateselevation=-15pt, box=true]{-509}{-27}{Roman Republic}
\stopchronology
\subsection{The colour of the background}
\type{Chronosys} colours the background of the label in white to erase the eventual vertical straights. You can disable it or change the colour if you want (see \in[chronoperiodsoptions]).
+\subsection{Colours alternation}
+
+As we saw, the colour of the periods alternates between blue, red, cyan, purple and yellow. You can define your own colours alternation
+with \crlf\type{\chronoperiodecoloralternation}\index{chronoperiodecoloralternation}.
+
+\startalignment[middle]
+\starttypingTEX
+\chronoperiodecoloralternation{1.}
+\stoptypingTEX
+\stopalignment
+
+\starttabulate[|l|l|]
+\NC\color[darkblue] 1. \NC colours ({\em\type{colour}, \type{colour},... \type{colour}})\FR
+\stoptabulate
+
+\blank[big]
+
+Example:
+
+\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
+
+You can also restart the alternation at the beginning or on a specific colour with\crlf
+\type{\restartchronoperiodecolor}\index{restartchronoperiodecolor}.
+
+\startalignment[middle]
+\starttypingTEX
+\restartchronoperiodecolor[...]
+\stoptypingTEX
+\stopalignment
+
+\starttabulate[|l|l|]
+\NC\color[darkblue] ... \NC name of a colour of the alternation ({\em colour})\FR
+\stoptabulate
+
\subsection[chronoperiodsoptions]{Different options}
The different options of \type{\chronoperiode}\index{chronoperiode} are:
@@ -332,6 +408,8 @@ The different options of \type{\chronoperiode}\index{chronoperiode} are:
\head \type{textdepth}\index{textdepth} :\par depth of the label from the frieze. It must be a valid \type{dimen} and it is \type{15pt} by default.
\head \type{colorbox}\index{colorbox} :\par colour of the background of the text of the period. It must be a \type{colour} recognized by \type{tikz} and it is white by default.
\head \type{ifcolorbox}\index{ifcolorbox} :\par boolean which indicates if the background of the text has to be coloured. It must be either \type{true} or \type{false}. It is \type{true} by default.
+\head \type{topheight}\index{topheight} : \par height of the top of the period on the timeline. It must be a valid \type{dimen} and it is equal to the \type{height of the timeline} by default.
+\head \type{bottomdepth}\index{bottomdepth} : \par height of the bottom of the period on the timeline. It must be a valid \type{dimen} and it is \type{0pt} by default.
\stopitemize
\subsection[periodoptions]{Summary}
@@ -348,7 +426,9 @@ The different options of \type{\chronoperiode}\index{chronoperiode} are:
\VL\type{dateselevation} \NC=\NC\type{<dimen>}\VL\LR
\VL\type{textdeph} \NC=\NC\type{<dimen>}\VL\LR
\VL\type{ifcolorbox}\NC=\NC \type{<true>} {\em or} \type{<false>}\VL\FR
-\VL\type{colorbox} \NC =\NC \type{<colour>} \VL\FR\HL
+\VL\type{colorbox} \NC =\NC \type{<colour>} \VL\FR
+\VL\type{topheight} \NC =\NC \type{<dimen>}\VL\FR
+\VL\type{bottomdepth} \NC =\NC \type{<dimen>}\VL\FR\HL
\stoptable
\section{\type{\chronoevent}}
@@ -359,21 +439,21 @@ The different options of \type{\chronoperiode}\index{chronoperiode} are:
\starttypingTEX
\def\MyIcon{{\starttikzpicture \filldraw
-[color=orange](0,0)––(0,5pt)––(5pt,5pt)
-––(5pt,0)––cycle;\stoptikzpicture}}
+[color=orange](0,0)--(0,5pt)--(5pt,5pt)
+--(5pt,0)--cycle;\stoptikzpicture}}
\catcode`\@=11
\def\chron@selectmonth#1{\ifcase#1\or January\or February\or
March\or April\or May\or June\or July\or August\or
September\or October\or November\or December\fi}
-\startchronology[startyear=–800,stopyear=500,
+\startchronology[startyear=-800,stopyear=500,
color=darkgreen,height=7ex]
-\chronoevent[textstyle={\switchtobodyfont[sansserif]},
-datesstyle=\os,datesseparation=/,conversionmonth=false,
-icon=\MyIcon,year=false]{15/3/–44}
-{\vbox{\hbox{\qquad ides of March;}%
-\hbox{assassination of Caesar}}}
+\chronoevent[textstyle=\bf,
+datesstyle=\it,datesseparation=/,conversionmonth=false,
+icon=\MyIcon,year=false, textwidth=4.5cm]{15/3/-44}
+{\qquad ides of March;\endgraf
+assassination of Caesar}
\stopchronology
\stoptypingTEX
\def\MyIcon{{\starttikzpicture \filldraw[color=orange](0,0)--(0,5pt)--(5pt,5pt)--(5pt,0)--cycle;\stoptikzpicture}}
@@ -383,8 +463,8 @@ icon=\MyIcon,year=false]{15/3/–44}
October\or November\or December\fi}
\startchronology[startyear=-800,stopyear=500,color=darkgreen,height=7ex]
-\chronoevent[textstyle={\switchtobodyfont[sansserif]},datesstyle=\os,datesseparation=/,conversionmonth=false,icon=\MyIcon,year=false]{15/3/-44}
-{\vbox{\hbox{\qquad ides of March;}\hbox{assassination of Caesar}}}
+\chronoevent[textstyle=\bf,datesstyle=\it,datesseparation=/,conversionmonth=false,icon=\MyIcon,year=false, textwidth=4.5cm]{15/3/-44}
+{\qquad ides of March; \endgraf assassination of Caesar}
\stopchronology
\subsection{Specificities}
@@ -408,7 +488,7 @@ As for the periods, to avoid vertical straight to overlap the others labels, as
\chronoevent{1500}{Label A}
\stopchronology
-You should type the events from the one you want to place from the farthest to the nearest from the time-line. You can of course choose the colour of the box, and disable it if you need (see \in[chronoeventsoptions]).
+You should type the events from the one you want to place from the farthest to the nearest from the timeline. You can of course choose the colour of the box, and disable it if you need (see \in[chronoeventsoptions]).
\subsubsection[nosetuptextwidthexplanation]{Width of the text}
@@ -443,9 +523,9 @@ For example,
March\or April\or May\or June\or
July\or August\or September\or
October\or November\or December\fi}
-\startchronology[startyear=–44,
-stopyear=–43,color=darkgreen,height=7ex]
-\chronoevent{15/03/–44}{Assassination of Caesar}
+\startchronology[startyear=-44,
+stopyear=-43,color=darkgreen,height=7ex]
+\chronoevent{15/03/-44}{Assassination of Caesar}
\stopchronology
\stoptypingTEX
\catcode`\@=11
@@ -465,11 +545,11 @@ Here are the different possible options\index{chronoevent}.
\head \type{barre}\index{barre} :\par boolean which indicate if a vertical straight has to be placed on the frieze at the event position. It must be either \type{true} or \type{false}. It is \type{true} by default.
\head \type{date}\index{date} :\par boolean which indicate if the date of the event has to be placed. It must be either \type{true} or \type{false}. It is \type{true} by default.
\head \type{conversionmonth}\index{conversionmonth} :\par boolean which indicate if the number of the month has to be converted to the name month. It must be either \type{true} or \type{false}. It is \type{true} by default.
-\head \type{mark}\index{mark} :\par boolean which indicate if a vertical straight has to be placed under the time-line at the event position. It must be either \type{true} or \type{false}. It is \type{true} by default.
+\head \type{mark}\index{mark} :\par boolean which indicate if a vertical straight has to be placed under the timeline at the event position. It must be either \type{true} or \type{false}. It is \type{true} by default.
\head \type{year}\index{year} :\par boolean which indicate if the year of the event has to be placed. It must be either \type{true} or \type{false}. It is \type{true} by default.
\head \type{icon}\index{icon} :\par symbol to add on the frieze at the event position. It can be a control sequence or some text, and it is empty by default.
\head \type{markdepth}\index{markdepth} : \par depth of the label of the event and of the vertical straight under the frieze. It must be a valid \type{dimen} and it is \type{10pt} by default.
-\head \type{iconheight}\index{iconheight} :\par height of the icon on the time-line. It must be a valid \type{dimen} and it is half of the height of the frieze by default.
+\head \type{iconheight}\index{iconheight} :\par height of the icon on the timeline. It must be a valid \type{dimen} and it is half of the height of the frieze by default.
\head \type{textstyle}\index{textstyle} :\par style to apply to the label. It must be a \type{control sequence} or
\noindent\type{control sequence#1}.
@@ -503,28 +583,109 @@ It must be a valid \type{dimen}.
\VL\type{colorbox} \NC =\NC \type{<colour>} \VL\FR
\VL\type{textwidth} \NC =\NC \type{<dimen>}\VL\FR\HL
\stoptable
+
\page[yes]
-\section[[permanentchanges]{Permanent changes}
- You can apply changes on default values with using \type{\setupchronology}, \type{\setupchronoevent} and \type{\setupchronoperiode}.
-\index{setupchronology}\index{setupchronoevent} \index{setupchronoperiode}
-You use the same name for each option you want to change. The only exception is \type{textwidth} of \type{\chronoevent} (see \in[nosetuptextwidthexplanation]).
+
+
+\chapter[permanentchanges]{Permanent changes}
+\section[definecommands]{Creating new commands}
+
+You can create your own commands to place events and periods on the timeline with \type{\definechronoevent} and \type{\definechronoperiode}.
+
+\startalignment[middle]
+\starttypingTEX
+\definechronoperiode{1.}[...=...]
+\definechronoevent{1.}[...=...]
+\stoptypingTEX
+\stopalignment
+
+\starttabulate[|l|l|]
+\NC \color[blue] 1. \NC name for the creation of the new command\FR
+\NC \color[blue] ...=... \NC options of the type of command defined (see \in[Personnalisation])\FR
+\stoptabulate
+
+\blank
+N.B.: in \CONTEXT, the syntax is
+
+\startalignment[middle]
+\starttypingTEX
+\definechronoperiode[1.][...=...]
+\definechronoevent[1.][...=...]
+\stoptypingTEX
+\stopalignment
+
+The commands \type{\chrono<name of the command>} are now defined. For instance,
+
+\starttypingTEX
+\definechronoperiode{MyPeriod}[color=yellow, textstyle=\it]
+\definechronoevent{MyEvent}[textstyle=\it, barre=false]
+\startchronology[color=darkgreen]
+\chronoMyPeriod{100}{500}{Something}
+\chronoMyEvent{800}{Anything else}
+\stopchronology
+\stoptypingTEX
+
+
+\definechronoperiode[MyPeriod] [color=yellow, textstyle=\it]
+\definechronoevent[MyEvent][textstyle=\it, barre=false]
+\startchronology[color=darkgreen]
+\chronoMyPeriod{100}{500}{Something}
+\chronoMyEvent{800}{Anything else}
+\stopchronology
+
+\section[setupdefaultvalues]{Modify the default values}
+You can apply changes on default values with using \type{\setupchronology},\crlf \type{\setupchronoevent} and \type{\setupchronoperiode}. You use the
+same name for each option you want to change. The only exception is \type{textwidth} of \type{\chronoevent} (see
+ \in[nosetuptextwidthexplanation]).
+\index{setupchronology}\index{setupchronoevent} \index{setupchronoperiode}.
+
+\startalignment[middle]
+\starttypingTEX
+\setupchrono<text>[...]{1.}
+\stoptypingTEX
+\stopalignment
+
+\starttabulate[|l|l|]
+\NC \color[blue] <text> \NC \type{periode} \em or \type{event} or \type{logy} or \type{graduation}\FR
+\NC \color[blue] ...\NC name of the command to customize (except for \type{\setupchronology}, and\FR
+\NC \NC for\type{\setupchronograduation} it is the style of the graduation ; see \in[definecommands])\FR
+\NC \color[blue] 1. \NC options (see \in[Personnalisation])\FR
+\stoptabulate
+
+N.B.: Again, in \CONTEXT, the syntax is :
+
+\startalignment[middle]
+\starttypingTEX
+\setupchrono<text>[...][1.]
+\stoptypingTEX
+\stopalignment
+
+The option \type {name of the command to customize} is only available for \crlf \type{\setupchronoevent} and \type{\setupchronoperiode}, and in the case of \crlf\type{\setupchronograduation} it matches the style of graduation (\type{event} or \type{period}).
+
+If it is not given, the changes will affect \type {\chronoperiode} and \type{\chronoevent} , otherwise they will affect the command given in
+option.
+
For example,
\starttypingTEX
\setupchronology{startyear=1000,color=darkblue,stopdate=false}
\setupchronoperiode{color=darkgreen}
\setupchronoevent{textstyle=\it}
+\setupchronograduation[event]{markdepth=2cm}
\startchronology
+\chronograduation{250}
\chronoperiode{1050}{1450}{Anything you want}
\chronoevent{1600}{Anything else}
\chronoperiode{1800}{1899}{19\high{th} century}
\stopchronology
\stoptypingTEX
-\setupchronology{startyear=1000,color=darkblue,stopdate=false}
-\setupchronoperiode{color=darkgreen}
-\setupchronoevent{textstyle=\it}
+\setupchronology[startyear=1000,color=darkblue,stopdate=false]
+\setupchronoperiode[color=darkgreen]
+\setupchronoevent[textstyle=\it]
+\setupchronograduation[event][markdepth=2cm]
\startchronology
+\chronograduation{250}
\chronoperiode{1050}{1450}{Anything you want}
\chronoevent{1600}{Anything else}
\chronoperiode{1800}{1899}{19\high{th} century}
@@ -537,7 +698,7 @@ For example,
\stoptypingTEX
\stopalignment
-\setupchronoperiode{color=\chron@periodcolor}
+\setupchronoperiode[color=\chron@periodcolor]
\startchronology
\chronoperiode{1050}{1450}{Anything you want}
\chronoperiode{1800}{1899}{19\high{th} century}
diff --git a/Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.pdf b/Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.pdf
index 46d71ff4945..e59452b9b75 100644
--- a/Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.pdf
+++ b/Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.tex b/Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.tex
index 5e4198129c4..fbbcd8acec6 100644
--- a/Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.tex
+++ b/Master/texmf-dist/doc/generic/chronosys/docchronosys_fr.tex
@@ -1,5 +1,3 @@
-% interface=en tex=xetex output=pdftex
-
% This is is the french code for the documentation of the `chronosys' package.
%
% The maintener of this work is Mathieu Long.
@@ -25,18 +23,11 @@
%
% 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]
-\beginXETEX
-\definetypeface[myface][rm][Xserif][Calibri]
-\definetypeface[myface][ss][Xsans][Calibri]
-\definetypeface[myface][tt][Xmono][Courier New-Bold]
-\setupbodyfont[myface]
-\endXETEX
\unless\ifdefined\XeTeXpicfile \unless\ifdefined\directlua
\setupoutput[pdftex]
\fi\fi
@@ -52,16 +43,17 @@
\setuppagenumbering[location={bottom,right},left=--~]
\definetyping[typingTEX][option=TEX]
\setuptyping[typingTEX][color=darkblue]
+\setupwhitespace[big]
\unprotect
\placebookmarks[chapter,section,subsection][chapter,section]
\usemodule[chronosys]
\startstandardmakeup
-\switchtobodyfont[myface,16pt]
+\switchtobodyfont[16pt]
\midaligned{Chronosys}
\midaligned{Réalisez des frises chronologiques !}
\bigskip
-\startchronology[width=\hsize,height=7ex,stopyear=2050,startyear=1982,color=darkgreen]
+\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
@@ -77,7 +69,7 @@
{ \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}
@@ -97,13 +89,14 @@ Il est recommandé de ne pas charger le fichier \type{color.tex} lors de son uti
\stopitemize
La nouvelle version apporte la possibilité de modifier l'alignement des frises sur la page, de modifier la largeur des textes de commentaire des
-événements, un meilleur support des événements placés au-dessus de la frise, la possibilité de colorer le fond des textes des événements et périodes
-et corrige quelques problèmes de compatibilité.
+événements, un meilleur support des événements placés au-dessus de la frise, la possibilité de colorer le fond des textes des événements et périodes,
+de créer de nouvelles commandes et corrige quelques problèmes de compatibilité.
\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
@@ -232,6 +225,37 @@ La couleur a automatiquement été placée afin de rendre bien visible la pério
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 : \type{\chronograduation}}
+
+Pour graduer automatiquement la frise, utilisez \type{\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=\z@]{100}
+\stopchronology
+\stoptypingTEX
+\startchronology
+\chronograduation[][]{100}
+\stopchronology
+\startchronology
+\chronograduation[periode][dateselevation=\z@]{100}
+\stopchronology
+
\chapter[Personnalisation]{Personnalisation des frises}
\section{\type{\startchronology}}
@@ -241,9 +265,9 @@ Voyons un exemple :
\starttypingTEX
\startchronology
-[startyear=–800,stopyear=500,
+[startyear=-800,stopyear=500,
color=darkblue,height=7ex,width=\hsize]
-\chronoevent{–753}{Fondation de Rome}
+\chronoevent{-753}{Fondation de Rome}
\stopchronology
\stoptypingTEX
\startchronology
@@ -303,27 +327,82 @@ Les différentes options de \type{\startchronology}\index{startchronology} sont
\stoptable
\page[yes]
+
\section{\type{\chronoperiode}}
\subsection{Exemple}
Tout comme \type{\startchronology}, \type{\chronoperiode} admet des arguments optionnels pour la personnalisation de la période.
\starttypingTEX
-\startchronology[startyear=–800,stopyear=500,
-color=darkgreen]
-\chronoperiode[color=orange,stopdate=false,
-textstyle=\it]
-{–753}{–509}{Période royale romaine}
-\chronoperiode[color=cyan,textstyle=\bf,textdepth=35pt]
-{–509}{–27}{République romaine}
+\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]
-\chronoperiode[color=orange,stopdate=false,textstyle=\it]{-753}{-509}{Période royale romaine}
-\chronoperiode[color=cyan,textstyle=\bf,textdepth=35pt]{-509}{-27}{République romaine}
+\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\type{\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'alternation des couleurs, au début ou bien sur une couleur précise grâce à
+\type{\restartchronoperiodecolor}\index{restartchronoperiodecolor}.
+
+\startalignment[middle]
+\starttypingTEX
+\restartchronoperiodecolor[...]
+\stoptypingTEX
+\stopalignment
+
+\starttabulate[|l|l|]
+\NC\color[darkblue] ... \NC nom d'une couleur de l'alternation automatique ({\em couleur})\FR
+\stoptabulate
+
\subsection[chronoperiodsoptions]{Différentes options}
Les différentes options de \type{\chronoperiode}\index{chronoperiode} sont listées ici~:
@@ -339,6 +418,8 @@ Les différentes options de \type{\chronoperiode}\index{chronoperiode} sont list
\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} reconnue par \type{tikz} 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é}
@@ -355,7 +436,9 @@ Les différentes options de \type{\chronoperiode}\index{chronoperiode} sont list
\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\HL
+\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{\type{\chronoevent}}
@@ -366,20 +449,21 @@ De même que \type{\startchronology} et \type{\chronoperiode}, \type{\chronoeven
\starttypingTEX
\def\MyIcon{{\tikzpicture \filldraw
-[color=orange](0,0)––(0,5pt)––(5pt,5pt)
-––(5pt,0)––cycle;\endtikzpicture}}
-\startchronology[startyear=–800,stopyear=500,
+[color=orange](0,0)--(0,5pt)--(5pt,5pt)
+--(5pt,0)--cycle;\endtikzpicture}}
+\startchronology[startyear=-800,stopyear=500,
color=darkgreen,height=7ex]
-\chronoevent[textstyle=\bf,
-datesstyle=\it,datesseparation=/,conversionmonth=false,
-icon=\MyIcon,year=false]{15/3/–44}
-{\vbox{\hbox{\qquad Ides de mars~;}\hbox
-{assassinat de Jules César}}}
+\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{{\starttikzpicture \filldraw[color=orange](0,0)--(0,5pt)--(5pt,5pt)--(5pt,0)--cycle;\stoptikzpicture}}
\startchronology[startyear=-800,stopyear=500,color=darkgreen,height=7ex]
-\chronoevent[textstyle=\bf,datesstyle=\it,datesseparation=/,conversionmonth=false,icon=\MyIcon,year=false]{15/3/-44}{\vbox{\hbox{\qquad Ides de mars~;}\hbox{assassinat de Jules César}}}
+\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}
@@ -430,9 +514,9 @@ Pour changer la langue, il suffit de redéfinir la commande suivant le même mod
\bigskip
Voyons un exemple :
\starttypingTEX
-\startchronology[startyear=–44,
-stopyear=–43,color=darkgreen,height=7ex]
-\chronoevent{15/03/–44}
+\startchronology[startyear=-44,
+stopyear=-43,color=darkgreen,height=7ex]
+\chronoevent{15/03/-44}
{Assassinat de César}
\stopchronology
\stoptypingTEX
@@ -488,31 +572,118 @@ lorsque l'option est spécifiée. Ce doit être une \type{dimension} valide.
\stoptable
\page[yes]
-\section[permanentchanges]{Changements permanents}
-Il est également possible de changer les valeurs par défaut de chaque option en utilisant \type{\setupchronology}, \type{\setupchronoevent} et \type{\setupchronoperiode}.\index{setupchronology}\index{setupchronoperiode} \index{setupchronoevent} Chacu\-ne de ces commandes prennent les mêmes options que nous avons vu auparavant respectivement. La seule exception est l'option \type{textwidth} de \type{\chronoevent} (voir \in[nosetuptextwidthexplanation]).
+\chapter[permanentchanges]{Changements permanents}
+\section[definecommands]{Créer de nouvelles commandes}
+
+Les commandes \type{\definechronoevent}\index{definechronoevent} et \type{\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 \type{\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 \type{\setupchronology}, \type{\setupchronoevent} et
+\type{\setupchronoperiode}.\index{setupchronology}\index{setupchronoperiode} \index{setupchronoevent} Chacu\-ne de ces commandes prennent les mêmes
+options que nous avons vu auparavant respectivement. La seule exception est l'option \type{textwidth} de \type{\chronoevent} (voir
+\in[nosetuptextwidthexplanation]).
+
+\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 \type{\setupchronology}, et \FR
+\NC\NC pour \type{\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\type{\setupchronoevent} et \type{\setupchronoperiode}, et dans le cas de \type{\setupchronograduation} elle correspond au style de graduation (\type{event} ou \type{periode}).
+
+Si elle n'est pas donnée, les modifications affecteront \type{\chronoperiode} et \type{\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}
+\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}
-\chronoperiode{1800}{1899}{XVIII\high{è} siècle}
+\chronoMaPeriode {1800}{1900}{Encore autre chose}
\stopchronology
-Si vous souhaitez reprendre l'alternance automatique des couleurs des périodes, utilisez
+Si vous souhaitez reprendre l'alternation automatique des couleurs des périodes, utilisez
\startalignment[middle]
\starttypingTEX
@@ -521,12 +692,13 @@ Si vous souhaitez reprendre l'alternance automatique des couleurs des périodes,
\stopalignment
\catcode`\@=11
Ainsi, on réobtient
-\setupchronoperiode{color=\chron@periodcolor}
+\setupchronoperiode[color=\chron@periodcolor]
\startchronology
\chronoperiode{1050}{1450}{Quelque chose}
\chronoevent{1600}{autre chose}
\chronoperiode{1800}{1899}{XVIII\high{è} siècle}
\stopchronology
+
\completeindex
\midaligned{\button{Aller à la table des matières}[content]}
\midaligned{\button{Quitter}[ExitViewer]}
diff --git a/Master/texmf-dist/tex/generic/chronosys/chronosys.sty b/Master/texmf-dist/tex/generic/chronosys/chronosys.sty
index 184a7703427..5129513124f 100644
--- a/Master/texmf-dist/tex/generic/chronosys/chronosys.sty
+++ b/Master/texmf-dist/tex/generic/chronosys/chronosys.sty
@@ -25,7 +25,7 @@
%
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{tikz}
-\RequirePackage{color}
+%\RequirePackage{xcolor}
\makeatletter\catcode`\!=11
\def\!chr@verif#1#2{\ifdefined#2\error!message \fi #1#2} %
@@ -38,6 +38,8 @@
\def\!chreventcolorbox{\colorbox{\!chr@eventcolorbox}}
\def\!chrperiodcolorbox{\colorbox{\!chr@periodcolorbox}}
\ProvidesPackage{chronosys}
+\setupchronoevent[!!eventgradu@tion]{datesstyle=\tiny}
+\setupchronoperiode[!!periodegradu@tion]{datesstyle=\tiny}
\makeatother
\catcode`\!=12
\endinput
diff --git a/Master/texmf-dist/tex/generic/chronosys/chronosys.tex b/Master/texmf-dist/tex/generic/chronosys/chronosys.tex
index 817f068b8ae..be7967a9bc7 100644
--- a/Master/texmf-dist/tex/generic/chronosys/chronosys.tex
+++ b/Master/texmf-dist/tex/generic/chronosys/chronosys.tex
@@ -25,28 +25,30 @@
%
\catcode`\@=11
\unless\ifdefined\tikzpicture
-\catcode`\!=12\input tikz.tex \relax\fi %\usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri}\fi
+\catcode`\!=12\input tikz.tex \relax\fi
\catcode`\!=11
\let\!chr@verif\relax
\def\starttikzpicture{\tikzpicture} \def\stoptikzpicture{\endtikzpicture}
\def\!chrperiodcolorbox#1{%
\setbox\z@ \hbox{\kern2pt#1\kern2pt}%
-\dimen@i\ht\z@\advance\dimen@i 2pt\ht\z@\dimen@i
-\dimen@i\dp\z@\advance\dimen@i 2pt\dp\z@\dimen@i
-\advance\dimen@i\ht\z@
+\dimen@i\dp\z@
+\advance\dimen@i\ht\z@ \advance\dimen@i 6pt
\dimen@ii\wd\z@
-\setbox\z@\hbox{\tikzpicture\fill[color=\!chr@periodcolorbox]%
-(\z@,\z@)--(\dimen@ii,\z@)--(\dimen@ii,\dimen@i)--(\z@,\dimen@i);\endtikzpicture
-\kern-\wd\z@\raise2pt\box\z@}\vbox to\z@{\box\z@\vss}}
+\advance\dimen@ii 4pt
+\setbox\@ne\hbox{\tikz\fill[color=\!chr@periodcolorbox]%
+(\z@,\z@)--(\dimen@ii,\z@)--(\dimen@ii,\dimen@i)--(\z@,\dimen@i);
+\kern-\dimen@ii\box\z@}\raise0.5\dimen@ii\vbox to\z@{\box\@ne\vss}}
+
+
\def\!chreventcolorbox#1{%
\setbox\z@ \hbox{\kern2pt#1\kern2pt}%
-\dimen@i\ht\z@\advance\dimen@i 2pt\ht\z@\dimen@i
-\dimen@i\dp\z@\advance\dimen@i 2pt\dp\z@\dimen@i
-\advance\dimen@i\ht\z@
+\dimen@i\dp\z@
+\advance\dimen@i\ht\z@
\dimen@ii\wd\z@
-\setbox\z@\hbox{\tikzpicture\fill[color=\!chr@eventcolorbox]%
-(\z@,\z@)--(\dimen@ii,\z@)--(\dimen@ii,\dimen@i)--(\z@,\dimen@i);\endtikzpicture
-\kern-\wd\z@\raise2pt\box\z@}\vbox to\z@{\box\z@\vss}}
+\advance\dimen@ii 4pt
+\setbox\@ne\hbox {\tikz\fill[color=\!chr@eventcolorbox]%
+(\z@,\z@)--(\dimen@ii,\z@)--(\dimen@ii,\dimen@i)--(\z@,\dimen@i);
+\kern-\dimen@ii\box\z@}\raise0.5\dimen@ii\vbox to\z@{\box\@ne\vss}}
\input chronosyschr.tex
\catcode`\!=12
diff --git a/Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex b/Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex
index d6af427d142..26ac5aab586 100644
--- a/Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex
+++ b/Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex
@@ -26,7 +26,7 @@
\expandafter\ifx\csname chronosys @\endcsname\relax\else\immediate\write16{Le fichier a deja ete charge}\endinput\fi
\ifx\numexpr\UNDEFINED\immediate\write16{Desole, mais ce fichier utilise les primitives E-TeX, vous ne pouvez pas utiliser le moteur TeX.}\endinput\fi
\expandafter\edef\csname chronosys @\endcsname{\the\catcode`\@}
-\def\chron@sysversion{1.10}
+\def\chron@sysversion{1.15}
\catcode`\@=11
\catcode`\!=11
@@ -36,8 +36,8 @@
%
\def\!chrverif#1#2{\ifdefined#2\expandafter\error!message \fi #1#2} %
%
-\!chrverif\def\!gobblethree#1#2#3{}
-\!chrverif\def\!gobble#1{}
+\def\!gobblethree#1#2#3{}
+\def\!gobble#1{}
\ifdefined\@ifnextchar \def\:{\let\ifnexttoken\@ifnextchar}\expandafter\:\else
\ifdefined\doifnextcharelse \def\:{\let\ifnexttoken\doifnextcharelse}\expandafter\:\else
\long\def\@ifnextchar#1#2#3{%
@@ -68,12 +68,11 @@
\!chrverif\def\!chrtraitetwoargument#1{\let\todoafterarg#1%
\ifnexttoken[{\!chroneargtrue\savefirsttwoarg}{\!chroneargfalse\!chrtwoargfalse#1[][]}}
\!chrverif\def\savefirsttwoarg[#1]{\ifnexttoken[{\!chrtwoargtrue \todoafterarg[#1]}{\!chrtwoargfalse \todoafterarg[#1][]}}
-\!chr@verif\newif\ifarvirgule
-\!chrverif\def\!chrtraitingargvirgule[#1]#2{\def\!tr@itintargvirgule{#2} \!chrtr@itingargvirgule#1,\end}
-\!chrverif\def\!chrtr@itingargvirgule#1,{\ifnexttoken\end{\!chrdotraiteargvirgule#1,=\end,\!gobble}{\!chrdotraiteargvirgule#1,=\end,\!chrtr@itingargvirgule}}
-\!chrverif\def\!chrdotraiteargvirgule#1=#2,{\ifx\end#2\else \!chrdotr@iteargvirgule#1=#2,\expandafter\!gobblethree\fi}
-\!chrverif\def\!chrdotr@iteargvirgule#1=#2,{\ifcsname \!tr@itintargvirgule#1\endcsname \expandafter\def\csname \!tr@itintargvirgule#1\endcsname{#2}\fi }
+\!chrverif\def\!chrtraitingargvirgule#1#2{\def\!tr@itintargvirgule{#2} \!chrtr@itingargvirgule#1,\end}
+\!chrverif\def\!chrtr@itingargvirgule#1,{\!chrdotraiteargvirgule#1,=\end,\ifnexttoken\end\!gobble\!chrtr@itingargvirgule}
+\!chrverif\def\!chrdotraiteargvirgule#1=#2,{\ifx\end#2\relax\else \!chrdotr@iteargvirgule#1=#2,\expandafter\!gobblethree\fi}
+\!chrverif\def\!chrdotr@iteargvirgule#1=#2,{\ifcsname \!tr@itintargvirgule#1\endcsname \expandafter\def\csname \!tr@itintargvirgule#1\endcsname{#2} \else \immediate\write16{chronosys : option #1 non reconnue, impossible de lui affecter la valeur #2}\fi }
\!chrverif\def\startchronology{\!chrtraiteoneargument\dostartchronology}
@@ -83,19 +82,32 @@
\!chrverif\def\!chrdefaultdatesstyle{} \!chrverif\def\!chrdefaultstartdate{true} \!chrverif\def\!chrdefaultstopdate{true} \!chrverif\def\!chrdefaultdateselevation{20pt}
\!chrverif\def\!chrdefaultbox{false} \!chrverif\def\!chrdefaultalign{center}
-\!chr@verif\newdimen\!chrheight \!chr@verif\newif\if!chrdates \!chr@verif\newif\if!chrarrow \!chr@verif\newcount\!chrstartyear \!chr@verif\newcount\!chrstopyear \!chr@verif\newdimen\!chrwidth \!chr@verif\newdimen\!chrarrowwidth \!chr@verif\newdimen\!chrarrowheight \!chr@verif\newbox\!chrflechebox \!chrverif\def\!chr@color{black}
-\!chrverif\def\!chr@arrowcolor{\!chrdefaultarrowcolor} \!chr@verif\newdimen\!chr!realwidth \!chrverif\def\!chr@datesstyle{} \!chr@verif\newdimen\!chr!unitperyear
+\!chr@verif\newdimen\!chrheight \!chr@verif\newif\if!chrdates \!chr@verif\newif\if!chrarrow \!chr@verif\newcount\!chrstartyear \!chr@verif\newcount\!chrstopyear \!chr@verif\newdimen\!chrwidth \!chr@verif\newdimen\!chrarrowwidth \!chr@verif\newdimen\!chrarrowheight \!chr@verif\newbox\!chrflechebox
+\!chr@verif\newdimen\!chr!realwidth \!chr@verif\newdimen\!chr!unitperyear
\!chr@verif\newif\if!chrstartdate \!chr@verif\newif\if!chrstopdate \!chr@verif\newdimen\!chrdateselevation \!chr@verif\newif\if!chrbox
\!chrverif\def\!chr!periodeschwarzodergrau{\def\!chr!stringtest{black}\ifx\!chr@color\!chrstringtest\def\!chr!periodeschwarzodergr@u{gray}\else\def\!chr!periodeschwarzodergr@u{black}\fi}
-\!chrverif\def\dostartchronology[#1]{\begingroup\parindent\z@\par\def\!chr@startyear{\!chrdefaultstartyear}%
-\def\!chr@height{\!chrdefaultheight}\def\!chr@stopyear{\!chrdefaultstopyear}\def\!chr@width{\!chrdefaultwidth}\def\!chr@dates{\!chrdefaultdates}%
-\def\!chr@arrow{\!chrdefaultarrow}\def\!chr@arrowwidth{\!chrdefaultarrowwidth}\def\!chr@arrowheight{\!chrdefaultarrowheight}\def\!chr@color{\!chrdefaultcolor}%
-\def\!chr@arrowcolor{\!chrdefaultarrowcolor}\def\!chr@datesstyle{\!chrdefaultdatesstyle}\def\!chr@startdate{\!chrdefaultstartdate}%
-\def\!chr@stopdate{\!chrdefaultstopdate}\def\!chr@dateselevation{\!chrdefaultdateselevation}%
-\def\!chr@box{\!chrdefaultbox}\def\!chr@align{\!chrdefaultalign}%
-\if!chronearg \!chrtraitingargvirgule[#1]{!chr@}\fi \!chrheight\!chr@height \!chrstartyear\!chr@startyear \!chrstopyear\!chr@stopyear \!chrwidth\!chr@width %
+\!chrverif\def\!chrdefaultoptions{startyear=\!chrdefaultstartyear, stopyear=\!chrdefaultstopyear,
+startdate=\!chrdefaultstartdate, stopdate=\!chrdefaultstopdate,
+height=\!chrdefaultheight, width=\!chrdefaultwidth, dates=\!chrdefaultdates, arrow=\!chrdefaultarrow,
+arrowwidth=\!chrdefaultarrowwidth, arrowheight=\!chrdefaultarrowheight, color=\!chrdefaultcolor,
+arrowcolor=\!chrdefaultarrowcolor, datesstyle=\!chrdefaultdatesstyle, dateselevation=\!chrdefaultdateselevation,
+box=\!chrdefaultbox, align=\!chrdefaultalign}
+
+\!chrverif\def\!chr@startyear{} \!chrverif\def\!chr@startdate{}%
+\!chrverif\def\!chr@stopyear{} \!chrverif\def\!chr@stopdate{}
+\!chrverif\def\!chr@height{} \!chrverif\def\!chr@width{}
+\!chrverif\def\!chr@dates{true}%
+\!chrverif\def\!chr@arrow{} \!chrverif\def\!chr@arrowwidth{} \!chrverif\def\!chr@arrowheight{}
+\!chrverif\def\!chr@color{}
+\!chrverif\def\!chr@arrowcolor{} \!chrverif\def\!chr@datesstyle{}
+\!chrverif\def\!chr@dateselevation{}%
+\!chrverif\def\!chr@box{} \!chrverif\def\!chr@align{}%
+
+\!chrverif\def\dostartchronology[#1]{\begingroup\parindent\z@\par
+\expandafter\expandafter\expandafter\!chrtraitingargvirgule\expandafter{\!chrdefaultoptions}{!chr@}
+\if!chronearg \!chrtraitingargvirgule{#1}{!chr@}\fi \!chrheight\!chr@height \!chrstartyear\!chr@startyear \!chrstopyear\!chr@stopyear \!chrwidth\!chr@width %
\csname !chrdates\!chr@dates\endcsname \csname !chrarrow\!chr@arrow\endcsname \csname !chrstartdate\!chr@startdate\endcsname
\csname !chrbox\!chr@box\endcsname %
\csname !chrstopdate\!chr@stopdate\endcsname \!chrarrowwidth\!chr@arrowwidth \!chrarrowheight\!chr@arrowheight \!chrdateselevation\!chr@dateselevation%
@@ -117,97 +129,137 @@
\count@\numexpr\!chrstopyear-\!chrstartyear\relax \ifnum\count@<0\relax\immediate\write16{Erreur avec les dates donn\'ees}\fi \!chr!unitperyear\dimexpr\!chr!realwidth/\count@\relax}
-\!chrverif\def\setupchronology#1{\!chrtraitingargvirgule[#1]{!chrdefault}}
-
+\!chrverif\def\setupchronology#1{\!chrtraitingargvirgule{#1}{!chrdefault}}
\!chr@verif\newcount\!chr!periodecolornum\!chr@verif\newcount\!chr!starttingtraitement \!chr@verif\newdimen\!chr!dimentraitement
\!chr@verif\newdimen\!chrperiodtextdepth \!chrverif\def\!chrperiodedefaulttextdepth{15pt}
-\!chr@verif\newif\if!chrperioddates \!chrverif\def\!chrperiodedefaultdates{true}
+\!chr@verif\newif\if!chrperioddates \!chr@verif\newif\if!chrperiodbox
\!chr@verif\newif\if!chrperiodstartdate \!chr@verif\newif\if!chrperiodstopdate \!chrverif\def\!chrperiodedefaultstartdate{true}
-\!chr@verif\newif\if!chrperiodifcolorbox \!chrverif\def\!chrperiodedefaultifcolorbox{true}
-\!chrverif\def\!chrperiodedefaultstopdate{true} \!chrverif\def\!chrperiodedefaultcolorbox{white}
-\!chr@verif\newdimen\!chrperioddateselevation \!chrverif\def\!chrperiodedefaultdateselevation{0pt}
+\!chr@verif\newif\if!chrperiodifcolorbox
+\!chr@verif\newdimen\!chrperioddateselevation
\!chr@verif\newdimen\!chrperiodeventtextwidth
+\!chr@verif\newdimen\!chrperiodbottomdepth \!chr@verif\newdimen\!chrperiodtopheight
-
-%\!chrverif\def\!chr!periodec@lor{\ifcase\!chr!periodecolornum blue\or red\or cyan\or purple\or yellow\fi}
-%\!chrverif\def\!chr!periodecolor{\edef\!chrperiodedefaultcolor{\!chr!periodec@lor}\ifx\!chr!periodec@l@r\!chr@color\!chr!periodecoloradvance\!chr!periodecolor %\fi}
-%\!chrverif\def\!chr!periodecoloradvance{\global\advance\!chr!periodecolornum\@ne\relax\ifnum\!chr!periodecolornum=5\relax\global\!chr!periodecolornum\z@\fi}
-%\!chrverif\def\!chrperiodedefaultdatesstyle{} \!chrverif\def\!chrperiodedefaulttextstyle{}
-
+%alternance des couleurs
+\!chr@verif\newcount\!chrperiodecoloralternancetotalnum
\!chrverif\def\!chrperiodedefaultcolor{\chron@periodcolor}
\!chrverif\def\!chrperiodedefa@@ultcolor{\chron@periodcolor}
+\!chrverif\def\!chrperiodedef@ultcolor{\!chrperiodedefaultcolor}
\!chrverif\def\chron@periodcolor{\ifcase\!chr!periodecolornum blue\or red\or cyan\or purple\or yellow\fi}
+\!chrperiodecoloralternancetotalnum5%
\!chrverif\def\!chr!periodecolor{\edef\!chrperiodedef@ultcolor{\!chrperiodedefaultcolor}\ifx\!chrperiodedefaultcolor\!chrperiodedefa@@ultcolor\ifx\!chrperiodedef@ultcolor\!chr@color\!chr!periodecoloradvance\!chr!periodecolor \fi\fi}
-\!chrverif\def\!chr!periodecoloradvance{\global\advance\!chr!periodecolornum\@ne\relax\ifnum\!chr!periodecolornum=5\relax\global\!chr!periodecolornum\z@\fi}
-\!chrverif\def\!chrperiodedefaultdatesstyle{} \!chrverif\def\!chrperiodedefaulttextstyle{}
-
-\!chrverif\def\chronoperiode{\!chrtraiteoneargument\dochronoperiode}
-\!chrverif\def\dochronoperiode[#1]#2#3#4{\def\!chr@periodtextdepth{\!chrperiodedefaulttextdepth}\def\!chr@perioddates{\!chrperiodedefaultdates}%
-\def\!chr@periodcolor{\!chrperiodedef@ultcolor}\def\!chr@perioddatesstyle{\!chrperiodedefaultdatesstyle}%
-\def\!chr@periodstartdate{\!chrperiodedefaultstartdate}\def\!chr@periodstopdate{\!chrperiodedefaultstopdate}%
-\def\!chr@periodtextstyle{\!chrperiodedefaulttextstyle}\def\!chr@perioddates{\!chrperiodedefaultdates}%
-\def\!chr@perioddateselevation{\!chrperiodedefaultdateselevation}%
-\def\!chr@periodifcolorbox{\!chrperiodedefaultifcolorbox}\def\!chr@periodcolorbox{\!chrperiodedefaultcolorbox}%
-\!chr!periodecolor %
+\!chrverif\def\!chr!periodecoloradvance{\global\advance\!chr!periodecolornum\@ne\relax
+\ifnum\!chr!periodecolornum=\!chrperiodecoloralternancetotalnum\relax\global\!chr!periodecolornum\z@\fi}
+
+\!chrverif\def\restartchronoperiodecolor{\!chrtraiteoneargument\dorestartchronoperiodecolor}
+\!chrverif\def\dorestartchronoperiodecolor[#1]{%
+\if!chronearg \def\@@string@a{#1}%
+\!chr!periodecolornum\z@ %
+\dorestartchronoperiodecolor@ux
+\else\!chr!periodecolornum\z@\fi}
+\!chrverif\def\dorestartchronoperiodecolor@ux{\edef\@@string@b{\chron@periodcolor}\ifnum\!chr!periodecolornum<\!chrperiodecoloralternancetotalnum
+\unless\ifx\@@string@a\@@string@b
+\global\advance\!chr!periodecolornum\@ne
+\dorestartchronoperiodecolor@ux\fi\else\global\!chr!periodecolornum\z@\fi}
+
+\!chrverif\def\chronoperiodecoloralternation#1{%
+\def\@@string@s{\ifcase\!chr!periodecolornum}%
+\!chrperiodecoloralternancetotalnum\z@\!chr!chronoperiodecoloralternance#1,\end \let\chron@periodcolor\@@string@s}
+
+\!chrverif\def\!chr!chronoperiodecoloralternance#1,{\advance\!chrperiodecoloralternancetotalnum\@ne
+\expandafter\def\expandafter\@@string@s\expandafter{\@@string@s#1}%
+\ifnexttoken\end{\expandafter\def\expandafter\@@string@s\expandafter{\@@string@s\fi}\!gobble}%
+{\expandafter\def\expandafter\@@string@s\expandafter{\@@string@s\or}\!chr!chronoperiodecoloralternance}}
+
+
+\!chrverif\def\!chr@periodtextdepth{}\!chrverif\def\!chr@perioddates{}%
+\!chrverif\def\!chr@periodcolor{}\!chrverif\def\!chr@perioddatesstyle{}%
+\!chrverif\def\!chr@periodstartdate{}\!chrverif\def\!chr@periodstopdate{}%
+\!chrverif\def\!chr@periodtextstyle{}%
+\!chrverif\def\!chr@perioddateselevation{}%
+\!chrverif\def\!chr@periodifcolorbox{}\!chrverif\def\!chr@periodcolorbox{}%
+\!chrverif\def\!chr@periodbottomdepth{}\!chrverif\def\!chr@periodtopheight{}%
+\!chrverif\def\!chr@periodbox{}%
+
+\!chrverif\def\dochronoperiode[#1]#2#3#4{%
+\!chr!periodecolor
\if!chronearg
-\!chrtraitingargvirgule[#1]{!chr@period}\fi\!chrperiodtextdepth\!chr@periodtextdepth
+\!chrtraitingargvirgule{#1}{!chr@period}\fi
+\!chrperiodtextdepth\!chr@periodtextdepth \!chrperiodtopheight\!chr@periodtopheight
+\!chrperiodbottomdepth\!chr@periodbottomdepth
\csname !chrperioddates\!chr@perioddates\endcsname \csname !chrperiodstartdate\!chr@periodstartdate\endcsname \csname !chrperiodstopdate\!chr@periodstopdate\endcsname
\csname !chrperiodifcolorbox\!chr@periodifcolorbox\endcsname
+\csname !chrperiodbox\!chr@periodbox\endcsname
\!chrperioddateselevation\!chr@perioddateselevation \advance\!chrperioddateselevation 1.25\!chrheight\relax
\ifnum#2>\numexpr\!chrstartyear-1\relax\ifnum#2<\numexpr\!chrstopyear+1\relax\ifnum#3<\numexpr\!chrstopyear+1\relax \ifnum#3>\numexpr\!chrstartyear-1\relax\count@\numexpr#3-#2\relax\ifnum\count@>\z@\relax
\!chr!starttingtraitement\numexpr#2-\!chrstartyear\relax\dimen@\dimexpr\count@\!chr!unitperyear\relax
\!chr!dimentraitement\dimexpr\!chr!starttingtraitement\!chr!unitperyear\relax
% %
\dimen@i\wd\!chrflechebox
-\setbox\!chrflechebox\hbox{\unhbox\!chrflechebox\kern-\dimen@i\kern\!chr!dimentraitement\lower\!chrperiodtextdepth\hbox to\z@
+\setbox\!chrflechebox\hbox{\unhbox\!chrflechebox\kern-\dimen@i\kern\!chr!dimentraitement
+\lower\dimexpr\!chrperiodtextdepth-\!chrperiodbottomdepth\relax\hbox to\z@
{\hbox to\dimen@
{\hss \if!chrperiodifcolorbox\expandafter\!chrperiodcolorbox\fi{\!chr@periodtextstyle{#4}}\hss}\hss}%
-\if!chrperioddates\if!chrperiodstartdate\raise\!chrperioddateselevation
+\if!chrperioddates\if!chrperiodstartdate
+\raise\dimexpr\!chrperioddateselevation +(\!chrperiodtopheight-\!chrheight)\relax
\hbox to\z@{\hss\!chr@perioddatesstyle{#2}\hss}\fi\fi
-\starttikzpicture \filldraw [color=\!chr@periodcolor](\z@,\z@)--(\dimen@,\z@)--(\dimen@,\!chrheight)--(\z@,\!chrheight)--cycle;\draw[color=\!chr!periodeschwarzodergr@u](\z@,\z@)--(\z@,\!chrheight);%
-\draw [color=\!chr!periodeschwarzodergr@u](\dimen@,\z@)--(\dimen@,\!chrheight);%
+\raise\!chrperiodbottomdepth \hbox{\starttikzpicture \filldraw [color=\!chr@periodcolor](\z@,\!chrperiodbottomdepth)--(\dimen@,\!chrperiodbottomdepth)--(\dimen@,\!chrperiodtopheight)--(\z@,\!chrperiodtopheight)--cycle;\draw[color=\!chr!periodeschwarzodergr@u](\z@,\!chrperiodbottomdepth)--(\z@,\!chrperiodtopheight);%
+\draw [color=\!chr!periodeschwarzodergr@u](\dimen@,\!chrperiodbottomdepth)--(\dimen@,\!chrperiodtopheight);%
\if!chrbox\draw[color=black](\z@,-0.2pt)--(\dimen@,-0.2pt)\fi
-\stoptikzpicture
-\if!chrperioddates\if!chrperiodstopdate\raise\!chrperioddateselevation \hbox to\z@
+\if!chrperiodbox \draw[color=black](\z@,\!chrperiodbottomdepth)--(\dimen@,\!chrperiodbottomdepth);%
+\draw[color=black](\dimen@,\!chrperiodtopheight)--(\z@,\!chrperiodtopheight);\fi
+\stoptikzpicture}
+\if!chrperioddates\if!chrperiodstopdate
+\raise\dimexpr\!chrperioddateselevation+(\!chrperiodtopheight-\!chrheight)\relax
+\hbox to\z@
{\hss \!chr@perioddatesstyle{#3}\hss}\fi\fi}\!chr!periodecoloradvance\fi\fi\fi\fi\fi}
-\!chrverif\def\setupchronoperiode#1{\!chrtraitingargvirgule[#1]{!chrperiodedefault}}
-\!chrverif\def\chronoevent{\!chrtraiteoneargument\dochronoevent}
-\!chr@verif\newif\if!chreventspecifiedday\!chr@verif\newif\if!chreventspecifiedmonth \!chr@verif\newif\if!chreventbarre \!chrverif\def\!chreventdefaultbarre{true}
-\!chrverif\def\!chreventdefaulticon{} \!chr@verif\newdimen\!chreventmarkdepth
+\!chrverif\def\setupchronoperiode{\def\@@string@a{periode}\!chrtraiteoneargument\dosetupchronoeventandperiode}
+
+
+\!chr@verif\newif\if!chreventspecifiedday\!chr@verif\newif\if!chreventspecifiedmonth \!chr@verif\newif\if!chreventbarre
+\!chr@verif\newif\if!chreventdate \!chr@verif\newif\if!chreventmark
+\!chr@verif\newif\if!chreventifcolorbox \!chr@verif\newif\if!chreventconversionmonth
+\!chr@verif\newdimen\!chreventmarkdepth \!chr@verif\newif\if!chreventyear \!chr@verif\newdimen\!chreventiconheight
+ \!chrverif\def\!chreventdefaultbarre{true}
+\!chrverif\def\!chreventdefaulticon{}
\!chrverif\def\!chreventdefaultmarkdepth{10pt}
-\!chrverif\def\!chreventdefaulttextstyle{} \!chr@verif\newif\if!chreventmark \!chrverif\def\!chreventdefaultmark{true}
-\!chr@verif\newif\if!chreventdate \!chrverif\def\!chreventdefaultdate{true} \!chr@verif\let\!chreventdefaultdatesseparation\space
-\!chr@verif\newif\if!chreventconversionmonth \!chrverif\def\!chreventdefaultconversionmonth{true}
-\!chr@verif\newif\if!chreventifcolorbox \!chrverif\def\!chreventdefaultifcolorbox{true}
-\!chrverif\def\!chreventdefaultdatestyle{} \!chrverif\def\!chreventdefaultdatesstyle{} \!chr@verif\newif\if!chreventyear \!chrverif\def\!chreventdefaultyear{true} \!chrverif\def\!chreventdefaulttesttextwidth{\relax}
-\!chrverif\def\!chreventdefaulticonheight{0.5\!chrheight} \!chr@verif\newdimen\!chreventiconheight
-\!chrverif\def\!chreventdefaultcolorbox{white}
+\!chrverif\def\!chreventdefaulttextstyle{}
+
+
+ \!chrverif\def\!chreventdefaulttesttextwidth{\relax}
\!chrverif\def\!chreventevalspecification#1{\count@\z@\relax\!chreventev@lspecification#1/\end}
-\!chrverif\def\!chreventev@lspecification#1/{\advance\count@\@ne\relax\expandafter\def\csname !chreventspecifiedargument\number\count@\endcsname{#1}\ifnexttoken\end{\!gobble}{\!chreventev@lspecification}}
+\!chrverif\def\!chreventev@lspecification#1/{\advance\count@\@ne\relax\expandafter\def\csname !chreventspecifiedargument\number\count@\endcsname{#1}\ifnexttoken\end\!gobble\!chreventev@lspecification}
\!chrverif\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}
+\!chrverif\def\!chr@eventbarre{} \!chrverif\def\!chr@eventicon{} \!chrverif\def\!chr@eventmarkdepth{}%
+\!chrverif\def\!chr@eventtextstyle{} \!chrverif\def\!chr@eventmark{}%
+\!chrverif\def\!chr@eventdate{} \!chrverif\def\!chr@eventdatesseparation{}%
+\!chrverif\def\!chr@eventconversionmonth{} \!chrverif\def\!chr@eventdatestyle{}%
+\!chrverif\def\!chr@eventdatesstyle{} \!chrverif\def\!chr@eventyear{} \!chrverif\def\!chr@eventiconheight{}%
+\!chrverif\def\!chr@eventifcolorbox{} \!chrverif\def\!chr@eventcolorbox{}%.
+\!chrverif\def\!chr@eventtextwidth{}%
+
\!chrverif\def\dochronoevent[#1]#2#3{%
-\def\!chr@eventbarre{\!chreventdefaultbarre}\def\!chr@eventicon{\!chreventdefaulticon}\def\!chr@eventmarkdepth{\!chreventdefaultmarkdepth}%
-\def\!chr@eventtextstyle{\!chreventdefaulttextstyle}\def\!chr@eventmark{\!chreventdefaultmark}%
-\def\!chr@eventdate{\!chreventdefaultdate}\def\!chr@eventdatesseparation{\!chreventdefaultdatesseparation}%
-\def\!chr@eventconversionmonth{\!chreventdefaultconversionmonth}\def\!chr@eventdatestyle{\!chreventdefaultdatestyle}%
-\def\!chr@eventdatesstyle{\!chreventdefaultdatesstyle}\def\!chr@eventyear{\!chreventdefaultyear}\def\!chr@eventiconheight{\!chreventdefaulticonheight}%
-\def\!chr@eventifcolorbox{\!chreventdefaultifcolorbox}\def\!chr@eventcolorbox{\!chreventdefaultcolorbox}%.
-\def\!chr@eventtextwidth{\relax}%
-\if!chronearg \!chrtraitingargvirgule[#1]{!chr@event}\fi
-\csname !chreventbarre\!chr@eventbarre\endcsname \csname !chreventmark\!chr@eventmark\endcsname \csname !chreventdate\!chr@eventdate\endcsname
-\csname !chreventconversionmonth\!chr@eventconversionmonth\endcsname \csname !chreventyear\!chr@eventyear\endcsname
+\if!chronearg \!chrtraitingargvirgule{#1}{!chr@event}\fi
+\csname !chreventbarre\!chr@eventbarre\endcsname
+\csname !chreventmark\!chr@eventmark\endcsname
+\csname !chreventdate\!chr@eventdate\endcsname
+\csname !chreventconversionmonth\!chr@eventconversionmonth\endcsname
+\csname !chreventyear\!chr@eventyear\endcsname
\csname !chreventifcolorbox\!chr@eventifcolorbox\endcsname
\!chreventmarkdepth\!chr@eventmarkdepth \!chreventiconheight\!chr@eventiconheight
-\ifx\!chr@eventtextwidth\!chreventdefaulttesttextwidth \!chrperiodeventtextwidth=-1pt\else \!chrperiodeventtextwidth\!chr@eventtextwidth\fi
-%\def\!chr@eventtextwidth{\relax}%
-\!chreventevalspecification{#2}\ifnum\count@<4\relax\ifcase\count@\or\!chreventspecifieddayfalse\!chreventspecifiedmonthfalse \edef\!chreventyear{\csname !chreventspecifiedargument1\endcsname}\or\!chreventspecifieddayfalse\!chreventspecifiedmonthtrue
+\ifx\!chr@eventtextwidth\!chreventdefaulttesttextwidth \!chrperiodeventtextwidth=-1pt%
+\else \!chrperiodeventtextwidth\!chr@eventtextwidth\fi
+\!chreventevalspecification{#2}\ifnum\count@<4\relax
+\ifcase\count@\or\!chreventspecifieddayfalse\!chreventspecifiedmonthfalse
+\edef\!chreventyear{\csname !chreventspecifiedargument1\endcsname}\or \!chreventspecifieddayfalse\!chreventspecifiedmonthtrue
\edef\!chreventyear{\csname !chreventspecifiedargument2\endcsname}\edef\!chreventmonth{\csname !chreventspecifiedargument1\endcsname}%
-\or\!chreventspecifieddaytrue\!chreventspecifiedmonthtrue\edef\!chreventyear{\csname !chreventspecifiedargument3\endcsname}\edef\!chreventmonth{\csname !chreventspecifiedargument2\endcsname}\edef\!chreventday{\csname !chreventspecifiedargument1\endcsname}\fi %
+\or \!chreventspecifieddaytrue\!chreventspecifiedmonthtrue
+\edef\!chreventyear{\csname !chreventspecifiedargument3\endcsname}\edef\!chreventmonth{%
+\csname !chreventspecifiedargument2\endcsname}\edef\!chreventday{\csname !chreventspecifiedargument1\endcsname}\fi %
\ifnum\!chreventyear>\numexpr\!chrstartyear-1\relax\ifnum\!chreventyear<\numexpr\!chrstopyear+1\relax
\if!chreventspecifiedmonth\if!chreventspecifiedday \count@\numexpr\!chreventday+\!chreventmonth*30\relax\else %
\count@\numexpr\!chreventmonth*30\relax\fi\else\count@\z@\fi %
@@ -216,8 +268,12 @@
% %
\dimen@i\wd\!chrflechebox
\setbox\!chrflechebox\hbox{\unhbox\!chrflechebox\kern-\dimen@i\kern\!chr!dimentraitement
-\if!chreventbarre\starttikzpicture\draw[color=black](0,0)--(0,\!chrheight);\stoptikzpicture\fi\kern-0.4pt\raise\!chreventiconheight\hbox to\z@{\hss\!chr@eventicon\hss}\lower\dimexpr\!chreventmarkdepth+2pt\relax\hbox to\z@{\vbox to\z@{\ifdim\!chreventmarkdepth<0pt\relax\vss\fi
-\if!chreventdate\hbox to\z@ {\hss\if!chreventifcolorbox\expandafter\!chreventcolorbox\fi{\!chr@eventdatestyle{\if!chreventspecifiedday %
+\if!chreventbarre
+\starttikzpicture \draw[color=black](0,0)--(0,\!chrheight); \stoptikzpicture \fi
+\kern-0.4pt\raise\!chreventiconheight \hbox to\z@{\hss\!chr@eventicon\hss}\lower\dimexpr\!chreventmarkdepth+2pt\relax\hbox to\z@{\vbox
+to\z@{\ifdim\!chreventmarkdepth<0pt\relax\vss\fi
+\if!chreventdate\hbox to\z@
+{\hss \if!chreventifcolorbox \expandafter\!chreventcolorbox\fi {\!chr@eventdatestyle{\if!chreventspecifiedday %
{\!chr@eventdatesstyle{\!chreventday}}\!chr@eventdatesseparation\fi{\!chr@eventdatesstyle{\if!chreventspecifiedmonth
\if!chreventconversionmonth\expandafter \chron@selectmonth\fi \!chreventmonth\fi}}\if!chreventspecifiedmonth\if!chreventyear \!chr@eventdatesseparation\fi\fi \if!chreventyear{\!chr@eventdatesstyle{\!chreventyear}}\fi%
}}\hss}\fi
@@ -234,13 +290,15 @@
{\hss\if!chreventifcolorbox\expandafter\!chreventcolorbox\fi{%
\!chr@eventtextstyle{#3}}\hss}%
\fi \ifdim\!chreventmarkdepth>0pt\relax\vss\fi}}\if!chreventmark\ifdim\!chreventmarkdepth<0pt\starttikzpicture \draw(0,0)--(0,\!chreventmarkdepth+5pt);\stoptikzpicture\else \vrule height0pt depth\!chreventmarkdepth\fi\fi
-\setbox0\vbox{\if!chreventdate\hbox{#2}\fi\hbox{
-\ifdim\!chrperiodeventtextwidth > \z@ \vtop {\hsize\!chrperiodeventtextwidth #3}
-\else #3\fi }}\lower\dimexpr\dp0+\ht0+\!chreventmarkdepth+2pt\relax\hbox{}
+\setbox0\vbox{\if!chreventdate\hbox{#2}\fi\hbox{%
+\ifdim\!chrperiodeventtextwidth > \z@ \vbox {\hsize\!chrperiodeventtextwidth #3}%
+\else #3\fi }}\lower\dimexpr\dp0+\ht0+\!chreventmarkdepth+2pt\relax\hbox{}%
}
\fi\fi\fi}
-\!chrverif\def\setupchronoevent#1{\!chrtraitingargvirgule[#1]{!chreventdefault}}
+\!chrverif\def\setupchronoevent{\def\@@string@a{event}\!chrtraiteoneargument\dosetupchronoeventandperiode}
+\!chrverif\def\dosetupchronoeventandperiode[#1]#2{\if!chronearg
+\def\@@string@a{#1}\fi \!chr@parcoursoptions#2,\end}
\!chr@verif\newdimen\!chrstopwidth
\!chrverif\def\!chrstopcenteralign{\!chrstopwidth\dimexpr(\hsize-\!chrwidth)/2\relax}
@@ -248,3 +306,92 @@
\!chrverif\def\!chrstoprightalign{\!chrstopwidth\dimexpr\hsize-\!chrwidth\relax}
\!chrverif\def\stopchronology{\goodbreak\ifcsname !chrstop\!chr@align align\endcsname \csname !chrstop\!chr@align align\endcsname \else\!chrstopwidth\z@\fi \moveright\!chrstopwidth\box\!chrflechebox\endgroup\bigskip}
+
+\!chr@verif\newif\if!chrverifdefines
+\!chrverif\def\!chrverifdefines{\ifcsname chrono\@@string@a\endcsname \!chrverifdefinesfalse \immediate\write16{Attention : macro \expandafter\noexpand\csname chrono\@@string@a\endcsname deja definie.}\expandafter\!gobble \else\!chrverifdefinestrue\expandafter\!chrverifdefines@ux\fi}
+\!chrverif\def\!chrverifdefines@ux{\expandafter\def\csname chrono\@@string@a\endcsname}
+
+\!chrverif\def\definechronoevent#1{%
+\def\@@string@a{#1}%
+\!chrverifdefines{%
+\expandafter\expandafter\expandafter\!chrtraitingargvirgule\expandafter\expandafter\expandafter{\csname !chr#1defaultoptions\endcsname}{!chr@event}%
+\!chrtraiteoneargument\dochronoevent}%
+\if!chrverifdefines
+\expandafter\def\csname !chr#1defaultoptions\endcsname{barre=true, icon=\relax,
+markdepth=10pt, textstyle=\relax, mark=true,
+date=true, datesseparation=\space, conversionmonth=true,
+datestyle=\relax, datesstyle=\relax, year=true,
+iconheight=0.5\!chrheight, ifcolorbox=true, colorbox=white,
+textwidth=\relax}\fi
+\ifnexttoken[{\!chr@defineorsetupoptions}{}}
+
+\!chrverif\def\definechronoperiode#1{%
+\def\@@string@a{#1}%
+\!chrverifdefines{%
+\expandafter\expandafter\expandafter\!chrtraitingargvirgule\expandafter\expandafter\expandafter{\csname !chr#1defaultoptions\endcsname}{!chr@period}%
+\!chrtraiteoneargument\dochronoperiode}%
+\if!chrverifdefines
+\expandafter\def\csname !chr#1defaultoptions\endcsname{textdepth=15pt, dates=true,
+color=\!chrperiodedef@ultcolor, datesstyle=\relax,
+startdate=true, stopdate=true, textstyle=\relax,
+dateselevation=0pt, ifcolorbox=true,
+colorbox=white, bottomdepth=0pt, topheight=\!chrheight, box=false}\fi
+\ifnexttoken[{\!chr@defineorsetupoptions}{}}
+
+\!chrverif\def\!chr@defineorsetupoptions[#1]{%
+\!chr@parcoursoptions#1,\end
+}
+
+\!chrverif\def\!chr@parcoursoptions#1,{\!chr@replaceoptions#1,=\end,\ifnexttoken\end\!gobble\!chr@parcoursoptions}
+\!chrverif\def\!chr@replaceoptions#1=#2,{\ifx#2\end\relax\else
+\def\@@string@f{}%
+\def\@@string@c{#1}\def\@@string@d{#2}%
+\expandafter\let\expandafter\@@string@@b\csname !chr\@@string@a defaultoptions\endcsname
+\expandafter\!chr@replaceoptionsaux\@@string@@b,\end%
+\expandafter\let\csname !chr\@@string@a defaultoptions\endcsname\@@string@f
+\expandafter\!gobblethree\fi}
+
+\!chrverif\def\!chr@replaceoptionsaux#1,{\!chr@replaceoptions@ux#1,=\end, \ifnexttoken\end\!gobble\!chr@replaceoptionsaux}
+\!chrverif\def\!chr@replaceoptions@ux#1=#2,{%
+\ifx#2\end\relax\else
+\def\@@string@e{#1} \ifx\@@string@c\@@string@e
+\expandafter\def\expandafter\@@string@f\expandafter{\@@string@f , #1=}%
+\expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter\@@string@f\expandafter\expandafter\expandafter{\expandafter\@@string@f\@@string@d}%
+\else \expandafter\def\expandafter\@@string@f\expandafter{\@@string@f , #1=#2}\fi\expandafter\!gobblethree\fi
+}
+
+
+\!chr@verif\newcount\!chrgraduationcount
+\!chr@verif\newcount\!chrgraduationcount@ux
+\newif\if!chrgradu@tionevent \!chrgradu@tioneventtrue
+\!chrverif\def\chronograduation{\!chrtraitetwoargument\dochronograduation}
+\!chrverif\def\dochronograduation[#1][#2]#3{%
+\if!chrtwoarg
+\def\@@string@a{#2}%
+\def\@@string@b{#1}\def\@@string@c{event}\def\@@string@d{periode}%
+\ifx\@@string@b\@@string@c \!chrgradu@tioneventtrue \else
+\ifx\@@string@b\@@string@d \!chrgradu@tioneventfalse\else \immediate\write16{chronosys : style #1 non défini}\fi\fi
+\else \def\@@string@a{#1}\fi
+\!chrgraduationcount\!chrstartyear
+\if!chrgradu@tionevent
+\loop \advance\!chrgraduationcount#3\ifnum\!chrgraduationcount<\!chrstopyear \expandafter\chrono!!eventgradu@tion\expandafter[\@@string@a]{\number\!chrgraduationcount}{}\repeat
+\else \def\@@string@e{startdate=true,}%
+\expandafter\expandafter\expandafter\def\expandafter\expandafter\expandafter\@@string@e\expandafter\expandafter\expandafter{\expandafter\@@string@e\@@string@a}%
+\expandafter\chrono!!periodegradu@tion\expandafter[\@@string@e]{\number\!chrgraduationcount}{#3}{}\restartchronoperiodecolor
+\loop \advance\!chrgraduationcount#3\ifnum\!chrgraduationcount<\!chrstopyear \!chrgraduationcount@ux\numexpr\!chrgraduationcount-#3\relax \expandafter\chrono!!periodegradu@tion\expandafter[\@@string@a]{\number\!chrgraduationcount@ux}{\number\!chrgraduationcount}{}\repeat
+\fi}
+
+\!chrverif\def\setupchronograduation{\!chrtraiteoneargument\dosetupchronograduation}
+\!chrverif\def\dosetupchronograduation[#1]{%
+\if!chronearg
+\def\@@string@b{#1}\def\@@string@c{event}\def\@@string@d{periode}%
+\ifx\@@string@b\@@string@c \!chrgradu@tioneventtrue \else
+\ifx\@@string@b\@@string@d \!chrgradu@tioneventfalse\fi\fi \fi
+\if!chrgradu@tionevent \def\@@string@a{[!!eventgradu@tion]}\else\def\@@string@a{[!!periodegradu@tion]}\fi
+\expandafter\setupchronoevent\@@string@a}
+
+\definechronoevent{event}
+\definechronoevent{!!eventgradu@tion}[markdepth=5pt,barre=false, ifcolorbox=false]
+\definechronoperiode{periode}
+\definechronoperiode{!!periodegradu@tion}[dateselevation=-10pt,
+startdate=false, ifcolorbox=false]
diff --git a/Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex b/Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex
index d8e0561d706..db9456b2527 100644
--- a/Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex
+++ b/Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex
@@ -28,10 +28,55 @@
\catcode`\!=11
\def\!chr@verif#1#2{\ifdefined#2\error!message \fi #1#2} %
\defineframed[chreventframedcolorbox][background=color,backgroundcolor=\!chr@eventcolorbox,frame=off,backgroundoffset=\z@,location=low]
-\defineframed[chrperiodframedcolorbox][background=color,backgroundcolor=\!chr@periodcolorbox,frame=off,backgroundoffset=-1pt,location=low]
+\defineframed[chrperiodframedcolorbox][background=color,backgroundcolor=\!chr@periodcolorbox,frame=off,backgroundoffset=\z@,location=low]
\let\!chreventcolorbox\chreventframedcolorbox
\let\!chrperiodcolorbox\chrperiodframedcolorbox
\input chronosyschr.tex
+
+\def\setupchronology{\dosingleempty\dosetupchronology}
+\def\dosetupchronology[#1]{\iffirstargument \!chrtraitingargvirgule{#1}{!chrdefault}\fi}
+
+\def\setupchronoevent{\def\@@string@a{event}\dodoubleempty\dosetupchronoeventandperiode}
+\def\dosetupchronoeventandperiode[#1][#2]{\iffirstargument
+\ifsecondargument
+\def\@@string@a{#1}\def\@@string@b{#2}\else\def\@@string@b{#1}\fi \expandafter\!chr@parcoursoptions\@@string@b,\end\fi}
+
+\def\setupchronoperiode{\def\@@string@a{periode}\dodoubleempty\dosetupchronoeventandperiode}
+\def\definechronoperiode{\dosingleempty\dodefinechronoperiode}
+\!chrverif\def\dodefinechronoperiode[#1]{%
+\iffirstargument
+\def\@@string@a{#1}%
+\!chrverifdefines{%
+\expandafter\expandafter\expandafter\!chrtraitingargvirgule\expandafter\expandafter\expandafter{\csname !chr#1defaultoptions\endcsname}{!chr@period}%
+\!chrtraiteoneargument\dochronoperiode}%
+\if!chrverifdefines
+\expandafter\def\csname !chr#1defaultoptions\endcsname{textdepth=15pt, dates=true,
+color=\!chrperiodedef@ultcolor, datesstyle=\relax,
+startdate=true, stopdate=true, textstyle=\relax,
+dateselevation=0pt, ifcolorbox=true,
+colorbox=white, bottomdepth=0pt, topheight=\!chrheight}\fi\fi
+\ifnexttoken[{\!chr@defineorsetupoptions}{}}
+
+\def\definechronoevent{\dosingleempty\dodefinechronoevent}
+\!chrverif\def\dodefinechronoevent[#1]{%
+\iffirstargument
+\def\@@string@a{#1}%
+\!chrverifdefines{%
+\expandafter\expandafter\expandafter\!chrtraitingargvirgule\expandafter\expandafter\expandafter{\csname !chr#1defaultoptions\endcsname}{!chr@event}%
+\!chrtraiteoneargument\dochronoevent}%
+\if!chrverifdefines
+\expandafter\def\csname !chr#1defaultoptions\endcsname{barre=true, icon=\relax,
+markdepth=10pt, textstyle=\relax, mark=true,
+date=true, datesseparation=\space, conversionmonth=true,
+datestyle=\relax, datesstyle=\relax, year=true,
+iconheight=0.5\!chrheight, ifcolorbox=true, colorbox=white,
+textwidth=\relax}\fi\fi
+\ifnexttoken[{\!chr@defineorsetupoptions}{}}
+
+\setupchronoevent[!!eventgradu@tion][datesstyle=\tfxx]
+\setupchronoperiode[!!periodegradu@tion][datesstyle=\tfxx]
+
+
\catcode`\@=12
\catcode`\!=12
\endinput \ No newline at end of file