diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/unitn-bimrep/unitn-bimrep.cls |
Initial commit
Diffstat (limited to 'macros/latex/contrib/unitn-bimrep/unitn-bimrep.cls')
-rw-r--r-- | macros/latex/contrib/unitn-bimrep/unitn-bimrep.cls | 228 |
1 files changed, 228 insertions, 0 deletions
diff --git a/macros/latex/contrib/unitn-bimrep/unitn-bimrep.cls b/macros/latex/contrib/unitn-bimrep/unitn-bimrep.cls new file mode 100644 index 0000000000..7c12297081 --- /dev/null +++ b/macros/latex/contrib/unitn-bimrep/unitn-bimrep.cls @@ -0,0 +1,228 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{unitn-bimrep}[2017/09/18 University of Trento Bimonthly Report - Matteo Ragni] + +\newif\if@TNbiboption +\@TNbiboptionfalse +\DeclareOption{bib}{\@TNbiboptiontrue} +\ProcessOptions\relax + +\LoadClass[a4paper,12pt]{report} + +\let\@author\@empty +\let\@title\@empty +\let\@cycle\@empty +\let\@advisor\@empty + +\newcounter{TNenvflag} + +\RequirePackage[english]{babel} +\RequirePackage[T1]{fontenc} +\RequirePackage[a4paper, + top=1cm, + bottom=1cm, + left=1.4cm, + right=1.4cm, + marginparwidth=0pt, + headheight=0pt, + footskip=0pt + ]{geometry} +\RequirePackage{graphicx} +\RequirePackage{array} +\RequirePackage{libertine} +\RequirePackage{framed} +\if@TNbiboption + \RequirePackage[refsection=none,style=ieee,indexing=false]{biblatex} + \let\TNprintbibliography\printbibliography + \renewcommand{\printbibliography}{\TNprintbibliography[heading=none]} +\fi + +% Page Numbering +\pagenumbering{gobble} + +% Command Declarations +\newcommand{\advisor}[1]{\def\@advisor{#1}} +\newcommand{\cycle}[1]{\def\@cycle{#1}} +\newcommand{\@TNhlinenew}{\noindent\makebox[\linewidth]{\rule{\linewidth}{0.4pt}}} +% Variable Checker +\newcommand{\@TNcheckvariables}{% +\ifx\@author\@empty{ + \ClassError{unitn-bimrep}{Report Author is undefined}{Use the \author{...} command to define it} +}\fi +\ifx\@title\@empty{ + \ClassError{unitn-bimrep}{Student Thesis title is undefined}{Use the \title{...} command to define it} +}\fi +\ifx\@advisor\@empty{ + \ClassError{unitn-bimrep}{Student Advisor is undefined}{Use the \advisor{...} command to define it} +}\fi +\ifx\@cycle\@empty{ + \ClassError{unitn-bimrep}{Student Cycle is undefined}{Use the \cycle{...} command to define it} +}\fi} +\newcommand{\@TNcheckenvs}{% + \ifnum\value{TNenvflag}<1{ + \ClassError{unitn-bimrep}{Missing Research activities Environment} + {Please define it in \begin{research} ... \end{research}} + } + \ifnum\value{TNenvflag}<2{ + \ClassError{unitn-bimrep}{Missing School and Seminars attendance Environment} + {Please define it in \begin{attendance} ... \end{attendance}} + } + \ifnum\value{TNenvflag}<3{ + \ClassError{unitn-bimrep}{Missing Production Environment} + {Please define it in \begin{production} ... \end{production}} + } +} + +% Environment Checker +% Title Declaration +\renewcommand{\maketitle}{% +\@TNcheckvariables +\begin{centering} + \begin{tabular}{c} + \includegraphics[scale=0.5]{unitn-bimrep.jpg} \\ + \textsc{{\bfseries Doctoral School in Materials,}} \\ + \textsc{{\bfseries Mechatronics and Systems Engineering}} \vspace{0.3cm} \\ + BIMONTHLY REPORT. \textit{Send to: {dii.phd@unitn.it}} \vspace{0.3cm} \\ + \textsc{Deadlines}: 22.02, 22.04, 22.06, 22.08, 22.10, 20.12 (every year) \\ + \hspace{\linewidth} \\ + \end{tabular} +\end{centering} +\begin{framed} +\noindent +Student Name: \textbf{\@author} \hfill Cycle/Year: \textbf{\@cycle} \\ +Thesis: \textbf{\@title} \\ +Supervisor: \textbf{\@advisor} \hfill Date: \textbf{\today} +\end{framed}% +} + +% document environment last fixes +\AtBeginDocument{% + +\maketitle +\begin{framed} +} +\AtEndDocument{ +\ifnum\value{TNenvflag}=10\else{ + \ClassError{unitn-bimrep} + {One of the required environment is missing.} + {Please remember that the correct order is 1) Research Activities, 2) School and Seminars, 3) Publications} +}\fi +\end{framed}} + +% May be empty itemize environment wrkaround (sorurce: https://tex.stackexchange.com/questions/86547) +\let\@oldnoitemerr\@noitemerr +\newcommand\noitemerroroff{\let\@noitemerr\relax} +\newcommand\noitemerroron{\let\@noitemerr\@oldnoitemerr} +\newenvironment{TN may be empty itemize} +{\itemize\noitemerroroff} +{\enditemize\noitemerroron} +% Research - Bullet list environment +\newenvironment{research}{% + \ifnum\value{TNenvflag}=0{ + \setcounter{TNenvflag}{1} + }\else{ + \ClassError{unitn-bimrep} + {Reasearch activities already defined} + {The research environment has already been used. Please use it only once.} + }\fi + {\noindent{\large\textbf{Summary of Research Activity}:}} + \begin{TN may be empty itemize} +} +{ + \end{TN may be empty itemize} +} +% Research - Empty environment +\newenvironment{research*}{% + \ifnum\value{TNenvflag}=0{ + \setcounter{TNenvflag}{1} + }\else{ + \ClassError{unitn-bimrep} + {Reasearch activities already defined} + {The research environment has already been used. Please use it only once.} + }\fi + {\noindent{\large\textbf{Summary of Research Activity}:}} \\ +}{} +% School - Bullet list environment +\newenvironment{school}{% + \ifnum\value{TNenvflag}=5{ + \ClassError{unitn-bimrep} + {Schools and Seminars activities already defined} + {The attendance environment has already been used. Please use it only once.} + }\else{ + \ifnum\value{TNenvflag}=1{ + \setcounter{TNenvflag}{5} + }\else{ + \ClassError{unitn-bimrep} + {Schools and Seminars attendance defined before Research Activities} + {Please remember that the correct order is 1) Research Activities, 2) School and Seminars, 3) Publications} + }\fi + }\fi + \let\@TNitem\item + \renewcommand{\item}[3]{\@TNitem \emph{##1}, ##2 (##3)} + \@TNhlinenew \vspace{0.2cm} {\large \textbf{Attendance at Schools/Classes/Seminars}} (title, length (day/hours), credits): + \begin{TN may be empty itemize} +} +{ + \end{TN may be empty itemize} +} +% School - Plain environment +\newenvironment{school*}{% + \ifnum\value{TNenvflag}=5{ + \ClassError{unitn-bimrep} + {Schools and Seminars activities already defined} + {The attendance environment has already been used. Please use it only once.} + }\else{ + \ifnum\value{TNenvflag}=1{ + \setcounter{TNenvflag}{5} + }\else{ + \ClassError{unitn-bimrep} + {Schools and Seminars attendance defined before Research Activities} + {Please remember that the correct order is 1) Research Activities, 2) School and Seminars, 3) Publications} + }\fi + }\fi + \@TNhlinenew \vspace{0.2cm} {\large \textbf{Attendance at Schools/Classes/Seminars}} (title, length (day/hours), credits): \\ +}{} +% Production - Bullet list environment +\newenvironment{production}{% +\ifnum\value{TNenvflag}=10{ + \ClassError{unitn-bimrep} + {List of new publications and congress participation already defined} + {The production environment has already been used. Please use it only once.} + }\else{ + \ifnum\value{TNenvflag}=5{ + \setcounter{TNenvflag}{10} + }\else{ + \ClassError{unitn-bimrep} + {Schools and Seminars attendance defined before Research Activities} + {Please remember that the correct order is 1) Research Activities, 2) School and Seminars, 3) Publications} + }\fi + }\fi + \let\@TNitem\item + \renewcommand{\item}[3]{\@TNitem {\small##1}:\\ \emph{##2}\\ {\small##3}} + \@TNhlinenew \vspace{0.2cm} {\large\textbf{Publications/Congress participation}:} + \begin{TN may be empty itemize} +} +{ + \end{TN may be empty itemize} + \vspace{0.2cm} +} +% Production - Plain Environment +\newenvironment{production*}{% +\ifnum\value{TNenvflag}=10{ + \ClassError{unitn-bimrep} + {List of new publications and congress participation already defined} + {The production environment has already been used. Please use it only once.} + }\else{ + \ifnum\value{TNenvflag}=5{ + \setcounter{TNenvflag}{10} + }\else{ + \ClassError{unitn-bimrep} + {Schools and Seminars attendance defined before Research Activities} + {Please remember that the correct order is 1) Research Activities, 2) School and Seminars, 3) Publications} + }\fi + }\fi + \@TNhlinenew \vspace{0.2cm} {\large\textbf{Publications/Congress participation}:} \\ +} +{ + \vspace{0.2cm} +} + |