Salut, Juste pour être sûr : je crois que tu as oublié un \fi à la fin, n'est-ce pas :
\newcommand*\lettre@efr@french{\ifFrench\else\french\fi} qu'il eût fallu écrire. Vincent. PS: Je n'ai pas encore lu ton courriel sur \english et le problème de frendemlp. ________________________________ > Subject: Fwd: Re: Essais avec la révision 198 > To: vincent....@hotmail.fr > From: raym...@juil.ch > Date: Fri, 8 Jan 2016 11:39:54 +0100 > > Rebonjour, > > J'ai continué mes tests et j'en conclus que > la correction de lettre.cls concernant > \lettre@efr@french}et{\lettre@efr@english} > doit être complétée absolument > > % > \DescribeMacro{\lettre@efr@french}\DescribeMacro{\lettre@efr@english}Pour > \texttt{french} et > % \texttt{english}, le wrapper n'est qu'un alias de la macro > correspondante de \texttt{mlp}. > % \begin{macrocode} > \newcommand*\lettre@efr@french{\ifFrench\else\french} % ---- > activé avec modification (\ifFrench\else) ! ! ! ! > \newcommand*\lettre@efr@english{\english} > % ---- activé ! ! ! ! > % \end{macrocode} > > et ceci parce que ce que j'écrivais sous le point 1 : > > comme à chaque nouvelle lettre, \french est d'abord actif, > > ce n'est pas vrai, c'est seulement vrai avant la lecture de l'institut. > > Ainsi si je définis \américain ou \allemand dans l'institut et que > j'écris une lettre en \romand ou \francais, > il faut que \french en soit activé ! > Ceci peut arriver par exemple pour l'École Polytechnique Fédérale de > Zurich : EPFZ (Eidgenössische Technische Hochschule Zürich : ETHZ) > qui écrit suivant ses correspondants en allemand, français ou anglais, > mais tout en ayant une définition > d'institution en allemand. Et moi, de langue française, j'ai étudié > dans cette EPFZ (de langue allemande). > La Suisse est multilingue et lettre.cls est une invention suisse. > > Amitiés, > Raymond > -------- Message transféré -------- > Sujet : Re: Essais avec la révision 198 > Date : Thu, 7 Jan 2016 16:08:51 +0100 > De : Raymond J <raym...@juil.ch><mailto:raym...@juil.ch> > Pour : Vincent Belaïche > <vincent....@hotmail.fr><mailto:vincent....@hotmail.fr> > > > Bonjour Vincent, > > Je vois que tu as encore beaucoup de travail. > > Concernant cette remarque de ta part concernant frdeenmlp : > > le problème est le suivant : à la ligne 88 tu fais \english > qui redéfinit notamment ... > > Je n'utilise plus \english, c'était nécessaire pour une ancienne > révision donc frdeenmlp c'est du passé ! > Mais j'ai failli devoir le réutiliser, voir point 2 ci-dessous. > > Car je suis continuellement en train de réviser mes lettres de test > pour voir comment elle se comportent : > > Deux constatations: > > 1. comme à chaque nouvelle lettre, \french est d'abord actif, il > n'est effectivement pas nécessaire de définir \lettre@efr@french. > 2. mais si \lettre@efr@english n'est pas défini, \fup{me} donne me > (en exposant) alors que \fup devrait être inconnu et le texte être me > (normal). > > Correction de lettre.cls > % > \DescribeMacro{\lettre@efr@french}\DescribeMacro{\lettre@efr@english}Pour > \texttt{french} et > % \texttt{english}, le wrapper n'est qu'un alias de la macro > correspondante de \texttt{mlp}. > % \begin{macrocode} > % \newcommand*\lettre@efr@french{\french} > \newcommand*\lettre@efr@english{\english} % ---- ici > activé ! ! ! ! > % \end{macrocode} > > D'ailleurs, le problème des pages vides venait du fait que \french > était déjà actif et appelé une seconde fois. > > Je joins un exemple de fichier test contenant pour chaque langue un > essai de \fup. Et tu verras que pour anglais et américain, > \fup{me} donne << me>> dans le cas où je corrige lettre.cls > (avecmlp.pdf) et > \fup{me} donne l'<<exposant me>> si je ne corrige pas > (avecmlperr.pdf), donc si \french reste actif. > > Si \french n'était pas actif au début de chaque lettre, on devrait > définir \newcommand*\lettre@efr@french{\french} > et parce que \french était actif j'avais défini > \lettre@efr@french{\ifFrench\else\french} > %,\ifFrench teste si \french est actif, > car je croyais que \french n'était pas toujours actif. > > Je tiens à ce que la classe lettre.cls que tu développe reste > pleinement compatible > avec le paquetage e-french. > > Amitiés > > Raymond > > > Le 2016-01-07 11:23, Vincent Belaïche a écrit : > > Salut, > > Oui, ça commence à devenir bien. Je viens juste de corriger une régression > que j'avais introduite sur la gestion des environnements (itemize) > directement par lettre. D'ailleurs il faudrait mettre à jour le référentiel > de test pour couvrir cela. > > Pour moi cette gestion des environnements c'est encore un point > problématique, j'ai envie que l'option « keep envs » que j'ai introduite ait > 3 valeurs : « auto » par défaut en plus de « true » et « false » déjà pris en > charge, et que dans le cas « auto » si on détecte qu'un paquetage de gestion > de langue qui s'occupe déjà des environnement est chargé, alors on fait comme > si c'était « true ». > > Il y a aussi le bogue https://gna.org/bugs/index.php?24024, je n'ai pas > encore cherché d'où vient le problème. > > De plus j'ai encore un petit bogue, ligne565 : > > \csuse{\lettre@mainlang}% > > Clairement il faudrait > > \expandafter\lettreselectlanguage\expandafter{\lettre@mainlang}% > > pour prendre en compte le cas des alias. > > > Finalement, dans le référentiel de test j'ai un test frdeenmlp qui ne passe > pas > > http://svn.gna.org/viewcvs/lettre_observatoire/trunk/test/test-frdeenmlp.tex?view=markup&pathrev=187 > > > le problème est le suivant : à la ligne 88 tu fais \english qui redéfinit > notamment \enclname à une valeur différente de ce que fait lettre. Va dans le > répertoire test, et fait > > make diff-frdeenmlp > > et tu verras le problème. Je pense que le \english a été ajouté par la suite. > > Je sais pas comment corriger cela, parce qu'il faut justement laisser à > l'utilisateur la possibilité de redéfinir ces étiquettes comme il veut. Je > pense qu'il n'y a rien à faire d'autre que > - corriger le .tex du test > - mettre dans le manuel un avertissement que les commandes \<langue> de mlp > peuvent redéfinir les étiquettes d'une façon qui diffère de lettre. > > > Vincent. > > > > > > > > ________________________________ > > > Subject: Essais avec la révision 198 > To: vincent....@hotmail.fr<mailto:vincent....@hotmail.fr> > From: raym...@juil.ch<mailto:raym...@juil.ch> > Date: Wed, 6 Jan 2016 11:35:17 +0100 > > Bonjour Vincent, > > J'ai fait quelques essais avec la révision 198 de lettre avec > e-french. Je la trouve très bien. Même la page vide qui venait toujours > avant chaque lettre ne vient plus sous Windows et MikTeX. Et la façon > de traiter le choix de l'allemand est mieux que ce que j'ai proposé. > > Mais en parallèle, moi je cherchais à annoncer une erreur avec un > \break dans le cas où allemand pose problème. > Donc au lieu de l'avertissement > \l@@warning@strictable{Ni \protect\german\space ni > \protect\ngerman\space ne sont d'efinis !} > je préfèrerais plutôt > un message d'erreur avec arrêt de compilation. > > Le choix allemand pose problème entre autres dans les cas suivants : > \usepackage{german,french} % au lieu de german.sty c'est > ngerman.sty qui sera choisi à cause de l'absence de mlp, d'où erreurs > de césure > > \usepackage[french]{mlp} % les lettres en allemand suivent french.sty > > > > et dans ces cas-là, effectivement le message d'avertissement se > retrouve dans le fichier de rapport (...log), mais je trouve que ces > cas-là, ce sont des ERREURS. > Je suis sévère avec l'utilisateur de e-french, je sais. > > Bon courage pour la suite et les options babel et polyglossia de lettre, > mais il semble que french sous polyglossia, ce n'est pas le pied, déjà > que frenchb sous babel est faible (pour la typographie française) par > rapport à french.sty d'e-french. > > Amitiés > > Raymond > > > > > > > > > > _______________________________________________ Lettre_observatoire-aide mailing list Lettre_observatoire-aide@gna.org https://mail.gna.org/listinfo/lettre_observatoire-aide