illinois-r / uiucthemes

RMarkdown Templates for UIUC Theme-Oriented Documents
https://illinois-r.github.io/uiucthemes/
Other
51 stars 12 forks source link

UIUC LaTeX PDF ECE Department Thesis Style #15

Closed coatless closed 1 year ago

coatless commented 5 years ago

Closes #14 by implementing the ECE thesis style


ECE Thesis style is available at:

Further details can be found on the official ECE Department @ UIUC Website.

Template disclaimer

The Grad College at UIUC does not provide a LaTeX template. The template converted here is the "best" LaTeX version available. However, there is a word thesis template available here: https://grad.illinois.edu/thesis/format

Note: It might be fun to look into redoc and officer.

There are other templates around such as:

coatless commented 5 years ago

Right now, the PR is being held up due to hyperref not playing nicely with \MakeUppercase. So, using any chapter heading, e.g. # Chapter, is getting a nice ol' error of:

! Undefined control sequence.
\MakeUppercase ...ppercaseUnsupportedInPdfStrings 

Error: Failed to compile _main.tex. See https://yihui.name/tinytex/r/#debugging for debugging tips. See _main.log for more info.
Please delete _main.Rmd after you finish debugging the error.
coatless commented 5 years ago

So, the solution I opted to go for here is to modify the .cls file.

That is, going from:

\MakeUppercase{}

to

\texorpdfstring{\MakeUppercase{text}}{}

Useful links:

\makeatletter
\renewcommand{\section}{\@ifstar{\@sSection}{\@Section}}
\newcommand{\@sSection}[2][]{%
  \oldsection*{\texorpdfstring{\MakeUppercase{#2}}{#2}}}
\newcommand{\@Section}[2][]{%
  \def\shortsec{#1}%
  \ifx\shortsec\empty%
    \oldsection{\texorpdfstring{\MakeUppercase{#2}}{#2}}
  \else%
    \oldsection[\texorpdfstring{\MakeUppercase{#1}}{#1}]{\texorpdfstring{\MakeUppercase{#2}}{#2}}
  \fi}
\makeatother

Note: Not all instances were changed. Only instances that dealt with a hyperref.

coatless commented 5 years ago

Still not where it needs to be...

! Undefined control sequence.
\listtablename ...tablename \else \texorpdfstring 
                                                  {\MakeUppercase {\thesis@l...
l.97 \listoftables