fphw/fphw.cls
2019-03-28 03:31:16 -03:00

78 lines
2.2 KiB
TeX

%% Tareas Estilosas
%% Felipe Portales-Oliva (f.portales.oliva@gmail.com)
%%
%% Clase para crear respuestas a tareas de manera sencilla
\NeedsTeXFormat{LaTeX2e} % we need to have LaTeX2e for this to compile
\ProvidesClass{fphw}[2019/03/19 LaTeX class to deliver your homework]
% We will use the article class as a template, with a fontsize of 11pt
\LoadClass{article}
% UTF-8 is best coding
\RequirePackage[utf8]{inputenc}
% We won't need those ugly margins
\RequirePackage{geometry}
% we will modify sections, subsections and sub subsections
\RequirePackage{titlesec}
% Minipage is cool
% \RequirePackage{minipage}
%%% set margins for the document
% Narrow
\DeclareOption{narrow}{\geometry{left=1.5cm,right=1.5cm,top=2cm,bottom=2cm}}
% two columns are really difficult to grade, this is to avoid them
% \DeclareOption{twocolumn}{\OptionNotUsed}
% As we loaded the article class we need to pass it options not specifically
% defined, such as font size
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
% This is the point when we pass the options
\ProcessOptions\relax
% We define the macro for the name of the professor
\newcommand{\professor}[1]{ \renewcommand{\professor}{#1} }
% We define the macro for the name of the class
\newcommand{\class}[1]{ \renewcommand{\class}{#1} }
% We define the macro for the name of the institution
\newcommand{\institute}[1]{ \renewcommand{\institute}{#1} }
% Redefine the title for the class
\renewcommand{\maketitle}{%
\begin{center}
{\scshape \institute} \\[10pt]
\hrule
\vspace{10pt}
{\LARGE \bfseries \@title} \\[5pt]
Student name: {\itshape \@author}
\vspace{8pt}
\hrule
\vspace{10pt}
Course: {\itshape\class} -- Professor: {\itshape\professor}
\\
Due date: {\itshape\@date}
\vspace{20pt}
\end{center}
}
% Modification of section
\titleformat{\section}[block]{\normalsize\bfseries\filcenter}{\thesection.}{.3cm}{}
% modification of subsection and sub sub section
\titleformat{\subsection}[runin]{\bfseries}{ \thesubsection.}
{1mm}{}[.\quad]
\titleformat{\subsubsection}[runin]{\bfseries\itshape}{ \thesubsubsection.}
{1mm}{}[.\quad]
% we finish the class
\endinput