summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/mycv/Doc/Chapters/Fundamentals.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/mycv/Doc/Chapters/Fundamentals.tex')
-rw-r--r--Master/texmf-dist/doc/latex/mycv/Doc/Chapters/Fundamentals.tex129
1 files changed, 55 insertions, 74 deletions
diff --git a/Master/texmf-dist/doc/latex/mycv/Doc/Chapters/Fundamentals.tex b/Master/texmf-dist/doc/latex/mycv/Doc/Chapters/Fundamentals.tex
index 7384694f9ec..13e080268ea 100644
--- a/Master/texmf-dist/doc/latex/mycv/Doc/Chapters/Fundamentals.tex
+++ b/Master/texmf-dist/doc/latex/mycv/Doc/Chapters/Fundamentals.tex
@@ -7,104 +7,81 @@
it produces objects of beauty''
}{Knuth}
%*********************************************************
-
+\ifparchment\begin{parchment}\fi
\section{Introduction}
The main goal of this class (\classname) is to give support for creating \textit{curriculum
vit\ae{}} (\CV) with different layouts, allowing easy switching among them.
%That is primarily the goal this class focus on.
-The class also provides a basic support for using the \textit{TikZ} decorations and defines a bunch
-of commands for handling the contents of a \CV, even though this is not its primary goal.
+The class also provides basic support for using the \textit{TikZ} decorations and defines a bunch
+of commands for managing the contents of a \CV, though that is not its primary goal.
%\classname, in fact, mainly focus on switching from different curriculum layouts,
%rather than handling the curriculum contents.
On \keyword{CTAN} archives, there are available various \CV packages more
-\textit{contents-oriented}, as it were, and they may be used together with this class,
-providing missing contents functionality.
-
-Probably, the choice of the class's name was not so appropriate but, at the beginning, I did not
-plan to publish it and chose the simplest and most obvious name. I realized that only when I
-wrote these notes, but by then it was a bit too late.
-%As far as the class is concerned, it uses a file-based and list-driven approach. Each file
-%represents the contents of a user-chosen part of the curriculum (ideally a section, but this is not
-%mandatory and may be anything else); besides, the \CV is logically divided into three main
-%components: header, body and footer components. For each main component a list is associated: it
-%contains sub-components, among which files with the \CV contents. In addiction, each sub-component
-%may have associated some generic or specific commands to be executed.
-
-Before starting to describe \classname more in details, I have to say it was my first class in
-\LaTeX{} and, although I tried to do my best, the lack of experience probably brought me to make
-some choice not so opportune as I hoped. It goes without saying that any advice or constructive
-criticism is greatly appreciated.
+\textit{contents-oriented}, as it were, and they may be used together with this class.
+%providing missing contents functionality.
+Before starting to describe the class more in details, it goes without saying that any advice or
+constructive criticism is greatly appreciated.
\section{Class files}
-The class \classname is composed by five files. A short brief of each one is given here:
+The class \classname is composed by six files. A short brief of each one is given here:
\squishlist
\item \ctext{mycv.cls}
\begin{myindent}
it is the main file and, basically, handles the class options~\myref{sec:class-options} as
- well as the inclusion of all other files (the remaining four);
+ well as the inclusion of all other files, except for \textit{mycv\_version.def};
\end{myindent}
\item \ctext{mycv\_base.def}
\begin{myindent}
it contains all the commands and definitions dealing with the layout components of a
- \CV~\myref{sec:layout-components}: it is the core-system file;
+ \CV~\myref{sec:layout-components}: it is the core file;
\end{myindent}
\item \ctext{mycv\_style.sty}
\begin{myindent}
- it contains the default style commands~\myref{sub:style-commands} provided by this class: if
+ it contains the default style commands~\myref{sub:style-commands} provided by the class: if
the default style is not used, %~\myref{sec:class-options}
this file will not be included by \textit{mycv.cls};
\end{myindent}
\item \ctext{mycv\_dec.sty}
\begin{myindent}
- it contains the decoration commands~\myref{sub:decoration-commands}: if decorations are not
- enabled%
+ it contains the decoration commands~\myref{sub:decoration-commands} provided by the class: if
+ decorations are not enabled%
%~\myref{sec:class-options}
, this file will not be included by \textit{mycv.cls};
\end{myindent}
- \item \ctext{mycv\_misc.def}
+ \item \ctext{mycv\_misc.def}\hspace{5pt}and\hspace{5pt}\ctext{mycv\_version.def}
\begin{myindent}
- it contains some miscellaneous commands and definitions.
+ they respectively contain some miscellaneous commands and the version string.
\end{myindent}
\squishend
\section {Layout components}
\label{sec:layout-components}
-This class considers a \textit{curriculum vit\ae{}} as logically divided into three main
-components: \textit{header}, \textit{body} and \textit{footer}.
-For each of these ones, a list, that basically contains some sub-components, is being
-associated; files with the \CV contents
-%, or ideally a part of them (a section for example, but
-%this is not mandatory and may be anything else),
-are also considered sub-components\footnote{it may be a good practice, to make the best use of this
-class, to subdivide the contents of each cv section in different files, although this is not
-mandatory and any other choice may be made}. For these reasons, we can actually say that \classname
-uses a
-%file-based and
-sort of \textit{list-driven} approach.%\\
-%Besides, the \CV contents (ideally a section, but may be anything else) is divided in more files.
+This class considers a \textit{curriculum vit\ae{}} as logically divided into three main components:
+\textit{header}, \textit{body} and \textit{footer}.
+To each of these ones, a list, that basically contains some sub-components, is associated; files
+with the \CV contents are also considered sub-components.
+For these reasons, we can actually say that \classname uses a sort of \textit{list-driven} approach.
\subsection{Main components}
\classname recognizes the following three lists that, for all intends and purposes, are a concrete
representation of the main logical components:
-\def\tmpcolor{black}
-\squishlist[0pt]
- \item \textbf{\ctext[\tmpcolor]{headerlayoutlist}};
- \item \textbf{\ctext[\tmpcolor]{bodylayoutlist}};
- \item \textbf{\ctext[\tmpcolor]{footerlayoutlist}}.
-\squishend\sep
+\bigskip
+\begin{myindent}
+\textbf{headerlayoutlist},\hspace{5pt}\textbf{bodylayoutlist},\hspace{5pt}\textbf{footerlayoutlist}.
+\end{myindent}
-It is mandatory, for the correct behavior of the class, to not change the above list names. In
+\bigskip
+It is mandatory, for the correct behavior of the class, to not change the above list's names. In
the case a component is not required, the relative list may be omitted: for example, if a \CV does
-not have a footer component, the list \textit{footerlayoutlist} is not strictly necessary.
-What follows is an example of a list definition:
-\codeskip
-\begin{lstlisting}[firstnumber=1,numbers=none]
+not have a footer component, the list \textit{footerlayoutlist} is not strictly necessary.\\
+What follows is an example of a list definition:\codeskip
+\begin{latexcode}[numbers=none]
\def\headerlayoutlist{sub-component1,sub-component2,[...]}
-\end{lstlisting}
+\end{latexcode}
\subsection{Sub-components}
@@ -126,32 +103,35 @@ difference is that the former have a default width of $100\%$ of the \textit{tex
macro, while that value is $44\text{-}45\%$ for the latter (it depends on the components type).
% (for these notes does not really matter which is which).
-A \textit{filename} sub-component may either directly be the name of a file or a macro (variable):
+A \textit{filename} sub-component may either be the name of a file or a macro with it:
depending on the case, the syntax slightly changes.%~\myreftwo{subsub:component-options}.
\subsubsection{Sub-components options}
\label{subsub:component-options}
Each sub-component, \textit{filename} included, may have associated options, with colons
-as separators, so that the syntax is something like:\sep
-\begin{myindent}
-\verb|sub-component:option1:option2:[...]|.
-\end{myindent}\sep
-If truth be told, each option has its own separator, so colons are not strictly necessary
-and, as a separator, any other symbol may be used. If wanted, it is also possible to not have any,
-but this is not recommended (just for a matter of clarity).
+as separators, so that the syntax is something like:\codeskip
+\begin{latexcode}[numbers=none]
+ $sub-component$:option1:option2:[...]
+\end{latexcode}
+
+If truth be told, each option already has its own separator, so colons are not strictly necessary
+and, as a separator, any other symbol may be used. If wanted, it is also possible to not have any
+separator at all, but this is not recommended if only for a matter of clarity.
+
+\medskip % in modo che si inizi nella pagina successiva
Options for a sub-component are of different types, as listed below:
\def\tmpcolor{gray}
\squishlist
\item <\optname{[pre\textbar post]cmd}\verb|:command1:command2:[...]|>\optdsep
a sequence of commands is executed \textit{before}/\textit{after} the
- begin or end of a sub-component (\textit{filename} included).
- A command may have a sequence of arguments, separated by ``='';
- each of them can either be \textit{optional} or \textit{mandatory}. %\\
- In total, \classname recognizes four types of arguments:
+ beginning or ending of a sub-component (\textit{filename} included).
+ A command may have a sequence of arguments, separated by ``='',
+ each of which can either be \textit{optional} or \textit{mandatory}.
+ In total, the class recognizes four types of arguments:
%, as it is possible to have $3$ different kinds of optional ones:
- \squishlist
+ \squishlist[0pt]
\item \ctext[blue]{arg} (mandatory argument equivalent to \{arg\});
\item \ctext[blue]{@arg} (optional argument equivalent to [arg]);
\item \ctext[blue]{!arg} (optional argument equivalent to <arg>);
@@ -162,11 +142,10 @@ Options for a sub-component are of different types, as listed below:
changes the \textit{left}/\textit{right} margin of a text portion of a document, between
option {\small($1$)} and option {\small($2$)}; in a typical usage, these options are
associated with different sub-components, such as \verb|*PageBegin| and \verb|*PageEnd|.
- \\
Each time the option {\small($1$)} is used, the option {\small($2$)} is also required
for ending the margin modification, except for the \textit{filename}
sub-component that automatically does that. Example (it moves the left margin to the
- right of $0.2$in):\sep
+ right of $0.2$in):
\begin{myindent}
\texttt{%
\ctext[\tmpcolor]{%
@@ -187,13 +166,15 @@ Options for a sub-component are of different types, as listed below:
\ctext[\tmpcolor]{\texttt{SubBodyPageBegin:/pagesize5.5in/}}.
\item /\optname{pagebreak}/\optdsep
permits to break two contiguous sub-components, aligning them one above the other, instead
- side by side (that is the default behavior). This option only exists for ``\verb|*PageEnd|''
- sub-components. Example: \ctext[\tmpcolor]{\texttt{SubBodyPageEnd:/pagebreak/}}.
- \item \optname{*}varname\optvsep
+ of side by side (that is the default behavior). This option only exists for
+ ``\verb|*PageEnd|'' sub-components.
+ Example: \ctext[\tmpcolor]{\texttt{SubBodyPageEnd:/pagebreak/}}.
+ \item \optname{*}macroname\optvsep
filename\optname{@}\optdsep
- \argname{varname} is a macro that expands to the name of a file (with the \CV contents),
+ \argname{macroname} is a macro expanding to the name of a file (with the \CV contents),
while \argname{filename} is directly the name itself (the only \textit{non-alphanumeric}
- characters allowed are ``\_'' and ``-'').
+ characters allowed there are ``\_'' and ``-'').
Example: \ctext[\tmpcolor]{\texttt{*headerfile}}, where the macro \textit{headerfile}
is somewhere defined.
-\squishend \ No newline at end of file
+\squishend
+\ifparchment\end{parchment}\fi \ No newline at end of file