From c78f607b5cd7ce15b38b4b22028d19a549f9d0df Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 26 Jul 2023 20:13:10 +0000 Subject: tidyres (26jul23) git-svn-id: svn://tug.org/texlive/trunk@67738 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/tidyres/README.md | 6 + .../texmf-dist/doc/latex/tidyres/tidyres-doc.pdf | Bin 211638 -> 71048 bytes .../texmf-dist/doc/latex/tidyres/tidyres-doc.tex | 80 +++++----- Master/texmf-dist/tex/latex/tidyres/tidyres.sty | 167 +++++++++++++++++---- 4 files changed, 179 insertions(+), 74 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/tidyres/README.md b/Master/texmf-dist/doc/latex/tidyres/README.md index d9a29c957cb..93d7fb3c175 100644 --- a/Master/texmf-dist/doc/latex/tidyres/README.md +++ b/Master/texmf-dist/doc/latex/tidyres/README.md @@ -11,6 +11,12 @@ You may contact me via Github. +#### Version + +``Version 2.0.0`` (July 27, 2023) + + + #### Basic Functions This `tidyres` package aims to provide users with a simple interface to create multi-column formal resume. diff --git a/Master/texmf-dist/doc/latex/tidyres/tidyres-doc.pdf b/Master/texmf-dist/doc/latex/tidyres/tidyres-doc.pdf index 9fa4ac0ed0a..a15f8c83be6 100644 Binary files a/Master/texmf-dist/doc/latex/tidyres/tidyres-doc.pdf and b/Master/texmf-dist/doc/latex/tidyres/tidyres-doc.pdf differ diff --git a/Master/texmf-dist/doc/latex/tidyres/tidyres-doc.tex b/Master/texmf-dist/doc/latex/tidyres/tidyres-doc.tex index 0fad9a2a698..711efcbad27 100644 --- a/Master/texmf-dist/doc/latex/tidyres/tidyres-doc.tex +++ b/Master/texmf-dist/doc/latex/tidyres/tidyres-doc.tex @@ -1,45 +1,16 @@ \documentclass[a4paper,10pt]{article} % packages % +\usepackage{tidyres} \usepackage[margin=1in]{geometry} -\usepackage{amsmath,amssymb} -\usepackage[dvipsnames]{xcolor} -\usepackage{hologo} -\usepackage[hidelinks]{hyperref} \usepackage[type={CC},modifier={by},version={4.0}]{doclicense} -\usepackage{tidyres} \usepackage{cprotect} -\usepackage{listings} -\usepackage[most]{tcolorbox} \usepackage{changepage} \hypersetup{colorlinks=True,allcolors=cyan} \renewcommand{\contentsname}{\centering Table of Contents} % info % \title{{\tt tidyres} for Tidy Formal Resume} \author{\itshape Yifan Liang} -\date{v1.0.0 2023-02-10} - -\definecolor{codegreen}{rgb}{0,0.6,0} -\definecolor{codegray}{rgb}{0.5,0.5,0.5} -\definecolor{backcolour}{rgb}{0.95,0.95,0.92} -\lstdefinestyle{mystyle}{ - language=[LaTeX]{TeX}, - backgroundcolor=\color{backcolour}, - commentstyle=\color{codegreen}, - numberstyle=\small\color{codegray}, - basicstyle=\ttfamily\normalsize, - breakatwhitespace=false, - breaklines=true, - keepspaces=true, - numbers=left, - numbersep=5pt, - showspaces=false, - showstringspaces=false, - showtabs=false, - tabsize=2, - texcsstyle=*\color{blue}, -} -\lstset{style=mystyle} - +\date{v2.0.0 2023-07-27} % document % \begin{document} @@ -64,7 +35,10 @@ This {\tt tidyres} package aims to provide users with a simple interface to crea Users can also incorporate other packages such as \verb+enumitem+ to make bullet point in the resume. -\vspace{1cm} +\subsection{Notes for v2.0.0} +As of July 27, 2023, {\tt tidyres} requires the users to use \hologo{XeLaTeX} or \hologo{LuaLaTeX} to compile as the additional customization feature on font is added, which loads the {\tt fontspec} package.\\ +\\ +Additionally, the \verb+\restitle+ command now accepts key values to make the title for your resume. \subsection{License} This work is licensed under \href{https://creativecommons.org/licenses/by/4.0/}{Creative Commons "Attribution 4.0 International" license}.\\ @@ -82,9 +56,9 @@ For detailed information about the license, please visit the Creative Commons' w For a typical resume, depending on the font style and font size you use, it is suggested that you set the page margin between {\bf 0.5 inch} to {\bf 1 inch}.\\ ~\\ You can set the margin with the {\tt geometry} package using the following code: -\begin{lstlisting} +\begin{codebox}[title=Page Margin] \usepackage[margin=0.5in]{geometry} -\end{lstlisting} +\end{codebox} \vspace{1cm} @@ -93,10 +67,10 @@ Typically, a resume would use {\bf 9pt} to {\bf 11pt} font.\\ ~\\ I would suggest using the {\tt extarticle} class to set the font size globally: -\begin{lstlisting} +\begin{codebox}[title=Font Size] \documentclass[9pt]{extarticle} % The extarticle class supports at least 8pt font size. -\end{lstlisting} +\end{codebox} \newpage \section{Resume Title} @@ -105,9 +79,16 @@ I would suggest using the {\tt extarticle} class to set the font size globally: The \verb+\restitle+ command helps user to print the title of the resume, which contains key information such as name, location, email, phone, and Linkedin ID.\\ \subsection{Example Code} -\begin{lstlisting} -\restitle{My Name}{Location}{Email}{Phone}{LinkedinID}{http://linkedin.com} -\end{lstlisting} +\begin{codebox}[title=Resume Title Example Code] +\restitle{ + name=John Doe, + location=New York, + email=john.doe@gmail.com, + phone=(646) 111-1234, + linkedinid=johndoe, + linkedinurl=http://linkedin.com +} +\end{codebox} \vspace{1cm} @@ -116,7 +97,14 @@ The \verb+\restitle+ command helps user to print the title of the resume, which \vspace{1cm} \begin{tcolorbox}[standard jigsaw,opacityback=0.1,colback=gray,boxrule=0.5pt] -\restitle{My Name}{Location}{Email}{Phone}{ID}{http://linkedin.com} +\restitle{ + name=John Doe, + location=New York, + email=john.doe@gmail.com, + phone=(646) 111-1234, + linkedinid=johndoe, + linkedinurl=http://linkedin.com +} \end{tcolorbox} \vspace{1cm} @@ -124,9 +112,9 @@ The \verb+\restitle+ command helps user to print the title of the resume, which \subsection{Note} The hyperlink color of Linkedin can be set via {\tt hyperref} package. If you wish to set it in black, you may use the following code: -\begin{lstlisting} +\begin{codebox}[title=Color of Hyperlink] \usepackage[hidelinks]{hyperref} -\end{lstlisting} +\end{codebox} \newpage @@ -142,7 +130,7 @@ The \verb+\ressep+ command separates the experience/event within a section. \newpage \subsection{Example Code} -\begin{lstlisting} +\begin{codebox}[title=Resume Section Example Code] \begin{ressection}[Education] {\bf ABC University}, {\sl College of Arts \& Science}, New York, NY \hfill @@ -167,7 +155,7 @@ The \verb+\ressep+ command separates the experience/event within a section. \item Honors \& Societies: XYZ Poem Society \end{enumerate} \end{ressection} -\end{lstlisting} +\end{codebox} \vspace{1cm} @@ -207,4 +195,6 @@ The \verb+\ressep+ command separates the experience/event within a section. \end{tcolorbox} \end{adjustwidth} -\end{document} \ No newline at end of file +\end{document} + +%%% Last Update: 2023-07-27 %%% \ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/tidyres/tidyres.sty b/Master/texmf-dist/tex/latex/tidyres/tidyres.sty index 45860b3f4af..b38f12ed9b3 100644 --- a/Master/texmf-dist/tex/latex/tidyres/tidyres.sty +++ b/Master/texmf-dist/tex/latex/tidyres/tidyres.sty @@ -1,17 +1,20 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{tidyres}[2023-02-10 v1.0.0] +\ProvidesPackage{tidyres}[2023-07-27 v2.0.0] % packages % \RequirePackage{paracol} \RequirePackage{tabularray} -\RequirePackage{enumitem} -\RequirePackage{amsmath} -\RequirePackage{amssymb} \RequirePackage[dvipsnames]{xcolor} -\RequirePackage{hologo} \RequirePackage{setspace} \RequirePackage[hidelinks]{hyperref} +\RequirePackage{minted} +\RequirePackage[most]{tcolorbox} +\RequirePackage{enumitem} +\RequirePackage{amsmath,amssymb} +\RequirePackage{hologo} \RequirePackage{fontawesome} +\RequirePackage{expkv-def,expkv-cs} + % format % \setlength{\parindent}{0pt} @@ -21,33 +24,139 @@ \linespread{1.25} \pagestyle{empty} -% font % -% \newfontfamily\textcm{CMU Serif} +%%% font %%% +\RequirePackage{fontspec} +\RequirePackage{unicode-math} +\setmainfont{TeX Gyre Termes} +\setsansfont{TeX Gyre Heros} +\setmonofont{NewComputerModernMono10} +\setmathfont{NewComputerModernMath} +\newfontfamily\textcm{NewComputerModern10} +\newfontfamily\texttm{TeX Gyre Termes} +\newfontfamily\texthr{TeX Gyre Heros} +\unimathsetup{math-style=TeX, bold-style=TeX} % definition % -\newcommand{\restitle}[6] -{\begin{spacing}{1.15} +\ekvdefinekeys{restitlekey}{ + store name=\restitlekey@name, + initial name={Name}, + store location=\restitlekey@location, + initial location={Location}, + store email=\restitlekey@email, + initial email={Email}, + store phone=\restitlekey@phone, + initial phone={Phone}, + store linkedinid=\restitlekey@linkedinid, + initial linkedinid={Linkedin ID}, + store linkedinurl=\restitlekey@linkedinurl, + initial linkedinurl={http://linkedin.com}, +} +\ekvsetdef\restitlekeyset{restitlekey} +\newcommand{\restitle}[1] +{ +\restitlekeyset{#1} +\begin{spacing}{1.15} \begin{tblr}{ - column{1} = {l}, - column{2} = {r}, - column{3} = {l}, - cell{1}{1} = {r=4}{}, - colspec = {X[5]X[2.8]X[2.2]} -} -\hspace{6mm}{\fontsize{22}{22}\selectfont \sc #1} -& \faLocationArrow -& #2 \\ -& \faAt -& {\sl #3} \\ -& \faPhone -& #4 \\ -& \faLinkedinSquare -& \href{#6}{Linkedin - {\sl #5}}\\ -\hline -\end{tblr}\end{spacing}\vspace{7mm}} + column{1} = {l}, + column{2} = {r}, + column{3} = {l}, + cell{1}{1} = {r=4}{}, + colspec = {X[5]X[2.5]X[2.5]}, + hline{Z} = {1}{1-Z}{0em}, + hline{Z} = {2}{1-Z}{0.05em} +} + \hspace{6mm}{\fontsize{22}{22}\selectfont \sc \restitlekey@name} + & \faLocationArrow + & \restitlekey@location \\ + & \faAt + & {\sl \restitlekey@email} \\ + & \faPhone + & \restitlekey@phone \\ + & \faLinkedinSquare + & \href{\restitlekey@linkedinurl}{Linkedin - {\sl \restitlekey@linkedinid}} +\end{tblr} +\end{spacing} +\vspace{5mm} +} \newenvironment{ressection}[2][Section] -{\begin{paracol}{2} {\sc #1} \switchcolumn {#2}} -{\end{paracol}\vspace{5mm}} +{ + \begin{paracol}{2} + {\sc #1} + \switchcolumn + {#2} +} +{ + \end{paracol} + \vspace{5mm} +} + +\newcommand{\ressep}[0]{\vspace{2mm}} + + + + + +%%% tcolorbox for documentation purposes %%% +\newtcbox{\boxedtitle}[1][gray]{ + on line, + arc=3pt, + colback=#1!95!white, + colframe=#1!95!white, + boxrule=1pt, + boxsep=0pt, + left=3pt, + right=3pt, + top=3pt, + bottom=3pt +} +\renewcommand{\theFancyVerbLine}{\rmfamily\textcolor{gray}{\arabic{FancyVerbLine}}} +\tcbuselibrary{minted} +\ekvdefinekeys{codeboxkey}{ + store title=\codeboxkey@title, + initial title={}, + store color=\codeboxkey@color, + initial color=LimeGreen +} +\ekvsetdef\codeboxkeyset{codeboxkey} +\newenvironment{codebox}[1][]{ + \codeboxkeyset{#1} + \tcblisting{ + listing engine=minted, + minted style=manni, + minted language=tex, + minted options={ + fontsize=\small, + breaklines, + autogobble, + linenos, + numbersep=0.25cm, + escapeinside=|| + }, + enhanced jigsaw, + breakable, + listing only, + left=0.75cm, + lefttitle=0.3cm, + arc=5pt, + boxrule=1pt, + colback=\codeboxkey@color!1!white, + colframe=\codeboxkey@color!95!black, + top=0cm, + bottom=0cm, + title={\texthr \boxedtitle[\codeboxkey@color]{\bfseries\textcolor{white}{CODE}} \textcolor{\codeboxkey@color}{\codeboxkey@title}}, + toptitle=0.5ex, + bottomtitle=0.5ex, + titlerule=0ex, + colbacktitle=\codeboxkey@color!10!white, + overlay={\begin{tcbclipinterior} + \fill[\codeboxkey@color!5!white] (frame.south west) rectangle ([xshift=0.75cm]frame.north west); + \end{tcbclipinterior} + } + } +} +{ + \endtcblisting +} -\newcommand{\ressep}[0]{\vspace{2mm}} \ No newline at end of file +%%% Last Update: 2023-07-27 %%% -- cgit v1.2.3