diff options
Diffstat (limited to 'macros/latex')
63 files changed, 2197 insertions, 959 deletions
diff --git a/macros/latex/contrib/customenvs/doc/customenvs-doc-en.pdf b/macros/latex/contrib/customenvs/doc/customenvs-doc-en.pdf Binary files differindex cc05bf618a..1ad60cdfb4 100644 --- a/macros/latex/contrib/customenvs/doc/customenvs-doc-en.pdf +++ b/macros/latex/contrib/customenvs/doc/customenvs-doc-en.pdf diff --git a/macros/latex/contrib/customenvs/doc/customenvs-doc-en.tex b/macros/latex/contrib/customenvs/doc/customenvs-doc-en.tex index 6c09fb0f57..d02570a569 100644 --- a/macros/latex/contrib/customenvs/doc/customenvs-doc-en.tex +++ b/macros/latex/contrib/customenvs/doc/customenvs-doc-en.tex @@ -34,8 +34,8 @@ \usepackage[margin=1.5cm]{geometry} \setlength{\parindent}{0pt} -\def\TPversion{0.2.0} -\def\TPdate{26/08/2024} +\def\TPversion{0.2.1} +\def\TPdate{01/09/2024} \usepackage{tcolorbox} \sethlcolor{lightgray!25} \NewDocumentCommand\MontreCode{ m }{% @@ -111,7 +111,9 @@ \section{History} -\verb|v0.1.9|~:~~~~Skills with stars (\textsf{fontawesome5} or \TikZ) +\verb|v0.2.1|~:~~~Enhancements for \textit{stars skills} + AutoGrid for \TikZ\ (see \textsf{[fr]} doc) + +\verb|v0.2.0|~:~~~~Skills with stars (\textsf{fontawesome5} or \TikZ) \verb|v0.1.9|~:~~~~Title banner diff --git a/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.pdf b/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.pdf Binary files differindex 4059d5dfa2..7f6eb4c950 100644 --- a/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.pdf +++ b/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.pdf diff --git a/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.tex b/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.tex index 13058113c2..a33fdbb8e2 100644 --- a/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.tex +++ b/macros/latex/contrib/customenvs/doc/customenvs-doc-fr.tex @@ -39,8 +39,8 @@ \usepackage[margin=1.5cm]{geometry} \setlength{\parindent}{0pt} -\def\TPversion{0.2.0} -\def\TPdate{26 août 2024} +\def\TPversion{0.2.1} +\def\TPdate{01 septembre 2024} \usepackage{tcolorbox} \tcbuselibrary{listingsutf8} \newtcblisting{DemoCode}[1]{% @@ -66,10 +66,10 @@ keywordstyle={\color{violet}},% classoffset=2,% alsoletter={-},% - morekeywords={\ReponsesQCM,MultiCols,\CreerListeItems,\ListeChoixItems,\TableauCompetences,\CrayonDeCompetences,\StyleEnvtExo,\StyleEnvtExoDefaut,\TitreExo,\ipsum,EnvSMS,\SMSrec,\SMSenv,BoiteSimple,\SujetTitreExo,\CircledNumber,\AffVignette,\BoiteArrondie,\ChangerDisplaySkip,\celcouleur,\celfusion,\lignetxt,\colonnetxt,\celnumbreak,\celtxt,\BandeauScore,\InsererImage,\tkzBannerTri,\NiveauDiffExos,\tkzEtoiles},% + morekeywords={\ReponsesQCM,MultiCols,\CreerListeItems,\ListeChoixItems,\TableauCompetences,\CrayonDeCompetences,\StyleEnvtExo,\StyleEnvtExoDefaut,\TitreExo,\ipsum,EnvSMS,\SMSrec,\SMSenv,BoiteSimple,\SujetTitreExo,\CircledNumber,\AffVignette,\BoiteArrondie,\ChangerDisplaySkip,\celcouleur,\celfusion,\lignetxt,\colonnetxt,\celnumbreak,\celtxt,\BandeauScore,\InsererImage,\tkzBannerTri,\NiveauDiffExos,\tkzEtoiles,\tkzGrilleAuto,\tkzAutoGridLocal,\tkzAutoGridActivate},% keywordstyle={\color{green!50!black}},% classoffset=3,% - morekeywords={Largeur,Filets,EspacesCL,NbCols,Labels,PoliceLabels,EspaceLabels,Swap,Type,CoeffEspVert,EpTrait,Alea,LargeurNivs,Niveaux,NoticeNiveaux,Titre,PolTitre,PolNotice,PolComp,LigneSep,CouleurNotice,CouleurNiveaux,CouleurFond,Note,Notice,PoliceCateg,PoliceBloc,Couleurs,LargeurBloc,Echelle,NoirBlanc,Libelle,EpTrait,Police,Type,ComplementTitre,Titre,CodeDebut,Couleur,EchelleImage,Decoration,Trait,Avatar,AffAvatar,NoirBlanc,CouleurE,CouleurR,CouleurFond,Hauteur,Largeur,PoliceTxt,CouleurTitre,AlignH,bg,txt,bthick,bcol,raise,Type,EspH,Fond,Texte,Style,Dense,Avant,AvantS,Apres,ApresS,Global,align,width,Legende,CouleurFond,Hauteur,Ratio,AffLegende,Couleurs,EchelleSymboles,Symboles,vRemplir,vOffset,vCentrer,height,width,blockwidth,collight,colmedium,coldar,coltxt,fonttxt,swap,maincolor,logo,type,num,dispblock,customtype,Couleur,AlignV,Offset,NiveauMax},% + morekeywords={Largeur,Filets,EspacesCL,NbCols,Labels,PoliceLabels,EspaceLabels,Swap,Type,CoeffEspVert,EpTrait,Alea,LargeurNivs,Niveaux,NoticeNiveaux,Titre,PolTitre,PolNotice,PolComp,LigneSep,CouleurNotice,CouleurNiveaux,CouleurFond,Note,Notice,PoliceCateg,PoliceBloc,Couleurs,LargeurBloc,Echelle,NoirBlanc,Libelle,EpTrait,Police,Type,ComplementTitre,Titre,CodeDebut,Couleur,EchelleImage,Decoration,Trait,Avatar,AffAvatar,NoirBlanc,CouleurE,CouleurR,CouleurFond,Hauteur,Largeur,PoliceTxt,CouleurTitre,AlignH,bg,txt,bthick,bcol,raise,Type,EspH,Fond,Texte,Style,Dense,Avant,AvantS,Apres,ApresS,Global,align,width,Legende,CouleurFond,Hauteur,Ratio,AffLegende,Couleurs,EchelleSymboles,Symboles,vRemplir,vOffset,vCentrer,height,width,blockwidth,collight,colmedium,coldar,coltxt,fonttxt,swap,maincolor,logo,type,num,dispblock,customtype,Couleur,AlignV,Offset,NiveauMax,pasX,pasY,grilleauto},% keywordstyle={\color{orange}} },% #1 @@ -149,6 +149,8 @@ \section{Historique} +\verb|v0.2.1|~:~~~Amélioration de la gestion des étoiles pour des niveaux de difficultés + Grille auto pour \TikZ\ + \verb|v0.2.0|~:~~~Étoiles pour des niveaux de difficultés (compatible avec \texttt{EnvtExo}) \verb|v0.1.9|~:~~~Bannière de titre + Insertion d'images en remplissage vertical @@ -1520,4 +1522,86 @@ La clé \MontreCode{vCentrer} (parmi \MontreCode{m/h/b/n} permet de spécifier u \InsererImage<vRemplir,vOffset=5mm,vCentrer=m>{example-image} +\subsection{Grille automatique pour les environnements tikzpicture} + +L'idée est de proposer de quoi afficher, en \textit{surimpression}, une grille automatique sur une figure \MontreCode{tikzpicture}. + +Cela peut-être utile dans la construction de graphes ou de figures géométriques pour placer plus facilement des objets. + +\smallskip + +Il est possible de : + +\begin{itemize} + \item demander ponctuellement l'affichage avec une macro à placer en fin d'environnement ; + \item automatiser l'affichage pour une figure avec une \MontreCode{clé} et une macro locale ; + \item automatiser l'affichage pour toutes les figures avec une macro globale et une \MontreCode{clé}. +\end{itemize} + +\textbf{\large Version manuelle} + +\begin{DemoCode}{listing only} +%macro locale, utilisation ponctuelle +\begin{tikzpicture} + %codes + \tkzGrilleAuto(*){pasX§pasY} +\end{tikzpicture} +\end{DemoCode} + +La version étoilée marque également l'origine $(0;0)$. + +L'argument obligatoire permet de spécifier les pas (\texttt{H§V}) pour la grille. + +\begin{DemoCode}{} +\begin{tikzpicture} + %population + \draw[very thick,purple] (0,0) circle[x radius=3cm,y radius=2cm] ; + \draw[purple] (0.5,1.25) node[font=\small] {Population E} ; + %ss population + \draw[very thick,teal] (-0.75,-0.25) circle[x radius=1.75cm,y radius=1cm] ; + \draw[teal] (-0.75,-0.25) node[font=\small] {Sous-population A} ; + %grille auto manuelle, avec origine + \tkzGrilleAuto*{0.5§0.5} +\end{tikzpicture} +\end{DemoCode} + +\textbf{\large Version automatique locale, avec clé} + +\begin{DemoCode}{listing only} +%clé locale, utilisation ponctuelle +\begin{tikzpicture}[grilleauto=pasX§pasY] + \tkzAutoGridLocal(*) + %codes +\end{tikzpicture} +\end{DemoCode} + +La version étoilée marque également l'origine $(0;0)$. + +\begin{DemoCode}{} +\begin{tikzpicture}[x=0.5cm,y=0.5cm,grilleauto=0.25§0.25] + %grille (qui sera affichée en dernier) + \tkzAutoGridLocal* + %triangle + \draw[very thick,red] (-4,-2)--(0,7)--(6,1)--cycle ; + %cercle + \draw[very thick,blue] (0,0) circle[radius=5] ; + %segment + \draw[very thick,orange] (-1.75,1.25)--(1,-7); +\end{tikzpicture} +\end{DemoCode} + +\textbf{\large Version automatique globale, avec clé} + +\begin{DemoCode}{listing only} +%préambule, la commande sera active pour tous les environnements tikz +\tkzAutoGridActivate(*) + +%document +\begin{tikzpicture}[grilleauto=pasX§pasY] + %codes +\end{tikzpicture} +\end{DemoCode} + +La version étoilée marquera également l'origine $(0;0)$. + \end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/customenvs/doc/envtexo_exemples.pdf b/macros/latex/contrib/customenvs/doc/envtexo_exemples.pdf Binary files differindex 16a8d7d3e6..aed4fe853c 100644 --- a/macros/latex/contrib/customenvs/doc/envtexo_exemples.pdf +++ b/macros/latex/contrib/customenvs/doc/envtexo_exemples.pdf diff --git a/macros/latex/contrib/customenvs/doc/envtexo_exemples.tex b/macros/latex/contrib/customenvs/doc/envtexo_exemples.tex index a91733525b..d32d06230a 100644 --- a/macros/latex/contrib/customenvs/doc/envtexo_exemples.tex +++ b/macros/latex/contrib/customenvs/doc/envtexo_exemples.tex @@ -15,7 +15,7 @@ \setlength{\parindent}{0pt} \begin{document} - + \pagestyle{empty} \begin{EnvtExo}%exo1 @@ -42,7 +42,7 @@ \ipsum<Lang=FR,Type=sent> \end{EnvtExo} -\begin{EnvtExo}[Decoration=Image/goku_ssj4]%exo7 +\begin{EnvtExo}[Etoiles=2,Decoration=Image/goku_ssj4]%exo7 \ipsum<Lang=FR,Type=sent> \end{EnvtExo} @@ -50,36 +50,36 @@ \ipsum<Lang=FR,Type=sent> \end{EnvtExo} -\begin{EnvtExo}[Decoration=tkzEtoiles/3.5§5]%exo8 +\begin{EnvtExo}[Decoration=tkzEtoiles/3.5§5]%exo9 \ipsum<Lang=FR,Type=sent> \end{EnvtExo} -\begin{EnvtExo}[Decoration=Points/7]%exo9 +\begin{EnvtExo}[Decoration=Points/7]%exo10 \ipsum<Lang=FR,Type=sent> \end{EnvtExo} -\begin{EnvtExo}[Type=Perso/{Titre perso }]%exo10 +\begin{EnvtExo}[Type=Perso/{Titre perso },Etoiles={2.5§5}]%exo11 \ipsum<Lang=FR,Type=sent> \end{EnvtExo} -\StyleEnvtExo[Couleur=red,,CouleurDeco=teal,Police=\bfseries\ttfamily,EpTrait=2pt,Libelle={Exercice n°}] +\StyleEnvtExo[Couleur=red,CouleurDeco=teal,Police=\bfseries\ttfamily,EpTrait=2pt,Libelle={Exercice n°}] -\begin{EnvtExo}[Decoration=Icone/\faAddressBook]%exo11 +\begin{EnvtExo}[Decoration=Icone/\faAddressBook]%exo12 \ipsum<Lang=FR,Type=sent> \end{EnvtExo} -\begin{EnvtExo}[Type=Perso/{Titre perso },Decoration=Chrono/25,Trait=dashilles]%exo12 +\begin{EnvtExo}[Type=Perso/{Titre perso },Decoration=Chrono/25,Trait=dashilles,Etoiles=0.5]%exo13 \ipsum<Lang=FR,Type=sent> \end{EnvtExo} \StyleEnvtExoDefaut \begin{EnvtExo}% - [Type=Perso/{Titre perso~},Decoration=Image/goku_ssj4,Trait=non,Compteur=false]%exo13 + [Type=Perso/{Titre perso~},Decoration=Image/goku_ssj4,Trait=non,Compteur=false]%exo14 \ipsum<Lang=FR,Type=sent> \end{EnvtExo} -\TitreExo[Type=Perso/{Annexe Exercice 3},Compteur=false,Decoration=Image/sseiya_aiolos]%exo14 +\TitreExo[Type=Perso/{Annexe Exercice 3},Compteur=false,Decoration=Image/sseiya_aiolos]%exo15 \ipsum<Lang=FR,Type=sent> diff --git a/macros/latex/contrib/customenvs/tex/customenvs.sty b/macros/latex/contrib/customenvs/tex/customenvs.sty index 4c90d39b3d..ee87f340d2 100644 --- a/macros/latex/contrib/customenvs/tex/customenvs.sty +++ b/macros/latex/contrib/customenvs/tex/customenvs.sty @@ -3,9 +3,10 @@ % source pencil...: CC-BY-SA 4.0 https://tex.stackexchange.com/questions/504092/replicating-a-fancy-bordered-text-style-in-latex/504145#504145 \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{customenvs}[2024/08/26 0.2.0 Custom classic environments] +\ProvidesPackage{customenvs}[2024/09/01 0.2.1 Custom classic environments] %====HISTORIQUE +% v 0.2.1 Modification mineure de la gestion des étoiles tikz (baseline) + grille auto tikzpicture % v 0.2.0 Ajout d'étoiles pour les difficultés d'exercices (2 versions) % v 0.1.9 tkzBanner + tkzBannerTri + includegraphicsfill % v 0.1.8 Nutriscore @@ -712,10 +713,11 @@ \setKV[levelstars]{#1}% %dimensions \settototalheight{\tmphauteuretoiles}{\hbox{azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN}}% + \setlength{\tmphauteuretoiles}{0.95\tmphauteuretoiles}% \ifboolKV[levelstars]{valign}% {% \settodepth{\tmpprofondeuretoiles}{\hbox{azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN}}% - \begin{tikzpicture}[baseline={-\tmpprofondeuretoiles},fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}] + \begin{tikzpicture}[baseline={-1.25\tmpprofondeuretoiles},fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}] }% {% \begin{tikzpicture}[fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}] @@ -749,10 +751,11 @@ \setKV[tkznivetoiles]{#1}% %dimensions \settototalheight{\tmphauteuretoiles}{\hbox{azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN}}% + \setlength{\tmphauteuretoiles}{0.95\tmphauteuretoiles}% \ifboolKV[tkznivetoiles]{AlignV}% {% \settodepth{\tmpprofondeuretoiles}{\hbox{azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN}}% - \begin{tikzpicture}[baseline={-\tmpprofondeuretoiles},fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}] + \begin{tikzpicture}[baseline={-1.25\tmpprofondeuretoiles},fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}] }% {% \begin{tikzpicture}[fill=\tkzLevelStarsColorBg,draw=\tkzLevelStarsColor,rounded corners={0.05\tmphauteuretoiles},line width={0.04\tmphauteuretoiles}] @@ -876,7 +879,8 @@ CodeDebut=\def\EnvtExoCodeAvant{#1},% EchelleImage=\def\EnvtExoScaleImg{#1},% Decoration=\def\EnvtExoDeco{#1},% - Trait=\def\EnvtExoTrait{#1} + Trait=\def\EnvtExoTrait{#1},% + Etoiles=\def\EnvtExoEtoiles{#1} } \setKVdefault[EnvtExercice]{ Type=Classique,% @@ -885,7 +889,8 @@ EchelleImage=1.15,% Compteur=true,% Decoration={},% - Trait=plein + Trait=plein,% + Etoiles={} } \NewDocumentEnvironment{EnvtExo}{ !O{} }% @@ -900,6 +905,19 @@ {% %label avec numéro et complément \tmpstyleexo\tmplabelexo\ifboolKV[EnvtExercice]{Compteur}{\thenumeroexo}{}\EnvtExoCpltTitre% + %étoiles eventuelles + \IfStrEq{\EnvtExoEtoiles}{}{}% + {% + \,(\IfSubStr{\EnvtExoEtoiles}{§}% + {% + \StrCut{\EnvtExoEtoiles}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}% + }% + {% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoEtoiles}% + }% + )% + }% %trait éventuel \IfStrEqCase{\EnvtExoTrait}{% {plein}{\,\hrulefill}% @@ -966,6 +984,19 @@ \StrBehind{\EnvtExoType}{/}[\EnvtExoLabel]% %label avec numéro et complément \tmpstyleexo\EnvtExoLabel\ifboolKV[EnvtExercice]{Compteur}{\thenumeroexo}{}\EnvtExoCpltTitre% + %étoiles eventuelles + \IfStrEq{\EnvtExoEtoiles}{}{}% + {% + \,(\IfSubStr{\EnvtExoEtoiles}{§}% + {% + \StrCut{\EnvtExoEtoiles}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}% + }% + {% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoEtoiles}% + }% + )% + }% %trait éventuel \IfStrEqCase{\EnvtExoTrait}{% {plein}{\,\hrulefill}% @@ -1044,6 +1075,19 @@ {% %label avec numéro et complément \tmpstyleexo\tmplabelexo\ifboolKV[EnvtExercice]{Compteur}{\thenumeroexo}{}\EnvtExoCpltTitre% + %étoiles eventuelles + \IfStrEq{\EnvtExoEtoiles}{}{}% + {% + \,(\IfSubStr{\EnvtExoEtoiles}{§}% + {% + \StrCut{\EnvtExoEtoiles}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}% + }% + {% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoEtoiles}% + }% + )% + }% %trait éventuel \IfStrEqCase{\EnvtExoTrait}{% {plein}{\,\hrulefill}% @@ -1079,12 +1123,49 @@ \settototalheight{\tmp@image@hauteur@totale}{\hbox{\tmpstyleexo qB}}% \,$\vcenter{\hbox{\includegraphics[height=\EnvtExoScaleImg\tmp@image@hauteur@totale]{\EnvtExoImg}}}$% }{}% + \IfSubStr{\EnvtExoDeco}{faEtoiles}% + {% + \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]% + \IfSuStr{\EnvtExoStars}{§}% + {% + \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}% + \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos[\EnvtExoStarTot]{\EnvtExoStarNb}}}% + }% + {% + \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos{\EnvtExoStars}}}% + }% + }{}% + \IfSubStr{\EnvtExoDeco}{tkzEtoiles}% + {% + \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]% + \IfSubStr{\EnvtExoStars}{§}% + {% + \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}% + }% + {% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoStars}% + }% + }{}% }{}% \IfSubStr{\EnvtExoType}{Perso}%OK perso____déco {% \StrBehind{\EnvtExoType}{/}[\EnvtExoLabel]% %label avec numéro et complément \tmpstyleexo\EnvtExoLabel\ifboolKV[EnvtExercice]{Compteur}{\thenumeroexo}{}\EnvtExoCpltTitre% + %étoiles eventuelles + \IfStrEq{\EnvtExoEtoiles}{}{}% + {% + \,(\IfSubStr{\EnvtExoEtoiles}{§}% + {% + \StrCut{\EnvtExoEtoiles}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}% + }% + {% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoEtoiles}% + }% + )% + }% %trait éventuel \IfStrEqCase{\EnvtExoTrait}{% {plein}{\,\hrulefill}% @@ -1120,6 +1201,30 @@ \settototalheight{\tmp@image@hauteur@totale}{\hbox{\tmpstyleexo qB}}% \,$\vcenter{\hbox{\includegraphics[height=\EnvtExoScaleImg\tmp@image@hauteur@totale]{\EnvtExoImg}}}$% }{}% + \IfSubStr{\EnvtExoDeco}{faEtoiles}% + {% + \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]% + \IfSuStr{\EnvtExoStars}{§}% + {% + \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}% + \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos[\EnvtExoStarTot]{\EnvtExoStarNb}}}% + }% + {% + \textcolor{macouleurexodeco}{\scalebox{\tmpscalestarsexos}[\tmpscalestarsexos]{\NiveauDiffExos{\EnvtExoStars}}}% + }% + }{}% + \IfSubStr{\EnvtExoDeco}{tkzEtoiles}% + {% + \StrBehind{\EnvtExoDeco}{/}[\EnvtExoStars]% + \IfSubStr{\EnvtExoStars}{§}% + {% + \StrCut{\EnvtExoStars}{§}{\EnvtExoStarNb}{\EnvtExoStarTot}% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond,NiveauMax=\EnvtExoStarTot]{\EnvtExoStarNb}% + }% + {% + \tkzEtoiles[Couleur=macouleurexodeco,CouleurFond=macouleurexodecofond]{\EnvtExoStars}% + }% + }{}% }{}% \endgroup% \def\hrulefill{\leavevmode\leaders\hrule height 0.4pt\hfill\kern\z@}% @@ -2569,5 +2674,43 @@ \end{tikzpicture}% } +%====grille automatique tikz ? +\NewDocumentCommand\tkzGrilleAuto{ s O{thin,lightgray} m }{% + \IfBooleanT{#1}{\filldraw (0,0) circle[radius=2pt] ;} + \StrCut{#3}{§}{\tkzautogridx}{\tkzautogridy}% + \draw[xstep=\tkzautogridx,ystep=\tkzautogridy,#2] (current bounding box.south west) grid (current bounding box.north east) ; +} +\NewDocumentCommand\tkzAutoGrid{ s O{thin,lightgray} m }{% + \IfBooleanT{#1}{\filldraw (0,0) circle[radius=2pt] ;} + \StrCut{#3}{§}{\tkzautogridx}{\tkzautogridy}% + \draw[xstep=\tkzautogridx,ystep=\tkzautogridy,#2] (current bounding box.south west) grid (current bounding box.north east) ; +} + +\tikzset{grilleauto/.store in=\tkzautogrid,grilleauto/.default={},grilleauto={}} +\tikzset{autogrid/.store in=\tkzautogrid,autogrid/.default={},autogrid={}} + +\NewDocumentCommand\tkzAutoGridActivate{ s }{% + \@ifundefined{tkzautogrid}% + {}% + {% + \tikzset{every picture/.style={% + execute at end picture={% + \IfEq{\tkzautogrid}{}{}{\IfBooleanTF{#1}{\tkzGrilleAuto*{\tkzautogrid}}{\tkzGrilleAuto{\tkzautogrid}}}% + }, + }, + }% + }% +} + +\NewDocumentCommand\tkzAutoGridLocal{ s }{% + \@ifundefined{tkzautogrid}% + {}% + {% + \tikzset{execute at end picture={% + \IfEq{\tkzautogrid}{}{}{\IfBooleanTF{#1}{\tkzGrilleAuto*{\tkzautogrid}}{\tkzGrilleAuto{\tkzautogrid}}}% + }, + }, + }% +} \endinput
\ No newline at end of file diff --git a/macros/latex/contrib/mitthesis/MIT-Thesis.pdf b/macros/latex/contrib/mitthesis/MIT-Thesis.pdf Binary files differindex e7f9b4a01a..a007efaeea 100644 --- a/macros/latex/contrib/mitthesis/MIT-Thesis.pdf +++ b/macros/latex/contrib/mitthesis/MIT-Thesis.pdf diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/MIT-Thesis.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/MIT-Thesis.tex index fc7e8a88f1..2faced3b18 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/MIT-Thesis.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/MIT-Thesis.tex @@ -1,11 +1,12 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber +% !BIB TS-program = biber +% !BIB program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.14, 2024/07/19 +% Version: 1.11, 2023/11/02 % -% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2023. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -15,11 +16,8 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% pdfversion = 2.0, -% pdfstandard = a-4, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata } - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \documentclass[twoside]{mitthesis} %,fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 @@ -28,9 +26,9 @@ % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% for pdftex or unicode engines: defaultfonts, libertine, lucida -% for pdftex only: fira-newtxsf, newtx, newtx-sans-text -% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% pdftex or unicode engines: defaultfonts, libertine, lucida +% pdftex only: fira-newtxsf, newtx, newtx-sans-text +% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -41,23 +39,12 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) +%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} -%% Table related packages - -\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) - -\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) - -%\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) -% \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package - -%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) - %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -69,17 +56,8 @@ %%%%%%%%% Representative set-up for biblatex %%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% Numerical citations of references -\usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} - -%% IEEE style citations and references -% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true -% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" - -%% author-year style citations and references -%% use \parencite, not \cite, when you want "(Author, year)" -%% The sample files are not set up to include parentheses. -% \usepackage[style=authoryear, maxbibnames=10]{biblatex} +\usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true + \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces default "[Online]. Available" by "URL" \addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE @@ -87,11 +65,9 @@ %% to avoid split urls and stretched white space, you can set the bibliography ragged-right: %\appto{\bibsetup}{\raggedright} -%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -%% documentation is here: https://ctan.org/pkg/biblatex -%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf +% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +% documentation is here: https://ctan.org/pkg/biblatex -%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,9 +79,19 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% To adjust space between bibliography items +%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") %\setlength\bibsep{4pt plus 1pt minus 1pt} -% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") + + +%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs +\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array + +%\usepackage{tabularx}% https://ctan.org/pkg/tabularx + +%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn +%\newcolumntype{d}[1]{D{.}{.}{#1}} %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -121,13 +107,13 @@ % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use one or more of the these commands *AFTER* the frontmatter +%% Use one or more of the these commands AFTER the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result is usually to stay with leading selected by the typographer who set up the font. +%% The best result may be to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -142,7 +128,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) + % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -176,31 +162,29 @@ % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. -\Degree{Bachelor of Science in Physics}{Department of Physics} -%\Degree{Master of Science in Physics}{} -%\Degree{Bachelor of Science in Mechanical Engineering}{Department of Mechanical Engineering} +% \Degree{Bachelor of Science in Physics}{Department of Physics} +% \Degree{Master of Science in Physics}{} +\Degree{Bachelor of Science in Mechanical Engineering}{Department of Mechanical Engineering} % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} % \Supervisor{Secunda Castor}{Professor of Research} % \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once - \Acceptor{Primus Castor}{Professor of Wetlands Engineering}{}%{Undergraduate Officer, Department of Physics} +% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** + \Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} % \Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} -%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. % Usage: \DegreeDate{Month}{year} -% Valid degree months are February, May, June, or September +% Valid degree months are September, February, or June \DegreeDate{June}{1876} % Date that final thesis is submitted to department \ThesisDate{May 18, 1876} - %%%%%% Choose whether to have a CREATIVE COMMONS License %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % If you are using a cc license, put details of your cc license here. @@ -224,34 +208,33 @@ % (c) you can put the acceptor name and title onto two lines, rather than three like this: % % \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% \Acceptor{Quarta Castor}{Professor and Graduate Officer, Department of Mechanical Engineering}{} % -% (d) you can change the font size of the author name[s] with +% (d) you can change the font size of the the author name[s] with % % \AuthorNameSize{\normalsize} % -% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the Biosketch % Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you -% can use this command to squash all of the vertical glue (stretchy space) with this command: +% can you this command to squash all of the vertical glue (stretchy space) with this command: % % \Squash % % This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically % when the page is too full. - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html +% for usage, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html - -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % The abstract environment creates all the required headings and footers. % You only need to the text of the abstract in the file abstract.tex @@ -259,22 +242,24 @@ \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) +\include{acknowledgments}% .tex extension is presumed by \include + +\include{biography}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format -\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) -%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% +%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% \tableofcontents \listoffigures \listoftables + %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% If you want to use "double spacing", you should start here... \include{chapter1}% .tex extension is presumed -% \include{chapter2} +%\include{chapter2} %\include{chapter3} %\include{chapter4} @@ -285,13 +270,9 @@ \include{appendixa} -%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} -% this sets the title of contents name for bibliography to \refname (= References) -% change "backmatter" to "chapter" if you prefer a bold face entry in the table of contents +%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\printbibliography[title={\refname},heading=bibintoc] +\printbibliography[title={References},heading=bibintoc] % biblatex also supports chapter-by-chapter bibliography, https://tex.stackexchange.com/a/296502/119566 % see the biblatex manual, section 3.14.3 diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/appendixa.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/appendixa.tex index a7914cb851..cb61cca430 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/appendixa.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/appendixa.tex @@ -5,6 +5,10 @@ \chapter{Code listing} +This example uses the \texttt{listings} package. + +\bigskip + \lstdefinestyle{mystyle}{ backgroundcolor=\color{CadetBlue!15!white}, commentstyle=\color{Red3}, diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/appendixb.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/appendixb.tex new file mode 100644 index 0000000000..1d9dd847c0 --- /dev/null +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/appendixb.tex @@ -0,0 +1,108 @@ +\chapter{One-term coefficients for heat conduction} + +\section{A multipage table of numbers} +This example uses the \texttt{longtable} package: $\theta = A_1 f_1 \exp(-\lambda_1^2\mkern2mu\textrm{Fo})$, $\overline{\theta} = D_1 \exp(-\lambda_1^2\mkern2mu\textrm{Fo})$. + + +{\footnotesize +%\newcolumntype{d}[1]{D{.}{.}{#1}} % defined in root .tex file +\renewcommand{\doublerulesep}{0pt}% +\newcolumntype{X}{>{\hspace{1ex}}c@{\hspace{2ex}}c@{\hspace{2ex}}c<{\hspace{1ex}}}% + +\begin{longtable}{|||d{3.2}|X|X|X|||} + +\caption{One-term coefficients for one-dimensional heat conduction with a convective boundary condition. Data follow H. D. Baehr and K. Stephan~\cite{baehr1998}.}% + +\\ +\hline\hline\hline +&&&&&&&&&\\[-7pt] +& \multicolumn{3}{c|}{\textsf{\textit{Plate}}} & \multicolumn{3}{c|}{\textsf{\textit{Cylinder}}} & \multicolumn{3}{c|||}{\textsf{\textit{Sphere}}} +\\ +\cline{2-10} +\multicolumn{1}{|||c|}{\raisebox{1.5ex}[0cm][0cm]{Bi}} + & $\lambda_1$\rule[0pt]{0pt}{11pt} & $A_1$ & $D_1$ & $\lambda_1$ & $A_1$ & $D_1$ & $\lambda_1$ & $A_1$ & $D_1$ +\\ +\hline +\endfirsthead +\caption[]{(continued)} \\ +\hline\hline\hline +&&&&&&&&&\\[-7pt] +& \multicolumn{3}{c|}{\textsf{\textit{Plate}}} & \multicolumn{3}{c|}{\textsf{\textit{Cylinder}}} & \multicolumn{3}{c|||}{\textsf{\textit{Sphere}}} +\\ +\cline{2-10} +\multicolumn{1}{|||c|}{\raisebox{1.5ex}[0cm][0cm]{Bi}} + & $\lambda_1$\rule[0pt]{0pt}{11pt} & $A_1$ & $D_1$ & $\lambda_1$ & $A_1$ & $D_1$ & $\lambda_1$ & $A_1$ & $D_1$ +\\ \hline +&&&&&&&&&\\[-1ex] +\endhead +\hline\hline\hline +\endfoot +\hline\hline\hline +\endlastfoot +0.01 & 0.09983 & 1.0017 & 1.0000 & 0.14124 & 1.0025 & 1.0000 & 0.17303 & 1.0030 & 1.0000\rule[0pt]{0pt}{15pt} \\ +0.02 & 0.14095 & 1.0033 & 1.0000 & 0.19950 & 1.0050 & 1.0000 & 0.24446 & 1.0060 & 1.0000 \\ +0.03 & 0.17234 & 1.0049 & 1.0000 & 0.24403 & 1.0075 & 1.0000 & 0.29910 & 1.0090 & 1.0000 \\ +0.04 & 0.19868 & 1.0066 & 1.0000 & 0.28143 & 1.0099 & 1.0000 & 0.34503 & 1.0120 & 1.0000 \\ +0.05 & 0.22176 & 1.0082 & 0.9999 & 0.31426 & 1.0124 & 0.9999 & 0.38537 & 1.0150 & 1.0000 \\ +0.06 & 0.24253 & 1.0098 & 0.9999 & 0.34383 & 1.0148 & 0.9999 & 0.42173 & 1.0179 & 0.9999 \\ +0.07 & 0.26153 & 1.0114 & 0.9999 & 0.37092 & 1.0173 & 0.9999 & 0.45506 & 1.0209 & 0.9999 \\ +0.08 & 0.27913 & 1.0130 & 0.9999 & 0.39603 & 1.0197 & 0.9999 & 0.48600 & 1.0239 & 0.9999 \\ +0.09 & 0.29557 & 1.0145 & 0.9998 & 0.41954 & 1.0222 & 0.9998 & 0.51497 & 1.0268 & 0.9999 \\ +0.10 & 0.31105 & 1.0161 & 0.9998 & 0.44168 & 1.0246 & 0.9998 & 0.54228 & 1.0298 & 0.9998 \\[6pt] +% +0.15 & 0.37788 & 1.0237 & 0.9995 & 0.53761 & 1.0365 & 0.9995 & 0.66086 & 1.0445 & 0.9996 \\* +0.20 & 0.43284 & 1.0311 & 0.9992 & 0.61697 & 1.0483 & 0.9992 & 0.75931 & 1.0592 & 0.9993 \\ +0.25 & 0.48009 & 1.0382 & 0.9988 & 0.68559 & 1.0598 & 0.9988 & 0.84473 & 1.0737 & 0.9990 \\ +0.30 & 0.52179 & 1.0450 & 0.9983 & 0.74646 & 1.0712 & 0.9983 & 0.92079 & 1.0880 & 0.9985 \\ +0.40 & 0.59324 & 1.0580 & 0.9971 & 0.85158 & 1.0931 & 0.9970 & 1.05279 & 1.1164 & 0.9974 \\ +0.50 & 0.65327 & 1.0701 & 0.9956 & 0.94077 & 1.1143 & 0.9954 & 1.16556 & 1.1441 & 0.9960 \\ +0.60 & 0.70507 & 1.0814 & 0.9940 & 1.01844 & 1.1345 & 0.9936 & 1.26440 & 1.1713 & 0.9944 \\ +0.70 & 0.75056 & 1.0918 & 0.9922 & 1.08725 & 1.1539 & 0.9916 & 1.35252 & 1.1978 & 0.9925 \\ +0.80 & 0.79103 & 1.1016 & 0.9903 & 1.14897 & 1.1724 & 0.9893 & 1.43203 & 1.2236 & 0.9904 \\ +0.90 & 0.82740 & 1.1107 & 0.9882 & 1.20484 & 1.1902 & 0.9869 & 1.50442 & 1.2488 & 0.9880 \\[6pt] +% +1.00 & 0.86033 & 1.1191 & 0.9861 & 1.25578 & 1.2071 & 0.9843 & 1.57080 & 1.2732 & 0.9855 \\* +1.10 & 0.89035 & 1.1270 & 0.9839 & 1.30251 & 1.2232 & 0.9815 & 1.63199 & 1.2970 & 0.9828 \\ +1.20 & 0.91785 & 1.1344 & 0.9817 & 1.34558 & 1.2387 & 0.9787 & 1.68868 & 1.3201 & 0.9800 \\ +1.30 & 0.94316 & 1.1412 & 0.9794 & 1.38543 & 1.2533 & 0.9757 & 1.74140 & 1.3424 & 0.9770 \\ +1.40 & 0.96655 & 1.1477 & 0.9771 & 1.42246 & 1.2673 & 0.9727 & 1.79058 & 1.3640 & 0.9739 \\ +1.50 & 0.98824 & 1.1537 & 0.9748 & 1.45695 & 1.2807 & 0.9696 & 1.83660 & 1.3850 & 0.9707 \\ +1.60 & 1.00842 & 1.1593 & 0.9726 & 1.48917 & 1.2934 & 0.9665 & 1.87976 & 1.4052 & 0.9674 \\ +1.70 & 1.02725 & 1.1645 & 0.9703 & 1.51936 & 1.3055 & 0.9633 & 1.92035 & 1.4247 & 0.9640 \\* +1.80 & 1.04486 & 1.1695 & 0.9680 & 1.54769 & 1.3170 & 0.9601 & 1.95857 & 1.4436 & 0.9605 \\* +1.90 & 1.06136 & 1.1741 & 0.9658 & 1.57434 & 1.3279 & 0.9569 & 1.99465 & 1.4618 & 0.9570 \\[6pt] +% +2.00 & 1.07687 & 1.1785 & 0.9635 & 1.59945 & 1.3384 & 0.9537 & 2.02876 & 1.4793 & 0.9534 \\* +2.20 & 1.10524 & 1.1864 & 0.9592 & 1.64557 & 1.3578 & 0.9472 & 2.09166 & 1.5125 & 0.9462 \\ +2.40 & 1.13056 & 1.1934 & 0.9549 & 1.68691 & 1.3754 & 0.9408 & 2.14834 & 1.5433 & 0.9389 \\ +2.60 & 1.15330 & 1.1997 & 0.9509 & 1.72418 & 1.3914 & 0.9345 & 2.19967 & 1.5718 & 0.9316 \\ +2.80 & 1.17383 & 1.2052 & 0.9469 & 1.75794 & 1.4059 & 0.9284 & 2.24633 & 1.5982 & 0.9243 \\ +3.00 & 1.19246 & 1.2102 & 0.9431 & 1.78866 & 1.4191 & 0.9224 & 2.28893 & 1.6227 & 0.9171 \\ +3.50 & 1.23227 & 1.2206 & 0.9343 & 1.85449 & 1.4473 & 0.9081 & 2.38064 & 1.6761 & 0.8995 \\ +4.00 & 1.26459 & 1.2287 & 0.9264 & 1.90808 & 1.4698 & 0.8950 & 2.45564 & 1.7202 & 0.8830 \\* +4.50 & 1.29134 & 1.2351 & 0.9193 & 1.95248 & 1.4880 & 0.8830 & 2.51795 & 1.7567 & 0.8675 \\* +5.00 & 1.31384 & 1.2402 & 0.9130 & 1.98981 & 1.5029 & 0.8721 & 2.57043 & 1.7870 & 0.8533 \\[6pt] +% +6.00 & 1.34955 & 1.2479 & 0.9021 & 2.04901 & 1.5253 & 0.8532 & 2.65366 & 1.8338 & 0.8281 \\* +7.00 & 1.37662 & 1.2532 & 0.8932 & 2.09373 & 1.5411 & 0.8375 & 2.71646 & 1.8673 & 0.8069 \\ +8.00 & 1.39782 & 1.2570 & 0.8858 & 2.12864 & 1.5526 & 0.8244 & 2.76536 & 1.8920 & 0.7889 \\ +9.00 & 1.41487 & 1.2598 & 0.8796 & 2.15661 & 1.5611 & 0.8133 & 2.80443 & 1.9106 & 0.7737 \\ +10.00 & 1.42887 & 1.2620 & 0.8743 & 2.17950 & 1.5677 & 0.8039 & 2.83630 & 1.9249 & 0.7607 \\ +12.00 & 1.45050 & 1.2650 & 0.8658 & 2.21468 & 1.5769 & 0.7887 & 2.88509 & 1.9450 & 0.7397 \\ +14.00 & 1.46643 & 1.2669 & 0.8592 & 2.24044 & 1.5828 & 0.7770 & 2.92060 & 1.9581 & 0.7236 \\ +16.00 & 1.47864 & 1.2683 & 0.8541 & 2.26008 & 1.5869 & 0.7678 & 2.94756 & 1.9670 & 0.7109 \\* +18.00 & 1.48830 & 1.2692 & 0.8499 & 2.27556 & 1.5898 & 0.7603 & 2.96871 & 1.9734 & 0.7007 \\* +20.00 & 1.49613 & 1.2699 & 0.8464 & 2.28805 & 1.5919 & 0.7542 & 2.98572 & 1.9781 & 0.6922 \\[6pt] +% +25.00 & 1.51045 & 1.2710 & 0.8400 & 2.31080 & 1.5954 & 0.7427 & 3.01656 & 1.9856 & 0.6766 \\* +30.00 & 1.52017 & 1.2717 & 0.8355 & 2.32614 & 1.5973 & 0.7348 & 3.03724 & 1.9898 & 0.6658 \\ +35.00 & 1.52719 & 1.2721 & 0.8322 & 2.33719 & 1.5985 & 0.7290 & 3.05207 & 1.9924 & 0.6579 \\ +40.00 & 1.53250 & 1.2723 & 0.8296 & 2.34552 & 1.5993 & 0.7246 & 3.06321 & 1.9942 & 0.6519 \\ +50.00 & 1.54001 & 1.2727 & 0.8260 & 2.35724 & 1.6002 & 0.7183 & 3.07884 & 1.9962 & 0.6434 \\ +60.00 & 1.54505 & 1.2728 & 0.8235 & 2.36510 & 1.6007 & 0.7140 & 3.08928 & 1.9974 & 0.6376 \\ +80.00 & 1.55141 & 1.2730 & 0.8204 & 2.37496 & 1.6013 & 0.7085 & 3.10234 & 1.9985 & 0.6303 \\ +100.00 & 1.55525 & 1.2731 & 0.8185 & 2.38090 & 1.6015 & 0.7052 & 3.11019 & 1.9990 & 0.6259 \\* +200.00 & 1.56298 & 1.2732 & 0.8146 & 2.39283 & 1.6019 & 0.6985 & 3.12589 & 1.9998 & 0.6170 \\* +\infty & 1.57080 & 1.2732 & 0.8106 & 2.40483 & 1.6020 & 0.6917 & 3.14159 & 2.0000 & 0.6079 \\[3pt] +\end{longtable} +} diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/committee_members.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/committee_members.tex new file mode 100644 index 0000000000..b09f276c8b --- /dev/null +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/committee_members.tex @@ -0,0 +1,69 @@ +% Sample thesis committee page for mitthesis.cls +% Version 1.00, 2024/08/24 +% +% This page is not required by the MIT Libraries, but some departments require it +% +% Insert between title page and abstract page. +% Format this page in any way that you like. +% Add supervisor titles, degrees, and departments as appropriate + +%%%%% FORMATTING COMMANDS %%%%%%%%%%%%%%%%%% + +%% Format title +\NewDocumentCommand\CommitteePageTitle{m}{ + \vspace*{75pt}%36pt} + \IfPackageLoadedTF{microtype} + {\textls*{\Large\textbf{\MakeUppercase{#1}}}} + {{\Large\textbf{\MakeUppercase{#1}}}}% + \pdfbookmark[0]{#1}{Committee}% + \vspace*{10pt}% +} +% \textls* produces additional letter separation (appropriate for capitalized display text), +% PROVIDED THAT \usepackage{microtype} has been loaded in the preamble. +% The extra space added is 100/1000 em (adjustable, see package documentation). + +%% Format committee member subheadings +\NewDocumentCommand\Role{m}{ + \vspace*{50pt}%25pt} + \IfPackageLoadedTF{microtype} + {\textls*{\large{\textsc{#1}}}} + {{\large\textsc{#1}}}% + \vspace*{12pt}% +} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{flushright} + +\CommitteePageTitle{Thesis committee} + +\Role{Thesis Supervisor} + + \textbf{Marcus Gavius Apicius} \\ + {\itshape + Professor of Cooking Arts \\ + Department of Food Science \\ + } + +\Role{Thesis Readers} + + \textbf{Marie-Antoine Carême} \\ + {\itshape + Professor of Haute Cuisine \\ + Department of Food Science \\[18pt] + } + + \textbf{Julia Child}\\ + {\itshape + Professor of French Cuisine \\ + Department of Food Science \\[18pt] + } + + \textbf{Magnus Dicen, Ph.D.} \\ + {\itshape + Gloriosus Professor of Personal Pronouns \\ + Department of Rhetoric \\ + } + +\end{flushright} + +\cleardoublepage diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-defaultfonts.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-defaultfonts.tex index 8795eb547e..bc7ba62c91 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-defaultfonts.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-defaultfonts.tex @@ -1,16 +1,16 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-defaultfonts.tex}[2023/09/12 v1.03 Load Computer/Latin Modern text and math fonts] +\ProvidesFile{mitthesis-defaultfonts.tex}[2024/06/28 v1.04 Load Computer/Latin Modern text and math fonts] %% Default fonts % \ifpdftex - \typeout{^^JLoading Computer Modern text and math fonts (default for pdftex).^^J} + \ClassNoteNoLine{\ClassName}{Loading Computer Modern text and math fonts (default for pdftex)} \RequirePackage[T1]{fontenc} \RequirePackage{bm} \else - \typeout{^^JLoading Latin Modern text and math fonts (default for unicode engines).^^J} + \ClassNoteNoLine{\ClassName}{Loading Latin Modern text and math fonts (default for unicode engines)} % \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} % suppress tiresome warnings about lack of integration between mathtools and unicode-math. diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-fira-newtxsf.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-fira-newtxsf.tex index 01fa981d78..ebba9ab190 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-fira-newtxsf.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-fira-newtxsf.tex @@ -1,19 +1,19 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-fira-newtxsf.tex}[2023/09/12 v1.04 Load Fira Sans text font with newtx sans serif math font and Inconsolata typewriter font] +\ProvidesFile{mitthesis-fira-newtxsf.tex}[2024/06/28 v1.05 Load Fira Sans text font with newtx sans serif math font and Inconsolata typewriter font] %% Fira Sans text font with newtx sans serif math font and Inconsolata typewriter font % \ifpdftex - \typeout{^^JLoading Fira sans text font with newtx sans serif math font and Inconsolata typewriter^^J} + \ClassNoteNoLine{\ClassName}{Loading Fira sans text font with newtx sans serif math font and Inconsolata typewriter} \RequirePackage[sfdefault,scaled=0.90]{FiraSans} % sans serif text package %,scaled=.85 \RequirePackage[T1]{fontenc} \RequirePackage[varqu,varl,scaled=1.05]{zi4} % inconsolata font for typewriter \RequirePackage[scaled=1.05]{newtxsf} % sans serif math \RequirePackage{bm} \else - \ClassWarning{mitnewthesis}{The fira-newtxsf font set requires pdflatex. Defaulting to LMR fonts} + \ClassWarning{\ClassName}{The fira-newtxsf font set requires pdflatex. Defaulting to LMR fonts} \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} % suppress tiresome warnings about lack of integration between mathtools and unicode-math. % Unicode-math loads the fontspec package, but the default fonts are not selected by fontspec in this case. diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-heros-stix2.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-heros-stix2.tex index 26ee2ab07b..1535771f11 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-heros-stix2.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-heros-stix2.tex @@ -1,7 +1,7 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-heros-stix2.tex}[2023/09/12 v1.02 Load TeX Gyre Heros (sans serif) text font with STIX Two Math font and Inconsolata monospaced font] +\ProvidesFile{mitthesis-heros-stix2.tex}[2024/06/28 v1.03 Load TeX Gyre Heros (sans serif) text font with STIX Two Math font and Inconsolata monospaced font] %% TeX Gyre Heros (sans serif) text font with STIX Two Math font and Inconsolata monospaced font % @@ -12,11 +12,11 @@ % Install these as system fonts on your computer % \ifpdftex - \ClassWarning{mitnewthesis}{The heros-stix2 fontset requires a unicode engine. Defaulting to CMR fonts.} + \ClassWarning{\ClassName}{The heros-stix2 fontset requires a unicode engine. Defaulting to CMR fonts} \RequirePackage[T1]{fontenc} \RequirePackage{bm} \else - \typeout{^^JTeX Gyre Heros (sans serif) text font with STIX2 math font and Inconsolata monospaced font.^^J} + \ClassNoteNoLine{\ClassName}{TeX Gyre Heros (sans serif) text font with STIX2 math font and Inconsolata monospaced font} % \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} % suppress tiresome warnings about lack of integration between mathtools and unicode-math diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-libertine.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-libertine.tex index 57cf26f915..41b2f561df 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-libertine.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-libertine.tex @@ -1,7 +1,7 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-libertine.tex}[2023/09/12 v1.02 Load Libertine and related fonts] +\ProvidesFile{mitthesis-libertine.tex}[2024/06/28 v1.03 Load Libertine and related fonts] %% Linux Libertine (serif) text font with newtxmath[libertine] (pdftex) or Libertinus (unicode) math font % @@ -10,7 +10,7 @@ % install these as system fonts on your computer % \ifpdftex - \typeout{^^JLoading newtx-libertine text and math fonts with Insolata typewriter font^^J} + \ClassNoteNoLine{\ClassName}{Loading newtx-libertine text and math fonts with Insolata typewriter font} \RequirePackage[lining,semibold]{libertine} \RequirePackage[T1]{fontenc} \RequirePackage[varqu,varl]{inconsolata}% typewriter @@ -18,7 +18,7 @@ \RequirePackage[libertine,vvarbb]{newtxmath} \RequirePackage{bm}% load after all math to give access to bold math \else - \typeout{^^JLoading Linux Libertine (serif) text font with Libertinus math font^^J} + \ClassNoteNoLine{\ClassName}{Loading Linux Libertine (serif) text font with Libertinus math font} % \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} % suppress tiresome warnings about lack of integration between mathtools and unicode-math diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-lucida.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-lucida.tex index 6466c36929..e18c72fd92 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-lucida.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-lucida.tex @@ -1,11 +1,11 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-lucida.tex}[2023/09/12 v1.02 Load Lucida fonts] +\ProvidesFile{mitthesis-lucida.tex}[2024/06/28 v1.03 Load Lucida fonts] %% Lucida Bright and Lucida Bright Math fonts (available from the TeX Users Group) -\typeout{^^JLucida Bright and Lucida Bright Math fonts^^J} +\ClassNoteNoLine{\ClassName}{Lucida Bright and Lucida Bright Math fonts} \ifpdftex \RequirePackage[LY1]{fontenc} diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-newtx-sans-text.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-newtx-sans-text.tex index 03d62286e2..b76428f383 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-newtx-sans-text.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-newtx-sans-text.tex @@ -1,11 +1,12 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-newtx-sans-text.tex}[2023/10/03 v1.03 Load newtx sans-serif text and regular math fonts] +\ProvidesFile{mitthesis-newtx-sans-text.tex}[2024/06/68 v1.04 Load newtx sans-serif text and regular math fonts] %% newtx package with sans-serif text (Helvetica-like text with Times-like math) % \ifpdftex + \ClassNoteNoLine{\ClassName}{Loading newtx sans-serif text and newtx serif math fonts} \RequirePackage[T1]{fontenc} \RequirePackage[subscriptcorrection,varvw,helvratio=0.91,defaultsups]{newtx}% upint for upright integrals \AtEndPreamble{% added to accommodate v1.731 of newtx, 2023/11/03 @@ -17,7 +18,7 @@ % \DeclareFontFamily{\encodingdefault}{\ttdefault}{\hyphenchar\font=`\-} % \RequirePackage{bm}% bold math \else - \ClassWarning{mitnewthesis}{The newtx font set requires pdflatex. Defaulting to LMR fonts} + \ClassWarning{\ClassName}{The newtx font set requires pdflatex. Defaulting to LMR fonts} \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} % suppress tiresome warnings about lack of integration between mathtools and unicode-math. % Unicode-math loads the fontspec package, but the default fonts are not selected by fontspec in this case. diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-newtx.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-newtx.tex index cc43427055..b1541bbd05 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-newtx.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-newtx.tex @@ -1,17 +1,17 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-newtx.tex}[2023/09/12 v1.03 Load newtx text and math fonts] +\ProvidesFile{mitthesis-newtx.tex}[2024/06/28 v1.04 Load newtx text and math fonts] \ifpdftex - \typeout{^^JLoading newtx fonts with inconsolata typewriter^^J} + \ClassNoteNoLine{\ClassName}{Loading newtx fonts with inconsolata typewriter} \RequirePackage[T1]{fontenc} \RequirePackage[subscriptcorrection,varvw,helvratio=0.91]{newtx}% stix2, upint \RequirePackage[varl,varqu,hyphenate,mono]{inconsolata}% sans typewriter font; mono = fixed word spacing, hyphenate = allow hyphenation \RequirePackage{bm} \let\textsuperscript\textsu% newtx changes the default superiors font; this is needed to get commas aligned in sequential footnotes \else - \ClassWarning{mitnewthesis}{The newtx font set requires pdflatex. Defaulting to LMR fonts} + \ClassWarning{\ClassName}{The newtx font set requires pdflatex. Defaulting to LMR fonts} \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} % suppress tiresome warnings about lack of integration between mathtools and unicode-math. % Unicode-math loads the fontspec package, but the default fonts are not selected by fontspec in this case. diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-stix2.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-stix2.tex index de3983fe4e..c178ff233f 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-stix2.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-stix2.tex @@ -1,7 +1,7 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-stix2.tex}[2023/09/12 v1.03 Load STIX Two text and math fonts] +\ProvidesFile{mitthesis-stix2.tex}[2024/06/28 v1.04 Load STIX Two text and math fonts] %% STIX Two text and math fonts with Heros sans serif font and Inconsolata monospaced font % @@ -12,11 +12,11 @@ % Install these as system fonts on your computer % \ifpdftex - \ClassWarning{mitnewthesis}{The stix2 fontset requires a unicode engine. Defaulting to CMR fonts.} + \ClassWarning{\ClassName}{The stix2 fontset requires a unicode engine. Defaulting to CMR fonts.} \RequirePackage[T1]{fontenc} \RequirePackage{bm} \else - \typeout{^^JLoading STIX Two text and math fonts with Heros sans serif font and Inconsolata monospaced font.^^J} + \ClassNoteNoLine{\ClassName}{Loading STIX Two text and math fonts with Heros sans serif font and Inconsolata monospaced font} % \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} % suppress tiresome warnings about lack of integration between mathtools and unicode-math diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-termes-stix2.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-termes-stix2.tex index 1e65724cc0..ed2abc1655 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-termes-stix2.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-termes-stix2.tex @@ -1,7 +1,7 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-termes-stix2.tex}[2023/09/12 v1.03 Load TeX Gyre Termes text font with STIX2 math font, Heros sans serif font, and Inconsolata monospaced font] +\ProvidesFile{mitthesis-termes-stix2.tex}[2024/10/28 v1.04 Load TeX Gyre Termes text font with STIX2 math font, Heros sans serif font, and Inconsolata monospaced font] %% TeX Gyre Termes text font and Heros sans serif font with STIX2 math font and Inconsolata monospaced font % @@ -12,11 +12,11 @@ % Install these as system fonts on your computer % \ifpdftex - \ClassWarning{mitnewthesis}{The termes-stix2 fontset requires a unicode engine. Defaulting to CMR fonts.} + \ClassWarning{\ClassName}{The termes-stix2 fontset requires a unicode engine. Defaulting to CMR fonts.} \RequirePackage[T1]{fontenc} \RequirePackage{bm} \else - \typeout{^^JLoading TeX Gyre Termes text font with STIX2 math font, Heros sans serif font, and Inconsolata monospaced font.^^J} + \ClassNoteNoLine{\ClassName}{Loading TeX Gyre Termes text font with STIX2 math font, Heros sans serif font, and Inconsolata monospaced font} % \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} % suppress tiresome warnings about lack of integration between mathtools and unicode-math diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-termes.tex b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-termes.tex index 64fffb9264..fd1e15bab8 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-termes.tex +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/fontsets/mitthesis-termes.tex @@ -1,7 +1,7 @@ % From mitthesis package % Documentation: https://ctan.org/pkg/mitthesis -\ProvidesFile{mitthesis-termes.tex}[2023/09/12 v1.03 Load TeX Gyre Termes text and math fonts, Heros sans serif font, and Cursor monospaced font] +\ProvidesFile{mitthesis-termes.tex}[2024/06/28 v1.04 Load TeX Gyre Termes text and math fonts, Heros sans serif font, and Cursor monospaced font] %% TeX Gyre Termes (Times-like) text font with Termes math font and Heros sans serif font and Cursor monospaced font % @@ -9,11 +9,11 @@ % install these as system fonts on your computer % \ifpdftex - \ClassWarning{mitnewthesis}{The termes fontset requires a unicode engine. Defaulting to CMR fonts.} + \ClassWarning{\ClassName}{The termes fontset requires a unicode engine. Defaulting to CMR fonts.} \RequirePackage[T1]{fontenc} \RequirePackage{bm} \else - \typeout{^^JLoading TeX Gyre Termes text and math fonts, Heros sans serif font, and Cursor monospaced font^^J} + \ClassNoteNoLine{\ClassName}{Loading TeX Gyre Termes text and math fonts, Heros sans serif font, and Cursor monospaced font} \RequirePackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} % suppress tiresome warnings about lack of integration between mathtools and unicode-math % unicode-math loads the fontspec package diff --git a/macros/latex/contrib/mitthesis/MIT-thesis-template/mitthesis-sample.bib b/macros/latex/contrib/mitthesis/MIT-thesis-template/mitthesis-sample.bib index 1131bed50d..98ba37532e 100644 --- a/macros/latex/contrib/mitthesis/MIT-thesis-template/mitthesis-sample.bib +++ b/macros/latex/contrib/mitthesis/MIT-thesis-template/mitthesis-sample.bib @@ -1,6 +1,6 @@ %% Sample bibliography file for mitthesis.cls %% -%% Revised: 12 September 2023 +%% Revised: 01 August 2024 %% Copyright John H. Lienhard, MIT %% Offered under the MIT license: https://ctan.org/license/mit @@ -322,4 +322,14 @@ address = {San Francisco, CA}, month = sep, } + +@book{baehr1998, + author ={H. D. Baehr and K. Stephan}, + title = {Heat and Mass Transfer}, + publisher = {Springer-Verlag}, + address = {Berlin}, + year = {1998}, + isbn = {3-540-63695-1}, +} +
\ No newline at end of file diff --git a/macros/latex/contrib/mitthesis/README.md b/macros/latex/contrib/mitthesis/README.md index 9d2918ca36..b1242ebdcb 100644 --- a/macros/latex/contrib/mitthesis/README.md +++ b/macros/latex/contrib/mitthesis/README.md @@ -1,7 +1,7 @@ #mitthesis --- A LaTeX template for an MIT thesis# - v1.14 dated 2024/07/19 + v1.15 dated 2024/08/31 ####Overview#### This class provides a LaTeX template to format an MIT thesis according to @@ -26,8 +26,10 @@ abstract.tex -- put your abstract in this file acknowledgments.tex -- put your acknowledgments in this file biosketch.tex -- put your biosketch in this file (optional) - chapter1.tex -- put your first chapter in this file (etc.) - appendixa.tex -- put your first appendix in this file (etc.) + chapter1.tex -- sample first chapter + committee_members.tex -- sample thesis committee members page (optional) + appendixa.tex -- sample appendix with code listing + appendixb.tex -- sample appendix with multipage table mitthesis-sample.bib -- a sample bibliography file with many examples mydesign.tex -- an optional file to load packages for document design fontsets/ -- a subdirectory of input files that load optional fonts @@ -53,8 +55,18 @@ --- ####Change log#### + + v1.15 (31 August 2024) + - add an example for the longtable package (App. B) + - add sample Thesis Committee page (optional) + - load microtype package, enable tracking for capitalized strings (degree name[s], institution name) + - fix typo in MIT-Thesis.tex + - edit documentation + - edit pdfauthor string to separator authors with semicolon, not comma (per Dublin Core recommendation) + - define \\@author and \\@title in case needed + v1.14 (19 July 2024) - - add backward compatibility code for \\text_titlecase_all:n + - add backward compatibility code for \\text\_titlecase\_all:n - adjust supervisor and acceptor titles used on sample cover pages - format J/psi as \\symbfit in sample chapter 1 and regenerate font samples - edit documentation diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Defaultfonts.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Defaultfonts.pdf Binary files differindex 97243bde84..ef50423842 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Defaultfonts.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Defaultfonts.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Fira_Newtxsf.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Fira_Newtxsf.pdf Binary files differindex cc3e40ce75..ab8796fe83 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Fira_Newtxsf.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Fira_Newtxsf.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Heros-Stix2.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Heros-Stix2.pdf Binary files differindex c09afd43ee..888046a1d8 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Heros-Stix2.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Heros-Stix2.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Libertine.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Libertine.pdf Binary files differindex 418bf7e8d3..ab8fa1531f 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Libertine.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Libertine.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Lucida.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Lucida.pdf Binary files differindex 43081a36f0..e81c210952 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Lucida.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Lucida.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Newtx-sans-text.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Newtx-sans-text.pdf Binary files differindex d21ca4d057..5bd3928957 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Newtx-sans-text.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Newtx-sans-text.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Newtx.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Newtx.pdf Binary files differindex 45952c0c52..2ccbde4b1d 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Newtx.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Newtx.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Stix2.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Stix2.pdf Binary files differindex 0792ee30f9..d13e8a05c4 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Stix2.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Stix2.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Termes-stix2.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Termes-stix2.pdf Binary files differindex 80b8e07d10..5601e9541a 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Termes-stix2.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Termes-stix2.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/Termes.pdf b/macros/latex/contrib/mitthesis/examples/font_samples/Termes.pdf Binary files differindex 90dfd3ab31..0451bdf880 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/Termes.pdf +++ b/macros/latex/contrib/mitthesis/examples/font_samples/Termes.pdf diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Defaultfonts.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Defaultfonts.tex index b6480ef952..33fa1e5d3a 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Defaultfonts.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Defaultfonts.tex @@ -1,12 +1,12 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber +% !BIB program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +16,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +41,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +81,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} + +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +112,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +125,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +151,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +177,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +191,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,53 +217,85 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html + +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This page is optional. Edit the file committee_members.tex +\include{committee_members} -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) - -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} +\include{appendixa} +\include{appendixb} - -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) @@ -257,6 +308,7 @@ %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Fira_Newtxsf.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Fira_Newtxsf.tex index f2c8ed1158..c574f2bf8c 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Fira_Newtxsf.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Fira_Newtxsf.tex @@ -1,12 +1,12 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber +% !BIB program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +16,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[fontset=fira-newtxsf]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[fontset=fira-newtxsf]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +41,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +81,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} + +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +112,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +125,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +151,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +177,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +191,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,53 +217,85 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% This page is optional. Edit the file committee_members.tex +\include{committee_members} + +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} - -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} - +\include{appendixa} +\include{appendixb} -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) @@ -252,8 +303,12 @@ \printbibliography[title={\refname},heading=bibintoc] +% biblatex also supports chapter-by-chapter bibliography, https://tex.stackexchange.com/a/296502/119566 +% see the biblatex manual, section 3.14.3 + %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Heros-Stix2.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Heros-Stix2.tex index 7e914bfa38..8d39d55b8a 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Heros-Stix2.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Heros-Stix2.tex @@ -1,12 +1,12 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber +% !BIB program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +16,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[fontset=heros-stix2]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[fontset=heros-stix2]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +41,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +81,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" + +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +112,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +125,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +151,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +177,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +191,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,67 +217,98 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html + +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This page is optional. Edit the file committee_members.tex +\include{committee_members} -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) - -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} +\include{appendixa} +\include{appendixb} - -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) % change "backmatter" to "chapter" if you prefer a bold face entry in the table of contents -{ \raggedright% to avoid stretched white space and split urls; DELETE THIS if you prefer justified text -% \printbibliography[title={\refname},heading=bibintoc] -} + % biblatex also supports chapter-by-chapter bibliography, https://tex.stackexchange.com/a/296502/119566 % see the biblatex manual, section 3.14.3 %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Libertine.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Libertine.tex index 9198d8a489..eb0798989e 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Libertine.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Libertine.tex @@ -1,12 +1,12 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber +% !BIB program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +16,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[fontset=libertine]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[fontset=libertine]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +41,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +81,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} + +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +112,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +125,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +151,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +177,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +191,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,53 +217,85 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html + +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This page is optional. Edit the file committee_members.tex +\include{committee_members} -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) - -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} +\include{appendixa} +\include{appendixb} - -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) @@ -257,6 +308,7 @@ %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Lucida.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Lucida.tex index 3fd445d4ff..9c7284cd7c 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Lucida.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Lucida.tex @@ -1,12 +1,12 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber +% !BIB program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +16,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[fontset=lucida]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[fontset=lucida]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +41,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +81,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} + +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +112,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +125,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +151,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +177,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +191,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,53 +217,85 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html + +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This page is optional. Edit the file committee_members.tex +\include{committee_members} -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) - -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} +\include{appendixa} +\include{appendixb} - -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) @@ -257,6 +308,7 @@ %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Newtx-sans-text.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Newtx-sans-text.tex index 9729118c30..11edff3cdc 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Newtx-sans-text.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Newtx-sans-text.tex @@ -1,12 +1,12 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber +% !BIB program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +16,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[fontset=newtx-sans-text]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[fontset=newtx-sans-text]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +41,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +81,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} + +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +112,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +125,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +151,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +177,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +191,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,53 +217,85 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% This page is optional. Edit the file committee_members.tex +\include{committee_members} + +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} - -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} - +\include{appendixa} +\include{appendixb} -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) @@ -252,8 +303,12 @@ \printbibliography[title={\refname},heading=bibintoc] +% biblatex also supports chapter-by-chapter bibliography, https://tex.stackexchange.com/a/296502/119566 +% see the biblatex manual, section 3.14.3 + %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Newtx.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Newtx.tex index e2cebe98ac..d755977cb5 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Newtx.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Newtx.tex @@ -1,12 +1,11 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +15,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[fontset=newtx]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[fontset=newtx]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +40,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +80,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} + +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +111,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +124,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +150,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +176,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +190,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,53 +216,85 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html + +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This page is optional. Edit the file committee_members.tex +\include{committee_members} -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) - -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} +\include{appendixa} +\include{appendixb} - -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) @@ -257,6 +307,7 @@ %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/README_font_sample_sources.txt b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/README_font_sample_sources.txt index beacdde0a3..18b95f79ec 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/README_font_sample_sources.txt +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/README_font_sample_sources.txt @@ -6,11 +6,16 @@ These font sample files call the following additional files as inputs: abstract.tex acknowledgments.tex appendixa.tex +appendixb.tex biography.tex chapter1.tex +committee_members.tex mitthesis-sample.bib mydesign.tex All of those files are in the directory mitthesis/MIT-thesis-template. You should also copy the fontsets directory (and mitthesis.cls) into this folder. + +Run as % ./compile-font-samples.sh + diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Stix2.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Stix2.tex index 6fe4965432..aabac07cda 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Stix2.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Stix2.tex @@ -1,12 +1,12 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber +% !BIB program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +16,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[fontset=stix2]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[fontset=stix2]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +41,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +81,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} + +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +112,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +125,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +151,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +177,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +191,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,53 +217,85 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html + +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This page is optional. Edit the file committee_members.tex +\include{committee_members} -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) - -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} +\include{appendixa} +\include{appendixb} - -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) @@ -257,6 +308,7 @@ %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Termes-stix2.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Termes-stix2.tex index 3bbf3c8333..3b17a9c4cd 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Termes-stix2.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Termes-stix2.tex @@ -1,12 +1,11 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +15,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[fontset=termes-stix2]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[fontset=termes-stix2]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +40,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +80,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} + +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +111,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +124,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +150,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +176,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +190,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,53 +216,85 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html + +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This page is optional. Edit the file committee_members.tex +\include{committee_members} -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) - -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} +\include{appendixa} +\include{appendixb} - -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) @@ -257,6 +307,7 @@ %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Termes.tex b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Termes.tex index 92a905fe99..6733f96f13 100644 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Termes.tex +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/Termes.tex @@ -1,12 +1,11 @@ % !TEX encoding = UTF-8 Unicode -% !BIB TS-program = biber -% !BIB program = biber +% !BIB TS-program = biber % This file is MIT-Thesis.tex, a LaTeX template for formatting an MIT thesis with the mitthesis class. % -% Version: 1.06, 2023/08/28 +% Version: 1.15, 2024/08/31 % -% Author: John H. Lienhard (c) 2023. Reuse under the MIT license: https://ctan.org/license/mit +% Author: John H. Lienhard, copyright 2024. Reuse under the MIT license: https://ctan.org/license/mit % Documentation is here: https://ctan.org/pkg/mitthesis @@ -16,19 +15,21 @@ pdfstandard = a-2b, pdfversion = 1.7, lang = en-US, -% debug = {xmp-export}, % uncomment to output a separate xmpi file showing the metadata +% pdfversion = 2.0, +% pdfstandard = a-4, } + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\documentclass[fontset=termes]{mitthesis} %,fontset=libertine ,fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 +\documentclass[fontset=termes]{mitthesis}% fontset=newtx, fontset=libertine, fontset=newtx-sans-text, fontset=heros-stix2, fontset=stix2 % % option [twoside] gives facing-page behavior for printing; omitting twoside will eliminate even-numbered blank pages. % option [lineno] provides line numbers, as for editing % option [mydesign] loads packages for color, title and list formats, margins, or captions: edit mydesign.tex to change defaults. % option [fontset] is a keyvalue which can be: -% pdftex or unicode engines: defaultfonts, libertine, lucida -% pdftex only: fira-newtxsf, newtx, newtx-sans-text -% unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 +% for pdftex or unicode engines: defaultfonts, libertine, lucida +% for pdftex only: fira-newtxsf, newtx, newtx-sans-text +% for unicode engines (luatex): heros-stix2, stix2, termes, termes-stix2 % if no key value is given, fonts default to CMR (pdftex) or LMR (unicode), i.e., "the LaTeX font". % You can edit the fontset files or you can write your own, myfonts.tex, and do [fontset=myfonts]. % If you are using multiple languages, load the babel package in your fontset file, before the fonts. @@ -39,12 +40,32 @@ \usepackage{listings}% documentation is here https://ctan.org/pkg/listings %% Set chemical formulas nicely -\usepackage[version=4]{mhchem}% documentation is here https://ctan.org/pkg/mhchem +\usepackage[version=4]{mhchem}% documentation at https://ctan.org/pkg/mhchem -%% Latin filler used in Chapter 1, with a test for package version date. https://ctan.org/pkg/lipsum +%% Latin filler used in Chapter 1, with a test for package version date (https://ctan.org/pkg/lipsum) \usepackage{lipsum} \IfPackageAtLeastTF{lipsum}{2021/09/20}{\setlipsum{auto-lang=false}}{} +%% Table related packages + +\usepackage{booktabs}% publication quality tables (https://ctan.org/pkg/booktabs) + +\usepackage{array}% Additional options for column formats (https://ctan.org/pkg/array) + +\usepackage{dcolumn}% For alignment of numbers on the decimal place (https://ctan.org/pkg/dcolumn) + \newcolumntype{d}[1]{D{.}{.}{#1}}% use with dcolumn package + % syntax: d{x.y} where x is max number of digits before decimal and y is max number after. + +% Package for multipage table in Appendix B. +\usepackage{longtable}% typeset multi-page tables (https://ctan.org/pkg/longtable) + +%\usepackage{tabularx}% adjustable-width columns in tabular (https://ctan.org/pkg/tabularx) + + +%% Package for improved typography + +\usepackage{microtype}% typographic fine-tuning, used in sample thesis committee page, but also acting globally on the text + %%%%%%%%% Graphics path (to figure files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -59,16 +80,26 @@ %% Numerical citations of references \usepackage[style=ext-numeric-comp,giveninits=true,maxbibnames=10,sorting=none]{biblatex} +%% IEEE style citations and references +% \usepackage[style=ieee,maxbibnames=10,sorting=none]{biblatex}% style=ext-numeric-comp,articlein=false,giveninits=true +% \DefineBibliographyStrings{english}{url= \textsc{url} , }% replaces the IEEE default "[Online]. Available" by "URL" -\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <================= CHANGE +%% author-year style citations and references +%% use \parencite, not \cite, when you want "(Author, year)" +%% The sample files are not set up to include parentheses. +% \usepackage[style=authoryear, maxbibnames=10]{biblatex} -%% These two commands enable line breaks in long URLs in the bibliography (delete if you don't want that) -\setcounter{biburllcpenalty}{7000} -\setcounter{biburlucpenalty}{8000} -% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. -% documentation is here: https://ctan.org/pkg/biblatex +\addbibresource{mitthesis-sample.bib}%% <== change to YOUR bib file <= CHANGE +%% to avoid split urls and stretched white space, you can set the bibliography ragged-right: +%\appto{\bibsetup}{\raggedright} + +%% biblatex is very powerful, and you can customize most aspects the reference list and citations to suit your needs. +%% documentation is here: https://ctan.org/pkg/biblatex +%% cheat sheet is here: https://tug.ctan.org/info/biblatex-cheatsheet/biblatex-cheatsheet.pdf + +%% To ensure citations are set, run Latex --> biblatex/biber --> Latex again %%%%%%%%%% Option to use natbib %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -80,19 +111,9 @@ %%% You can use this to rename the bibliography section %\renewcommand{\bibname}{References} -%%% Can adjust space between bibliography items (change 4pt to something else; don't drop last two lengths, they are stretchable "glue") +%%% To adjust space between bibliography items %\setlength\bibsep{4pt plus 1pt minus 1pt} - - -%%%%%%%%%% Table related packages %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\usepackage{booktabs}% better quality tables, https://ctan.org/pkg/booktabs -\usepackage{array}% additional options for table columns, https://ctan.org/pkg/array - -%\usepackage{tabularx}% https://ctan.org/pkg/tabularx - -%\usepackage{dcolumn}% alignment on decimal place, https://ctan.org/pkg/dcolumn -%\newcolumntype{d}[1]{D{.}{.}{#1}} +% change 4pt to something else; don't drop last two lengths (they are stretchable "glue") %%%%%%%%%% Option for "double spacing" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -103,18 +124,18 @@ %% to change the line separation, the most attractive results will be obtained by changing the %% leading in proportion to the the current font size, rather than just doubling the space. -%% The setspace package provides a tool for changing line separation (use thesetwo here) +%% The setspace package provides a tool for changing line separation. Use these two commands here: % % \usepackage{setspace}% documentation at https://ctan.org/pkg/setspace % \setstretch{1.1}% you can choose some other value for the stretch of space between lines % -%% Use the these commands AFTER the frontmatter +%% Use one or more of the these commands *AFTER* the frontmatter % % \onehalfspacing % \doublespacing % \singlespacing % will turn these effects off (you can use these anywhere in the document) -%% The best result may be to stay with leading selected by the typographer who set up the font. +%% The best result is usually to stay with leading selected by the typographer who set up the font. %%%%%%%%%%% Metadata %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -129,7 +150,7 @@ pdfkeywords={Massachusetts Institute of Technology, MIT}, % Add keywords that will help search engines and libraries to find your work. % Includes the name[s] of the author[s] - % (If you have used \DocumentMetadata, at line 15, you can just put "\CopyrightAuthor," for the names.) + % (If you used \DocumentMetadata at line 14, you can just put "\CopyrightAuthor," for the names.) % pdfurl={}, % If you have a url for the thesis, put it here. Otherwise delete this. @@ -155,11 +176,11 @@ % \Author{Author full name}{Author department}[Author's first PREVIOUS degree][Author's second PREVIOUS degree][... % Note that third, fourth, fifth, and sixth arguments are optional [] and may be omitted -% note on names: most of the following names are made up; Silas Holman was a professor at MIT in the 19th century. +% note on names: most of the following names are made up; Silas Holman was a physics professor at MIT in the 19th century. -\Author{Silas W. Holman}{Department of Physics}%[B.S. Physics, MIT, 1876][MBA, Ferengi School of Management, 2022] -%\Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020][MBA, Ferengi School of Management, 2022] -%\Author{Thurston Howell III}{Department of Economics} +\Author{Silas W. Holman}{Department of Physics} +% \Author{Luisa Hernández}{Department of Research}[B.S. Mechanical Engineering, UCLA, 2018][M.S. Stellar Interiors, Vulcan Science Academy, 2020] +% \Author{Thurston Howell III}{Department of Economics}[MBA, Ferengi School of Management, 2022] % Use once for each degree fulfilled by thesis % For two degrees from one department, leave the department argument blank for the second degree {}. @@ -169,22 +190,19 @@ % If there is more than one supervisor, use the \Supervisor command for each. \Supervisor{Edward C. Pickering}{Professor of Physics} -%\Supervisor{Secunda Castor}{Professor of Research} -%\Supervisor{Quintus Castor}{Professor of Log Dams} +% \Supervisor{Edward C. Pickering}{Professor of Physics, and \\ \> Professor of Something Else} +% \Supervisor{Secunda Castor}{Professor of Research} +% \Supervisor{Quintus Castor}{Professor of Log Dams} % Professor who formally accepts theses for your department (e.g., the Graduate Officer, Professor Sméagol,...) % If more than one department, use more than once -% **If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank {}.** -\Acceptor{Primus Castor}{Professor of Wetlands Engineering}{Undergraduate Officer, Department of Physics} -%\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} -%\Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} - -% If your title page is overflowing (from too many names, degrees, etc.), you can scale -% down the Signature block at the bottom with this command, or use another creative solution... -%\SignatureBlockSize{\small} %\SignatureBlockSize{\footnotesize} +\Acceptor{Tertius Castor}{Professor of Log Dams}{Graduate Officer, Department of Research} % \\ \> Third title} +% \Acceptor{Quarta Castor}{Professor of Lodge Building}{Graduate Officer, Department of Mechanical Engineering} +%%% If you need to reduce vertical space, put the acceptor title in the second argument and leave the third blank, {}. +% \Acceptor{Primus Castor}{Professor and Undergraduate Officer, Department of Physics}{} % Usage: \DegreeDate{Month}{year} -% Valid degree months are September, February, or June. +% Valid degree months are February, May, June, or September \DegreeDate{June}{1876} % Date that final thesis is submitted to department @@ -198,53 +216,85 @@ % \CClicense{CC BY-NC-ND 4.0}{https://creativecommons.org/licenses/by-nc-nd/4.0/} % + +%%%%%%% Solutions for overflowing titlepage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% If your title page is overflowing (from too many names, degrees, etc.): +% +% (a) you can reduce the 12pt and 18pt skips between various blocks to 6pt with this command: +% +% \Tighten +% +% (b) you can scale down the Signature block at the bottom with this command: +% +% \SignatureBlockSize{\small} %or this one \SignatureBlockSize{\footnotesize} +% +% (c) you can put the acceptor name and title onto two lines, rather than three like this: +% +% \Acceptor{Tertius Castor}{Professor and Graduate Officer, Department of Research}{} +% +% (d) you can change the font size of the author name[s] with +% +% \AuthorNameSize{\normalsize} +% +% (e) and you can omit any previous degrees from the title page, instead mentioning them in the biographical sketch + +% Also, if you prefer to keep the text toward the top of the page with most white space at the bottom, you +% can use this command to squash all of the vertical glue (stretchy space) with this command: +% +% \Squash +% +% This command is useful when the text has not already reach the bottom of the page, since the glue gets squashed automatically +% when the page is too full. + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Titlepage +%%% Make titlepage \maketitle -%%%%%%%%% Contents that you need to write follows %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%% Contents that you need to write follows! %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \includeonly{acknowledgments,biography,chapter1,chapter2,...,appendixa,...} -% for usage, see https://latexref.xyz/dev/latex2e.html#g_t_005cinclude-_0026-_005cincludeonly +% for usage of includeonly, see https://latexref.xyz/_005cinclude-_0026-_005cincludeonly.html + +%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%% Frontmatter (write this material in the mentioned files) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% This page is optional. Edit the file committee_members.tex +\include{committee_members} -% The abstract environment creates all the required headers and footnote. -% You only need to add the text of the abstract itself in the file abstract.tex +% The abstract environment creates all the required headings and footers. +% You only need to the text of the abstract in the file abstract.tex \begin{abstract} - \input{abstract.tex}% in this case, use \input rather than \include because you are inside an environment + \input{abstract.tex}% use \input rather than \include because we're inside an environment \end{abstract} -\include{acknowledgments.tex} +\include{acknowledgments}% acknowledgments.tex (.tex extension is presumed by \include) -\include{biography.tex}% optional, see MIT Libraries https://libraries.mit.edu/distinctive-collections/thesis-specs/#format +\include{biography}% biography.tex (optional, see https://libraries.mit.edu/distinctive-collections/thesis-specs/#format) - -%%% Table of contents and lists of stuff (delete lists you don't need, e.g., if no tables) %%%%%%%% +%%% Table of contents and lists of stuff (delete unused lists, i.e., if no tables or figures) %%%%% \tableofcontents \listoffigures \listoftables - %%% Chapters of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% If you want to use "double spacing", you can start here... +%% If you want to use "double spacing", you should start here... -\include{chapter1.tex} -%\include{chapter2.tex} -%\include{chapter3.tex} -%\include{chapter4.tex} + \include{chapter1}% .tex extension is presumed +% \include{chapter2} +%\include{chapter3} +%\include{chapter4} %%% Appendicies of thesis %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \appendix -\include{appendixa.tex} +\include{appendixa} +\include{appendixb} - -%%% Bibliography %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Bibliography (biblatex) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \defbibheading{bibintoc}{\chapter*{#1}\addcontentsline{toc}{backmatter}{\refname}} % this sets the title of contents name for bibliography to \refname (= References) @@ -257,6 +307,7 @@ %%%% Option for natbib %%%%%%%%%%%%% + %% use an appropriate style (.bst) and your own .bib file[s] %\bibliographystyle{plainnat} diff --git a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/compile-font-samples.sh b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/compile-font-samples.sh index fdb19c1f4f..16b0d5bc48 100755 --- a/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/compile-font-samples.sh +++ b/macros/latex/contrib/mitthesis/examples/font_samples/latex_sources/compile-font-samples.sh @@ -1,60 +1,67 @@ #! /bin/bash -# first run - +# Default fonts +pdflatex Defaultfonts +biber Defaultfonts pdflatex Defaultfonts -pdflatex Fira_Newtxsf -pdflatex Libertine -pdflatex Lucida -pdflatex Newtx-sans-text -pdflatex Newtx - -lualatex Heros-Stix2 -lualatex Stix2 -lualatex Termes-stix2 -lualatex Termes - -# biber - -biber Defaultfonts -biber Fira_Newtxsf -biber Libertine -biber Lucida -biber Newtx-sans-text -biber Newtx -biber Heros-Stix2 -biber Stix2 -biber Termes-stix2 -biber Termes - -# second run - pdflatex Defaultfonts + +# Fira_Newtxsf +pdflatex Fira_Newtxsf +biber Fira_Newtxsf pdflatex Fira_Newtxsf +pdflatex Fira_Newtxsf + +# Libertine +pdflatex Libertine +biber Libertine pdflatex Libertine +pdflatex Libertine + +# Lucida +pdflatex Lucida +biber Lucida +pdflatex Lucida pdflatex Lucida + +# Newtx-sans-text +pdflatex Newtx-sans-text +biber Newtx-sans-text +pdflatex Newtx-sans-text pdflatex Newtx-sans-text + +# Newtx +pdflatex Newtx +biber Newtx +pdflatex Newtx pdflatex Newtx +# Heros-Stix2 +lualatex Heros-Stix2 +biber Heros-Stix2 lualatex Heros-Stix2 +lualatex Heros-Stix2 + +# Stix2 +lualatex Stix2 +biber Stix2 lualatex Stix2 +lualatex Stix2 + +# Termes-stix2 +lualatex Termes-stix2 +biber Termes-stix2 +lualatex Termes-stix2 lualatex Termes-stix2 -lualatex Termes -# third run -pdflatex Defaultfonts -pdflatex Fira_Newtxsf -pdflatex Libertine -pdflatex Lucida -pdflatex Newtx-sans-text -pdflatex Newtx - -lualatex Heros-Stix2 -lualatex Stix2 -lualatex Termes-stix2 +# Termes +lualatex Termes +biber Termes +lualatex Termes lualatex Termes + # clean up mkdir pdffiles @@ -68,5 +75,3 @@ rm *.lot rm *.lof rm *.toc rm *.xml - - diff --git a/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.pdf b/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.pdf Binary files differindex ab61cf59e5..69af5643ce 100644 --- a/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.pdf +++ b/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.pdf diff --git a/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.tex b/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.tex index 4e5e739585..dc0dd3ed8a 100644 --- a/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.tex +++ b/macros/latex/contrib/mitthesis/mitthesis-doc/mitthesis-doc.tex @@ -1,14 +1,14 @@ % !TEX TS-program = lualatex % !TEX encoding = UTF-8 Unicode -% Version date: 19 July 2024 +% Version date: 31 August 2024 \DocumentMetadata { pdfstandard = a-4, pdfversion = 2.0, -% testphase = {phase-III, table, firstaid, math}, lang = en-US, +% testphase = {phase-III, table, firstaid, math, title}, % debug = {xmp-export}, % note that subject entries are all fine in dc format of outputted xmpi file. } @@ -17,9 +17,10 @@ \documentclass[11pt]{article} \usepackage[letterpaper,margin=1in,footskip=0.5in]{geometry} -\usepackage{metalogo} + \usepackage{hologo} \newcommand*\pdfTeX{\hologo{pdfTeX}} +\newcommand*\LuaLaTeX{\hologo{LuaLaTeX}} \usepackage[x11names,svgnames,dvipsnames,table]{xcolor} \usepackage{luacolor} % load AFTER xcolor @@ -84,13 +85,11 @@ \usepackage[psdextra]{hyperref} -\hypersetup{% - unicode,% -% pdftex,% - pdfborder={0 0 0},% - bookmarksnumbered=true,% - bookmarksopen=true,% - bookmarksopenlevel=2,% +\hypersetup{ + pdfborder={0 0 0}, + bookmarksnumbered=true, + bookmarksopen=true, + bookmarksopenlevel=2, colorlinks=true, linkcolor=blue, citecolor=blue, @@ -99,15 +98,15 @@ anchorcolor=yellow,% not all pdf viewers recognize this field (Firefox does) % colorscheme=phelype,% overrides link, cite, url, file colors with a preset scheme, through \DocumentMetadata pdfpagelayout=SinglePage, - pdfdisplaydoctitle=true,% + pdfdisplaydoctitle=true, pdfstartview=Fit, pdfmetalang={en}, - pdftitle={Documentation for the MIT thesis template},% - pdfkeywords={John Lienhard, Massachusetts Institute of Technology, MIT, thesis, dissertation, template, latex},% - pdfnewwindow=true,% + pdftitle={Documentation for the MIT thesis template}, + pdfkeywords={John Lienhard, Massachusetts Institute of Technology, MIT, thesis, dissertation, template, latex}, + pdfnewwindow=true, pdfauthor={John H. Lienhard}, pdfauthortitle={Professor of Mechanical Engineering}, - pdfcaptionwriter={{John H. Lienhard, V}}, %{\xmpquote{John H. Lienhard\xmpcomma\ V}}, + pdfcaptionwriter={{John H. Lienhard, V}}, pdfurl={https://lienhard.mit.edu}, pdfcontactemail={lienhard@mit.edu}, pdfcontactaddress={77 Massachusetts Avenue, Room 3-166}, @@ -126,10 +125,7 @@ \cs_if_exist:NTF \pdfmeta_xmp_add:n {\pdfmeta_xmp_add:n{<xmpRights:Marked>True</xmpRights:Marked>}}{} \ExplSyntaxOff -\urlstyle{same} % this changes font for \url to the current text font, but it is not recognized by \href. - -%\RequirePackage{bookmark}% improves handling of pdf bookmarks -%\providecommand\hrefurl[2]{\href{#1}{#2}}% to address certain issues around URL recognition with new pdf management code +\urlstyle{same}% this changes font for \url to the current text font, but it is not recognized by \href. %%%%%%%% A nomenclature environment, if needed %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -155,7 +151,7 @@ % Increase first optional argument to a dimension > 2em if wide entries cause undesired misalignment of columns. % Second optional argument can be used to rename the environment, e.g., to List of Symbols. % Third optional argument selects section-level or chapter-level style for the nomenclature list. -\newcounter{dummy}% for tagging code +%\newcounter{dummy}% for tagging code \NewDocumentEnvironment{nomenclature}{O{2em} O{\nomname} O{section}}{% \setlength\columnsep{2em} \setlength{\nomenwidth}{#1} @@ -316,7 +312,7 @@ By default, \texttt{mitthesis.cls} will load the traditional \LaTeX\ typeface, C Ten font sets are predefined, including the default set (see Table~\ref{tab:2}). Three work only with \pdfTeX, four work only with unicode engines, and three work with either. These options include a mixture of serif or sans serif text and math fonts, as shown in the table. To access the predefined font sets, you \textit{must} have the directory \texttt{fontsets} as a subdirectory of your working directory, including its files as named. For unicode engines, you must have the relevant fonts installed as system fonts on your computer. -Among the predefined font sets, Termes and NewTX are serifed typefaces similar to the digital typeface Times New Roman. STIX Two is more similar to the original metal-type Times typeface. Linux Libertine is a serif typeface inspired by 19\textsuperscript{th} century book type. Lucida is a serifed typeface designed for high legibility at small size or on low resolution devices. Lucida is excellent for mathematics and includes a complete bold-face math font, but it is not free. Heros and NewTX-sans are sans-serif text typefaces similar to Helvetica. NewTXsf is a sans-serif math font which draws upon glyphs from the STIX fonts. Fira is a humanist sans-serif text typeface designed in association with the Firefox browser. Finally, Computer Modern (and its extension Latin Modern)---the traditional \LaTeX\ typeface---is a Didone typeface, with high contrast between thick and thin elements. +Among the predefined font sets, Termes and NewTX are serifed typefaces similar to the digital typeface Times New Roman. STIX Two is more similar to the original metal-type Times typeface. Linux Libertine is a serif typeface inspired by 19\textsuperscript{th} century book type. Lucida is a serifed typeface designed for high legibility at small size or on low resolution devices. Lucida is excellent for mathematics and includes a complete bold-face math font, but it is not free. Heros and NewTX-sans are sans-serif text typefaces similar to Helvetica. NewTXsf is a sans-serif math font which draws upon glyphs from the STIX fonts. Fira is a humanist sans-serif text typeface designed in conjunction with the Firefox operating system. Finally, Computer Modern (and its extension Latin Modern)---the traditional \LaTeX\ typeface---is a Didone typeface, with high contrast between thick and thin elements. % STIX Two, Termes, and LMR do not include a separate bold math font. You may also place your own font-set file, say \texttt{Myfontset.tex}, in your working directory, and load it with: @@ -402,7 +398,7 @@ The \texttt{mitthesis} class loads the \texttt{amsmath} package and its extensio Specialized packages for many disciplines can be found in \hrefurl{https://ctan.org}{CTAN}. These include subjects like \hrefurl{https://ctan.org/topic/chemistry}{chemistry}, \hrefurl{https://ctan.org/topic/linguistic}{linguistics}, and \hrefurl{https://ctan.org/topic/physics}{physics}. As examples of such packages, the sample thesis template uses the package \texttt{\hrefurl{https://ctan.org/pkg/mhchem}{mhchem}} to set chemical equations and the package \texttt{\hrefurl{https://ctan.org/pkg/listings}{listings}} to list computer code. -Several packages focus on table and tabular environments. The \texttt{\hrefurl{https://ctan.org/pkg/booktabs}{booktabs}} package, use in the sample thesis template, produces better quality horizontal lines (called \textit{rules}) for separating material in tables. The \texttt{\hrefurl{https://ctan.org/pkg/array}{array}} package (also used) provides additional options for column formats in tabular environments, and the \texttt{\hrefurl{https://ctan.org/pkg/dcolumn}{dcolumn}} package aligns columns of numbers on the decimal separator. +Several packages focus on table and tabular environments. The \texttt{\hrefurl{https://ctan.org/pkg/booktabs}{booktabs}} package, use in the sample thesis template, produces better quality horizontal lines (called \textit{rules}) for separating material in tables. The \texttt{\hrefurl{https://ctan.org/pkg/array}{array}} package (also used) provides additional options for column formats in tabular environments, the \texttt{\hrefurl{https://ctan.org/pkg/dcolumn}{dcolumn}} package aligns columns of numbers on the decimal separator, and the \texttt{\hrefurl{https://ctan.org/pkg/longtable}{longtable}} package (also used) formats multipage tables with automatic page breaking. When selecting a package to use, check that it is currently maintained (with relatively recent updates), and compare it to other packages that perform similar functions. Some packages are better than others, and some obsolete packages remain online. @@ -410,8 +406,7 @@ The packages called by \texttt{mitthesis} are listed in Table~\ref{tab:3} on pag \begin{table} \caption{External packages used. For documentation, visit CTAN, \url{https://ctan.org}. Alternatively, if you have \hrefurl{https://www.tug.org/texlive/}{\TeX\ Live} installed, you can open a terminal window and type \texttt{\%\ texdoc package-name}.\label{tab:3}} -\vskip5pt -\centering{\small% +\centering{\footnotesize% \setlength\extrarowheight{3pt} \begin{tabular*}{\textwidth}{>{\ttfamily}l<{}@{\extracolsep{\fill}}p{18em} p{22em} } \\[-5pt] @@ -419,20 +414,20 @@ The packages called by \texttt{mitthesis} are listed in Table~\ref{tab:3} on pag Package & Class & User \\ \midrule bm & defines commands to access bold math symbols (loaded for default fonts) & with \pdfTeX, the command \verb|\bm{..}| produces a bold math symbol \\ -bookmarks& is loaded automatically under the new pdf-management system & customize pdf bookmarks \\ +bookmark & is loaded automatically under the new pdf-management system & customize pdf bookmarks \\ doi & support for hyperlinking DOIs & hyperlink a doi number: \verb|\doi{..}| \\ etoolbox & extend or modify other macros & can use in preamble if needed \\ geometry & set page size and margins & can use \verb|\newgeometry| in \texttt{mydesign.tex}\\ graphicsx& support for inserting images & use to include graphics\\ hyperref & support for hyperlinks and metadata & must complete setup in preamble\\ iftex & check which \LaTeX\ engine is running& macros to check which engine, e.g., \verb|\ifpdftex| \\ -mathtools& loads and extends \texttt{amsmath} & \textbf{many useful math macros available}. See documentation for \texttt{amsmath} and \texttt{mathtools} \\[0.7em] +mathtools& loads and extends \texttt{amsmath} & \textbf{many useful math macros available}. See documentation for \texttt{amsmath} and \texttt{mathtools} \\ \midrule hyperxmp & fallback if no \verb|\DocumentMetadata{..}|& ---\\ kvoptions& key values for systems pre 2022/11/01 & ---\\ xparse & for systems older than 2020/10/01 & macros to define new commands\\ \midrule -lineno & loaded if class option is given & keyvalue \texttt{lineno} will give line numbers; \texttt{lineno} package adds commands to control numbering\\[0.7em] +lineno & loaded if class option is given & keyvalue \texttt{lineno} will give line numbers; \texttt{lineno} package adds commands to control numbering\\ \midrule caption & also loaded by \texttt{mydesign.tex} & support for caption styling \\ subcaption & also loaded by \texttt{mydesign.tex} & support for subfigures within figures \\ @@ -441,6 +436,8 @@ xcolor & also loaded by \texttt{mydesign.tex} & support for colors, includi array & --- & additional options for formatting table columns \\ booktabs & --- & better quality tables, with additional commands \\ dcolumn & --- & align number columns on selectable separators \\ +longtable & --- & multipage tables with automatic page breaking \\ +microtype & --- & typographical refinements: character protrusion, font expansion, letter spacing (tracking), etc. \\ \midrule babel & --- & if you use multiple languages, load \texttt{babel} in a fontset file before loading fonts \\ biblatex & --- & sample template uses this bibliography tool. Change to \texttt{natbib} if you prefer\\ @@ -465,7 +462,8 @@ When a thesis supervisor has multiple titles (which will not fit on one line), y \vskip 5pt \quad\verb|\Supervisor{name}{first title and \\ \> second title}| \vskip 5pt -\noindent\textbf{\TeX hackers note:} The signature block is typeset as a \LaTeX\ \texttt{tabbing} environment. +\noindent The same trick works in the \verb|\Acceptor| command. +\textbf{\TeX hackers note:} The signature block is typeset as a \LaTeX\ \texttt{tabbing} environment. \subsection{Overflowing title page: managing space} If your title page overflows the vertical space (from too many authors, degrees, previous degrees, etc.), you can use some or all of the following techniques. The commands must be given before \verb|\maketitle|. \begin{enumerate} diff --git a/macros/latex/contrib/mitthesis/mitthesis.cls b/macros/latex/contrib/mitthesis/mitthesis.cls index 0a3a44310c..0a142d30ae 100644 --- a/macros/latex/contrib/mitthesis/mitthesis.cls +++ b/macros/latex/contrib/mitthesis/mitthesis.cls @@ -7,8 +7,8 @@ %% MIT Libraries' requirements as of 2024. %% %% This file's version and date: - \def\versionno{1.14} - \def\versiondate{2024/07/19\space} + \def\versionno{1.15} + \def\versiondate{2024/08/31\space} %% %% Author: John H. Lienhard, V %% Department of Mechanical Engineering @@ -89,6 +89,7 @@ \IfPackageLoadedTF{graphicx}{\define@key{Gin}{alt}{}}{\relax} } } +% Most compatibility commands will be dropped as time goes by ... %%%%%%%%%%%%%% Options for the class %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -157,22 +158,28 @@ % pdf bookmarks. This is not automatic for \chapter*, which is the format of toc, lof, and lot. \RequirePackage{etoolbox}% provides \patchcmd + \patchcmd{\tableofcontents}{\contentsname}{\pdfbookmark[0]{Table of Contents}{toc}\contentsname}{}{} % placement matters. -\patchcmd{\listoffigures}{\chapter*{\listfigurename}}{\chapter*{\phantomsection\listfigurename}\addcontentsline{toc}{frontmatter}{\listfigurename}}{}{} -\patchcmd{\listoftables}{\chapter*{\listtablename}}{\chapter*{\phantomsection\listtablename}\addcontentsline{toc}{frontmatter}{\listtablename}}{}{} + +%% Temporary accommodation of latex tagging. Rework once tagging structures have been finalized by LaTeX3 team. +%% No guarantee that this hack is hierarchically correct. +%% Current latex-lab places tags around \@schapter, which is harder to deal with here. +\providecommand*\MakeLinkTarget{\@gobbletwo} + +\patchcmd{\listoffigures}{\chapter*{\listfigurename}}{\chapter*{\phantomsection\listfigurename}\MakeLinkTarget[chapter]{}\addcontentsline{toc}{frontmatter}{\listfigurename}}{}{} +\patchcmd{\listoftables}{\chapter*{\listtablename}}{\chapter*{\phantomsection\listtablename}\MakeLinkTarget[chapter]{}\addcontentsline{toc}{frontmatter}{\listtablename}}{}{} \NewCommandCopy\l@frontmatter\l@chapter \NewCommandCopy\l@backmatter\l@chapter \providecommand*{\toclevel@frontmatter}{0}% prevent warning, see hyperref manual Sec. 13.3 \providecommand*{\toclevel@backmatter}{0} -%% if you want different formatting for front/back matter, change here (cf. report.cls). This approach preserves tagging hooks. -\AtBeginDocument{ - \patchcmd{\l@frontmatter}{\bfseries}{\itshape}{}{} - \patchcmd{\l@frontmatter}{\nobreak\hfil}{\upshape\nobreak\hfil}{}{} - \patchcmd{\l@frontmatter}{1.0em}{3pt}{}{} - \patchcmd{\l@backmatter}{\bfseries}{\itshape}{}{} - \patchcmd{\l@backmatter}{\nobreak\hfil}{\upshape\nobreak\hfil}{}{} -} + +%% if you want different formatting for front/back matter, change here (cf. report.cls). +\patchcmd{\l@frontmatter}{\bfseries}{\itshape}{}{} +\patchcmd{\l@frontmatter}{\nobreak\hfil}{\upshape\nobreak\hfil}{}{} +\patchcmd{\l@frontmatter}{1.0em}{3pt}{}{} +\patchcmd{\l@backmatter}{\bfseries}{\itshape}{}{} +\patchcmd{\l@backmatter}{\nobreak\hfil}{\upshape\nobreak\hfil}{}{} %%%%%%%%%%%%% Geometry, mathtools, graphics, design, fonts, hyperrefs, bookmarks, footnotes %%%%%%%%%%%%%%%%%%% @@ -294,8 +301,10 @@ %%%%%%%%%%%% PDF bookmark strings %%%%%%%%%%%%%%%% -%%% Since \bm may be useful in headings, use this fix to reduce frequency with which alternate -%%% bookmark strings must be given with commands such as \section{ \texorpdfstring{texstring}{pdfstring} } +%%% By early 2024, \pdfstring removes all robust commands from bookmarks, so that such commands +%%% don't cause errors; the following pdfstringdisables serve to suppress warnings. + +%% \bm may be useful in headings, but let's disable in the associated bookmarks \pdfstringdefDisableCommands{% \def\bm#1#{\relax}% } @@ -323,7 +332,7 @@ } %%% Here's a more cumbersome removal of the warning for $ (math shift) in pdfbookmarks. -%%% Not implementing this by default, since novice authors may benefit from the warning. +%%% Not implementing this by default, since novice authors may benefit from the warning. :-) %%% https://tex.stackexchange.com/a/620360/119566 %\let\oldHyPsd@CatcodeWarning\HyPsd@CatcodeWarning %\renewcommand{\HyPsd@CatcodeWarning}[1]{% @@ -349,6 +358,10 @@ %%%%%%%%%%%% MACROS FOR HANDLING TITLE AND ABSTRACT PAGES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\AtBeginDocument{ + \providecommand{\textls}[2][]{#2}% in case microtype is not loaded +} + %%%%%%%%%% Degree Date Module %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \tl_new:N \g__dd_month_tl @@ -441,11 +454,11 @@ \int_incr:N \l__author_autcrcnt_int \int_while_do:nNnn { \l__author_autcrcnt_int } < { \g_author_authorcnt_int } { - \tl_gput_right:Nx \g__author_ca_tl {,\ \seq_item:cn { g_author_name_seq } { \l__author_autcrcnt_int } } + \tl_gput_right:Nx \g__author_ca_tl {,~\seq_item:cn { g_author_name_seq } { \l__author_autcrcnt_int } } \int_incr:N \l__author_autcrcnt_int } \int_compare:nNnT { \l__author_autcrcnt_int } = { \g_author_authorcnt_int } { - \tl_gput_right:Nx \g__author_ca_tl {\ and\ \seq_item:cn { g_author_name_seq } { \l__author_autcrcnt_int } } + \tl_gput_right:Nx \g__author_ca_tl {~and~\seq_item:cn { g_author_name_seq } { \l__author_autcrcnt_int } } } \tl_set:Nn \l_tmpa_tl {\tl_item:Nn \g__author_ca_tl {-1} }% get last token \str_case_e:nnT @@ -453,6 +466,7 @@ { {.}{} } { \__copyright_remove_period:N { \g__author_ca_tl } }% remove last token if it is a period \__author_pdfcopyrightauthor: + \cs_gset:Npe \@author { \tl_use:N \g__author_ca_tl }% 2024/08/06 } \cs_new:Nn \__copyright_remove_period:N { @@ -465,11 +479,11 @@ \int_until_do:nNnn { \l_tmpa_int } = { \g_author_authorcnt_int } { \int_incr:N \l_tmpa_int - \tl_gput_right:Nx \g__author_pdfca_tl {,\ { \seq_item:cn { g_author_name_seq } { \l_tmpa_int } } } - } + \tl_gput_right:Nx \g__author_pdfca_tl {;\ { \seq_item:cn { g_author_name_seq } { \l_tmpa_int } } } + % changed comma to semicolon for consistency with Dublin Core metadata format, 2024/08/30 + } } - \tl_new:N \g__author_namesize_tl \tl_gset:Nn \g__author_namesize_tl { \large } \cs_new:Nn \__author_block: { @@ -722,10 +736,10 @@ \ of} \par \int_until_do:nNnn { \l__degree_degreeno_int } = { \g_degree_degreecnt_int } { - \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par and\par + \textls[60]{\text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}}\par and\par \int_incr:N \l__degree_degreeno_int } - \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par + \textls[60]{\text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}}\par } \msg_new:nnnn { \ClassName } { no_degree } { Missing\ degree!\ You\ must\ issue\ the\ \Degree{name}{department}\ command. }{ @@ -750,10 +764,10 @@ \ of} \par\medskip \int_until_do:nNnn { \l__degree_degreeno_int } = { \g_degree_degreecnt_int } { - \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par and\par + \textls[60]{\text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}}\par and\par \int_incr:N \l__degree_degreeno_int } - \text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}\par\medskip + \textls[60]{\text_uppercase:n {\seq_item:cn { g_degree_name_seq } { \l__degree_degreeno_int }}}\par\medskip } %%%%%%%%%% End Degree Module %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -890,6 +904,7 @@ \RenewDocumentCommand{\title}{m} { \__mitthesis_title:n { #1 } + \cs_gset:Npe \@title { \tl_use:N \g_mitthesis_title_tl } % 2024/08/06 \hypersetup{ pdftitle={\g_mitthesis_title_tl}, } @@ -967,12 +982,12 @@ {\Large\textbf{\g_mitthesis_title_tl} %\phantomsection\addcontentsline{toc}{chapter}{Title\ page} \par} - \__titlepage_blockskip:nn {12}{1.5}% new idea + \__titlepage_blockskip:nn {12}{1.5} \__author_block: \__titlepage_blockskip:nn {12}{1.5} \__degree_block: - at\ the\par - \text_uppercase:n { \g_titlepage_institution_name_tl }\par + at~the\par + \textls[60]{\text_uppercase:n { \g_titlepage_institution_name_tl }}\par \DegreeMonth\ \DegreeYear\par \__titlepage_blockskip:nn {12}{2} \copyright\space\DegreeYear\space\CopyrightAuthor\@.\c_space_token \g_copyright_copyrightlicencse_tl % \@. in case name ends with III, IV, V,... diff --git a/macros/latex/contrib/pdfpages/pdfpages.dtx b/macros/latex/contrib/pdfpages/pdfpages.dtx index 5b41ae68c4..ca9ccd8b46 100644 --- a/macros/latex/contrib/pdfpages/pdfpages.dtx +++ b/macros/latex/contrib/pdfpages/pdfpages.dtx @@ -27,12 +27,12 @@ %<*dtx> \makeatletter %</dtx> -\def\AM@fileversion{v0.6a} +\def\AM@fileversion{v0.6b} \def\AM@Git@Date@process$#1: #2 #3${\AM@Git@Date@process@i#2\END} \def\AM@Git@Date@process@i#1-#2-#3\END{\def\AM@Git@Date{#1/#2/#3}} \def\AM@Git@SHA@process$#1: #2${\def\AM@Git@SHA{#2}} -\AM@Git@Date@process$Date: 2024-05-29 13:40:24 +0200 $ -\AM@Git@SHA@process$SHA-1: 8248eea896cba74c6d712bddc3e4ae8d4c403081 $ +\AM@Git@Date@process$Date: 2024-08-20 15:16:01 +0200 $ +\AM@Git@SHA@process$SHA-1: 8cc873330fc0863d9d32e017e64c98d9f04f579d $ %</!(example1,example2,example3,installer)> % % @@ -3838,10 +3838,10 @@ % \begin{macrocode} \def\AM@getpagecount{% \expandafter\filename@parse\expandafter{\AM@currentdocname}% - \edef\type@ext{% - \noexpand\lowercase{% - \noexpand\def\noexpand\type@ext{.\filename@ext}}}% - \type@ext + \begingroup\edef\x{% + \lowercase{\endgroup + \def\noexpand\type@ext{\expandafter\scantokens\expandafter{\filename@ext\noexpand}}}}% + \x \ifx\type@ext\AM@pdf@ext \ifdefined\subfix \let\AM@import@path\@empty @@ -3859,7 +3859,7 @@ \def\AM@pagecount{1}% \fi } -\def\AM@pdf@ext{.pdf} +\def\AM@pdf@ext{pdf} % \end{macrocode} % |\XeTeXversion| has changed from time to time: 0.997, 0.997-dev, % 0.998.1 @@ -4902,6 +4902,11 @@ % with |subfiles.sty|. % \end{itemize} % +% \subsection*{2024/08/20 v0.6b} +% \begin{itemize} +% \item Make |\includepdf[pages=-]{\detokenize{file.pdf}}| work in xelatex. +% \end{itemize} +% % \Finale % % \iffalse diff --git a/macros/latex/contrib/pdfpages/pdfpages.pdf b/macros/latex/contrib/pdfpages/pdfpages.pdf Binary files differindex a5ea1485bc..b4182f36df 100644 --- a/macros/latex/contrib/pdfpages/pdfpages.pdf +++ b/macros/latex/contrib/pdfpages/pdfpages.pdf diff --git a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf Binary files differindex b4802be53e..3486f2ae0a 100644 --- a/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf +++ b/macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf diff --git a/macros/latex/contrib/proflycee/tex/ProfLycee.sty b/macros/latex/contrib/proflycee/tex/ProfLycee.sty index e37ce44eeb..fffb3c5da9 100644 --- a/macros/latex/contrib/proflycee/tex/ProfLycee.sty +++ b/macros/latex/contrib/proflycee/tex/ProfLycee.sty @@ -3,7 +3,8 @@ % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{ProfLycee}[2024/07/13 3.04d Aide pour l'utilisation de LaTeX en lycee] +\ProvidesPackage{ProfLycee}[2024/09/01 3.04e Aide pour l'utilisation de LaTeX en lycee] +% 3.04e Commandes prix/angle/pourcent en lien avec siunitx % 3.04d PitonInputFile et styles % 3.04c Max et min pour des fonctions % 3.04b Travail sur la loi binomiale + Ajout de clés pour les environnements graphiques diff --git a/macros/latex/contrib/proflycee/tex/proflycee-tools-ecritures.tex b/macros/latex/contrib/proflycee/tex/proflycee-tools-ecritures.tex index 0a1555c4e9..f524c41cf3 100644 --- a/macros/latex/contrib/proflycee/tex/proflycee-tools-ecritures.tex +++ b/macros/latex/contrib/proflycee/tex/proflycee-tools-ecritures.tex @@ -10,6 +10,39 @@ \RequirePackage{mleftright} %pour une meilleure gestion des espacements avec \left \right :-) %\RequirePackage{mathrsfs}%pour \mathscr (à voir...) +%===UNITÉS + +\NewDocumentCommand\pflprix{ o m }{% + \IfValueTF{#1}% + {% + \num[round-mode=places,round-precision=#1]{#2}\,\text{€}% + }% + {% + \num{#2}\,\text{€}% + }% +} + +\NewDocumentCommand\pflangle{ o m }{% + \IfValueTF{#1}% + {% + \num[round-mode=places,round-precision=#1]{#2}\text{\textdegree}% + }% + {% + \num{#2}\text{\textdegree}% + }% +} + +\NewDocumentCommand\pflpcent{ o m }{% + \IfValueTF{#1}% + {% + \num[round-mode=places,round-precision=#1]{#2}\,\%% + }% + {% + \num{#2}\,\%% + }% +} + + %===ENSEMBLES CLASSIQUES \ifthenelse{\isundefined{\N}}% {% diff --git a/macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf b/macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf Binary files differindex 17618e7120..f916afc3bb 100644 --- a/macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf +++ b/macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf diff --git a/macros/latex/contrib/profmaquette/latex/ProfMaquette.sty b/macros/latex/contrib/profmaquette/latex/ProfMaquette.sty index f64c1bf745..d03683957c 100644 --- a/macros/latex/contrib/profmaquette/latex/ProfMaquette.sty +++ b/macros/latex/contrib/profmaquette/latex/ProfMaquette.sty @@ -2,9 +2,9 @@ % licence : Released under the LaTeX Project Public License v1.3c % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e}% -\def\filedate{2024/08/27}% +\def\filedate{2024/09/01}% \let\PfMfiledate\filedate% -\def\fileversion{0.97b}% +\def\fileversion{0.98}% \let\PfMfileversion\fileversion% \ProvidesPackage{ProfMaquette}[\filedate\space v\fileversion\space Maquettage de documents]% @@ -54,7 +54,7 @@ \makeatother %définition des clés \RequirePackage{simplekv}% -\setKVdefault[Boulot]{Dys=false,Taille=14,Cours=false,Base=false,BaseHTML=false,CAN=false,Fiche=false,DM=false,DS=false,IE=false,Kholle=false,RecapBrevet=false,PdT=false,Parcours=false,Contrat=false,FdR=false,ParcoursPerso=false,OlympiadesAPMEP=false,LivreHeros=false,CorrigeInverse=false,CorrigeSeul=false,CorrigeApres=false,CorrigeFin=false,CorrigeAll=false,Brevet=false,BaremeComplet=false,BaremeGlobal=false,CorrectionColonnes=false,EntrainementColonnes=false,Epaisseur=0pt,VersSolution=false,AvecEntrainement=false,Small=false,Footnotesize=false,Scriptsize=false,AllDirect=false,AllPouce=false,Input=false}%Les deux derniers pour essayer de mettre tous les exercices d'un même fichier en mode Reponse, en mode Indice. Pas implanté, pas testé +\setKVdefault[Boulot]{Dys=false,Taille=14,Cours=false,Base=false,BaseHTML=false,CAN=false,Fiche=false,DM=false,DS=false,IE=false,Kholle=false,RecapBrevet=false,PdT=false,Parcours=false,Contrat=false,FdR=false,ParcoursPerso=false,OlympiadesAPMEP=false,LivreHeros=false,CorrigeInverse=false,CorrigeSeul=false,CorrigeApres=false,CorrigeFin=false,CorrigeAll=false,Brevet=false,BaremeComplet=false,BaremeGlobal=false,CorrectionColonnes=false,EntrainementColonnes=false,Epaisseur=0pt,EEpaisseur=0pt,ESansSaut=false,VersSolution=false,AvecEntrainement=false,Small=false,Footnotesize=false,Scriptsize=false,AllDirect=false,AllPouce=false,Input=false}%Les deux derniers pour essayer de mettre tous les exercices d'un même fichier en mode Reponse, en mode Indice. Pas implanté, pas testé \defKV[Boulot]{Colonnes=\setKV[Boulot]{CorrectionColonnes}}% \defKV[Boulot]{EColonnes=\setKV[Boulot]{EntrainementColonnes}}% \setKVdefault[Cours]{Couleur=Crimson,Theme=Trace écrite,NomExercice=Exercice}% @@ -73,7 +73,7 @@ \setKVdefault[Kholle]{Sujet=1,Numero=1,Date=15,Niveau=TSI-1,Code=\jobname,Lieu=Lycée du Hainaut (Valenciennes),NomEleve=Albert Einstein,CR=false}% \setKVdefault[CAN]{Date=\today,Niveau=6,Duree=9,CoefQ=0.4,CoefR=0.35,CoefJ=0.1}% -\setKVdefault[ClesExercices]{NbQuestions=1,PasTitre=false,AffichageSource=false,BaremeTotal,BaremeDetaille=false,MotPoint=point,AffichageTitre=false,Calculatrice=true,Oral=false,Difficulte=0,AffichageCompetence=false,PasCorrige=false,Direct=false,Pouce=false,Parcours=false,Contrat=false,FdR=false,Routes=false,Stops=false,Background=white,Cadre=gray!50,Numerote,Ligne=false,Doublespacing=false,Onehalfspacing=false,Cadres=false,TitreSol=false,NonUtilise=false,Profile=false,AEntretenir=false,Fragile=false,AvecIndications=false,ACompleter=false,Aide=0}% +\setKVdefault[ClesExercices]{NbQuestions=1,PasTitre=false,AffichageSource=false,BaremeTotal,BaremeDetaille=false,MotPoint=point,AffichageTitre=false,Calculatrice=true,Oral=false,Difficulte=0,AffichageCompetence=false,PasCorrige=false,Direct=false,Pouce=false,Parcours=false,Contrat=false,FdR=false,Routes=false,Stops=false,Background=white,Cadre=gray!50,Numerote,Ligne=false,Doublespacing=false,Onehalfspacing=false,Cadres=false,Grilles=false,Cinq=false,Huit=false,TitreSol=false,NonUtilise=false,Profile=false,AEntretenir=false,Fragile=false,AvecIndications=false,ACompleter=false,Aide=0,Score=0,EchelleSeyes=8}% \defKV[ClesExercices]{TitreSolution=\setKV[ClesExercices]{TitreSol}}% \defKV[ClesExercices]{Source=\setKV[ClesExercices]{AffichageSource}}% \defKV[ClesExercices]{Titre=\setKV[ClesExercices]{AffichageTitre}}% @@ -84,6 +84,8 @@ \defKV[ClesExercices]{Stop=\setKV[ClesExercices]{Stops}}% \defKV[ClesExercices]{Lignes=\setKV[ClesExercices]{Ligne}}% \defKV[ClesExercices]{Encart=\setKV[ClesExercices]{Cadres}}% +\defKV[ClesExercices]{CinqCinq=\setKV[ClesExercices]{Grilles}\setKV[ClesExercices]{Cinq}}% +\defKV[ClesExercices]{Seyes=\setKV[ClesExercices]{Grilles}\setKV[ClesExercices]{Huit}}% \def\PfMTexteEncart{Indique ton travail ci-dessous.}% \setKVdefault[SchemaParcours]{Colonnes=100,Rayon=2.5mm,Largeur=7.5mm,Couleur=gray!70}%,Csv=false}% \setKVdefault[SchemaContrat]{Ecart=7mm,Rayon=2.5mm}% @@ -93,9 +95,9 @@ \xdef\PfMRetiensLienDefMa{}% % Commande pour passer des options à travers la clé Input. Elle remplace \input :) \NewDocumentCommand\Input{om}{% - \def\Relecture{\setKV[ClesExercices]{#1}} - \input{#2} - \def\Relecture{} + \def\Relecture{\setKV[ClesExercices]{#1}}% + \input{#2}% + \def\Relecture{}% }% % Sucres \makeatletter% @@ -858,7 +860,8 @@ \setcounter{Melquestions}{0}% \setsepchar{\item}\ignoreemptyitems% \readlist*\ListeTest{#2}% -% La liste des éléments retenus est \showitems*\ListeTest[] + \reademptyitems + % La liste des éléments retenus est \showitems*\ListeTest[]\par \IfNoValueTF{#1}{% \ChoixAleaMultiMix{\ListeTestlen}{1}{\ListeTestlen}{0}{\ListeShuffleA}% \xdef\MelangeValeurTotale{\ListeTestlen}% @@ -869,6 +872,8 @@ \ExporteListe{ListeShuffle}{\ListeShuffleA}% \setsepchar{,}\ignoreemptyitems% \readlist*\ListeNumQ{\ListeShuffleA}% + \reademptyitems + % L'ordre des questions est \ListeNumQ[] \setcounter{Comptequestions}{1}% \begin{enumerate} \loop% @@ -882,11 +887,15 @@ \NewDocumentEnvironment{Enumelangesol}{b}{% \setcounter{Melquestions}{0}% - \setsepchar{\item}% + \setsepchar{\item}\ignoreemptyitems% \readlist*\ListeTest{#1}% + \reademptyitems \RestoreListe{ListeShuffle}% \setsepchar{,}\ignoreemptyitems% \readlist*\ListeNumQ{\ListeShuffle}% + \reademptyitems +% la liste des éléments retenus est \showitems*\ListeTest[]\par +% L'ordre des questions est \ListeNumQ[]\par \setcounter{Comptequestions}{1}% \begin{enumerate} \loop% @@ -1038,31 +1047,27 @@ \NewDocumentEnvironment{AideA}{+b}{% \ifnum\fpeval{\useKV[ClesExercices]{Aide}}>0\relax% \begin{PfMSeek}% + #1 + \end{PfMSeek}% \else% \begin{PfMHide}% + #1 + \end{PfMHide} \fi% - #1 }{% - \ifnum\fpeval{\useKV[ClesExercices]{Aide}}>0\relax% - \end{PfMSeek}% - \else% - \end{PfMHide}% - \fi% }% \NewDocumentEnvironment{AideB}{+b}{% \ifnum\fpeval{\useKV[ClesExercices]{Aide}}>1\relax% \begin{PfMSeek}% + #1 + \end{PfMSeek} \else% \begin{PfMHide}% + #1 + \end{PfMHide} \fi% - #1 }{% - \ifnum\fpeval{\useKV[ClesExercices]{Aide}}>1\relax% - \end{PfMSeek}% - \else% - \end{PfMHide}% - \fi% }% \NewDocumentEnvironment{Indications}{+b}{% @@ -1250,16 +1255,19 @@ \makeatother \NewDocumentCommand\PfMAffichageEntrainement{}{% - \ifPfMDeuxColonnes - \newpage - \else - \ifPfMRectoVerso - \cleardoublepage + \ifboolKV[Boulot]{ESansSaut}{\vfill}{% + \ifPfMDeuxColonnes + \newpage \else - \clearpage + \ifPfMRectoVerso + \cleardoublepage + \else + \clearpage + \fi \fi - \fi + }% \TikzAutomatismes + \setlength{\columnseprule}{\useKV[Boulot]{EEpaisseur}}% \ifboolKV[Boulot]{EntrainementColonnes}{\begin{multicols}{\useKV[Boulot]{EColonnes}}}{}% \setcounter{PfMExoEntrai}{0}% \xintFor* ##1 in{\xintSeq{1}{\thePfMExo}}\do{% @@ -1353,11 +1361,25 @@ \@ifundefined{Op@total#1}{recompilez}% {% \opunzero{total#1}% on ne sait jamais - \opset{decimalsepsymbol={,}} + \opset{decimalsepsymbol={,}}% \opprint{total#1}~% - \opset{decimalsepsymbol={.}} + \opset{decimalsepsymbol={.}}% + \useKV[ClesExercices]{MotPoint}% \opcmp{total#1}{2}% - \ifopge \useKV[ClesExercices]{MotPoint}s\else \useKV[ClesExercices]{MotPoint}\fi + \ifopge s\fi% + }% +} + +\newcommand\ScoreMaximal{% + \@ifundefined{Op@ScoreTotal\thePfMMaquette}{recompilez}% + {% + \opunzero{ScoreTotal\thePfMMaquette}% on ne sait jamais + \opset{decimalsepsymbol={,}}% + \opprint{ScoreTotal\thePfMMaquette}~% + \opset{decimalsepsymbol={.}}% + \useKV[ClesExercices]{MotPoint}% + \opcmp{ScoreTotal\thePfMMaquette}{2}% + \ifopge s\fi% }% } @@ -2513,6 +2535,130 @@ }% }% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\NewDocumentCommand\PfMScore{m}{% + \immediate\write\@auxout{% + \string\opadd*{#1}{ScoreTotal\thePfMMaquette}{ScoreTotal\thePfMMaquette}% + }% + \num{#1} pt\xintifboolexpr{#1>2 || #1==2}{s}{}% +}% + +\def\PfMMPGrilleCode{% + PapierLargeur=floor(\mpdim{\linewidth}/(5mm)); + color PapierCouleur; + PapierCouleur=0.8white; + % + vardef Papier(expr nb,score)= + path horizon,verticon; + horizon=(0,0)--(PapierLargeur*5mm,0); + verticon=(0,0)--(0,abs(nb)*5mm); + picture Papiers; + Papiers=image( + drawoptions(withcolor PapierCouleur); + for k=0 upto PapierLargeur: + draw verticon shifted((k*5mm,0)); + endfor; + for k=0 upto abs(nb): + draw horizon shifted((0,k*5mm)); + endfor; + drawoptions(); + if nb<0: + path cc,cd,ce; + cd=(unitsquare xscaled (3*5mm) yscaled (abs(nb)*5mm)) shifted(5mm*(PapierLargeur-3,0)); + ce=(unitsquare scaled (2*5mm)) shifted(5mm*(PapierLargeur-2.5,1)); + cc=(unitsquare xscaled (6*5mm) yscaled (2*5mm)) shifted(5mm*(PapierLargeur-10,1)); + fill cd withcolor PapierCouleur; + fill ce withcolor white; + fill cc withcolor white; + %drawoptions(withpen pencircle scaled 1); + draw ce; + draw cc; + draw cd; + draw polygone((0,0),(PapierLargeur*5mm,0),5mm*(PapierLargeur,abs(nb)),5mm*(0,abs(nb))); + if score>0: + label.bot(TEX("\PfMScore{"&decimal(score)&"}"),5mm*(PapierLargeur-1.5,1)); + fi; + fi; + ); + Papiers + enddef; +}% + +\def\PfMPapierCinqCinq#1#2{% + \begin{center} + \ifluatex% + \mplibforcehmode% + \begin{mplibcode}% + \PfMMPGrilleCode + trace Papier(#1,#2); + \end{mplibcode}% + \else% + \begin{mpost}[mpsettings={\PfMMPGrilleCode}] + trace Papier(#1,#2); + \end{mpost}% + \fi% + \end{center} +}% + +\def\PfMMPSeyesCode{% + u:=\useKV[ClesExercices]{EchelleSeyes}*1mm; + PapierLargeur=floor(\mpdim{\linewidth}/(u)); + color PapierCouleur; + PapierCouleur=0.8white;%\useKV[Papiers]{Couleur}; + vardef Seyes(expr nb,score)= + path horizon,verticon; + horizon=(0,0)--u*(PapierLargeur,0); + verticon=(0,0)--u*(0,abs(nb)); + picture PapierSeyes; + PapierSeyes=image( + drawoptions(withcolor PapierCouleur); + for k=0 upto (PapierLargeur): + draw verticon shifted((k*u,0)); + endfor; + for k=0 step 0.25 until abs(nb): + draw horizon shifted((0,k*u)) withpen pencircle scaled 0.5; + endfor; + for k=0 upto abs(nb): + draw horizon shifted((0,k*u)) withpen pencircle scaled 1.25; + endfor; + drawoptions(); + if nb<0: + path cc,cd,ce; + cd=(unitsquare xscaled (2*u) yscaled (abs(nb)*u)) shifted(u*(PapierLargeur-2,0)); + ce=(unitsquare scaled (1*u)) shifted(u*(PapierLargeur-1.5,1)); + cc=(unitsquare xscaled (4*u) yscaled (1*u)) shifted(u*(PapierLargeur-7,1)); + fill cd withcolor PapierCouleur; + fill ce withcolor white; + fill cc withcolor white; + draw cc; + draw cd; + draw ce; + draw polygone((0,0),(PapierLargeur*u,0),u*(PapierLargeur,abs(nb)),u*(0,abs(nb))); + if score>0: + label.bot(TEX("\PfMScore{"&decimal(score)&"}"),u*(PapierLargeur-1,1)); + fi; + fi; + ); + PapierSeyes + enddef; +}% + +\def\PfMPapierSeyes#1#2{% + \begin{center} + \ifluatex% + \mplibforcehmode% + \begin{mplibcode}% + \PfMMPSeyesCode + trace Seyes(#1,#2); + \end{mplibcode}% + \else% + \begin{mpost}[mpsettings={\PfMMPSeyesCode}]% + trace Seyes(#1,#2); + \end{mpost} + \fi% + \end{center} +}% + \NewDocumentCommand\PfMApresLesExercices{}{% \ifboolKV[ClesExercices]{Ligne}{% \vspace*{\PfMEspaceAvantLignes}% @@ -2525,14 +2671,22 @@ % \end{PfMtcbEncart}% }{}% + \ifboolKV[ClesExercices]{Grilles}{% + \ifboolKV[ClesExercices]{Cinq}{% + \PfMPapierCinqCinq{\useKV[ClesExercices]{CinqCinq}}{\useKV[ClesExercices]{Score}}% + }{}% + \ifboolKV[ClesExercices]{Huit}{% + \PfMPapierSeyes{\useKV[ClesExercices]{Seyes}}{\useKV[ClesExercices]{Score}}% + }{}% + }{}% \ifboolKV[ClesExercices]{Profile}{\PfMshowitems}{}% \ifboolKV[ClesExercices]{ACompleter}{% \IfHookExistsTF{env/center/begin}{\RemoveFromHook{env/center/begin}[*]}{}% - \IfHookExistsTF{env/center/end}{\RemoveFromHook{env/center/after}[*]}{}% + \IfHookExistsTF{env/center/end}{\RemoveFromHook{env/center/end}[*]}{}% \IfHookExistsTF{env/itemize/begin}{\RemoveFromHook{env/itemize/begin}[*]}{}% - \IfHookExistsTF{env/itemize/end}{\RemoveFromHook{env/itemize/after}[*]}{}% + \IfHookExistsTF{env/itemize/end}{\RemoveFromHook{env/itemize/end}[*]}{}% \IfHookExistsTF{env/description/begin}{\RemoveFromHook{env/description/begin}[*]}{}% - \IfHookExistsTF{env/description/end}{\RemoveFromHook{env/description/after}[*]}{}% + \IfHookExistsTF{env/description/end}{\RemoveFromHook{env/description/end}[*]}{}% }{}% }% @@ -3761,6 +3915,10 @@ \setcounter{PfMSOS}{0}% % nouvelles valeurs. \stepcounter{PfMMaquette}% + \immediate\write\@auxout{% + \string\opcopy{0}{ScoreTotal\thePfMMaquette} + }% + %%\opadd*{#1}{ScoreTotal\thePfMMaquette}{ScoreTotal\thePfMMaquette}% \if@AssembleCorrections \immediate\openout\PfMfile@out \jobname-DefiMq-\thePfMMaquette.tex% \immediate\write\PfMfile@out{\unexpanded{\useKVdefault[Boulot]}}% diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-5x5-A4.pdf b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-5x5-A4.pdf Binary files differnew file mode 100644 index 0000000000..0d8a71a39a --- /dev/null +++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-5x5-A4.pdf diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-5x5-A4.tex b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-5x5-A4.tex new file mode 100644 index 0000000000..acb246e07c --- /dev/null +++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-5x5-A4.tex @@ -0,0 +1,26 @@ +% !TeX TXS-program:compile = txs:///arara +% arara: pdflatex: {shell: no, synctex: no, interaction: batchmode} + +\documentclass[a4paper,11pt]{article} +\usepackage{WriteOnGrid} +\usepackage{lipsum} +\usepackage{frcursive} + +\begin{document} + +\thispagestyle{empty} + +\begin{PleinePageCinqCinq}[FormatPapier=A4,NumLignes,MargeG=0.7,MargeH=2.3] +%entête +\LignePapierCinqCinq[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill \LaTeX} +%titre +\LignePapierCinqCinq[Echelle=1.25,Ligne=2,Couleur=red]<center>{\underline{\cursive\bfseries Devoir 1}} +%cadre de notes +\CadreNoteCinqCinq{3} +%ligne pour un petit titre +\LignePapierCinqCinq[Echelle=1.25,Ligne=8,Couleur=green!50!black]{\sffamily\underline{Exercice 1 :}} +%%paragraphe lipsum avec une échelle de 1.15 := calcul de l'interligne +\ParagraphePapierCinqCinq[Ligne=10,Echelle=1.15,Espacement=\fpeval{10/1.15}]{\cursive\lipsum[1][1-7]} +\end{PleinePageCinqCinq} + +\end{document}
\ No newline at end of file diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf Binary files differindex 7bcc35aa1b..7a2a6c5b98 100644 --- a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf +++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.pdf diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex index 070c88b7cd..3608df559c 100644 --- a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex +++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-en.tex @@ -45,8 +45,8 @@ \setlength{\parindent}{0pt} \definecolor{LightGray}{gray}{0.9} -\def\TPversion{0.1.6} -\def\TPdate{12/04/2024} +\def\TPversion{0.1.7} +\def\TPdate{01/09/2024} \usepackage[most]{tcolorbox} \tcbuselibrary{minted} @@ -525,6 +525,8 @@ To sum up, they create full paper grid (by preference for \texttt{\textbf{a4pape \part*{History} +\verb|v0.1.7|~:~~~~New feature for french paper \textsf{PleinePageCinqCinq} + \verb|v0.1.6|~:~~~~Possibility to automatically determine L\&C based on the remaining space. \verb|v0.1.4|~:~~~~New \texttt{[keys]} + enhancements for paragraphs, for french version (for the moment\dots) diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf Binary files differindex 517ce5911d..76850d725d 100644 --- a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf +++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.pdf diff --git a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex index 1da2b2b0bc..fb63ea4422 100644 --- a/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex +++ b/macros/latex/contrib/writeongrid/doc/WriteOnGrid-doc-fr.tex @@ -48,8 +48,8 @@ \setlength{\parindent}{0pt} \definecolor{LightGray}{gray}{0.9} -\def\TPversion{0.1.6} -\def\TPdate{12 avril 2024} +\def\TPversion{0.1.7} +\def\TPdate{01 septembre 2024} \usepackage[most]{tcolorbox} \tcbuselibrary{minted} @@ -763,6 +763,13 @@ Les commandes et environnements sont suffixées différemment, mais le reste est \end{PleinePageSeyes} \end{PresentationCode} +{\small\faBomb} Pour les pages complètes 5x5, il est possible d'utiliser les clés \Cle{MargeG} et \Cle{MargeH} qui valent \Cle{auto} par défaut (adaptées au format du papier), mais elles peuvent être définies manuellement, avec les \textbf{contraintes} suivantes (pour un affichage correct sur les lignes, pour le moment\ldots) : + +\begin{itemize} + \item \Cle{MargeG} doit valoir $0.2$ ou $0.7$ ou $1.2$ ou $1.7$ etc + \item \Cle{MargeH} doit valoir $0.3$ ou $0.8$ ou $1.3$ ou $1.8$ etc +\end{itemize} + \subsection{Exemples} Les exemples des pages suivantes ont été obtenus de la même manière que celui de la pleine page Seyes, il \textit{suffit} d'adapter les commandes et environnements avec le bon suffixe. @@ -770,7 +777,7 @@ Les exemples des pages suivantes ont été obtenus de la même manière que celu \begin{PresentationCode}{listing only} \pagestyle{empty} -\begin{PleinePageCinqCinq}[NumLignes] +\begin{PleinePageCinqCinq}[NumLignes,MargeG=2.7,MargeH=2.3] \LignePapierCinqCinq[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX} \LignePapierCinqCinq[Echelle=1.25,Ligne=3,Couleur=red]<center>{\underline{\cursive\bfseries Devoir 2}} \CadreNoteCinqCinq{4} @@ -807,7 +814,11 @@ Les exemples des pages suivantes ont été obtenus de la même manière que celu \pagestyle{empty} -\begin{PleinePageCinqCinq}[NumLignes] +\begin{PleinePageCinqCinq}[NumLignes,MargeG=2.7,MargeH=2.3] + %marges pour illustrer + \draw[thick,teal,<->,>=latex] ([shift={(-2.7,1.5)}]CinqCinqOrigine) --++ (2.7,0) node[midway,below,font=\small\ttfamily] {MargeG} ; + \draw[thick,orange,<->,>=latex] ([shift={(-0.5,0)}]CinqCinqOrigine) --++ (0,2.3) node[midway,right,font=\small\ttfamily] {MargeH} ; + %back to normal \LignePapierCinqCinq[Echelle=1.25,Ligne=1]{C. PIERQUET \hfill LaTeX} \LignePapierCinqCinq[Echelle=1.25,Ligne=3,Couleur=red]<center>{\underline{\cursive\bfseries Devoir 2}} \CadreNoteCinqCinq{4} @@ -842,6 +853,8 @@ Les exemples des pages suivantes ont été obtenus de la même manière que celu \section{Historique} +\verb|v0.1.7|~:~~~~Option pour régler la marge pour les \textsf{PleinePageCinqCinq} + \verb|v0.1.6|~:~~~~Possibilité de déterminer automatiquement L\&C en fonction de la place restante. \verb|v0.1.5|~:~~~~Possibilité de spécifier la réglure pour les quadrillages de type \textsf{Seyes} + meilleure gestion des paragraphes. diff --git a/macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty b/macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty index e2673d3c58..3d462b8a33 100644 --- a/macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty +++ b/macros/latex/contrib/writeongrid/tex/WriteOnGrid.sty @@ -2,7 +2,8 @@ % licence : Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{WriteOnGrid}[2024/04/12 v0.1.6 package to write on grid lines] +\ProvidesPackage{WriteOnGrid}[2024/09/01 v0.1.7 package to write on grid lines] +% 0.1.7 Option pour régler la marge pour les PleinePageCinqCinq % 0.1.6 Commande pour calculer le nombre de lignes à insérer en fin de page / options Auto % 0.1.5 Choix de la réglure pour le seyes (en pretest) + amélioration de la gestion des paragraphes % 0.1.4 Suppression des options de xcolor (définition manuelle des couleurs) @@ -564,16 +565,21 @@ } %------page entière 5x5 +%les marges doivent valoir MargeH=0.2+k*0.5 et MargeV=0.3+k'*0.5 \defKV[CxCFull]{% Couleur=\xdef\CCFullCoul{#1},% CouleurMarge=\xdef\CCFullCoulM{#1},% - FormatPapier=\xdef\CCFullFormatPap{#1} + FormatPapier=\xdef\CCFullFormatPap{#1},% + MargeG=\xdef\CCFullMargeG{#1},% + MargeH=\xdef\CCFullMargeH{#1} } \setKVdefault[CxCFull]{% Couleur=lightgray!50,% CouleurMarge=gray,% NumLignes=false,% - FormatPapier=A4 + FormatPapier=A4,% + MargeG=auto,% + MargeH=auto } \NewDocumentEnvironment{PleinePageCinqCinq}{ O{} }%semble OK ^^ @@ -581,13 +587,49 @@ \useKVdefault[CxCFull]% \setKV[CxCFull]{#1}% \IfEq{\CCFullFormatPap}{A4}% - {\xdef\CCFullHautPap{29.7}\xdef\CCFullLargPap{21}\xdef\CCFullMargeG{1.7}\xdef\CCFullMargeH{1.3}}% + {% + \xdef\CCFullHautPap{29.7}\xdef\CCFullLargPap{21}% + \IfEq{\CCFullMargeG}{auto}% + {% + \xdef\CCFullMargeG{1.7}% + }% + {}% + \IfEq{\CCFullMargeH}{auto}% + {% + \xdef\CCFullMargeH{1.3}% + }% + {}% + }% {}% \IfEq{\CCFullFormatPap}{A5}% - {\xdef\CCFullHautPap{21}\xdef\CCFullLargPap{14.8}\xdef\CCFullMargeG{1.2}\xdef\CCFullMargeH{0.8}}% + {% + \xdef\CCFullHautPap{21}\xdef\CCFullLargPap{14.8}% + \IfEq{\CCFullMargeG}{auto}% + {% + \xdef\CCFullMargeG{1.2}% + }% + {}% + \IfEq{\CCFullMargeH}{auto}% + {% + \xdef\CCFullMargeH{0.8}% + }% + {}% + }% {}% \IfSubStr{\CCFullFormatPap}{x}% - {\StrCut{\CCFullFormatPap}{x}{\CCFullLargPap}{\CCFullHautPap}\xdef\CCFullMargeG{1.7}\xdef\CCFullMargeH{1.3}}% + {% + \StrCut{\CCFullFormatPap}{x}{\CCFullLargPap}{\CCFullHautPap}% + \IfEq{\CCFullMargeG}{auto}% + {% + \xdef\CCFullMargeG{1.7}% + }% + {}% + \IfEq{\CCFullMargeH}{auto}% + {% + \xdef\CCFullMargeH{1.3}% + }% + {}% + }% {}% %calcul du nombre de lignes /colonnes ? \xdef\CCFullNbLign{\fpeval{round(\CCFullHautPap/(0.5),0)}}% |