A LaTeX class to write your proposal. The class is developed for the "Instituto Tecnológico de Morelia" and the course of "Seminario de Investigación 1"
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

99 lines
3.1 KiB

%************************************
%1 Identification:
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{itmthesis}[2018/05/04 ITMorelia Thesis Class by Gerardo Marx]
%************************************
%2 Preliminary declarations
%2.1 The basic class:
\LoadClass{report}
%2.2 Packages:
\RequirePackage[utf8]{inputenc}
\RequirePackage[colorlinks=true]{hyperref}
\RequirePackage{blindtext}
%2.2.1 Booleans
\RequirePackage{ifthen}
\newboolean{@drafting} % print version information on pages
\newboolean{@spanish} % activates the spanish version at babel otherwise english
%2.2.2 Colors
\RequirePackage{xcolor}
\definecolor{c1}{rgb}{0,0,1} % blue
\hypersetup{
linkcolor={c1}, % internal links
citecolor={c1}, % citations
urlcolor={c1} % external links/urls
}
%2.2.2 This package is essentially a replacement—partial or total—for the LATEX macros related with sections—namely titles, headers and contents.
\RequirePackage{titlesec}
%
\RequirePackage{xargs} % needed for extended newcommand and others
\RequirePackage{array} % needed for extended options for array
\RequirePackage{amsmath}
%2.3 Page settings:
\RequirePackage[left=3cm,right=3cm,top=3cm,bottom=3cm]{geometry}
%2.4 Macros and Commands:
%2.4.1 Derivatives
\newcommandx{\pd}[3][1=]{%
\frac{\partial^{#1} #2}{\partial #3^{#1}}
}
%2.4.1 Dbf
\renewcommand{\d}{{\rm d}}
%2.5 Environments:
%2.5.1 Arrays of equations:
%************************************
%3 Options:
% 3.1 DeclareOptions
% Option sintax
% \DeclareOption{⟨option⟩}{⟨code⟩}
%Code option:
\DeclareOption{drafting}{
%Code
\setboolean{@drafting}{true}
}
\DeclareOption{spanish}{
%Code
\setboolean{@spanish}{true}
\typeout{spanish to babel}
}%end code option
\ProcessOptions\relax
% 3.2 PassOptionsToPackage
%if sintax: \ifthenelse{⟨test⟩}{⟨then clause⟩}{⟨else clause⟩}
% 3.2.1 drafting
% 3.2.2 babel
\ifthenelse{\boolean{@spanish}}%test
{ %then clause
\@ifpackageloaded{babel}
{\relax}{\RequirePackage[spanish]{babel}}%
}
{\relax}% else clause
%************************************
% 4 Declarations:
%-------------------------------------
%4.0 chapter
\renewcommand{\thechapter}{\Roman{chapter}} %Roman enumeration
\titleformat{\chapter}[display]%shape
%{\bfseries\Huge\scshape}%Format applyed to the title
{\Huge\filleft\sc}%Format applyed to the title
{\filleft\sc{\chaptertitlename} \thechapter}%Label text and format
{4ex}%Separation between Label and Title
{}%Before code
[\vspace{2ex}
\titlerule]%After code
%
%4.1 section
\titleformat{\section} % Customise the \section command
{\Large\scshape\raggedright} % Make the \section headers large (\Large),
% small capitals (\scshape) and left aligned (\raggedright)
{}{0em} % Can be used to give a prefix to all sections, like 'Section ...'
{} % Can be used to insert code before the heading
[\titlerule] % Inserts a horizontal line after the heading
%4.2 subsection
\titleformat{\subsection}
{\large\scshape\raggedright}
{}{0em}
{}