1. Aggiungere le opzioni “spanish” e “german” oltre ad “italian”. Vedo che cosa riesco a fare.
Ho fatto pochino. 😳
`%************************************************************
% Options
%************************************************************
\newboolean{english}
\newboolean{french}
\newboolean{german}
\newboolean{spanish}
\newboolean{italian}
\DeclareOption{english}{\setboolean{english}{true}}
\DeclareOption{french}{\setboolean{french}{true}}
\DeclareOption{german}{\setboolean{german}{true}}
\DeclareOption{spanish}{\setboolean{spanish}{true}}
\DeclareOption{italian}{\setboolean{italian}{true}}
\ProcessOptions\relax
%************************************************************
% backref
%************************************************************
\ifthenelse{\boolean{english}}%
{%
\PackageInfo{arsclassica}{Using option “english”. %
This activates english language in “backref”.}
\renewcommand*{\backreftwosep}{ and~}
\renewcommand*{\backreflastsep}{, and~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Cited on page~#2.)%
\else
(Cited on pages~#2.)
\fi}
}
{\relax}
\ifthenelse{\boolean{french}}%
{%
\PackageInfo{arsclassica}{Using option “french”. %
This activates french language in “backref”.}
\renewcommand*{\backreftwosep}{ et~}
\renewcommand*{\backreflastsep}{ et~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Cit\'e \`a page~#2.)%
\else
(Cit\'e aux pages~#2.)
\fi}
}
{\relax}
\ifthenelse{\boolean{german}}%
{%
\PackageInfo{arsclassica}{Using option “german”. %
This activates german language in “backref”.}
\renewcommand*{\backreftwosep}{ und~}
\renewcommand*{\backreflastsep}{ und~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Zitiert auf Seite~#2.)%
\else
(Zitiert auf Seiten~#2.)
\fi}
}
{\relax}
\ifthenelse{\boolean{spanish}}%
{%
\PackageInfo{arsclassica}{Using option “spanish”. %
This activates spanish language in “backref”.}
\renewcommand*{\backreftwosep}{ y~}
\renewcommand*{\backreflastsep}{ y~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Citado en la p\'agina~#2.)%
\else
(Citado en las p\'aginas~#2.)
\fi}
}
{\relax}
\ifthenelse{\boolean{italian}}%
{%
\PackageInfo{arsclassica}{Using option “italian”. %
This activates italian language in “backref”.}
\renewcommand*{\backreftwosep}{ e~}
\renewcommand*{\backreflastsep}{ e~}
\renewcommand*{\backrefalt}[4]{%
\ifcase #1 %
\relax%
\or
(Citato a pagina~#2.)%
\else
(Citato alle pagine~#2.)
\fi}
}
{\relax}
%************************************************************
% minitoc
%************************************************************
\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{english}}%
{%
\def\ptctitle{contents}
\def\mtctitle{contents}
\def\stctitle{contents}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}
\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{french}}%
{%
\def\ptctitle{mati\`eres}
\def\mtctitle{mati\`eres}
\def\stctitle{mati\`eres}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}
\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{german}}%
{%
\def\ptctitle{inhaltsverzeichnis}
\def\mtctitle{inhaltsverzeichnis}
\def\stctitle{inhaltsverzeichnis}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}
\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{spanish}}%
{%
\def\ptctitle{\'indice}
\def\mtctitle{\'indice}
\def\stctitle{\'indice}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}
\@ifpackageloaded{minitoc}
{%
\ifthenelse{\boolean{italian}}%
{%
\def\ptctitle{indice}
\def\mtctitle{indice}
\def\stctitle{indice}
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
{%
\setlength{\mtcindent}{0pt}
\renewcommand{\mtifont}{\normalsize\sffamily%
\scshape\lsstyle}
}
}
{\relax}`
Come vedete, ho definito le opzioni english, french, german, spanish e italian e ho ripetuto le impostazioni di backref e minitoc caso per caso, mutatis mutandis. Ci sono due cose che non vanno:
a) il codice è davvero goffo, anche se (credo…) funzionante. Se avete suggerimenti per migliorarlo, sono qui. Più importante, però, è il punto seguente.
b) Vorrei che l’opzione english fosse quella predefinita. In altre parole, vorrei che scrivere
`\usepackage{arsclassica}`
fosse equivalente a
`\usepackage[english]{arsclassica}`
Come si fa?
2. Riscrivere la documentazione in inglese. Idem come sopra.
Quasi pronta. CTAN è un ambiente internazionale, ed è giusto che i manuali siano in inglese. Sfortunatamente, il mio inglese è scarsino… 😥
3. Rinominare il comando \myincludegraphics. Vorrei però mantenere (per ora!) il nome \myincludegraphics per ragioni di retro-compatibilità.
Ecco, dovreste correggermi questo:
`%************************************************************
% graphicx, xcolor
%************************************************************
\definecolor{aliceblue}{RGB}{240,248,255}
\newcommand{\xincludegraphics}[2][]{%
\begingroup\setlength{\fboxsep}{0pt}%
\colorbox{aliceblue}{\includegraphics[#1]{#2}}%
\endgroup}
\newcommand{\myincludegraphics}{%
\PackageWarningNoLine{arsclassica}{Command “myincludegraphics” is deprecated, used “xincludegraphics” instead.}
\xincludegraphics}`
Non infierite: conto sulla vostra magnanimità.
Ciao,
L.