summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/chronosys
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-01-17 00:00:42 +0000
committerKarl Berry <karl@freefriends.org>2012-01-17 00:00:42 +0000
commit06cb5c1303792dae4ef9a8828457c61a71985d49 (patch)
tree7eb719c1de1ba81f62dfa5c79c196ec4afbf70da /Master/texmf-dist/tex/generic/chronosys
parente955c13e335a7a8784b649ca6f3304bda5ec9d3f (diff)
chronosys (16jan12)
git-svn-id: svn://tug.org/texlive/trunk@25125 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/chronosys')
-rw-r--r--Master/texmf-dist/tex/generic/chronosys/chronosys.sty3
-rw-r--r--Master/texmf-dist/tex/generic/chronosys/chronosys.tex21
-rw-r--r--Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex124
-rw-r--r--Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex6
4 files changed, 113 insertions, 41 deletions
diff --git a/Master/texmf-dist/tex/generic/chronosys/chronosys.sty b/Master/texmf-dist/tex/generic/chronosys/chronosys.sty
index a77bf8a08d3..184a7703427 100644
--- a/Master/texmf-dist/tex/generic/chronosys/chronosys.sty
+++ b/Master/texmf-dist/tex/generic/chronosys/chronosys.sty
@@ -35,6 +35,9 @@
\let\starttikzpicture\tikzpicture \let\stoptikzpicture\endtikzpicture
\let\chronology\startchronology \let\endchronology\stopchronology
\def\!chrdefaultwidth{\textwidth}
+\def\!chreventcolorbox{\colorbox{\!chr@eventcolorbox}}
+\def\!chrperiodcolorbox{\colorbox{\!chr@periodcolorbox}}
\ProvidesPackage{chronosys}
\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 8ef38106963..817f068b8ae 100644
--- a/Master/texmf-dist/tex/generic/chronosys/chronosys.tex
+++ b/Master/texmf-dist/tex/generic/chronosys/chronosys.tex
@@ -25,11 +25,30 @@
%
\catcode`\@=11
\unless\ifdefined\tikzpicture
-\catcode`\!=12\input tikz.tex \relax \usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri}\fi
+\catcode`\!=12\input tikz.tex \relax\fi %\usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri}\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@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}}
+\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@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}}
\input chronosyschr.tex
\catcode`\!=12
+\catcode`\@=12
\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex b/Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex
index d5ab80b6375..d6af427d142 100644
--- a/Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex
+++ b/Master/texmf-dist/tex/generic/chronosys/chronosyschr.tex
@@ -23,21 +23,23 @@
%
% The Current Maintainer of this work is Mathieu Long.
%
-\expandafter\ifx\csname chronosys @\endcsname\relax\else\immediate\write16{Le fichier a d\'ej`a \'et\'e charg\'e}\endinput\fi
-\ifx\numexpr\UNDEFINED\immediate\write16{D\'esol\'e, mais ce fichier utilise les primitives E-TeX, vous ne pouvez pas utiliser le moteur TeX.}\endinput\fi
+\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.01}
+\def\chron@sysversion{1.10}
\catcode`\@=11
\catcode`\!=11
-\def\error!message{\errmessage{La commande a d\'ej\`a \'et\'e d\'efinie.}} %
+\newhelp\chrhelpmessage{Contactez l'auteur par mail.}
+\newhelp\chrerrormessage{La commande a deja ete definie.}
+\def\error!message{\errhelp{\the\chrhelpmessage}\errmessage{\the\chrerrormessage}} %
%
-\def\!chrverif#1#2{\ifdefined#2\error!message \fi #1#2} %
+\def\!chrverif#1#2{\ifdefined#2\expandafter\error!message \fi #1#2} %
%
\!chrverif\def\!gobblethree#1#2#3{}
\!chrverif\def\!gobble#1{}
-\ifdefined\@ifnextchar \def\:{\let\ifnexttoken=\@ifnextchar\let\!gobble=\@gobble}\expandafter\:\else
-\ifdefined\doifnextcharelse \def\:{\let\ifnexttoken=\doifnextcharelse}\expandafter\:\else
+\ifdefined\@ifnextchar \def\:{\let\ifnexttoken\@ifnextchar}\expandafter\:\else
+\ifdefined\doifnextcharelse \def\:{\let\ifnexttoken\doifnextcharelse}\expandafter\:\else
\long\def\@ifnextchar#1#2#3{%
\let\reserved@d=#1%
\def\reserved@a{#2}%
@@ -60,26 +62,26 @@
\let\ifnexttoken\@ifnextchar
\fi\fi
-\newif\ifonearg \newif\iftwoarg
-\!chrverif\def\traiteoneargument#1{\ifnexttoken[{\oneargtrue#1}{\oneargfalse#1[]}}
+\newif\if!chronearg \newif\if!chrtwoarg
+\!chrverif\def\!chrtraiteoneargument#1{\ifnexttoken[{\!chroneargtrue#1}{\!chroneargfalse#1[]}}
-\!chrverif\def\traitetwoargument#1{\let\todoafterarg#1%
-\ifnexttoken[{\oneargtrue\savefirsttwoarg}{\oneargfalse\twoargfalse#1[][]}}
-\!chrverif\def\savefirsttwoarg[#1]{\ifnexttoken[{\twoargtrue \todoafterarg[#1]}{\twoargfalse \todoafterarg[#1][]}}
+\!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\traitingargvirgule[#1]#2{\def\!tr@itintargvirgule{#2} \tr@itingargvirgule#1,\end}
-\!chrverif\def\tr@itingargvirgule#1,{\ifnexttoken\end{\dotraiteargvirgule#1,=\end,\!gobble}{\dotraiteargvirgule#1,=\end,\tr@itingargvirgule}}
-\!chrverif\def\dotraiteargvirgule#1=#2,{\ifx\end#2\else \dotr@iteargvirgule#1=#2,\expandafter\!gobblethree\fi}
-\!chrverif\def\dotr@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,{\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\startchronology{\traiteoneargument\dostartchronology}
+\!chrverif\def\startchronology{\!chrtraiteoneargument\dostartchronology}
\!chrverif\def\!chrdefaultstartyear{0} \!chrverif\def\!chrdefaultstopyear{\the\year} \!chrverif\def\!chrdefaultwidth{\the\hsize} %
\!chrverif\def\!chrdefaultheight{0.7pc} \!chrverif\def\!chrdefaultdates{true} \!chrverif\def\!chrdefaultarrow{true} \!chrverif\def\!chrdefaultarrowwidth{0.1\!chrwidth}
\!chrverif\def\!chrdefaultarrowheight{\!chrheight} \!chrverif\def\!chrdefaultcolor{black} \!chrverif\def\!chrdefaultarrowcolor{\!chr@color}
\!chrverif\def\!chrdefaultdatesstyle{} \!chrverif\def\!chrdefaultstartdate{true} \!chrverif\def\!chrdefaultstopdate{true} \!chrverif\def\!chrdefaultdateselevation{20pt}
-\!chrverif\def\!chrdefaultbox{false}
+\!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
@@ -92,8 +94,8 @@
\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}%
-\ifonearg \traitingargvirgule[#1]{!chr@}\fi \!chrheight\!chr@height \!chrstartyear\!chr@startyear \!chrstopyear\!chr@stopyear \!chrwidth\!chr@width %
+\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 %
\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%
@@ -115,13 +117,16 @@
\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{\traitingargvirgule[#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!chrperiodstartdate \!chr@verif\newif\if!chrperiodstopdate \!chrverif\def\!chrperiodedefaultstartdate{true} \!chrverif\def\!chrperiodedefaultstopdate{true}
+\!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\newdimen\!chrperiodeventtextwidth
%\!chrverif\def\!chr!periodec@lor{\ifcase\!chr!periodecolornum blue\or red\or cyan\or purple\or yellow\fi}
@@ -136,36 +141,49 @@
\!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{\traiteoneargument\dochronoperiode}
+\!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 %
-\ifonearg
-\traitingargvirgule[#1]{!chr@period}\fi\!chrperiodtextdepth\!chr@periodtextdepth
+\if!chronearg
+\!chrtraitingargvirgule[#1]{!chr@period}\fi\!chrperiodtextdepth\!chr@periodtextdepth
\csname !chrperioddates\!chr@perioddates\endcsname \csname !chrperiodstartdate\!chr@periodstartdate\endcsname \csname !chrperiodstopdate\!chr@periodstopdate\endcsname
+\csname !chrperiodifcolorbox\!chr@periodifcolorbox\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@{\hbox to\dimen@{\hss\!chr@periodtextstyle{#4}\hss}\hss}%
-\if!chrperioddates\if!chrperiodstartdate\raise\!chrperioddateselevation\hbox to\z@{\hss\!chr@perioddatesstyle{#2}\hss}\fi\fi \starttikzpicture\filldraw[color=\!chr@periodcolor](0,0)--(\dimen@,0)--(\dimen@,\!chrheight)--(0,\!chrheight)--cycle;\draw[color=\!chr!periodeschwarzodergr@u](0,0)--(0,\!chrheight);\draw [color=\!chr!periodeschwarzodergr@u](\dimen@,0)--(\dimen@,\!chrheight);\if!chrbox\draw[color=black](0,-0.2pt)--(\dimen@,-0.2pt)\fi\stoptikzpicture
-\if!chrperioddates\if!chrperiodstopdate\raise\!chrperioddateselevation \hbox to\z@{\hss\!chr@perioddatesstyle{#3}\hss}\fi\fi}\!chr!periodecoloradvance\fi\fi\fi\fi\fi}
-
-\!chrverif\def\setupchronoperiode#1{\traitingargvirgule[#1]{!chrperiodedefault}}
-
-\!chrverif\def\chronoevent{\traiteoneargument\dochronoevent}
+\setbox\!chrflechebox\hbox{\unhbox\!chrflechebox\kern-\dimen@i\kern\!chr!dimentraitement\lower\!chrperiodtextdepth\hbox to\z@
+{\hbox to\dimen@
+{\hss \if!chrperiodifcolorbox\expandafter\!chrperiodcolorbox\fi{\!chr@periodtextstyle{#4}}\hss}\hss}%
+\if!chrperioddates\if!chrperiodstartdate\raise\!chrperioddateselevation
+\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);%
+\if!chrbox\draw[color=black](\z@,-0.2pt)--(\dimen@,-0.2pt)\fi
+\stoptikzpicture
+\if!chrperioddates\if!chrperiodstopdate\raise\!chrperioddateselevation \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\!chreventdefaultmarkdepth{10pt}
+\!chrverif\def\!chreventdefaulticon{} \!chr@verif\newdimen\!chreventmarkdepth
+\!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}
-\!chrverif\def\!chreventdefaultdatestyle{} \!chrverif\def\!chreventdefaultdatesstyle{} \!chr@verif\newif\if!chreventyear \!chrverif\def\!chreventdefaultyear{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\!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}}
@@ -178,10 +196,15 @@
\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}%
-\ifonearg \traitingargvirgule[#1]{!chr@event}\fi
+\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
+\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
\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 %
@@ -194,13 +217,34 @@
\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\!chr@eventdatestyle{\if!chreventspecifiedday %
+\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\hbox to\z@{\hss\!chr@eventtextstyle{#3}\hss}\ifdim\!chreventmarkdepth>0pt\relax\vss\fi}}\if!chreventmark\vrule height0pt depth\!chreventmarkdepth\fi \setbox0\vbox{\if!chreventdate\hbox{#2}\fi\hbox{#3}}\lower\dimexpr\dp0+\ht0+\!chreventmarkdepth+2pt\relax\hbox{}}
+}}\hss}\fi
+\ifdim\!chrperiodeventtextwidth > \z@
+\vbox to \z@{
+\hbox to\z@{\hss\setbox\z@\hbox{\vbox
+{\hsize\!chrperiodeventtextwidth\relax\!chr@eventtextstyle{#3}}}%
+\dimen@i\wd\z@
+\dimen@ii\dimexpr\ht\z@+\dp\z@\relax
+\setbox\z@\hbox to\z@{\hss\starttikzpicture \fill[color=\!chr@eventcolorbox]%
+(\z@,\z@)--(\dimen@i,\z@)--(\dimen@i,\dimen@ii)--(\z@,\dimen@ii);\stoptikzpicture\kern-\dimen@i
+\box\z@\hss}\box\z@}\vss}
+\else \hbox to\z@
+{\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{}
+}
\fi\fi\fi}
-\!chrverif\def\setupchronoevent#1{\traitingargvirgule[#1]{!chreventdefault}}
-\!chrverif\def\stopchronology{\goodbreak\box\!chrflechebox\endgroup\bigskip}
+\!chrverif\def\setupchronoevent#1{\!chrtraitingargvirgule[#1]{!chreventdefault}}
+
+\!chr@verif\newdimen\!chrstopwidth
+\!chrverif\def\!chrstopcenteralign{\!chrstopwidth\dimexpr(\hsize-\!chrwidth)/2\relax}
+\!chrverif\def\!chrstopleftalign{\!chrstopwidth\z@}
+\!chrverif\def\!chrstoprightalign{\!chrstopwidth\dimexpr\hsize-\!chrwidth\relax}
-\catcode`\!=11 \ No newline at end of file
+\!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}
diff --git a/Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex b/Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex
index d4745992c59..d8e0561d706 100644
--- a/Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex
+++ b/Master/texmf-dist/tex/generic/chronosys/x-chronosys.tex
@@ -27,5 +27,11 @@
\catcode`\@=11
\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]
+\let\!chreventcolorbox\chreventframedcolorbox
+\let\!chrperiodcolorbox\chrperiodframedcolorbox
\input chronosyschr.tex
+\catcode`\@=12
+\catcode`\!=12
\endinput \ No newline at end of file