| @ -1,2 +1,272 @@ | |||
| # The ITMorelia Thesis Class | |||
| This respository is a sample project of a Thesis using the `itmorelia-thesis-class` with LaTeX. **If you want know what sections should be included and its content visit the *Wiki* of this repository**. | |||
| # Repository structure | |||
| Below you can see the repository's contents. The repository is made of 27 files and 2 folders. The folder `Chapters` includes each `.tex` file that will be included in your thesis; later you will learn how to included. On the other hand, the folder `FrontBackMatter` includes `.tex` files related with common chapters/section required in the thesis layout: *Titlepage, Abstract, Colophon, Dedication, Glossary, and others*; you can include as much as you need. | |||
| In the `root` path, there are files related with the organization and the structure of the **Thesis** (the `thesisStructure.tex` and `precontent.tex` files). Also, in `root` is included the main file that gives the special format to the document (`itmthesis.cls`), and finally the `Reference.bib` file to include a bibliography to your work. | |||
| ```bash | |||
| . | |||
| ├── Chapters | |||
| │ ├── A01.tex | |||
| │ ├── Chapter01.tex | |||
| │ ├── Chapter02.tex | |||
| │ └── Chapter0A.tex | |||
| ├── configuration.tex | |||
| ├── FrontBackMatter | |||
| │ ├── Abstract.tex | |||
| │ ├── Bibliography.tex | |||
| │ ├── Colophon.tex | |||
| │ ├── Contents.tex | |||
| │ ├── Declaration.tex | |||
| │ ├── Dedication.tex | |||
| │ ├── Foreword.tex | |||
| │ ├── glossary-entries.tex | |||
| │ ├── Glossary.tex | |||
| │ ├── Resumen.tex | |||
| │ ├── Titleback.tex | |||
| │ ├── TitlepageIng.tex | |||
| │ └── TitlepageMC.tex | |||
| ├── itm.jpg | |||
| ├── itmthesis.cls | |||
| ├── precontent.tex | |||
| ├── README.md | |||
| ├── Reference.bib | |||
| ├── sepLogo.jpg | |||
| ├── tecnmBW.png | |||
| ├── thesisStructure.pdf | |||
| └── thesisStructure.tex | |||
| ``` | |||
| # The `thesisStructure.tex` file | |||
| The main file in the project is the `thesisStructure.tex` file. The file is mainly divided in five parts: 1)Configuration, 2)Front Matter, 3) Main contents, 4) References and 5)Back Matter. | |||
| The file contents is show next, a detailed explaination is presented in the next sections. | |||
| ``` tex | |||
| % Engineering, master and phd degree thesis format, September 2021, for the "Instituto Tecnológico de Morelia" | |||
| \documentclass[listings,drafting,spanish]{itmthesis} %itm thesis class definition | |||
| \input{configuration}% configuration & packages required | |||
| \begin{document} | |||
| \pagenumbering{roman} % Roman page numbering | |||
| \input{precontent} %Includes titlepage, dedication, Foreword, abstract, publication, acknowledgement | |||
| \include{FrontBackMatter/Contents} % Contents, list of figures/tables/listings and acronyms | |||
| \pagenumbering{arabic} % Arabic page numbering | |||
| %-=-=-=-=-=-=-=-=-=-=-=-=- | |||
| % Thesis Main Contents | |||
| \include{Chapters/Chapter01} % Chapter 1 | |||
| \cleardoublepage | |||
| \include{Chapters/Chapter02} % Chapter 2 | |||
| %-=-=-=-=-=-=-=-=-=-=-=-=- | |||
| % Apendix | |||
| \appendix | |||
| \include{Chapters/Chapter0A} % Appendix A | |||
| %-=-=-=-=-=-=-=-=-=-=-=-=- | |||
| % References | |||
| \cleardoublepage | |||
| \include{FrontBackMatter/Bibliography} | |||
| %-=-=-=-=-=-=-=-=-=-=-=-=- | |||
| % Back Matter | |||
| \cleardoublepage | |||
| \include{FrontBackMatter/Colophon} | |||
| \cleardoublepage | |||
| \include{FrontBackMatter/Declaration} | |||
| %-=-=-=-=-=-=-=-=-=-=-=-=- | |||
| \end{document} | |||
| ``` | |||
| ## 1) Configuration section ## | |||
| ### Class' options ### | |||
| The code next only refers to the configuration of the `itmthesis` class: | |||
| ``` tex | |||
| % 1)Configuration: | |||
| \documentclass[listings,drafting,spanish]{itmthesis} %itm thesis class | |||
| \input{configuration}% configuration and packages | |||
| \input{FrontBackMatter/glossary-entries} | |||
| ``` | |||
| From here the document class, for the Protocol, is defined with `\documentclass[<options>]{itmthesis}`, and this file determine the way the PDF file is generated by the options. The options defined are: | |||
| - `drafting`: The options prints the date of compilation at the end of each page. Suitable opton to know that the latest version is on review or writing process. | |||
| - `listing`: The option loads the `listings` package and configures the compilation to generates a gray scale listings outputs. | |||
| - `spanish`: The option enables the babel package to print-out the sectional units on spanish language; otherwise, english will be used. | |||
| ### `configuration.tex` file ### | |||
| Then, `\input` command is used to include files with `LaTeX` commands. Specifically, the `configuration` file includes all the required packages and its configuration, variable(title, author, university, and so on), and command definitions. The complete code is shown next and sectioned on: 1)Listing configuration, 2)Command and Variable definitions, 3)Short descriptions on Math, 4)Packages, and 5)Text space configuration(indent, interline space, and paragraph space); however, the sections that user should modify are only 2), 4) and 5). | |||
| ``` tex | |||
| %!TeX root=./thesisStructure.tex | |||
| %Add here the packages, variables, definitions, environments and specific elements created only for your thesis | |||
| % 1 Code listing setup | |||
| %------------------ | |||
| \RequirePackage{listings} | |||
| \RequirePackage{xcolor} | |||
| \definecolor{gray97}{gray}{0.97} | |||
| \definecolor{gray45}{gray}{0.45} | |||
| \newcaptionname{spanish}{\lstlistlistingname}{Sección de Códigos} | |||
| \renewcommand{\lstlistingname}{Código} | |||
| \renewcommand{\lstlistlistingname}{Códigos} | |||
| \lstset{ frame=Ltb, | |||
| framerule=0pt, | |||
| aboveskip=0.2cm, | |||
| framextopmargin=3pt, | |||
| framexbottommargin=3pt, | |||
| framexleftmargin=0.4cm, | |||
| framesep=0pt, | |||
| rulesep=.4pt, | |||
| backgroundcolor=\color{gray97}, | |||
| rulesepcolor=\color{black}, | |||
| % | |||
| stringstyle=\ttfamily, | |||
| showstringspaces = false, | |||
| %basicstyle=\small\ttfamily, | |||
| %basicstyle=\small, | |||
| commentstyle=\color{gray45}\ttfamily, | |||
| keywordstyle=\bfseries, | |||
| % | |||
| numbers=left, | |||
| numbersep=15pt, | |||
| numberstyle=\tiny, | |||
| numberfirstline = false, | |||
| breaklines=true, | |||
| } | |||
| % 2 Commands and variables | |||
| % 2.1 Thesis's title page config | |||
| %------------------ | |||
| \newcommand{\myTitle}{Un Título de la Tesis no Muy Complicado y Largo Pero Capaz de Definir Concretamente} | |||
| \newcommand{\mySubtitle}{Caso de Estudio a Nivel Maestría} | |||
| \newcommand{\myDegree}{Maestría en Ciencias en Ingeniería Electrónica} | |||
| % 2.2 Autores: | |||
| \newcommand{\myName}{Gerardo Marx Chávez-Campos} | |||
| \newcommand{\myNumber}{D01120294} | |||
| %\newcommand{\myPartner}{Otro autor} | |||
| %---------------- | |||
| % 2.3 Mesa de revisión | |||
| %Director: | |||
| \newcommand{\myProf}{Homer Simpson} | |||
| %Codirector: | |||
| \newcommand{\myOtherProf}{James Clerk Maxwell \xspace} | |||
| %Revisor 1: | |||
| \newcommand{\mySupervisor}{Piere Simon Laplace\xspace} | |||
| %Revisor 2: | |||
| \newcommand{\myOtherSupervisor}{Jean-Baptiste Joseph Fourier\xspace} | |||
| %-------------- | |||
| % 2.4 Datos del instituto: | |||
| \newcommand{\myFaculty}{Maestría en Ingeniería Electrónica} | |||
| \newcommand{\myDepartment}{División de Estudios de Posgrado e Investigación} | |||
| \newcommand{\myUni}{Instituto Tecnológico de Morelia} | |||
| \newcommand{\myLocation}{Morelia, Michoacán, México} | |||
| \newcommand{\myTime}{Abril 2021} | |||
| \newcommand{\myThesisVersion}{Rev 2.0} | |||
| %--------------------- | |||
| % 3 USEFUL COMMANDS | |||
| %--------------------- | |||
| \newcommand{\ie}{i.\,e.} | |||
| \newcommand{\Ie}{I.\,e.} | |||
| \newcommand{\eg}{e.\,g.} | |||
| \newcommand{\Eg}{E.\,g.} | |||
| %------------------------- | |||
| % 4. Required packages for | |||
| % figures, plots, subfigures | |||
| %------------------------- | |||
| \usepackage{float} | |||
| \usepackage{subfigure} | |||
| \usepackage{tikz} | |||
| \usepackage{booktabs} %Beautiful tables | |||
| \usepackage{todonotes} %Todo list for comments | |||
| \usepackage[version-1-compatibility]{siunitx} %easy writting of SI units | |||
| \usepackage{pgfplots} | |||
| \pgfplotsset{compat=1.10} | |||
| \decimalpoint %Decimal point enable | |||
| \usepackage[acronym]{glossaries} | |||
| %------------------------- | |||
| % 5. setting space for indentation | |||
| % space between paragraphs and | |||
| % baseline. | |||
| % Uncomment to set parameters | |||
| %------------------------- | |||
| % \setlength{\parindent}{4em} | |||
| \setlength{\parskip}{1em} | |||
| %\renewcommand{\baselinestretch}{2.0} % Interlineado | |||
| ``` | |||
| Thus, if you require to change the thesis' title modify `\myTitle` definition on section *2.1*. If you need to change your data as an author modify `\myname` on section *2.2*, and the same foe the other options as the reviewing group (*2.3*), and institution (*2.4*). | |||
| On the other hand, if you want to add new packages to your Protocol, you can added on the main file; the `thesisStructure.tex` file. However, to maintain a clean code you should add on the `configuration` file, specifically on section *4*. | |||
| Finally to set specific values of separation for tabulation, paragraphs or text separation between text(interline), please modify section *5*. Here you can use several measurement units as `em`, `cm` , `in` or lines `2`(just a number). E.g: | |||
| ``` tex | |||
| \setlength{\parindent}{4em} | |||
| \setlength{\parskip}{1cm} | |||
| \renewcommand{\baselinestretch}{2.0} % Interlineado | |||
| ``` | |||
| ### `glossary-entries.tex` file ### | |||
| This file includes each entry for acronyms and glossary entries, the syntax of each entry is shown below: | |||
| ``` tex | |||
| \makeglossaries | |||
| \newglossaryentry{latex} | |||
| { | |||
| name=latex, | |||
| description={Es un lenguaje de marcado o sintaxis especialmente diseñado para documentos científicos} | |||
| } | |||
| \newglossaryentry{maths}{ | |||
| name=matemáticas, | |||
| description={Las matemáticas son sólo una aproximación a la realidad de la vida}} | |||
| \newglossaryentry{formula}{ | |||
| name=formula, | |||
| description={A mathematical expression}} | |||
| \newacronym{ecm}{ECM}{Error Cuadrático Medio} | |||
| \newacronym{ls}{LS}{Mínimos Cuadrados, \textit{Least Squares}} | |||
| ``` | |||
| To learn how to call an entry on the code, see the code on `Cahpter02.tex`. | |||
| ## 2) Front Matter ## | |||
| Explain this: | |||
| ``` tex | |||
| % 2)Front Matter: | |||
| \pagenumbering{roman} % Roman page numbering | |||
| \input{precontent} %Includes titlepage, dedication, Foreword, abstract, publication, acknowledgement | |||
| \include{FrontBackMatter/Contents} % Contents, list of figures/tables/listings and acronyms | |||
| \pagenumbering{arabic} % Arabic page numbering | |||
| ``` | |||
| ## Chapters | |||
| ## Apendix | |||
| ## including images | |||
| # The `configuration` file | |||
| # Defined variables | |||
| # Titlepage | |||
| # Glossary | |||
| # References | |||