Re: [Squeak-fr] SBE : problème avec l'environnement french

Serge Stinckwich Serge.Stinckwich at info.unicaen.fr
Mer 3 Oct 16:54:53 UTC 2007


On 3 oct. 07, at 18:34, Martial Boniou wrote:

> J'ai retourné le problème toute la journée. J'ai trouvé que babel
> auto-espace les : ! ; etc ce qui est plutôt cool quand on tape du  
> texte
> mais il y a une technique pour mettre une zone de texte sans espace
> avant ces signes de ponctuation (technique que m'a rappelé Damien):
> \foreignlanguage{english}{ma phrase avec deux points:}
> La, il n'y aura plus d'espace. J'ai automatisé cela dans la balise
> \lct{}.
>
> \newcommand{\lct}[1]{\textsf{\textup{\NoAutoSpaceBeforeFDP #1
> \AutoSpaceBeforeFDP}}}
>
> du coup, fini les espaces dans:
> \lct -> #message : arg1
> on a bien:
> \lct -> #message: arg1
>
> Mais on a toujours le problème de \ct. En fait, \ct utilise des
> \lstinline. Or ces balises du package listing sont connus pour être
> incompatible avec le package frenchb (celui que l'on veut utiliser).
> Néanmoins ça marche dans tous les cas sauf quand les \ct sont inclus
> dans des \box ce qui est le cas avec \important.
>
> J'ai tout tenté pour reprogrammer les \lstinline pour les faire  
> marcher
> avec babel et les \important et c'est presque mission impossible.
> Néanmoins, le noeud du problème se situe avec le premier caractère de
> \ct. Donc quand \ct{:} ou \ct{;} est dans \important, l'auto-espace
> tourne en rond. Alors que dans le même contexte, \ct{toto:} marche.
>
> Solution (en forme de consigne):
> Dans chaque \important{}, le traducteur veillera toujours à remplacer
> tout \ct{x} en \ct{\x} tel que x égale : ou ;.
>
> Donc dans Messages/Messages.tex, il faudra écrire:
>
> Les caract\`eres \ct{[}, \ct{]}, et \ct{(}, \ct{)} d\'elimitent des
> zones distinctes. Dans ces zones, un message \`a mot-cl\'e est la plus
> longue s\'equence de mots qui se termine par (\ct{\:}) qui n'est pas
> coup\'e par les carac\`eres (\ct{.}),  ou \ct{\;}.
> Lorsque les caract\`eres \ct{[}, \ct{]}, et \ct{(}, \ct{)} entourent
> des mots avec des deux points, ces mots participent au message \`a
> mot-cl\'e local \`a cette zone.}
>
> % ligne ~210
> \important{Les messages bas\'es sur les mot-cl\'es sont des  
> messages qui
> n\'ecessitent un ou plusieurs arguments. Leurs s\'electeurs consistent
> en un ou plusieurs mot-cl\'es chacun se terminant par deux points
> (\ct{\:}). Ils suivent le sch\'ema suivant :\\
> \lct{receveur \textbf{selecteurMotUn:} argumentUn \textbf{motDeux:}
> argumentDeux}}
>
> % ligne ~520
> \important{Les messages bas\'es sur les mot-cl\'es sont des  
> messages qui
> n\'ecessitent un ou plusieurs arguments. Leurs s\'electeurs consistent
> en un ou plusieurs mot-cl\'es chacun se terminant par deux points
> (\ct{\:}). Ils suivent le sch\'ema suivant :\\
> \lct{receveur \textbf{selecteurMotUn:} argumentUn \textbf{motDeux:}
> argumentDeux}}
>
> Il devrait être possible de faire mieux mais ça serait beaucoup de  
> code
> pour pas grand-chose. Si seulement LaTeX avait été écrit en Squeak :-)
>

Merci Martial, pour le superbe effort de compréhension des arcanes de  
LaTeX.

J'ai commité les modifications que tu indique dans Message.tex et  
j'ai modifé la définition de lct
dans common.tex. Cela compile sans problème maintenant ;-)

Cordialement,
--                                                         oooo
Dr. Serge Stinckwich                                     OOOOOOOO
Université de Caen>CNRS UMR 6072>GREYC>MAD               OOESUGOO
                                                           oooooo
Smalltalkers do: [:it | All with: Class, (And love: it)]   \  /
                                                             ##





Plus d'informations sur la liste de diffusion Squeak-fr