From 18a925863934edbef7c77bf256fce90a5ed069a8 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Thu, 1 Dec 2011 23:52:57 +0000
Subject: chemfig (1dec11)

git-svn-id: svn://tug.org/texlive/trunk@24715 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/tex/generic/chemfig/chemfig.tex | 185 ++++++++++++----------
 1 file changed, 101 insertions(+), 84 deletions(-)

(limited to 'Master/texmf-dist/tex/generic/chemfig/chemfig.tex')

diff --git a/Master/texmf-dist/tex/generic/chemfig/chemfig.tex b/Master/texmf-dist/tex/generic/chemfig/chemfig.tex
index 5ace4abbf47..dd35a276863 100644
--- a/Master/texmf-dist/tex/generic/chemfig/chemfig.tex
+++ b/Master/texmf-dist/tex/generic/chemfig/chemfig.tex
@@ -1,9 +1,9 @@
 %  __________________________________________________________________
 % |                                                                  |
 % |                                                                  |
-% |                          chemfig v1.0b                           |
+% |                          chemfig v1.0c                           |
 % |                                                                  |
-% |                        November 29, 2011                         |
+% |                        November 30, 2011                         |
 % |                                                                  |
 % |__________________________________________________________________|
 %
@@ -44,8 +44,8 @@
 \begingroup
 	\def\X#1{\catcode\number`#1=\number\catcode`#1\relax}
 	\expandafter\xdef\csname CF@savedcatcode\endcsname{%
-		\X\[\X\]\X\:\X\(\X\)\X\,\X\-\X\=\X\~\X\!\X\?\X\<\X\>\X\;\X\*\X\|\X\@%
-	}
+		\X\[\X\]\X\:\X\(\X\)\X\,\X\-\X\=\X\~\X\!\X\?\X\<\X\>\X\;\X\*\X\|\X\@\X\ %
+		}
 \endgroup
 
 % Pour la dur\'ee de lecture du package, changer les catcodes :
@@ -55,6 +55,18 @@
 \catcode`\>12 \catcode`\;12 \catcode`\*12 \catcode`\|12
 \catcode`\@11 \catcode`\#6  \catcode`\ 10
 
+% V\'erifie que eTeX est le moteur utilis\'e
+\begingroup
+\edef\CF@ver{\meaning\eTeXversion}
+\edef\CF@date{\string\eTeXversion}
+\ifx\CF@ver\CF@date
+	\endgroup
+\else
+	\endgroup
+	\errmessage{Package chemfig Error: you are not using the eTeX engine, chemfig cannot work and is not loaded.}%
+	\expandafter\endiput
+\fi
+
 \def\CF@def#1{%
 	\ifdefined#1%
 		\errmessage{Package chemfig Error: the macro \string#1\space is already defined. Please, email the author.}%
@@ -63,9 +75,9 @@
 }
 
 \CF@def\CF@ver         {1.0b}
-\CF@def\CF@date        {2011/11/29}
-\CF@def\CF@fr@date     {29 novembre 2011}
-\CF@def\CF@en@date     {November 29, 2011}
+\CF@def\CF@date        {2011/11/30}
+\CF@def\CF@fr@date     {30 novembre 2011}
+\CF@def\CF@en@date     {November 30, 2011}
 \CF@def\CF@package@name{chemfig}
 
 \expandafter\ifx\csname @latexerr\endcsname\relax% on n'utilise pas LaTeX ?
@@ -1543,7 +1555,7 @@
 		\tikzpicture[every node/.style={anchor=base,inner sep=\z@,outer sep=\z@,minimum size=\z@},baseline,remember picture]%
 	\fi
 	\let\merge\CF@merge
-	\let\+\CF@and
+	\expandafter\let\csname+\endcsname\CF@and
 	\let\arrow\CF@arrow
 	\let\schemestop\CF@schemestop
 	\let\subscheme\CF@subscheme
@@ -2047,97 +2059,102 @@
 ######################################################################
 
 v0.1        2010/06/23
-	- Premi\`ere version publique sur le CTAN
+    - Premi\`ere version publique sur le CTAN
 ----------------------------------------------------------------------
 v0.2        2010/08/31
-	- Ajout de la documentation en anglais.
-	- Correction de bugs.
-	- \printatom est d\'esormais une macro publique.
-	- Les espaces sont permis dans les mol\'ecules. Ils seront
-	  ignor\'es par d\'efaut puisque les atomes sont compos\'es en
-	  mode math par \printatom
-	- Une paire de Lewis peut \^etre repr\'esent\'ee ":".
-	- Dans les cycles, une correction de la longueur du trait
-	  d\'eport\'e des liaisons doubles est fait de telle sorte que si
-	  l'on \'ecrit \chemfig{*5(=====)}, on obtient deux polygones
-	  r\'eguliers concentriques.
-	- La s\'equence de contr\^ole \setnodestyle permet de sp\'ecifier
-	  le style des nœuds dessin\'es par tikz.
+    - Ajout de la documentation en anglais.
+    - Correction de bugs.
+    - \printatom est d\'esormais une macro publique.
+    - Les espaces sont permis dans les mol\'ecules. Ils seront
+      ignor\'es par d\'efaut puisque les atomes sont compos\'es en
+      mode math par \printatom
+    - Une paire de Lewis peut \^etre repr\'esent\'ee ":".
+    - Dans les cycles, une correction de la longueur du trait
+      d\'eport\'e des liaisons doubles est fait de telle sorte que si
+      l'on \'ecrit \chemfig{*5(=====)}, on obtient deux polygones
+      r\'eguliers concentriques.
+    - La s\'equence de contr\^ole \setnodestyle permet de sp\'ecifier
+      le style des nœuds dessin\'es par tikz.
 ----------------------------------------------------------------------
 v0.3        2010/11/21
-	- Am\'elioration de \definesubmol qui accepte les s\'equences de
-	  contr\^ole. On peut aussi choisir un alias dont la substitution
-	  est diff\'erente selon l'orientation de la liaison qui lui
-	  arrive dessus.
-	- Le caract\`ere "|" force la fin d'un atome. Si on \'ecrit
-	  "D|ef" alors, chemfig verra deux atomes "D" et "ef".
-	- Le caract\`ere "#" est reconnu lorsqu'il suit un caract\`ere de
-	  liaison. Il doit \^etre suivi d'un argument entre parenth\`eses
-	  qui contient l'offset de d\'ebut et de fin qui s'appliqueront
-	  \`a cette liaison.
-	- La macro \chemfig admet un argument optionnel qui sera pass\'e
-	  \`a l'environnement tikzpicture dans lequel elle est dessin\'ee
-	- Mise en place de la repr\'esentation des m\'ecanismes
-	  r\'eactionnels avec la synatxe "@{<nom>}" devant un atome o\`u
-	  "@{<nom>,<coeff>}" au tout d\'ebut de l'argument d'une liaison.
-	  Cette syntaxe permet de placer un nœud (au sens de tikz) qui
-	  deviendra l'extr\'emit\'e des fl\`eches des m\'ecanismes.
-	  Le trac\'e des fl\`eches est faite par la macro \chemmove dont
-	  l'argument optionnel devient celui de l'environnement
-	  tikspicture dans lequel sont faites les fl\`eches.
-	- Pour le m\'ecanisme d'alignement vertical via le \vphantom, la
-	  commande \chemskipalign permet d'ignorer le groupe d'atomes
-	  dans lequel elle est \'ecrite.
-	- La commande \chemname permet d'afficher un nom sous une
-	  mol\'ecule. la commande \chemnameinit initialise la plus grande
-	  profondeur rencontr\'ee.
-	- La commande \lewis a \'et\'e modifi\'ee de telle sorte que les
-	  dessins des d\'ecorations soient proportionnels \`a la taille
-	  de la police.
+    - Am\'elioration de \definesubmol qui accepte les s\'equences de
+      contr\^ole. On peut aussi choisir un alias dont la substitution
+      est diff\'erente selon l'orientation de la liaison qui lui
+      arrive dessus.
+    - Le caract\`ere "|" force la fin d'un atome. Si on \'ecrit
+      "D|ef" alors, chemfig verra deux atomes "D" et "ef".
+    - Le caract\`ere "#" est reconnu lorsqu'il suit un caract\`ere de
+      liaison. Il doit \^etre suivi d'un argument entre parenth\`eses
+      qui contient l'offset de d\'ebut et de fin qui s'appliqueront
+      \`a cette liaison.
+    - La macro \chemfig admet un argument optionnel qui sera pass\'e
+      \`a l'environnement tikzpicture dans lequel elle est dessin\'ee
+    - Mise en place de la repr\'esentation des m\'ecanismes
+      r\'eactionnels avec la synatxe "@{<nom>}" devant un atome o\`u
+      "@{<nom>,<coeff>}" au tout d\'ebut de l'argument d'une liaison.
+      Cette syntaxe permet de placer un nœud (au sens de tikz) qui
+      deviendra l'extr\'emit\'e des fl\`eches des m\'ecanismes.
+      Le trac\'e des fl\`eches est faite par la macro \chemmove dont
+      l'argument optionnel devient celui de l'environnement
+      tikspicture dans lequel sont faites les fl\`eches.
+    - Pour le m\'ecanisme d'alignement vertical via le \vphantom, la
+      commande \chemskipalign permet d'ignorer le groupe d'atomes
+      dans lequel elle est \'ecrite.
+    - La commande \chemname permet d'afficher un nom sous une
+      mol\'ecule. la commande \chemnameinit initialise la plus grande
+      profondeur rencontr\'ee.
+    - La commande \lewis a \'et\'e modifi\'ee de telle sorte que les
+      dessins des d\'ecorations soient proportionnels \`a la taille
+      de la police.
 ----------------------------------------------------------------------
 v0.3a       2011/01/08
-	- Correction d'un bug dans l'argument optionnel de \definesubmol
-	  lorsque celui-ci comporte des crochets.
-	- Mise \`a jour du manuel en anglais.
-	- Ajout de \vflipnext et \hflipnext pour retourner
-	  horizontalement ou verticalement la prochaine mol\'ecule.
+    - Correction d'un bug dans l'argument optionnel de \definesubmol
+      lorsque celui-ci comporte des crochets.
+    - Mise \`a jour du manuel en anglais.
+    - Ajout de \vflipnext et \hflipnext pour retourner
+      horizontalement ou verticalement la prochaine mol\'ecule.
 ----------------------------------------------------------------------
 v0.4        2011/03/07
-	- chemfig est d\'esormais \'ecrit en plain-etex et donc
-	  utilisable par d'autres formats que LaTeX.
-	- Un peu plus de rigueur avec les catcodes des caract\`eres
-	  sp\'eciaux, notamment lorsque la commande \chemfig se trouve
-	  dans l'argument de \chemmove, \chemabove, \chembelow, \chemrel.
-	  TODO : faut-il \scantoker l'argument de \chemfig pour \^etre
-	  d\'efinitivement d\'ebarass\'e de ces histoires de catcode ???
-	- Correction d'un bug dans le calcul de l'angle des liaisons
+    - chemfig est d\'esormais \'ecrit en plain-etex et donc
+      utilisable par d'autres formats que LaTeX.
+    - Un peu plus de rigueur avec les catcodes des caract\`eres
+      sp\'eciaux, notamment lorsque la commande \chemfig se trouve
+      dans l'argument de \chemmove, \chemabove, \chembelow, \chemrel.
+      TODO : faut-il \scantoker l'argument de \chemfig pour \^etre
+      d\'efinitivement d\'ebarass\'e de ces histoires de catcode ???
+    - Correction d'un bug dans le calcul de l'angle des liaisons
 ----------------------------------------------------------------------
 v0.4a       2011/04/10
-	- Correction d'un bug concernant l'argument optionnel en d\'ebut
-	  de mol\'ecule.
+    - Correction d'un bug concernant l'argument optionnel en d\'ebut
+      de mol\'ecule.
 ----------------------------------------------------------------------
 v0.4b       2011/04/24
-	- l'argument de \chemfig est tok\'enis\'e avec \scantokens ce qui
-	  rend caduc tout souci de code de cat\'egorie, \`a part #.
-	- la commande \setbondstyle permet de d\'efinir le style des
-	  liaisons.
-	- correction de l'affichage incorrect des doubles liaisons dans
-	  les cycles apr\`es les commandes \hflipnext et \vflipnext
-	- correction d'un bug lorsqu'un alias commence une mol\'ecule
+    - l'argument de \chemfig est tok\'enis\'e avec \scantokens ce qui
+      rend caduc tout souci de code de cat\'egorie, \`a part #.
+    - la commande \setbondstyle permet de d\'efinir le style des
+      liaisons.
+    - correction de l'affichage incorrect des doubles liaisons dans
+      les cycles apr\`es les commandes \hflipnext et \vflipnext
+    - correction d'un bug lorsqu'un alias commence une mol\'ecule
 ----------------------------------------------------------------------
 v1.0       2011/06/15
-	- les sch\'emas r\'eactionnels sont d\'esormais disponibles.
-	- \Chemabove et \Chembelow modifient la boite englobante.
-	- \Lewis modifie la boite englobante
-	- les macros \chemleft, \chemright, \chemup et \chemdown
-	  affichent des d\'elimiteurs extensibles \`a gauche, \`a droite,
-	  au dessus et au dessous d'un mat\'eriel.
+    - les sch\'emas r\'eactionnels sont d\'esormais disponibles.
+    - \Chemabove et \Chembelow modifient la boite englobante.
+    - \Lewis modifie la boite englobante
+    - les macros \chemleft, \chemright, \chemup et \chemdown
+      affichent des d\'elimiteurs extensibles \`a gauche, \`a droite,
+      au dessus et au dessous d'un mat\'eriel.
 ----------------------------------------------------------------------
 v1.0a      2011/09/18
-	- les macros \Lewis et \lewis admettent un argument optionnel
-	- la macro \setlewisdist r\`egle la distance entre les 2 \'electrons
+    - les macros \Lewis et \lewis admettent un argument optionnel
+    - la macro \setlewisdist r\`egle la distance entre les 2
+      \'electrons
 ----------------------------------------------------------------------
 v1.0b      2011/11/29
-	- la commande \merge est d\'sormais protég\'ee entre \schemestart et
-	  \schemestop contre des d\'efinitions par d'autres packages.
-	- \box\z@ est utilis\'e au lieu du maladroit \unhbox\z@
\ No newline at end of file
+    - la commande \merge est d\'sormais protég\'ee entre \schemestart
+      et \schemestop contre des d\'efinitions par d'autres packages.
+    - \box\z@ est utilis\'e au lieu du maladroit \unhbox\z@
+----------------------------------------------------------------------
+v1.0c      2011/11/30
+    - la macro \+ n'est plus explicitement \'ecrite
+    - v\'erifie que eTeX est le moteur utilis\'e
\ No newline at end of file
-- 
cgit v1.2.3

