Je suis en train d'écrire une classe qui étend la classe article.

Je souhaite que la langue par défaut des documents soit le français, mais qu'il soit possible de passer une option à l'initialisation de la classe pour que la langue devienne l'anglais (par exemple).

J'ai donc écrit le début de code suivant :

\NeedsTeXFormat{LaTeX2e}[1996/12/01]
\newcommand{\classname}{xxx}
\ProvidesClass{\classname}[xxxxxx]
\providecommand{\baseclass}{article}
\RequirePackage{etoolbox}
\RequirePackage{xparse}
\newbool{english}
\DeclareOption{english}{\booltrue{english}}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\baseclass}}
\ifbool{english}{% Required to change language for document elements
\immediate\typeout{English mode selected}
\PassOptionsToClass{english}{\baseclass}
}{
\immediate\typeout{No language given}
\PassOptionsToClass{french}{\baseclass}
}
\ProcessOptions*
\LoadClassWithOptions{\baseclass}
\RequirePackage{lmodern}
\RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
\RequirePackage{babel}
\endinput
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Un exemple de document à compiler pourrait être :

\documentclass{xxx}
\usepackage{csquotes}
\title{Ceci est un test}
\author{A. Nonymous}
\begin{document}
\maketitle
\section{Bonjour}
Ceci est un test de section avec des guillemets pour voir si tout compile
bien avec les langues \enquote{Test dans les guillemets}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Le problème est qu'actuellement, si je passe english en option de classe dans l'ECM, ça marche, la date est en anglais et les guillemets aussi. Par contre, si je ne mets pas d'option (comme dans l'ECM), la langue reconnue par babel est nil, ce qui me fait penser que l'option que je passe n'est en fait pas passée.

J'ai (à mon sens) besoin d'avoir le drapeau booléen english, qui me permettra de changer facilement des légendes où des titres dans ma classes (dans les cas qui ne sont pas couverts par babel).

Comment puis-je faire pour passer correctement ces options à ma sous-classe ?

Posée 17 Nov '23, 14:20

olirwin's gravatar image

olirwin
434
Taux d'acceptation : 100%

Soyez le premier à répondre à cette question !
[Masquer l'aperçu]

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Mots-clés de la question :

×3
×3

Question posée : 17 Nov '23, 14:20

Question vue : 526 fois

Dernière mise à jour : 17 Nov '23, 14:20

C'est votre première visite ici ? Consultez la FAQ !

×