213 lines
4.6 KiB
TeX
213 lines
4.6 KiB
TeX
\NeedsTeXFormat{LaTeX2e}
|
|
\ProvidesClass{craftlaw}[CraftLaw for the CraftFuze Legal Project, EU Look]
|
|
|
|
\LoadClass[a4paper,8pt,oneside]{article}
|
|
\RequirePackage[left=1cm, right=1cm, top=2cm]{geometry}
|
|
\RequirePackage[utf8]{inputenc}
|
|
\RequirePackage[english]{babel}
|
|
\RequirePackage{blindtext}
|
|
\RequirePackage{fancyhdr}
|
|
\RequirePackage{titling}
|
|
\RequirePackage[shortlabels]{enumitem}
|
|
\RequirePackage{needspace}
|
|
\RequirePackage[document]{ragged2e}
|
|
\RequirePackage{graphicx}
|
|
\RequirePackage{anyfontsize}
|
|
|
|
% Indent
|
|
\setlength{\parindent}{0pt}
|
|
\setlength{\parskip}{0pt}
|
|
\setlist[enumerate,1]{leftmargin=1.5em,topsep=-1ex,itemsep=-1ex,partopsep=1ex,parsep=1ex,style=sameline}
|
|
\setlist[enumerate,2]{leftmargin=1.5em,topsep=-1ex,itemsep=-1ex,partopsep=1ex,parsep=1ex,style=sameline}
|
|
\setenumerate[0]{label=\textbf{\arabic*.}}
|
|
|
|
% Header and footer
|
|
\pagestyle{fancy}
|
|
\fancyhf{}
|
|
\fancyfoot[LE,RO]{\thepage}
|
|
|
|
% New title layout
|
|
\newcommand{\settitle}[1]{\def\@lawtitle{#1}}
|
|
\newcommand{\setdate}[1]{\def\@date{#1}}
|
|
|
|
% General Data
|
|
\newcommand{\setheader}[1]{}
|
|
|
|
% Generate header and title
|
|
\newcommand{\generateHeader}{
|
|
% Header
|
|
\fancyhead[LE,LO]{\@date}
|
|
\fancyhead[CE,CO]{Official Journal of the Crafty Table}
|
|
\fancyhead[RE,RO]{\@lawtitle}
|
|
|
|
% Title
|
|
\begin{titlepage}
|
|
\begin{figure}
|
|
\centering
|
|
\includegraphics[width=120mm]{smooth}
|
|
|
|
\vspace{0.5in}
|
|
\textsf{\fontsize{70}{90}\fontfamily{cmsy}%
|
|
\selectfont\@lawtitle}%
|
|
\end{figure}
|
|
\end{titlepage}
|
|
}
|
|
|
|
|
|
% Introduction
|
|
\newcommand{\introduction}[1]{%
|
|
\bigskip%
|
|
\vbox{%
|
|
Preamble:\medskip%
|
|
|
|
\noindent{#1}%
|
|
}%
|
|
}
|
|
|
|
% About Articles
|
|
\newcounter{TitleCounter}
|
|
\newcounter{TitleSubCounter}[TitleCounter]
|
|
\newcounter{ChapterCounter}[TitleCounter]
|
|
\newcounter{ChapterSubCounter}[ChapterCounter]
|
|
\newcounter{SectionCounter}[ChapterCounter]
|
|
\newcounter{SectionSubCounter}[SectionCounter]
|
|
\newcounter{ParagraphCounter}[SectionCounter]
|
|
\newcounter{SubParagraphCounter}[ParagraphCounter]
|
|
\newcounter{ArticleCounter}[TitleSubCounter]
|
|
\newcounter{ArticleSubCounter}[ArticleCounter]
|
|
\renewcommand{\title}[1]{%
|
|
\stepcounter{TitleCounter}%
|
|
|
|
\newpage%
|
|
\bigskip%
|
|
|
|
\centering%
|
|
\noindent{TITLE \Roman{TitleCounter}}%
|
|
|
|
\textbf{#1}%
|
|
}
|
|
\newcommand{\subtitle}[1]{%
|
|
\stepcounter{TitleSubCounter}%
|
|
|
|
\newpage%
|
|
\bigskip%
|
|
|
|
\centering%
|
|
\noindent{TITLE \Roman{TitleCounter} \Alph{TitleSubCounter}}%
|
|
|
|
\textbf{#1}%
|
|
}
|
|
\newcommand{\chapter}[1]{
|
|
\stepcounter{ChapterCounter}%
|
|
|
|
\needspace{20\baselineskip}%
|
|
\bigskip%
|
|
|
|
\centering%
|
|
\noindent{CHAPTER \Roman{ChapterCounter}}%
|
|
|
|
\textbf{#1}%
|
|
}
|
|
\newcommand{\subchapter}[1]{
|
|
\stepcounter{ChapterSubCounter}%
|
|
|
|
\needspace{20\baselineskip}%
|
|
\bigskip%
|
|
|
|
\centering%
|
|
\noindent{CHAPTER \Roman{ChapterCounter} \Alph{ChapterSubCounter}}%
|
|
|
|
\textbf{#1}%
|
|
}
|
|
\renewcommand{\section}[1]{%
|
|
\stepcounter{SectionCounter}%
|
|
|
|
\needspace{20\baselineskip}%
|
|
\bigskip%
|
|
|
|
\centering%
|
|
\noindent{SECTION \Roman{SectionCounter}}%
|
|
|
|
\textbf{#1}%
|
|
}
|
|
\renewcommand{\subsection}[1]{%
|
|
\stepcounter{SectionSubCounter}%
|
|
|
|
\needspace{20\baselineskip}%
|
|
\bigskip%
|
|
|
|
\centering%
|
|
\noindent{SECTION \Roman{SectionCounter} \Alph{SectionSubCounter}}%
|
|
|
|
\textbf{#1}%
|
|
}
|
|
\renewcommand{\paragraph}[1]{%
|
|
\stepcounter{ParagraphCounter}%
|
|
|
|
\needspace{20\baselineskip}%
|
|
\bigskip%
|
|
|
|
\centering%
|
|
\noindent{Paragraph §\arabic{ParagraphCounter}.\arabic{SubParagraphCounter}}%
|
|
|
|
\textbf{#1}%
|
|
}
|
|
\renewcommand{\subparagraph}[1]{%
|
|
\stepcounter{SubParagraphCounter}%
|
|
|
|
\needspace{20\baselineskip}%
|
|
\bigskip%
|
|
|
|
\centering%
|
|
\noindent{Paragraph §\arabic{ParagraphCounter}.\arabic{SubParagraphCounter}}%
|
|
|
|
\textbf{#1}%
|
|
}
|
|
\newcommand{\article}[2]{%
|
|
% Count 1 up
|
|
\stepcounter{ArticleCounter}%
|
|
|
|
% Demand space and take space
|
|
\needspace{5\baselineskip}%
|
|
\bigskip%
|
|
|
|
% Center the title and print it
|
|
\centering%
|
|
\ifnum\value{TitleCounter}>0
|
|
\ifnum\value{TitleSubCounter}>0
|
|
\textit{Article \arabic{TitleCounter}\Alph{TitleSubCounter}:\arabic{ArticleCounter}}%
|
|
\else
|
|
\textit{Article \arabic{TitleCounter}:\arabic{ArticleCounter}}%
|
|
\fi
|
|
\else
|
|
\textit{Article \arabic{ArticleCounter}}\newline%
|
|
\fi
|
|
|
|
\textbf{#1}%
|
|
\justify
|
|
\par{#2}
|
|
\bigskip%
|
|
}
|
|
\newcommand{\subarticle}[2]{%
|
|
\stepcounter{ArticleSubCounter}%
|
|
|
|
\needspace{5\baselineskip}%
|
|
\bigskip%
|
|
|
|
\centering%
|
|
\ifnum\value{TitleCounter}>0
|
|
\ifnum\value{TitleSubCounter}>0
|
|
\textit{Article \arabic{TitleCounter}\Alph{TitleSubCounter}:\arabic{ArticleCounter}\alph{ArticleSubCounter}}%
|
|
\else
|
|
\textit{Article \arabic{TitleCounter}:\arabic{ArticleCounter}\alph{ArticleSubCounter}}%
|
|
\fi
|
|
|
|
\else
|
|
\textit{Article \arabic{ArticleCounter}\alph{ArticleSubCounter}}%
|
|
\fi
|
|
|
|
\textbf{#1}%
|
|
\justify
|
|
\par{#2}%
|
|
\bigskip%
|
|
} |