University of Mons doctoral thesis (umons-Thesis)
Alexandre Quenon's umons-Thesis class on memoir for PhD theses at the University of Mons, with title pages for the FPMS, FAU and FWEG faculties, UMONS paper size and colours, and a placeholder sample (title page, abstract, chapters, appendix).
- Category
- Thesis
- Document class
umons-Thesis(umons-Thesis.cls) — ships with TeX Live- Workflow
- Thesis / dissertation — submissions and revision rounds
- Author
- Alexandre Quenon (umons-Thesis, UMONS_latex)
- Source
- Alexandre Quenon (umons-Thesis, UMONS_latex)
- Licence
- No licence is stated in the files. Alexandre Quenon (umons-Thesis, UMONS_latex) distributes them for authors preparing a submission.
These are the publisher’s own files. This project starts from Alexandre Quenon (umons-Thesis, UMONS_latex)’s package for this publication — their manuscript, their umons-Thesis.cls, their bibliography style — so what compiles here is what they would have given you.
Alexandre Quenon (umons-Thesis, UMONS_latex) serves this exact file to University of Mons and 1 other title. Check Alexandre Quenon (umons-Thesis, UMONS_latex)’s author pages for the current instructions.
Where this differs from the publisher’s download.
- Note: A community template: umons-Thesis is written by Alexandre Quenon; it is not issued or endorsed by the University of Mons. Check it against the current thesis regulations of your university.
What you get
LICENSE· 7 KBREADME.md· 714 Bumons-Thesis/README.md· 3 KBumons-Thesis/template__pdflatex.tex— the file that is compiled · 3 KBumons-Thesis/umons-Thesis.cls· 10 KBumons-Thesis/umons-colors.sty· 4 KBumons-colors/README.md· 1 KBumons-colors/umons-colors.sty· 4 KB
These become your files. Editing them afterwards changes your project and nothing else — a project owns its files from the moment it is made.
Source
LICENSE — binary, 7 KB
README.md · 714 B
UMONS_latex
===========
Set of LaTeX packages and classes for student, researchers and professors members of the University of Mons, Belgium.
How to use it properly
----------------------
The integration of custom packages and classes to LaTeX depends on your distribution.
You can find information [here](https://en.wikibooks.org/wiki/LaTeX/Installing_Extra_Packages).
### TeX Live
Installation steps:
1. copy all folders containing packages (**.sty** files) into
*/texlive/texmf-local/tex/latex/*
2. copy all classes (**.cls** files) into
*/texlive/texmf-local/tex/latex/base/*
3. update the file index by running **texhash**
(example path on Windows *texlive/2017/bin/win32/texhash.exe*)
umons-Thesis/README.md · 3 KB
The umons-Thesis class
======================
This class defines a layout for PhD theses writtent at the University of Mons
It aims to help the authors to use LaTeX without facing troubles due to layout considerations.
The class is built upon the `memoir` class.
Class options
-------------
Values written in **bold** are default values.
| Options | Value | Description |
| :-----: | :---: | :---------- |
| papersize | **a4**, a5, umons | Formats the paper size (umons is for the final printed format). | |
| pagelayout | **default**, iso, semiiso, medieval | Formats the layout of the page (text width, margins). |
| fontname | **latinmodern**, newcentury, bookman | Selects the font family. |
| fontsize | 9pt, 10pt, **11pt**, 12pt, 14pt, 17pt, 20pt, 25pt, 30pt, 36pt, 48pt, 60pt | Selects the normal font size (same options as `memoir`). |
| twoside | **true**, false | Prints the text recto-verso. |
| oneside | true, **false** | Prints the text recto only (complementary to twoside). | |
| final | **true**, false | Prints the text for final version. |
| draft | true, **false** | Prints black boxes to show overfull \hbox and others. |
| faculty | fau, fmp, fpms, fpse, fs, fti, fweg, shs, law | Defines faculty-related options and colors. |
Styles
------
Besides the class options, the user can style:
1. the headinds (chapter, section...)
2. the page header and footer
You can find a template document generated with different styles in the [styles](./styles) directory.
### Styling the headings
As `umons-Thesis` is built upon `memoir`, the user can style the headings by using the `\headstyles{}` command.
Available styles from `memoir` are:
- bringhurst
- crosshead
- default
- dowding
- komalike
- memman
- ntglike
- tandh
- wilsondob
I have added two styles:
- quenon (my own)
- umons (based on the Word template for PhD thesis)
### Styling the page
The page style defines the header and the footer of all pages of the document.
Available styles from `memoir`, which can be accessed through the `\pagestyle{}` command, are:
- companion
- empty
- headings
- plain
- ruled
- Ruled
- simple
I have added one style:
- umons (based on the Word template for PhD thesis)
You can use the `\uppercaseheads` and `\nouppercaseheads` commands
to automatically uppercase the text in the header and footer.
Unit tests
----------
### List of tested features
* compilers [1 effective test]
- [ ] LaTeX (+ DVI to PDF),
- [X] PDFLaTeX;
- [ ] LuaLaTeX, and
- [ ] XeLaTeX.
* commands and environments [0 effective test]
* options [17 effective tests]
- [X] papersize = {a4, a5, umons}
- [X] pagelayout = {default, iso, semiiso, medieval}
- [X] fontname = {latinmodern, newcentury, bookman}
- [X] fontsize = {10pt, 11pt, 12pt}
- [X] twoside, oneside
- [X] final, draft
Total: 17 tests.
### Remarks
All unit tests have been compiled:
* with compilers (engines) included in the TeXLive (2017) distribution,
* under the TeXstudio editor,
* on a Windows 10 OS.
umons-Thesis/template__pdflatex.tex — the file that is compiled · 3 KB
%% %%
% PREAMBLE %
% ======== %
% Document class
% --------------
\documentclass[%
% Page layout
papersize=a4,%
pagelayout=default,%
% Fonts and encoding
fontname=latinmodern,%
fontsize=11pt,%
% Printing
twoside,%
final,%
% Faculty
faculty=fpms%
]{umons-Thesis}%
% Styles
\headstyles{umons}
\pagestyle{umons}
% Language and typography
% -----------------------
\usepackage[main=english, french]{babel}
\usepackage[autostyle=true]{csquotes}
\usepackage[babel=true]{microtype}
% Floats
% ------
\usepackage{float}
\usepackage{graphicx}
%\usepackage{subcaption}
\usepackage{booktabs}
% Science
% -------
% Mathematics
\usepackage{mathtools}
% Units
\usepackage{siunitx}
\sisetup{%
binary-units = true,% loads units for binary data (\bit, \byte)
}
% Bibliography
% ------------
%\usepackage[%
% backend=biber,%
% bibstyle=numeric,% prints a numeric label
% citestyle=numeric-comp,% compact variant of the numeric style which prints a list of more than two consecutive numbers as a range
%]{biblatex}
% Hyperlinks and PDF metadata
% ---------------------------
\usepackage[%
hidelinks,% hides links (removing color and border)
pdfusetitle,% uses the content of \author{}... for metadata
pdfdisplaydoctitle,% displays document title instead of file name in title bar
]{hyperref}
% References
% ----------
\usepackage{cleveref}
% Packages for test
% -----------------
\usepackage{lipsum}
\usepackage{blindtext}
%% %%
% DOCUMENT %
% ======== %
% Metadata
% --------
\author{Alexandre \textsc{Quenon}}
\date{\today}
\title{Your paper}
%\title{My very long two-line PhD thesis title}
%\title{My supra long PhD thesis title just to verify that nothing is broken because of a long title}
\committeeMembers{%
Prof. X, Chair \\
Prof. Y, Thesis director \\
Prof. Z, Thesis co-director \\
Member A
}
% Text
% ----
\begin{document}
\umonsThesisTitlePage
\frontmatter
\begin{umonsThesisAbstract}
\lipsum[1-2]
\end{umonsThesisAbstract}
\tableofcontents*
\mainmatter
\chapter{My first chapter}
\lipsum[1-3]
\section{A section}
\lipsum[4-6]
\subsection{A subsection}
\lipsum[7-9]
\subsubsection{A subsubsection}
\lipsum[10]
\paragraph{A paragraph}
\lipsum[11]
\subparagraph{A subparagraph}
\blindtext
\subsection{A second subsection}
\lipsum[13-15]
\section{Another section}
\lipsum[4-6]
\subsection{Another subsection}
\lipsum[7-9]
\subsection{Again a subsection}
\blindtext
\chapter{My second chapter with longer title}
\Blindtext[16]
\appendix
\appendixpage
\chapter{My first appendix}
\Blindtext[8]
\chapter{My second appendix}
\Blindtext[8]
\backmatter
\end{document}
umons-Thesis/umons-Thesis.cls · 10 KB
%% %%
% IDENTIFICATION %
% ============== %
% Version of LaTeX required
% -------------------------
\NeedsTeXFormat{LaTeX2e}
% Class declaration
% -----------------
\ProvidesClass{umons-Thesis}[2019/09/30 A class to write PhD thesis according to the UMONS format]
%% %%
% PRELIMINARY DECLARATIONS %
% ======================== %
% Loading 'kvoptions' package to manage key=value options
% -------------------------------------------------------
\RequirePackage{kvoptions}
% Loading 'etoolbox' for programming facilities
% ---------------------------------------------
\RequirePackage{etoolbox}
% Commands declaration needed in the declared options
% ---------------------------------------------------
%\newcommand*{cmd}{def}
%\renewcommand*{cmd}{def}
%\DeclareRobustCommand*{cmd}{def}
%
%\newcommand{cmd}{def}
%\renewcommand{cmd}{def}
%\DeclareRobustCommand{cmd}{def}
%% %%
% OPTIONS %
% ======= %
% Setup key=value options
% -----------------------
\SetupKeyvalOptions{
family=umonsThesis,
prefix=umonsThesis@
}
% New options
% -----------
\DeclareStringOption[a4]{papersize}
\DeclareStringOption[default]{pagelayout}
\DeclareStringOption[latinmodern]{fontname}
\DeclareStringOption[11pt]{fontsize}
\DeclareBoolOption[true]{twoside}
\DeclareComplementaryOption{oneside}{twoside}
\DeclareBoolOption[true]{final}
\DeclareComplementaryOption{draft}{final}
\DeclareStringOption{faculty}
%\DeclareVoidOption{optionName}{code}
% Management of not explicitly declared options (default: error)
% ---------------------------------------------
%\DeclareDefaultOption{code}
% Processing the options
% ----------------------
\ProcessKeyvalOptions{umonsThesis}\relax
%% %%
% CORE DECLARATIONS %
% ================= %
% Page layout
% -----------
% Option: papersize
\ifdefstring{\umonsThesis@papersize}{a4}{% if true
\PassOptionsToClass{a4paper}{memoir}
}{}
\ifdefstring{\umonsThesis@papersize}{a5}{% if true
\PassOptionsToClass{a5paper}{memoir}
}{}
% Fonts and encoding
% ------------------
% Option: fontname (compiler-dependent)
\RequirePackage{ifpdf}
\RequirePackage{ifxetex}
\RequirePackage{ifluatex}
\ifboolexpr{ bool{xetex} or bool{luatex} }{%true
\ClassError{umons-Thesis}{Cannot compile with the current compiler}{This class can only be compiled with: pdflatex.}
}{%false
\ifbool{pdf}{%true
\ifdefstring{\umonsThesis@fontname}{latinmodern}{% if true
\ClassInfo{umons-Thesis}{Font: Latin Modern}
\newcommand*{\memfontfamily}{lmr}
\newcommand*{\memfontenc}{T1}
\newcommand*{\memfontpack}{lmodern}
\RequirePackage{fix-cm}
}{}
\ifdefstring{\umonsThesis@fontname}{newcentury}{% if true
\ClassInfo{umons-Thesis}{Font: New Century Schoolbook}
\newcommand*{\memfontfamily}{pnc}
\newcommand*{\memfontenc}{T1}
\newcommand*{\memfontpack}{newcent}
}{}
\ifdefstring{\umonsThesis@fontname}{bookman}{% if true
\ClassInfo{umons-Thesis}{Font: Bookman}
\newcommand*{\memfontfamily}{pbk}
\newcommand*{\memfontenc}{T1}
\newcommand*{\memfontpack}{bookman}
}{}
% \ifdefstring{\umonsThesis@fontname}{helvetica}{% if true
% \ClassInfo{umons-Thesis}{Font: Helvetica}
% \newcommand*{\memfontfamily}{phv}
% \newcommand*{\memfontenc}{T1}
% \newcommand*{\memfontpack}{helvet}
% }{}
}{%false
\ClassError{umons-Thesis}{Unexpected error.}{}
}
}
% Option: fontsize
\PassOptionsToClass{\umonsThesis@fontsize}{memoir}
% Printing
% --------
% Option: twoside, oneside
\ifbool{umonsThesis@twoside}{% if true
\PassOptionsToClass{twoside}{memoir}
}{% else
\PassOptionsToClass{oneside}{memoir}
}
% Option: final, draft
\ifbool{umonsThesis@final}{% if true
\PassOptionsToClass{final}{memoir}
}{% else
\PassOptionsToClass{draft}{memoir}
}
% -------------------
% Load 'memoir' class
% -------------------
\LoadClass[onecolumn,% only one column of text on a page
openright,% each chapter will start on a recto page
extrafontsizes,% using scalable fonts that can exceed 25pt
]{memoir}
% Page layout
% -----------
% Option: papersize (umons)
\ifdefstring{\umonsThesis@papersize}{umons}{% if true
\DisemulatePackage{geometry}
\RequirePackage{geometry}
\geometry{reset,%
inner=25mm,%
top=15mm,%
total={130mm,215mm},%
includeheadfoot%
}%
}{}
% Option: pagelayout
\ifdefstring{\umonsThesis@pagelayout}{default}{% if true
\relax
}{}
\ifdefstring{\umonsThesis@pagelayout}{iso}{% if true
\isopage
\checkandfixthelayout
}{}
\ifdefstring{\umonsThesis@pagelayout}{semiiso}{% if true
\semiisopage
\checkandfixthelayout
}{}
\ifdefstring{\umonsThesis@pagelayout}{medieval}{% if true
\medievalpage
\checkandfixthelayout
}{}
% Font and encoding
% -----------------
% Load inputenc if necessary
\ifboolexpr{ not bool{luatex} and bool{pdf} }{%true
\ifdefstring{\umonsThesis@fontname}{latinmodern}{% if true
\DeclareFontShape{T1}{lmr}{b}{sc}{<->ssub*cmr/bx/sc}{}
\DeclareFontShape{T1}{lmr}{bx}{sc}{<->ssub*cmr/bx/sc}{}
}{}
\RequirePackage[utf8]{inputenc}
}{%false
}
% Colors
% ------
% Load umons-color package
\RequirePackage{umons-colors}
% Title page
% ----------
% Define the elements
\newcommand*{\umons}{University of Mons}
\newcommand*{\umonsFaculty}{\relax}
\ifdefstring{\umonsThesis@faculty}{fau}{% if true
\renewcommand*{\umonsFaculty}{Faculty of Architecture and Urban Planning}
}{}
\ifdefstring{\umonsThesis@faculty}{fmp}{% if true
\renewcommand*{\umonsFaculty}{Faculty of Medicine and Pharmacy}
}{}
\ifdefstring{\umonsThesis@faculty}{fpms}{% if true
\renewcommand*{\umonsFaculty}{Faculty of Engineering}
}{}
\ifdefstring{\umonsThesis@faculty}{fpse}{% if true
\renewcommand*{\umonsFaculty}{Faculty of Psychology and Education}
}{}
\ifdefstring{\umonsThesis@faculty}{fs}{% if true
\renewcommand*{\umonsFaculty}{Faculty of Science}
}{}
\ifdefstring{\umonsThesis@faculty}{fti}{% if true
\renewcommand*{\umonsFaculty}{Faculty of Translation and Interpretation}
}{}
\ifdefstring{\umonsThesis@faculty}{fweg}{% if true
\renewcommand*{\umonsFaculty}{Warocqué School of Business and Economics}
}{}
\ifdefstring{\umonsThesis@faculty}{shs}{% if true
\renewcommand*{\umonsFaculty}{School of Human and Social Sciences}
}{}
\ifdefstring{\umonsThesis@faculty}{law}{% if true
\renewcommand*{\umonsFaculty}{Law School}
}{}
\newcommand*{\submissionFor}{A dissertation submitted in partial fulfillment of the requirements for the degree of}
\newcommand*{\phdDegree}{Doctor of Philosophy}
\newcommand{\phdCommittee}{PhD Committee}
\newcommand{\committeeMembers}[1]{\def\umonsCommitteeMembers{#1}}
% Assemble the title page
\newcommand*{\titleThesisUMONS}{\begingroup%
\centering
{\bfseries\umons}\par
{\umonsFaculty}\par
\vspace*{5.0\baselineskip}
{\Huge\bfseries\thetitle}\par
\vspace*{2.0\baselineskip}
{\large\theauthor}\par
\vspace*{5.0\baselineskip}
\submissionFor\par
{\scshape\phdDegree}\par
\vfill
%
\flushleft
{\bfseries\phdCommittee}\dotfill\par
\vspace*{\baselineskip}
\hbox{%
\hspace*{0.05\textwidth}
\parbox[b]{0.7\textwidth}{%
\vbox{%
{\umonsCommitteeMembers}\par
}
}
\hspace{0.25\textwidth}
}
\vfill\null
\endgroup}
% High-level command
\newcommand{\umonsThesisTitlePage}{%
\begin{titlingpage}
\titleThesisUMONS
\end{titlingpage}
}
% Abstract page
% -------------
% Title: like a chapter
\abstractnum
% Text: normal size
\renewcommand{\abstracttextfont}{\normalfont\normalsize}
% Define environment to hide some \clearpage mechanism
\newenvironment{umonsThesisAbstract}{%begdef
\begin{abstract}
}{%enddef
\end{abstract}
\clearforchapter
}
% Numbering
% ---------
\setsecnumdepth{subsection}
% Styles: page
% ------------
% umons pagestyle
\makepagestyle{umons}
\makerunningheadwidth{umons}{\textwidth}
\makeheadrule{umons}{\textwidth}{\normalrulethickness}
\makeoddhead{umons}{\rightmark}{}{\thepage}
\makeevenhead{umons}{\thepage}{}{\leftmark}
\makeoddfoot{umons}{}{}{}
\makepsmarks{umons}{%
\nouppercaseheads
\createmark{chapter}{both}{nonumber}{}{}
\clearmark{section}
\aliaspagestyle{chapter}{empty}
}
% Styles: chapter heading
% -----------------------
% umons chapterstyle
\newif\ifchapternonum
\makechapterstyle{umons}{%
% Set the fonts
\renewcommand{\chapnamefont}{\sffamily\huge\mdseries}%
\renewcommand{\chapnumfont}{\chapnamefont}%
\renewcommand{\chaptitlefont}{\sffamily\Huge\bfseries\raggedright}%
% Erase print commands because everything will be printed by \printchaptertitle
\renewcommand{\printchaptername}{}
\renewcommand{\printchapternum}{}
\renewcommand{\printchapternonum}{\chapternonumtrue}
\renewcommand{\afterchapternum}{}%
% Format the print
\renewcommand{\printchaptertitle}[1]{%
\noindent%
\ifchapternonum
\chaptitlefont ##1
\else
\begin{tabularx}{\textwidth}{lX}%
\mbox{\chapnamefont\@chapapp\space\chapnumfont\thechapter\hspace*{1em}} &
\parbox[t]{\linewidth}{\chaptitlefont ##1}
\end{tabularx}
\fi
}
}
% Styles: headings
% ----------------
% umons headstyle
\makeheadstyles{umons}{%
% chapter
\chapterstyle{umons}
% section
\setsecheadstyle{\sffamily\Large\bfseries\raggedright}%
% subsection
\setsubsecheadstyle{\sffamily\large\mdseries\raggedright}%
% subsubsection
\setsubsubsecheadstyle{\sffamily\normalsize\mdseries\raggedright}%
% paragraph
\setafterparaskip{-1em}%
\setparaheadstyle{\sffamily\normalsize\slshape}%
% subparagraph
\setaftersubparaskip{-1em}%
\setsubparaheadstyle{\sffamily\normalsize\itshape}%
}
% quenon headstyle
\makeheadstyles{quenon}{%
% chapter
% section
\setsecheadstyle{\Large\bfseries\scshape\raggedright}%
% subsection
\setsubsecheadstyle{\large\bfseries\raggedright}%
% subsubsection
\setsubsubsecheadstyle{\normalfont\normalsize\bfseries\raggedright}%
% paragraph
\setafterparaskip{-1em}%
\setparaheadstyle{\normalfont\normalsize\slshape\addperiod}%
% subparagraph
\setaftersubparaskip{-1em}%
\setsubparaheadstyle{\normalfont\normalsize\itshape\addperiod}%
}
umons-Thesis/umons-colors.sty · 4 KB
%% %%
% IDENTIFICATION %
% ============== %
% Version of LaTeX required
% -------------------------
\NeedsTeXFormat{LaTeX2e}
% Package declaration
% -------------------
\ProvidesPackage{umons-colors}[2019/05/22 Package defining the colors specific to the University of Mons (Belgium).]
%% %%
% PRELIMINARY DECLARATIONS %
% ======================== %
% Packages needed in the declared options
% ---------------------------------------
\RequirePackage{ifthen}
%% %%
% OPTIONS %
% ======= %
% 'verbose' option
% ----------------
\newboolean{@verbose}
\setboolean{@verbose}{false}
\DeclareOption{verbose}{%
\setboolean{@verbose}{true}%
\PackageInfo{umons-colors}{Option: 'verbose' enabled}%
}
% Default option list
% -------------------
\ExecuteOptions{verbose}
% Processing the options
% ----------------------
\ProcessOptions\relax
%% %%
% CORE DECLARATIONS %
% ================= %
% Loading 'xcolor'
% ----------------
\RequirePackage{xcolor}
% Defining global colors for the University
% -----------------------------------------
\definecolor{umonsRed}{RGB}{168,0,57}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsRed' defined.}}%
{\relax}
\definecolor{umonsBlue}{RGB}{0,171,204}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsBlue' defined.}}%
{\relax}
\definecolor{umonsGray}{RGB}{150,150,150}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsGray' defined.}}%
{\relax}
\definecolor{umonsYellow}{RGB}{246,167,35}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsGray' defined.}}%
{\relax}
% Defining colors specific to each Faculty
% ----------------------------------------
% ### Architecture
\definecolor{umonsFAUColor}{RGB}{162,195,1}
\colorlet{umonsArchiColor}{umonsFAUColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFAUColor' + 'umonsArchiColor' synonym defined.}}%
{\relax}
% ### Medicine
\definecolor{umonsFMPColor}{RGB}{196,2,66}
\colorlet{umonsMedicColor}{umonsFMPColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFMPColor' + 'umonsMedicColor' synonym defined.}}%
{\relax}
% ### Engineering
\definecolor{umonsFPMsColor}{RGB}{0,76,147}
\colorlet{umonsEngColor}{umonsFPMsColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFPMsColor' + 'umonsEngColor' synonym defined.}}%
{\relax}
% ### Psychology
\definecolor{umonsFPSEColor}{RGB}{0,158,224}
\colorlet{umonsFPEColor}{umonsFPSEColor}
\colorlet{umonsPsyColor}{umonsFPSEColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFPSEColor' + 'umonsFPEColor' synonym + 'umonsPsyColor' synonym defined.}}%
{\relax}
% ### Science
\definecolor{umonsFSColor}{RGB}{2,150,135}
\colorlet{umonsSciColor}{umonsFSColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFSColor' + 'umonsSciColor' synonym defined.}}%
{\relax}
% ### Translation
\definecolor{umonsFTIColor}{RGB}{205,0,76}
\colorlet{umonsEIIColor}{umonsFTIColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFTIColor' + 'umonsEIIColor' synonym defined.}}%
{\relax}
% ### Economy
\definecolor{umonsFWEGColor}{RGB}{0,70,150}
\colorlet{umonsWawaColor}{umonsFWEGColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFWEGColor' + 'umonsWawaColor' synonym defined.}}%
{\relax}
% ### Social sciences
\definecolor{umonsSHSColor}{RGB}{252,94,10}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsSHSColor' defined.}}%
{\relax}
% ### Law
\definecolor{umonsLawColor}{RGB}{102,40,74}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsLawColor' defined.}}%
{\relax}
umons-colors/README.md · 1 KB
The umons-colors package
=========================
This package defines the colors of the University of Mons,
as defined by the corporate identity and style guide.
It can be called to define colors for layout of documents related to the University.
Package options
---------------
Values written in *italic* are default values.
| Options | Value | Description |
| :-----: | :---: | :---------- |
| verbose | *true*, false | Writes detailed information in the *.log file. |
Unit tests
----------
### List of tested features
* compilers [2 effective tests]
- [X] LaTeX (+ DVI to PDF),
- [X] PDFLaTeX;
- [X] LuaLaTeX, and
- [X] XeLaTeX.
* commands and environments [2 effective tests]
- [X] `textcolor` command, and
- [X] `testcolors` environment.
Total: 8 tests.
### Remarks
For the [LuaLaTeX + `testcolors`] unit test, I could not use the `standalone` class
because errors were genereted.
I think that it might have a clash.
Hence, the use of `minimal` instead.
All unit tests have been compiled:
* with compilers (engines) included in the TeXLive (2017) distribution,
* under the TeXstudio editor,
* on a Windows 10 OS.
umons-colors/umons-colors.sty · 4 KB
%% %%
% IDENTIFICATION %
% ============== %
% Version of LaTeX required
% -------------------------
\NeedsTeXFormat{LaTeX2e}
% Package declaration
% -------------------
\ProvidesPackage{umons-colors}[2019/05/22 Package defining the colors specific to the University of Mons (Belgium).]
%% %%
% PRELIMINARY DECLARATIONS %
% ======================== %
% Packages needed in the declared options
% ---------------------------------------
\RequirePackage{ifthen}
%% %%
% OPTIONS %
% ======= %
% 'verbose' option
% ----------------
\newboolean{@verbose}
\setboolean{@verbose}{false}
\DeclareOption{verbose}{%
\setboolean{@verbose}{true}%
\PackageInfo{umons-colors}{Option: 'verbose' enabled}%
}
% Default option list
% -------------------
\ExecuteOptions{verbose}
% Processing the options
% ----------------------
\ProcessOptions\relax
%% %%
% CORE DECLARATIONS %
% ================= %
% Loading 'xcolor'
% ----------------
\RequirePackage{xcolor}
% Defining global colors for the University
% -----------------------------------------
\definecolor{umonsRed}{RGB}{168,0,57}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsRed' defined.}}%
{\relax}
\definecolor{umonsBlue}{RGB}{0,171,204}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsBlue' defined.}}%
{\relax}
\definecolor{umonsGray}{RGB}{150,150,150}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsGray' defined.}}%
{\relax}
\definecolor{umonsYellow}{RGB}{246,167,35}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsGray' defined.}}%
{\relax}
% Defining colors specific to each Faculty
% ----------------------------------------
% ### Architecture
\definecolor{umonsFAUColor}{RGB}{162,195,1}
\colorlet{umonsArchiColor}{umonsFAUColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFAUColor' + 'umonsArchiColor' synonym defined.}}%
{\relax}
% ### Medicine
\definecolor{umonsFMPColor}{RGB}{196,2,66}
\colorlet{umonsMedicColor}{umonsFMPColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFMPColor' + 'umonsMedicColor' synonym defined.}}%
{\relax}
% ### Engineering
\definecolor{umonsFPMsColor}{RGB}{0,76,147}
\colorlet{umonsEngColor}{umonsFPMsColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFPMsColor' + 'umonsEngColor' synonym defined.}}%
{\relax}
% ### Psychology
\definecolor{umonsFPSEColor}{RGB}{0,158,224}
\colorlet{umonsFPEColor}{umonsFPSEColor}
\colorlet{umonsPsyColor}{umonsFPSEColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFPSEColor' + 'umonsFPEColor' synonym + 'umonsPsyColor' synonym defined.}}%
{\relax}
% ### Science
\definecolor{umonsFSColor}{RGB}{2,150,135}
\colorlet{umonsSciColor}{umonsFSColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFSColor' + 'umonsSciColor' synonym defined.}}%
{\relax}
% ### Translation
\definecolor{umonsFTIColor}{RGB}{205,0,76}
\colorlet{umonsEIIColor}{umonsFTIColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFTIColor' + 'umonsEIIColor' synonym defined.}}%
{\relax}
% ### Economy
\definecolor{umonsFWEGColor}{RGB}{0,70,150}
\colorlet{umonsWawaColor}{umonsFWEGColor}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsFWEGColor' + 'umonsWawaColor' synonym defined.}}%
{\relax}
% ### Social sciences
\definecolor{umonsSHSColor}{RGB}{252,94,10}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsSHSColor' defined.}}%
{\relax}
% ### Law
\definecolor{umonsLawColor}{RGB}{102,40,74}
\ifthenelse{\boolean{@verbose}}%
{\PackageInfo{umons-colors}{New color: 'umonsLawColor' defined.}}%
{\relax}
The first page, as this template compiles today. Click it to enlarge, and again to shrink. Open the file ↗