From 332324fd9c3ea44b44a430649856775c140fc38a Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 11 Jun 2020 21:10:43 +0000 Subject: moderntimeline (11jun20) git-svn-id: svn://tug.org/texlive/trunk@55518 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/latex/moderntimeline/moderntimeline.pdf | Bin 184501 -> 186431 bytes .../source/latex/moderntimeline/moderntimeline.dtx | 123 ++++++++++++++++++--- .../tex/latex/moderntimeline/moderntimeline.sty | 58 +++++++--- 3 files changed, 148 insertions(+), 33 deletions(-) diff --git a/Master/texmf-dist/doc/latex/moderntimeline/moderntimeline.pdf b/Master/texmf-dist/doc/latex/moderntimeline/moderntimeline.pdf index e6f1786cd70..725a2f0bd94 100644 Binary files a/Master/texmf-dist/doc/latex/moderntimeline/moderntimeline.pdf and b/Master/texmf-dist/doc/latex/moderntimeline/moderntimeline.pdf differ diff --git a/Master/texmf-dist/source/latex/moderntimeline/moderntimeline.dtx b/Master/texmf-dist/source/latex/moderntimeline/moderntimeline.dtx index ff31f0fcdc4..6fcef55c708 100644 --- a/Master/texmf-dist/source/latex/moderntimeline/moderntimeline.dtx +++ b/Master/texmf-dist/source/latex/moderntimeline/moderntimeline.dtx @@ -26,12 +26,12 @@ %\NeedsTeXFormat{LaTeX2e}[1999/12/01] %\ProvidesPackage{moderntimeline} %<*package> - [2015/08/31 0.9 Add timelines to moderncv entries] + [2020/06/11 0.11 Add timelines to moderncv entries] % % %<*driver> \documentclass{ltxdoc} -\usepackage{moderntimeline}[2012/04/26] +\usepackage{moderntimeline}[2020/06/11] \EnableCrossrefs \CodelineIndex \RecordChanges @@ -43,7 +43,7 @@ % % \fi % -% \CheckSum{352} +% \CheckSum{413} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -62,6 +62,7 @@ % Right brace \} Tilde \~} % % +% \changes{0.11}{2020/06/11}{Add support for timeline bar marks, thanks to jordieh} % \changes{0.10}{2019/03/04}{Add support to specify label for end date, thanks to ypid and Astrinus} % \changes{0.9}{2015/08/31}{Add month support, thanks to Astrinus} % \changes{0.8}{2015/02/25}{Add the tlsetnotshadedfraction command, thanks to Stefano Gronchi} @@ -102,12 +103,16 @@ % and can be loaded with: % % \begin{verbatim} -% \usepackage[firstyear=1999,lastyear=2012]{moderntimeline} +% \usepackage[firstyear=1999,lastyear=2012, +% marksyr=0.4ex,marksmo=0.2ex +% ]{moderntimeline} % \end{verbatim} % % The \texttt{firstyear} and \texttt{lastyear} options indicate the maximum dates used % to calibrate the time line. They are not mandatory and can be set later % by means of the |\ltmaxdates| macro. +% The \texttt{marksyr} and \texttt{marksmo} options behave exactly the same as +% the |\tlenablemarksyr| and |\tlenablemarksmo| (and associated) macros. % % \subsection{Settings} % @@ -228,6 +233,21 @@ % the beginning of the year, so is not advisable to use months in dates. % Default. % +% \DescribeMacro{\tlenablemarksmo} +% This macro places vertical lines on the timeline bar at every month and year. +% You can set the height of the marks with |\tlmarkheightmo| (default = 0.2ex). +% +% \DescribeMacro{\tlenablemakrsyr} +% This macro places vertical lines on the timeline bar at every year. +% You can set the height of the marks with |\tlmarkheightyr| (default = 0.4ex). +% +% \DescribeMacro{\tldisablemarksyr} +% Disables the vertical lines marking years on the timeline bar. +% This is the opposite of |\tlenablemarksyr|. +% +% \DescribeMacro{\tldisablemarksmo} +% Disables the vertical lines marking months and years on the timeline bar. +% This is the opposite of |\tlenablemarksmo|. % % \subsection{CV entries} % @@ -341,6 +361,8 @@ } \DeclareStringOption{firstyear} \DeclareStringOption{lastyear} +\DeclareStringOption{marksmo}[0.2ex] +\DeclareStringOption{marksyr}[0.4ex] \ProcessKeyvalOptions* \newif\ifstartyear \newif\ifissince @@ -371,6 +393,22 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\tlmarkheightmo} +% \begin{macrocode} +\newcommand{\tlmarkheightmo}[1]{% + \def\tl@marksmo{#1} +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\tlmarkheightyr} +% \begin{macrocode} +\newcommand{\tlmarkheightyr}[1]{% + \def\tl@marksyr{#1} +} +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\tlsince} % \begin{macrocode} \newcommand{\tlsince}[1]{% @@ -469,6 +507,42 @@ % \end{macro} % % +% \begin{macro}{\tldisablemarksyr} +% \begin{macrocode} +\newcommand{\tldisablemarksyr}{% + \def\tl@marksyr{} +} +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\tlenablemarksyr} +% \begin{macrocode} +\newcommand{\tlenablemarksyr}{% + \def\tl@marksyr{0.4ex} +} +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\tldisablemarksmo} +% \begin{macrocode} +\newcommand{\tldisablemarksmo}{% + \def\tl@marksmo{} +} +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\tlenablemarksmo} +% \begin{macrocode} +\newcommand{\tlenablemarksmo}{% + \def\tl@marksmo{0.2ex} +} +% \end{macrocode} +% \end{macro} +% +% % Defaults % \begin{macrocode} \tltext{\scriptsize} @@ -532,6 +606,28 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\tl@tlcvbar} +% \begin{macrocode} +\newcommand{\tl@tlcvbar}{ + \pgfmathsetmacro\tl@yearrange{\tl@lastyear-\tl@firstyear} + \pgfmathsetmacro\tl@totalmonths{12*\tl@yearrange}% + \pgfmathsetmacro\tl@tickdistmo{\hintscolumnwidth/\tl@totalmonths}% + \pgfmathsetmacro\tl@tickdistyr{\hintscolumnwidth/\tl@yearrange}% + \useasboundingbox (0,-1.5ex) rectangle (\hintscolumnwidth,1ex); + \fill [\tl@runningcolor] (0,0) + rectangle (\hintscolumnwidth,\tl@runningwidth); + \ifx\tl@marksyr\empty\relax\else + \foreach \x in {0, ..., \tl@yearrange} + \draw [\tl@runningcolor](\x*\tl@tickdistyr pt,0ex) -- (\x*\tl@tickdistyr pt,\tl@marksyr); + \fi + \ifx\tl@marksmo\empty\relax\else + \foreach \x in {0, ..., \tl@totalmonths} + \draw [\tl@runningcolor](\x*\tl@tickdistmo pt,0ex) -- (\x*\tl@tickdistmo pt,\tl@marksmo); + \fi +} +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\tl@splitlabels} % \begin{macrocode} \newcommand{\tl@splitlabels}[1]{ @@ -605,9 +701,7 @@ \issincefalse \tl@formatstartyear{#2} \cventry{\tikz[baseline=0pt]{ - \useasboundingbox (0,-1.5ex) rectangle (\hintscolumnwidth,1ex); - \fill [\tl@runningcolor] (0,0) - rectangle (\hintscolumnwidth,\tl@runningwidth); + \tl@tlcvbar \fill [#1] (0,0) ++(\tl@startfraction*\hintscolumnwidth,0pt) node [tl@startyear] {#3} @@ -627,9 +721,7 @@ \issincefalse \tl@formatstartyear{#2} \cventry{\tikz[baseline=0pt]{ - \useasboundingbox (0,-1.5ex) rectangle (\hintscolumnwidth,1ex); - \fill [\tl@runningcolor] (0,0) - rectangle (\hintscolumnwidth,\tl@runningwidth); + \tl@tlcvbar \fill [#1] (0,0) ++(\tl@startfraction*\hintscolumnwidth,0pt) node [tl@singleyear] {#2} @@ -649,9 +741,7 @@ \tl@formatendyear{#3} \tl@formatstartyear{#2} \cventry{\tikz[baseline=0pt]{ - \useasboundingbox (0,-1.5ex) rectangle (\hintscolumnwidth,1ex); - \fill [\tl@runningcolor] (0,0) - rectangle (\hintscolumnwidth,\tl@runningwidth); + \tl@tlcvbar \fill [#1] (0,0) ++(\tl@startfraction*\hintscolumnwidth,0pt) node [tl@startyear] {\tl@startlabel} @@ -665,7 +755,7 @@ (\tl@startfraction*\hintscolumnwidth,0) rectangle (\fullcolorwidth,\tl@width); \shade [left color=#1] (\fullcolorwidth,0) - rectangle (\tl@endfraction*\hintscolumnwidth,\tl@width); + rectangle (\tl@endfraction*\hintscolumnwidth + 1,\tl@width); \else \fill [#1] (\tl@startfraction*\hintscolumnwidth,0) rectangle (\tl@endfraction*\hintscolumnwidth,\tl@width); @@ -686,10 +776,7 @@ \tl@formatstartyear{#2} \tl@splitlabels{#4} \cventry{\tikz[baseline=0pt]{ - \fill [\tl@runningcolor] (0,0) - rectangle (\hintscolumnwidth,\tl@runningwidth); - \useasboundingbox (0,-1.5ex) - rectangle (\hintscolumnwidth,1ex); + \tl@tlcvbar \fill [#1] (0,0) ++(\tl@startfraction*\hintscolumnwidth,0pt) node [tl@startyear] {\tl@startlabel} diff --git a/Master/texmf-dist/tex/latex/moderntimeline/moderntimeline.sty b/Master/texmf-dist/tex/latex/moderntimeline/moderntimeline.sty index 4e93ed18950..642ff02d2d4 100644 --- a/Master/texmf-dist/tex/latex/moderntimeline/moderntimeline.sty +++ b/Master/texmf-dist/tex/latex/moderntimeline/moderntimeline.sty @@ -20,7 +20,7 @@ %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesPackage{moderntimeline} - [2015/08/31 0.9 Add timelines to moderncv entries] + [2020/06/11 0.11 Add timelines to moderncv entries] \ProvidesPackage{moderntimeline} \RequirePackage{tikz} \RequirePackage{kvoptions} @@ -30,6 +30,8 @@ } \DeclareStringOption{firstyear} \DeclareStringOption{lastyear} +\DeclareStringOption{marksmo}[0.2ex] +\DeclareStringOption{marksyr}[0.4ex] \ProcessKeyvalOptions* \newif\ifstartyear \newif\ifissince @@ -43,6 +45,12 @@ \newcommand{\tlrunningcolor}[1]{% \def\tl@runningcolor{#1} } +\newcommand{\tlmarkheightmo}[1]{% + \def\tl@marksmo{#1} +} +\newcommand{\tlmarkheightyr}[1]{% + \def\tl@marksyr{#1} +} \newcommand{\tlsince}[1]{% \def\tl@since{#1} } @@ -92,6 +100,18 @@ \newcommand{\tldisablemonths}{% \def\tl@nomonthvalue{0} } +\newcommand{\tldisablemarksyr}{% + \def\tl@marksyr{} +} +\newcommand{\tlenablemarksyr}{% + \def\tl@marksyr{0.4ex} +} +\newcommand{\tldisablemarksmo}{% + \def\tl@marksmo{} +} +\newcommand{\tlenablemarksmo}{% + \def\tl@marksmo{0.2ex} +} \tltext{\scriptsize} \tlwidth{0.8ex} \tlrunningwidth{0.05ex} @@ -135,6 +155,23 @@ \pgfmathsetmacro\tl@tmpmonth{#1}% \fi } +\newcommand{\tl@tlcvbar}{ + \pgfmathsetmacro\tl@yearrange{\tl@lastyear-\tl@firstyear} + \pgfmathsetmacro\tl@totalmonths{12*\tl@yearrange}% + \pgfmathsetmacro\tl@tickdistmo{\hintscolumnwidth/\tl@totalmonths}% + \pgfmathsetmacro\tl@tickdistyr{\hintscolumnwidth/\tl@yearrange}% + \useasboundingbox (0,-1.5ex) rectangle (\hintscolumnwidth,1ex); + \fill [\tl@runningcolor] (0,0) + rectangle (\hintscolumnwidth,\tl@runningwidth); + \ifx\tl@marksyr\empty\relax\else + \foreach \x in {0, ..., \tl@yearrange} + \draw [\tl@runningcolor](\x*\tl@tickdistyr pt,0ex) -- (\x*\tl@tickdistyr pt,\tl@marksyr); + \fi + \ifx\tl@marksmo\empty\relax\else + \foreach \x in {0, ..., \tl@totalmonths} + \draw [\tl@runningcolor](\x*\tl@tickdistmo pt,0ex) -- (\x*\tl@tickdistmo pt,\tl@marksmo); + \fi +} \newcommand{\tl@splitlabels}[1]{ \gdef\tl@startlabel{}% Resetting \begingroup% @@ -184,9 +221,7 @@ \issincefalse \tl@formatstartyear{#2} \cventry{\tikz[baseline=0pt]{ - \useasboundingbox (0,-1.5ex) rectangle (\hintscolumnwidth,1ex); - \fill [\tl@runningcolor] (0,0) - rectangle (\hintscolumnwidth,\tl@runningwidth); + \tl@tlcvbar \fill [#1] (0,0) ++(\tl@startfraction*\hintscolumnwidth,0pt) node [tl@startyear] {#3} @@ -199,9 +234,7 @@ \issincefalse \tl@formatstartyear{#2} \cventry{\tikz[baseline=0pt]{ - \useasboundingbox (0,-1.5ex) rectangle (\hintscolumnwidth,1ex); - \fill [\tl@runningcolor] (0,0) - rectangle (\hintscolumnwidth,\tl@runningwidth); + \tl@tlcvbar \fill [#1] (0,0) ++(\tl@startfraction*\hintscolumnwidth,0pt) node [tl@singleyear] {#2} @@ -214,9 +247,7 @@ \tl@formatendyear{#3} \tl@formatstartyear{#2} \cventry{\tikz[baseline=0pt]{ - \useasboundingbox (0,-1.5ex) rectangle (\hintscolumnwidth,1ex); - \fill [\tl@runningcolor] (0,0) - rectangle (\hintscolumnwidth,\tl@runningwidth); + \tl@tlcvbar \fill [#1] (0,0) ++(\tl@startfraction*\hintscolumnwidth,0pt) node [tl@startyear] {\tl@startlabel} @@ -230,7 +261,7 @@ (\tl@startfraction*\hintscolumnwidth,0) rectangle (\fullcolorwidth,\tl@width); \shade [left color=#1] (\fullcolorwidth,0) - rectangle (\tl@endfraction*\hintscolumnwidth,\tl@width); + rectangle (\tl@endfraction*\hintscolumnwidth + 1,\tl@width); \else \fill [#1] (\tl@startfraction*\hintscolumnwidth,0) rectangle (\tl@endfraction*\hintscolumnwidth,\tl@width); @@ -244,10 +275,7 @@ \tl@formatstartyear{#2} \tl@splitlabels{#4} \cventry{\tikz[baseline=0pt]{ - \fill [\tl@runningcolor] (0,0) - rectangle (\hintscolumnwidth,\tl@runningwidth); - \useasboundingbox (0,-1.5ex) - rectangle (\hintscolumnwidth,1ex); + \tl@tlcvbar \fill [#1] (0,0) ++(\tl@startfraction*\hintscolumnwidth,0pt) node [tl@startyear] {\tl@startlabel} -- cgit v1.2.3