diff --git a/moderncvskillmatrix.sty b/moderncvskillmatrix.sty index 3f4fb34..3ce6260 100644 --- a/moderncvskillmatrix.sty +++ b/moderncvskillmatrix.sty @@ -71,43 +71,41 @@ % -The width of the columns can be adjusted by the \setcvskilllegendcolumns, see \setcvskilllegendcolumns % % -% \cvskillhead[][][][][]% +% \cvskillhead[][][][]% % add skill matrix line acting as header explaining the meaning of columns. % % Input: % input_1 (optional): padding length appended to the legend, default: <0.25em> -% input_2 (optional): string naming the level column (2nd column), default: -% input_3 (optional): string naming the skill column (3nd column), default: -% input_4 (optional): string naming the experience-in-years column (4th column), default: -% input_5 (optional): string naming the comment column (5th column), default: +% input_2 (optional): string naming the level column (2nd column), default: +% input_3 (optional): string naming the skill column (3rd column), default: +% input_4 (optional): string naming the comment column (4th column), default: % % Example usages: % \cvskillhead print default head. % \cvskillhead[0.5em] print default head, but adjust post padding. -% \cvskillhead[0.25em][Level][F\"ahigkeit][Jahre][Bemerkung] Fully adjust head to German example +% \cvskillhead[0.25em][F\"ahigkeit][Level][Bemerkung] Fully adjust head to German example % % Note: % - The width of the columns can be adjusted by the \setcvskillcolumns command, see \setcvskillcolumns. % % -% \cvskillentry[*][]{}{<0-5>}{}{}{}% +% \cvskillentry[*][]{}{}{<0-5>}{}% % add cvskill matrix row. % % Input: -% asterix (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style. -% For the fancy style, the asterix has no meaning. +% asterisk (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style. +% For the fancy style, the asterisk has no meaning. % input_1 (optional): padding length appended to the legend, default: <0.25em> % input_2: string, naming skill cathegory, default: <> -% input_3: integer between 0 and 5, describing level of skill. \cvskill{input_2} is called internally, default: <> -% input_4: string, naming the skill, default: <> -% input_5: positive real number, stating the number of years of experience with this skill , default: <> -% input_6: string, explaining details w.r.t. that particual skill default: <> +% input_3: string, naming the skill, default: <> +% input_4: integer between 0 and 5, describing level of skill. \cvskill{input_4} is called internally, default: <> +% input_5: string, explaining details w.r.t. that particual skill default: <> % % Example usages: -% \cvskillentry*{Language:}{3}{Python}{2}{I have done a million projects with Python} -% \cvskillentry{}{2}{Lilypond}{14}{So much sheet music! Man I'm the best!} -% \cvskillentry{}{3}{\LaTeX}{14}{Clearly I rock at \LaTeX} -% \cvskillentry*[1.5em]{OS:}{3}{Linux}{2}{I only use Archlinux} +% \cvskillentry*{Language:}{Python}{3}{I'm so experienced in Python and have realised a million projects. At least.} +% \cvskillentry{}{Lilypond}{2}{So much sheet music! Man, I'm the best!} +% \cvskillentry{}{\LaTeX}{3}{Clearly I rock at \LaTeX} +% \cvskillentry*{OS:}{Linux}{3}{I only use Archlinux btw} % % Note: % - The width of the columns can be adjusted by the \setcvskillcolumns command, see \setcvskillcolumns. @@ -127,15 +125,15 @@ % Input % Input_1 (optional): width smaller than \textwidth, default <\skillmatrix@hintscolumnwidth> % Input_2 (optional): float between 0 and 1 adjusting how much percent of the table width without -% the first column is used columns two, three and four. Through this parameter -% the width of the 3rd column (skill name) can be adjusted, default <\skillmatrix@columnwidth> +% the first column is used columns two and three. Through this parameter +% the width of the 3rd column (level) can be adjusted, default <\skillmatrix@columnwidth> % Input_3 (optional): width smaller than \textwidth, setting the width of the 4th column -% (Years of experience), default <\cvskill@experiencewidth> +% (Comment), default <\cvskill@experiencewidth> % % Example usage % \setcvskillcolumns[5em][][]% adjust first column. Same as \setcvskillcolumns[5em] % \setcvskillcolumns[][0.45][]% adjust third (skill) column. Same as \setcvskillcolumns[][0.45] -% \setcvskillcolumns[][][\widthof{``Year''}]% adjust fourth (years) column. +% \setcvskillcolumns[][][\widthof{``Comment''}]% adjust fourth (comment) column. % \setcvskillcolumns[\widthof{``Language''}][0.48][]% adjust 1st and 3rd columns. Same as \setcvskillcolumns[\widthof{``Language''}][0.45] % \setcvskillcolumns[\widthof{``Management Tools''}][0.6][3em]% ajust all at once. % @@ -203,9 +201,9 @@ % identification %------------------------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{moderncvskillmatrix}[2022-02-21 v2.3.1 modern curriculum vitae and letter skill matrix] +\ProvidesPackage{moderncvskillmatrix}[2022-03-18 v2.4.0 modern curriculum vitae and letter skill matrix] -% The definitions need to be adjusted depending on which moderncvbody.sty style is usde. +% The definitions need to be adjusted depending on which moderncvbody.sty style is used. % body type options: "moderncvbodyi" (default), "moderncvbodyii", "moderncvbodyiii", "moderncvbodyiv" or "moderncvbodyv" \@initializeif{\if@moderncvbodyi}\@moderncvbodyifalse \DeclareOption{moderncvbodyi}{\@moderncvbodyitrue\@moderncvbodyiifalse\@moderncvbodyiiifalse\@moderncvbodyivfalse\@moderncvbodyvfalse} @@ -316,11 +314,13 @@ \setlength{\skillmatrix@padding}{1ex}% \setlength{\skillmatrix@hintscolumnwidth}{\hintscolumnwidth}% \setlength{\cvskill@width}{\widthof{\cvskill{5}}}% - \setlength{\cvskill@experiencewidth}{\widthof{``Year''}}% + %\setlength{\cvskill@experiencewidth}{\widthof{``Year''}}% \setlength{\skillmatrix@bodylength}{\maincolumnwidth}% \setlength{\skillmatrix@columnwidth}{0.45\skillmatrix@bodylength}% - \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}% - \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% + \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width}% + % \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}% + \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-2\skillmatrix@padding}% + % \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% % lengths and definitions needed for the legends % note that \skillmatrix@padding also affects the appearance of legends \setlength{\skilllegend@padding}{0.25ex}% @@ -339,8 +339,10 @@ \setlength{\cvskill@experiencewidth}{\widthof{``Year''}}% \setlength{\skillmatrix@bodylength}{\maincolumnwidth-\skillmatrix@hintscolumnwidth-\separatorcolumnwidth}% \setlength{\skillmatrix@columnwidth}{0.45\skillmatrix@bodylength}% - \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}% - \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% + \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width}% + % \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}% + \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-2\skillmatrix@padding}% + % \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% % lengths and definitions needed for the legends % note that \skillmatrix@padding also affects the appearance of legends \setlength{\skilllegend@padding}{0.25ex}% @@ -359,8 +361,10 @@ \setlength{\cvskill@experiencewidth}{\widthof{``Year''}} \setlength{\skillmatrix@bodylength}{\maincolumnwidth-\skillmatrix@hintscolumnwidth-\separatorcolumnwidth} \setlength{\skillmatrix@columnwidth}{0.45\skillmatrix@bodylength}% - \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth} - \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% + \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width} + % \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth} + \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-2\skillmatrix@padding}% + % \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% % lengths and definitions needed for the legends % note that \skillmatrix@padding also affects the appearance of legends \setlength{\skilllegend@padding}{0.25ex} @@ -378,8 +382,10 @@ \setlength{\cvskill@experiencewidth}{\widthof{``Year''}}% \setlength{\skillmatrix@bodylength}{\maincolumnwidth-\skillmatrix@hintscolumnwidth-\skillmatrix@padding}%\skillmatrix@hintscolumnwidth \setlength{\skillmatrix@columnwidth}{0.45\skillmatrix@bodylength}% - \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}% - \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% + \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width}% + % \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}% + \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-2\skillmatrix@padding}% + % \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% % lengths and definitions needed for the legends % note that \skillmatrix@padding also affects the appearance of legends \setlength{\skilllegend@padding}{0.25ex}% @@ -396,7 +402,7 @@ \DeclareDocumentCommand{\setcvskillcolumns}{+O{\skillmatrix@hintscolumnwidth} +O{\skillmatrix@columnwidth} +O{\cvskill@experiencewidth}}{% % adjust column width of skill table % -% The \cvskillentry command comes with default FIXED width definitions of the kill matrix for the columns +% The \cvskillentry command comes with default FIXED width definitions of the skill matrix for the columns % based on the author's own skill matrix. This is necessary to ensure that the entries are nicely aligned % and actually yield a decent looking table. The defaults depend on the style used and are chosen reasonably. % However, depending on the user input and the style that is used some of the columns might need adjustments. @@ -407,15 +413,15 @@ % Input % Input_1 (optional): width smaller than \textwidth, default <\skillmatrix@hintscolumnwidth> % Input_2 (optional): float between 0 and 1 adjusting how much percent of the table width without -% the first column is used columns two, three and four. Through this parameter -% the width of the 3rd column (skill name) can be adjusted, default <\skillmatrix@columnwidth> +% the first column is used columns two and three. Through this parameter +% the width of the 3rd column (level) can be adjusted, default <\skillmatrix@columnwidth> % Input_3 (optional): width smaller than \textwidth, setting the width of the 4th column -% (Years of experience), default <\cvskill@experiencewidth> +% (Comment), default <\cvskill@experiencewidth> % % Example usage % \setcvskillcolumns[5em][][]% adjust first column. Same as \setcvskillcolumns[5em] % \setcvskillcolumns[][0.45][]% adjust third (skill) column. Same as \setcvskillcolumns[][0.45] -% \setcvskillcolumns[][][\widthof{``Year''}]% adjust fourth (years) column. +% \setcvskillcolumns[][][\widthof{``Comment''}]% adjust fourth (comment) column. % \setcvskillcolumns[\widthof{``Language''}][0.48][]% adjust 1st and 3rd columns. Same as \setcvskillcolumns[\widthof{``Language''}][0.45] % \setcvskillcolumns[\widthof{``Management Tools''}][0.6][3em]% ajust all at once. % @@ -457,7 +463,8 @@ \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}% }% \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}% - \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% + \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-2\skillmatrix@padding}% + % \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% }% % Case \setcvskillcolumns[] nothing needs to be done here recalculate lengths affected by the change }{% @@ -490,7 +497,8 @@ }% }% \setlength{\cvskill@descriptorwidth}{\skillmatrix@columnwidth-\cvskill@width-\cvskill@experiencewidth}% - \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% + \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-2\skillmatrix@padding}% + % \setlength{\skillmatrix@commentwidth}{\skillmatrix@bodylength-\skillmatrix@columnwidth-3\skillmatrix@padding}% }% }% % @@ -575,8 +583,8 @@ % Print legend table explaining the meaning of \cvskill{1}...\cvskill{5}. % % Input: -% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style. -% For the fancy style, the asterix has no meaning. +% asterisk (optional): include vertical (dashed) lines. This behaviour depends on the body style. +% For the fancy style, the asterisk has no meaning. % input_1 (optional): padding length appended to the legend, default: <0.25em> % input_2 (optional): string describing meaning of \cvskill{1}, default: % input_3 (optional): string describing meaning of \cvskill{2}, default: @@ -617,7 +625,8 @@ p{\cvskill@width}@{\hspace{\skilllegend@padding}};{.6pt/1pt}% p{2\skilllegend@padding}% p{\cvskilllegend@rightdescriptorwidth}@{}}% - \raggedleft\hintstyle{#8} & \cvskill{1}& & {\skillLegend@FontSize #3} & \cvskill{3}& &{\skillLegend@FontSize #5 } \\% + \cdashline{2-7}[6pt/1.5pt] + \raggedleft\hintstyle{{\bfseries#8}} & \cvskill{1}& & {\skillLegend@FontSize #3} & \cvskill{3}& &{\skillLegend@FontSize #5 } \\% % & \cvskill{2} & & \multirow{2}{\cvskilllegend@leftdescriptorwidth}{{\skillLegend@FontSize #4}} & \cvskill{4}& & {\skillLegend@FontSize #6 } \\% % @@ -636,7 +645,7 @@ p{\cvskilllegend@leftdescriptorwidth}@{\hspace{2\skillmatrix@padding}}% p{\cvskill@width}@{\hspace{\skilllegend@padding}}% p{\cvskilllegend@rightdescriptorwidth}@{}}% - \raggedleft\hintstyle{#8} & \cvskill{1}\, & \,{\skillLegend@FontSize #3} & \cvskill{3}\, &\,{\skillLegend@FontSize #5 } \\% + \raggedleft\hintstyle{{\bfseries#8}} & \cvskill{1}\, & \,{\skillLegend@FontSize #3} & \cvskill{3}\, &\,{\skillLegend@FontSize #5 } \\% % & \cvskill{2}\, & \,\multirow{2}{\cvskilllegend@leftdescriptorwidth}{{\skillLegend@FontSize #4}} & \cvskill{4}\, &\,{\skillLegend@FontSize #6 } \\% % @@ -748,8 +757,8 @@ % In this legend, the first three skill levels are in one column % % Input: -% asterix (optional): include vertical (dashed) lines. This behaviour depends on the body style. -% For the fancy style, the asterix has no meaning. +% asterisk (optional): include vertical (dashed) lines. This behaviour depends on the body style. +% For the fancy style, the asterisk has no meaning. % input_1 (optional): padding length appended to the legend, default: <0.25em> % input_2 (optional): string describing meaning of \cvskill{1}, default: % input_3 (optional): string describing meaning of \cvskill{2}, default: @@ -787,7 +796,7 @@ p{\cvskill@width}@{\hspace{\skilllegend@padding}};{.6pt/1pt}% p{2\skilllegend@padding}% p{\cvskilllegend@rightdescriptorwidth}@{}}% - \raggedleft\hintstyle{#8} & \cvskill{1}& & {\skillLegend@FontSize #3} & \cvskill{4}& &{\skillLegend@FontSize #6} \\% + \raggedleft\hintstyle{{\bfseries#8}} & \cvskill{1}& & {\skillLegend@FontSize #3} & \cvskill{4}& &{\skillLegend@FontSize #6} \\% % & \cvskill{2} & & {\skillLegend@FontSize #4} & \cvskill{5}& & {\skillLegend@FontSize #7} \\% % @@ -806,7 +815,7 @@ p{\cvskilllegend@leftdescriptorwidth}@{\hspace{2\skillmatrix@padding}}% p{\cvskill@width}@{\hspace{2\skilllegend@padding}}% p{\cvskilllegend@rightdescriptorwidth}@{}}% - \raggedleft\hintstyle{#8} & \cvskill{1} & {\skillLegend@FontSize #3} & \cvskill{4} &{\skillLegend@FontSize #6} \\% + \raggedleft\hintstyle{{\bfseries#8}} & \cvskill{1} & {\skillLegend@FontSize #3} & \cvskill{4} &{\skillLegend@FontSize #6} \\% % & \cvskill{2} & {\skillLegend@FontSize #4} & \cvskill{5} &{\skillLegend@FontSize #7} \\% % @@ -908,47 +917,46 @@ % % \cvskillhead % %------------------------------------------------------------------------------- \NewDocumentCommand\cvSkillMatrix@HeadFont{}{\normalfont} -\DeclareDocumentCommand\cvskillhead{+O{} +O{} +O{} +O{} +O{}}{}% +\DeclareDocumentCommand\cvskillhead{+O{} +O{} +O{} +O{}}{}% % add skill matrix line acting as header explaining the meaning of columns. % % Input: % input_1 (optional): padding length appended to the legend, default: <0.25em> -% input_2 (optional): string naming the level column (2nd column), default: -% input_3 (optional): string naming the skill column (3nd column), default: -% input_4 (optional): string naming the experience-in-years column (4th column), default: -% input_5 (optional): string naming the comment column (5th column), default: +% input_2 (optional): string naming the skill column (2nd column), default: +% input_3 (optional): string naming the level column (3rd column), default: +% input_4 (optional): string naming the comment column (4th column), default: % % Example usages: % \cvskillhead print default head. % \cvskillhead[0.5em] print default head, but adjust post padding. -% \cvskillhead[0.25em][Level][F\"ahigkeit][Jahre][Bemerkung] Fully adjust head to German example +% \cvskillhead[0.25em][F\"ahigkeit][Level][Bemerkung] Fully adjust head to German example % % Note: % - The width of the columns can be adjusted by the \setcvskillcolumns command, see \setcvskillcolumns. -\NewDocumentCommand\skillMatrix@HeaderDefaultOne{}{Level} -\NewDocumentCommand\skillMatrix@HeaderDefaultTwo{}{Skill} -\NewDocumentCommand\skillMatrix@HeaderDefaultThree{}{Years} +\NewDocumentCommand\skillMatrix@HeaderDefaultOne{}{Skill} +\NewDocumentCommand\skillMatrix@HeaderDefaultTwo{}{Level} +% \NewDocumentCommand\skillMatrix@HeaderDefaultThree{}{Years} \NewDocumentCommand\skillMatrix@HeaderDefaultFour{}{Comment} % Definition of \cvskillhead valid for moderncvbodyi, moderncvbodyii, moderncvbodyiii, moderncvbodyiv -\RenewDocumentCommand\cvskillhead{O{.25em} +O{\skillMatrix@HeaderDefaultOne} +O{\skillMatrix@HeaderDefaultTwo} +O{\skillMatrix@HeaderDefaultThree} +O{\skillMatrix@HeaderDefaultFour}}{% +\RenewDocumentCommand\cvskillhead{O{.25em} +O{\skillMatrix@HeaderDefaultOne} +O{\skillMatrix@HeaderDefaultTwo} +O{\skillMatrix@HeaderDefaultFour}}{% \begingroup \renewcommand{\arraystretch}{1.25} \arrayrulecolor{bodyrulecolor} \begin{tabular}{@{}p{\skillmatrix@hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}% - p{\cvskill@width}@{\hspace{\skillmatrix@padding}}% p{\cvskill@descriptorwidth}@{\hspace{\skillmatrix@padding}}% - p{\cvskill@experiencewidth}@{\hspace{\skillmatrix@padding}} + p{\cvskill@width}@{\hspace{\skillmatrix@padding}}% + %p{\cvskill@experiencewidth}@{\hspace{\skillmatrix@padding}} p{\skillmatrix@commentwidth}@{}}% - & \centering{\cvSkillMatrix@HeadFont #2} & \centering{\cvSkillMatrix@HeadFont #3} & \centering{\cvSkillMatrix@HeadFont #4} & {\cvSkillMatrix@HeadFont #5} + & \raggedright{\cvSkillMatrix@HeadFont {\bfseries #2}} & \centering{\cvSkillMatrix@HeadFont {\bfseries #3}} & {\cvSkillMatrix@HeadFont {\bfseries\itshape #4}} \end{tabular}% \endgroup \par\addvspace{#1} } % Definition of \cvskillhead valid moderncvbodyv \if@moderncvbodyv% - \RenewDocumentCommand\cvskillhead{O{.25em} +O{\skillMatrix@HeaderDefaultOne} +O{\skillMatrix@HeaderDefaultTwo} +O{\skillMatrix@HeaderDefaultThree} +O{\skillMatrix@HeaderDefaultFour}}{% - \arrayrulecolor{bodyrulecolor}% + \RenewDocumentCommand\cvskillhead{O{.25em} +O{\skillMatrix@HeaderDefaultOne} +O{\skillMatrix@HeaderDefaultTwo} +O{\skillMatrix@HeaderDefaultFour}}{% + \arrayrulecolor{color1}% \setlength\arrayrulewidth{\separatorrulewidth}% \vspace*{-\separatorrulewidth}% HACK; I don't understand where the space is coming from, nor what it's exact value is :( \begingroup% @@ -957,11 +965,11 @@ @{\hspace{\separatorcolumnwidth}}|@{\hspace{\separatorcolumnwidth}}% p{\skillmatrix@hintscolumnwidth}% @{\hspace{\skillmatrix@padding}}% - p{\cvskill@width}@{\hspace{\skillmatrix@padding}}% p{\cvskill@descriptorwidth}@{\hspace{\skillmatrix@padding}}% - p{\cvskill@experiencewidth}@{\hspace{\skillmatrix@padding}}% + p{\cvskill@width}@{\hspace{\skillmatrix@padding}}% + %p{\cvskill@experiencewidth}@{\hspace{\skillmatrix@padding}}% p{\skillmatrix@commentwidth}@{}}% - & & \centering{\cvSkillMatrix@HeadFont#2} & \centering{\cvSkillMatrix@HeadFont#3} & \centering{\cvSkillMatrix@HeadFont#4} & {\cvSkillMatrix@HeadFont#5} \\[#1]% the spacing needs to be inside the cell for the vertical rule to extend correctly + & & \raggedright{\cvSkillMatrix@HeadFont {\bfseries #2}} & \centering{\cvSkillMatrix@HeadFont {\bfseries #3}} & {\cvSkillMatrix@HeadFont {\bfseries\itshape #4}} \\[#1]% the spacing needs to be inside the cell for the vertical rule to extend correctly \end{tabular}% \endgroup% \par\@aftersectionfalse\ignorespaces% @@ -971,54 +979,55 @@ % %------------------------------------------------------------------------------- % % \cvskillentry % %------------------------------------------------------------------------------- -% \cvskillentry[*][]{}{<0-5>}{}{}{}% -\DeclareDocumentCommand\cvskillentry{s +O{} +m +m +m +m +m}{}% +% \cvskillentry[*][]{}{}{<0-5>}{}% +\DeclareDocumentCommand\cvskillentry{s +O{} +m +m +m +m}{}% % add cvskill matrix row. % % Input: -% asterix (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style. -% For the fancy style, the asterix has no meaning. +% asterisk (optional): include horizontal (dashed) line above the entered line. This behaviour depends on the body style. +% For the fancy style, the asterisk has no meaning. % input_1 (optional): padding length appended to the legend, default: <0.25em> % input_2: string, naming skill cathegory, default: <> -% input_3: integer between 0 and 5, describing level of skill. \cvskill{input_2} is called internally, default: <> -% input_4: string, naming the skill, default: <> -% input_5: positive real number, stating the number of years of experience with this skill , default: <> -% input_6: string, explaining details w.r.t. that particual skill default: <> +% input_3: string, naming the skill, default: <> +% input_4: integer between 0 and 5, describing level of skill. \cvskill{input_4} is called internally, default: <> +% input_5: string, explaining details w.r.t. that particual skill default: <> % % Example usages: -% \cvskillentry*{Language:}{3}{Python}{2}{I have done a million projects with Python} -% \cvskillentry{}{2}{Lilypond}{14}{So much sheet music! Man I'm the best!} -% \cvskillentry{}{3}{\LaTeX}{14}{Clearly I rock at \LaTeX} -% \cvskillentry*[1.5em]{OS:}{3}{Linux}{2}{I only use Archlinux} +% \cvskillentry*{Language:}{Python}{3}{I'm so experienced in Python and have realised a million projects. At least.} +% \cvskillentry{}{Lilypond}{2}{So much sheet music! Man, I'm the best!} +% \cvskillentry{}{\LaTeX}{3}{Clearly I rock at \LaTeX} +% \cvskillentry*{OS:}{Linux}{3}{I only use Archlinux btw} % % Note: % - The width of the columns can be adjusted by the \setcvskillcolumns command, see \setcvskillcolumns. % Definition of \cvskillentry valid for moderncvbodyi, moderncvbodyii, moderncvbodyiii, moderncvbodyiv -\RenewDocumentCommand\cvskillentry{s +O{.25em} +m +m +m +m +m}{% +\usepackage{setspace} +\newcolumntype{P}[1]{>{\setstretch{.6}}p{#1}} +\RenewDocumentCommand\cvskillentry{s +O{.25em} +m +m +m +m}{% %test for the star * in the command \IfBooleanTF{#1}{% If a star is seen a dotted line is drawn above the entry \begingroup - \renewcommand{\arraystretch}{1.25} + \renewcommand{\arraystretch}{1.1} \arrayrulecolor{bodyrulecolor} \begin{tabular}{@{}p{\skillmatrix@hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}% - p{\cvskill@width}@{\hspace{\skillmatrix@padding}}% p{\cvskill@descriptorwidth}@{\hspace{\skillmatrix@padding}}% - p{\cvskill@experiencewidth} @{\hspace{\skillmatrix@padding}}% - p{\skillmatrix@commentwidth}@{}}% - \cdashline{2-5}[.6pt/1pt] - \raggedleft\hintstyle{#3} &\centering \cvskill{#4} &\centering {#5} & \centering {#6} &{\itshape#7}% + p{\cvskill@width}@{\hspace{\skillmatrix@padding}}% + %p{\cvskill@experiencewidth} @{\hspace{\skillmatrix@padding}}% + P{\skillmatrix@commentwidth}@{}}% + \cdashline{2-4}[.6pt/1pt] + \raggedleft\hintstyle{\bfseries #3} & \raggedright {#4} & \centering \cvskill{#5} & {\skillLegend@FontSize\itshape #6}% \end{tabular}% \endgroup \par\addvspace{#2} }{% If no star is seen no line is drawn \begin{tabular}{@{}p{\skillmatrix@hintscolumnwidth}@{\hspace{\separatorcolumnwidth}}% - p{\cvskill@width}@{\hspace{\skillmatrix@padding}}% p{\cvskill@descriptorwidth}@{\hspace{\skillmatrix@padding}}% - p{\cvskill@experiencewidth}% - @{\hspace{\skillmatrix@padding}}% - p{\skillmatrix@commentwidth}@{}}% - \raggedleft\hintstyle{#3} &\centering \cvskill{#4} &\centering {#5} & \centering {#6} &{\itshape#7}% + p{\cvskill@width}@{\hspace{\skillmatrix@padding}}% + %p{\cvskill@experiencewidth}% + %@{\hspace{\skillmatrix@padding}}% + P{\skillmatrix@commentwidth}@{}}% + \raggedleft\hintstyle{\bfseries #3} & \raggedright {#4} & \centering \cvskill{#5} & {\skillLegend@FontSize\itshape #6}% \end{tabular}% \par\addvspace{#2} } @@ -1027,22 +1036,23 @@ % Definition of \cvskillentry valid for moderncvbodyv \if@moderncvbodyv% \DeclareDocumentCommand\@starIndependentMatrixEntry{}{}% - \RenewDocumentCommand\cvskillentry{s O{.25em} +m +m +m +m +m}{% + \RenewDocumentCommand\cvskillentry{s O{.25em} +m +m +m +m}{% \arrayrulecolor{bodyrulecolor}% \setlength\arrayrulewidth{\separatorrulewidth}% \vspace*{-\separatorrulewidth}% HACK; I don't understand where the space is coming from, nor what it's exact value is :( %test for the star * in the command \RenewDocumentCommand{\@starIndependentMatrixEntry}{}{% \begingroup% - \renewcommand{\arraystretch}{1.25}% + \renewcommand{\arraystretch}{1.1}% \begin{tabular}[t]{@{}p{\hintscolumnwidth}% @{\hspace{\separatorcolumnwidth}}|@{\hspace{\separatorcolumnwidth}}p{\skillmatrix@hintscolumnwidth} @{\hspace{\skillmatrix@padding}}% p{\cvskill@width}@{\hspace{\skillmatrix@padding}}% p{\cvskill@descriptorwidth}@{\hspace{\skillmatrix@padding}}% - p{\cvskill@experiencewidth} @{\hspace{\skillmatrix@padding}}p{\skillmatrix@commentwidth}@{}}% + %p{\cvskill@experiencewidth} @{\hspace{\skillmatrix@padding}} + P{\skillmatrix@commentwidth}@{}}% % \cline{3-6}% - & \raggedleft\hintstyle{#3} &\centering \cvskill{#4} &\centering {#5} & \centering {#6} &{\itshape#7}\\[#2]% + & \raggedleft\hintstyle{#3} & \centering \cvskill{#4}} & \centering {#5} & {\skillLegend@FontSize\itshape#6}\\[#2]% \end{tabular}% \endgroup% }% diff --git a/template.tex b/template.tex index 7988dae..4b1aca5 100644 --- a/template.tex +++ b/template.tex @@ -181,12 +181,12 @@ Detailed achievements: %% Usage \setcvskillcolumns[][][] %% , should be lengths smaller than \textwidth, needs to be between 0 and 1. %% Examples: -% \setcvskillcolumns[5em][][]% adjust first column. Same as \setcvskillcolumns[5em] -% \setcvskillcolumns[][0.45][]% adjust third (skill) column. Same as \setcvskillcolumns[][0.45] -% \setcvskillcolumns[][][\widthof{``Year''}]% adjust fourth (years) column. -% \setcvskillcolumns[][0.45][\widthof{``Year''}]% -% \setcvskillcolumns[\widthof{``Languag''}][0.48][] -% \setcvskillcolumns[\widthof{``Languag''}]% +% \setcvskillcolumns[5em][][]% adjust first (skill category) column. Same as \setcvskillcolumns[5em] +% \setcvskillcolumns[][0.25][]% adjust third (level) column. Same as \setcvskillcolumns[][0.45] +% \setcvskillcolumns[][][\widthof{``Comment''}]% adjust fourth (comment) column. +% \setcvskillcolumns[][0.25][\widthof{``Comment''}]% +% \setcvskillcolumns[\widthof{``Language''}][0.48][] +% \setcvskillcolumns[\widthof{``Language''}]% %% Adjusts width of legend columns. Usage \setcvskilllegendcolumns[][] %% needs to be between 0 and 1. should be a length smaller than \textwidth @@ -195,14 +195,6 @@ Detailed achievements: % \setcvskilllegendcolumns[\widthof{``Legend''}][0.45] % \setcvskilllegendcolumns[0ex][0.46]% this is usefull for the banking style -%% Add a legend if you are using \cvskill{<1-5>} command or \cvskillentry -%% Usage \cvskilllegend[*][][][][][][]{} -% \cvskilllegend % insert default legend without lines -\cvskilllegend*[1em]{}% adjust post spacing -% \cvskilllegend*{Legend}% Alternatively add a description string -%% adjust the legend entries for other languages, here German -% \cvskilllegend[0.2em][Grundkenntnisse][Grundkenntnisse und eigene Erfahrung in Projekten][Umfangreiche Erfahrung in Projekten][Vertiefte Expertenkenntnisse][Experte\,/\,Spezialist]{Legende} - %% Alternative legend style with the first three skill levels in one column %% Usage \cvskillplainlegend[*][][][][][][]{} % \setcvskilllegendcolumns[][0.6]% works for classic, casual, banking @@ -211,21 +203,29 @@ Detailed achievements: % \cvskillplainlegend[0.2em][Grundkenntnisse][Grundkenntnisse und eigene Erfahrung in Projekten][Umfangreiche Erfahrung in Projekten][Vertiefte Expertenkenntnisse][Experte/Guru]{Legende} %% Add a head of the skill matrix table with descriptions. -%% Usage \cvskillhead[][][][][]% +%% Usage \cvskillhead[][][][]% \cvskillhead[-0.1em]% this inserts the standard legend in english and adjust padding %% Adjust head of the skill matrix for other languages -% \cvskillhead[0.25em][Level][F\"ahigkeit][Jahre][Bemerkung] +% \cvskillhead[0.25em][F\"ahigkeit][Level][Bemerkung] -%% \cvskillentry[*][]{}{<0-5>}{}{}{}% +%% \cvskillentry[*][]{}{}{<0-5>}{}% %% Example usages: -\cvskillentry*{Language:}{3}{Python}{2}{I'm so experienced in Python and have realised a million projects. At least.} -\cvskillentry{}{2}{Lilypond}{14}{So much sheet music! Man, I'm the best!} -\cvskillentry{}{3}{\LaTeX}{14}{Clearly I rock at \LaTeX} -\cvskillentry*{OS:}{3}{Linux}{2}{I only use Archlinux btw}% notice the use of the starred command and the optional -\cvskillentry*[1em]{Methods}{4}{SCRUM}{8}{SCRUM master for 5 years} +\cvskillentry*{Language:}{Python}{3}{I'm so experienced in Python and have realised a million projects. At least.} +\cvskillentry{}{Lilypond}{2}{So much sheet music! Man, I'm the best!} +\cvskillentry{}{\LaTeX}{3}{Clearly I rock at \LaTeX} +\cvskillentry*{OS:}{Linux}{3}{I only use Archlinux btw}% notice the use of the starred command and the optional +\cvskillentry*[1em]{Methods:}{SCRUM}{4}{SCRUM master for 5 years} %% \cvskill{<0-5>} command % \cvitem{\textbackslash{cvskill}:}{Skills can be visually expressed by the \textbackslash{cvskill} command, e.g. \cvskill{2}} +%% Add a legend if you are using \cvskill{<1-5>} command or \cvskillentry +%% Usage \cvskilllegend[*][][][][][][]{} +% \cvskilllegend % insert default legend without lines +\cvskilllegend*[1em]{}% adjust post spacing +% \cvskilllegend*{Legend}% Alternatively add a description string +%% adjust the legend entries for other languages, here German +% \cvskilllegend[0.2em][Grundkenntnisse][Grundkenntnisse und eigene Erfahrung in Projekten][Umfangreiche Erfahrung in Projekten][Vertiefte Expertenkenntnisse][Experte\,/\,Spezialist]{Legende} + \section{Interests} \cvitem{hobby 1}{Description} \cvitem{hobby 2}{Description}