texlive[52292] Master/texmf-dist: mcf2graph

commits+karl at tug.org commits+karl at tug.org
Sat Oct 5 22:49:14 CEST 2019


Revision: 52292
          http://tug.org/svn/texlive?view=revision&revision=52292
Author:   karl
Date:     2019-10-05 22:49:13 +0200 (Sat, 05 Oct 2019)
Log Message:
-----------
mcf2graph

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/README
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
    trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2019-10-05 20:43:20 UTC (rev 52291)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2019-10-05 20:49:13 UTC (rev 52292)
@@ -1,6 +1,12 @@
 *******************************************************************************
- Changelog of mcf2graph software package          by Akira Yamaji 2019-07-07
+ Changelog of mcf2graph software package          by Akira Yamaji 2019-10-05
 *******************************************************************************
+[ver. 4.45  / 2019-10-05]
+  -improve function ext()
+  -delete option parameter sw_auxfix
+     sw_auxfix=1 => sw_aux_out=2
+  -update MCF manual,example
+
 [ver. 4.44  / 2019-07-07]
   -improve to ignore unknown command
 

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/README
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2019-10-05 20:43:20 UTC (rev 52291)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2019-10-05 20:49:13 UTC (rev 52292)
@@ -1,7 +1,7 @@
 ********************************************************************************
  mcf2graph  : Convert Molecular Coding Format to graphics with METAFONT/METAPOST
  Author     : Akira Yamaji
- version    : 4.44 2019-07-07
+ version    : 4.45 2019-10-05
  E-mail     : mcf2graph at gmail.com
  Located at : http://www.ctan.org/pkg/mcf2graph
 ********************************************************************************
@@ -37,8 +37,9 @@
  ( 4) >mpost -s ahangle=1     FILENAME  => output png file 
  ( 5) >mpost -s ahangle=2     FILENAME  => output svg file 
  ( 6) >mpost -s ahangle=3     FILENAME  => output eps file (.eps)
- ( 7) >mpost -s ahlength=1    FILENAME  => output aux file
- ( 8) >mpost -s ahlength=2    FILENAME  => output report file
+ ( 7) >mpost -s ahlength=1    FILENAME  => output aux file (tag1:var1;tag2:var2;)
+ ( 7) >mpost -s ahlength=2    FILENAME  => output aux file (tag1;tag2; var1;var2;)
+ ( 8) >mpost -s ahlength=3    FILENAME  => output report file
  ( 9) >mpost -s ahlength=5    FILENAME  => output mol file(V2000)
  (10) >mpost -s ahlength=6    FILENAME  => output mol file(V3000)
  (11) >mpost -s labeloffset=1 FILENAME  => use plain.mp 'label','drawarrow'

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf	2019-10-05 20:43:20 UTC (rev 52291)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mf	2019-10-05 20:49:13 UTC (rev 52292)
@@ -1,12 +1,12 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format for mcf_example.tex   by Akira Yamaji  2019.07.07
+% Molecular Coding Format for mcf_example.tex   by Akira Yamaji  2019.10.05
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf;   %%% it must be version 4.44 or later
+input mcf2graph.mf;   %%% it must be version 4.45 or later
 %-------------------------------------------------------------------------
 fsize:=(33mm,24mm);
 max_blength:=4.5mm;
 %-------------------------------------------------------------------------
-%%%%sw_aux_out:=1;
+%%%%sw_aux_out:=1; % or 2
 %%%%sw_fframe:=1;
 %%%%sw_aframe:=1;
 %%%%sw_mframe:=1;
@@ -14,7 +14,6 @@
 var3:="cal_FM";  tag3:="cFM";
 var4:="cal_MW";  tag4:="cMW";
 %%%% outputtemplate:="%3c-%j.png";
-%%%% sw_auxfix:=1;
 %%%% var3:="mol_wd";  tag3:="mWD";
 %%%% var4:="mol_ht";  tag4:="mHT";
 %%%% var5:="cal_MW";  tag5:="cMW";
@@ -22,7 +21,6 @@
 %%%% var7:="cal_FM";  tag7:="cFM";
 %%%% var8:="inf_USE"; tag8:="USE";
 %%%% var9:="inf_EXA"; tag9:="EXA";
-%%%% auxtag_out;
 %%%% sw_rep_out:=1;
 %%%% sw_mol_out:=1;
 %%%% atomfont:="uhvb8r";
@@ -29,6 +27,11 @@
 %%%% atomfont:="cmtt8";
 %%%% atomfont:="cmvtt10";
 %%%% outputformat:="png"; hppp:=vppp:=0.1; outputtemplate:="%j-%3c.png";
+%---------------------------------------------------------------------------
+%%%% ext(nA:=10mm; pickup pencircle scaled 0.1pt;
+%%%%     draw(0,0)--(w,0)--(w,h)--(0,h)--cycle;
+%%%%     for i=nA step nA until w: draw(i,0)--(i,h); endfor
+%%%%     for i=nA step nA until h: draw(0,i)--(w,i); endfor );
 %***************************************************************************
 beginfont("EN:Acetamiprid","MW:222.676","FM:C10H11ClN4")
   MC(<30,Ph,2:N,1:/Cl,4:\,!,N,/_,!,/_,!!,N,!,CN)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex	2019-10-05 20:43:20 UTC (rev 52291)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex	2019-10-05 20:49:13 UTC (rev 52292)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF typeset by LaTeX   mcf_examples.tex   by A.Yamaji  2019.05.26
+% Example of MCF typeset by LaTeX   mcf_examples.tex   by A.Yamaji  2019.10.05
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \documentclass[a4paper]{article}
 \usepackage{graphicx}
@@ -38,6 +38,7 @@
 \def\@fst at param#1:#2;{#1}\def\@sec at param#1:#2;{#2}%
 \def\@stru#1[#2]{\font\@strufont=#1\relax\hbox{\@strufont\char#2}}%
 %-------------------------------------------------------------------------------
+\font\labelM=cmtt8 at 6pt%
 \def\put at char{%
   \unitlength=0.01mm\relax \@tempcnta=3300\relax \@tempcntb=3750\relax%
   \begin{picture}(\@tempcntb,\@tempcnta)%
@@ -44,9 +45,9 @@
      \advance\@tempcnta -300\relax%
      \put(20,\@tempcnta){\footnotesize\bf [\the\fontnum] \MOLnameE}%
      \advance\@tempcnta -250\relax%
-     \put(20,\@tempcnta){\tiny\tt MW:\CALmw { / }FM:\CALfm}%
+     \put(20,\@tempcnta){\labelM MW:\CALmw { / }FM:\CALfm}%
      \advance\@tempcnta -220\relax%
-     \put(20,\@tempcnta){\tiny\tt MW:\MOLmw(data)}%
+     \put(20,\@tempcnta){\labelM MW:\MOLmw(data)}%
      \put( 0,0){\makebox(\@tempcntb,\@tempcnta){\@stru{\MOLfile}[\MOLchar]}}%
   \end{picture}%
 }

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf	2019-10-05 20:43:20 UTC (rev 52291)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf	2019-10-05 20:49:13 UTC (rev 52292)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format file for mcf_manual.tex  by Akira.Yamaji 2019.07.07
+% Molecular Coding Format file for mcf_manual.tex  by Akira.Yamaji 2019.10.05
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf;   %% it must be version 4.44 or later
+input mcf2graph.mf;   %% it must be version 4.45 or later
 %------------------------------------------------------------------------
 sw_mframe:=0;
 sw_expand:=0;
@@ -1005,7 +1005,10 @@
 %***************************************************************************
 beginfont("EN:Acetamiprid","MW:222.676")
   fsize:=(60mm,18mm);
-  MC(<30,Ph,2:N,1:/Cl,4:\,!,N,/_,!,/_,!!,N,!,CN)
+  MC(
+     <30,Ph,2:N,1:/Cl,
+     4:\,!,N,/_,!,/_,!!,N,!,CN
+  )
 endfont
 %***************************************************************************
 beginfont("EN:Fenitrothion","MW:277.231")
@@ -1097,17 +1100,23 @@
 %***************************************************************************
 beginfont("EN:Validamycin")
   fsize:=(60mm,20mm);
-  MC(<30,?6,{5,6}:/OH,3:/!OH>rl,
-    $4:\,O,-60,|,?6,2:O,{3,4,5}:/OH,6:/!OH,
-    $1:\,NH,!,|,?6,2=dl,{4,5,6}:/OH,3:/!OH)
+  MC(
+     <30,?6,{5,6}:/OH,3:/!OH>rl,
+     $4:\,O,-60,|,?6,2:O,{3,4,5}:/OH,6:/!OH,
+     $1:\,NH,!,|,?6,2=dl,{4,5,6}:/OH,3:/!OH
+  )
 endfont
 %***************************************************************************
 beginfont("EN:Paclitaxel","CAS:33069-62-4","FM:C47H51NO14","MW:853.91")
-  MC(?6,5=dl,3:@,|<,``1,36,45,45,45,45,>|,
-    $5:#,-4=?6,-4=?4,-1=wb,-3=wf,-1:O,||,
-    {4^35,4^-35,6}:/_,{3^-60,15}:*/OH,8:/*H^-60,9:*/_^60,10://O,
-    1:\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph,
-    7:\*,O,-45,//O,60,Ph,11:*\,O,-60,//O,60,12:\*^-15,O,60,//O,-60)
+  MC(
+     ?6,5=dl,3:@,|<,``1,36,45,45,45,45,>|,
+     $5:#,-4=?6,-4=?4,-1=wb,-3=wf,-1:O,||,
+     {4^35,4^-35,6}:/_,{3^-60,15}:*/OH,8:/*H^-60,
+     9:*/_^60,10://O,
+     1:\,O,!,//O,!,*/OH,!,/Ph,60~wf,NH,-60,//O,60,Ph,
+     7:\*,O,-45,//O,60,Ph,11:*\,O,-60,//O,60,
+     12:\*^-15,O,60,//O,-60
+  )
 endfont
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 beginfont("EN:Ampicillin","MW:349.405")
@@ -1120,23 +1129,11 @@
 beginfont("EN:Cholesterol","CAS:57-88-5","FM:C27H46O","MW:386.65")
   fsize:=(60mm,15mm);
   MC(
-    <30,?6,{-4,-2}=?6,-4=?5,7=dl,
-      1:*/OH,{4,12}:*/_^60,9:*/H^60,
-      10:/*H^180,11:/*H^-60,17:/*H^-54,
-      -1:@,18,/*_,-60,!3,/_,!,
-     )
+  <30,?6,{-4,-2}=?6,-4=?5,7=dl,
+    1:*/OH,{4,12}:*/_^60,9:*/H^60,
+    10:/*H^180,11:/*H^-60,17:/*H^-54,
+    -1:@,18,/*_,-60,!3,/_,!
+  )
 endfont
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 bye
-?6,{-4,-2}=?6,-4=?5,7=dl,
-      1:*/OH,{4,12}:*/_^60,9:*/H^60,
-      10:/*H^180,11:/*H^-60,17:/*H^-54,
-      -1:@,18,/*_,-60,!3,/_,!,
-     )
-endfont
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-bye
-%%%%%
-bye
-
-bye

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex	2019-10-05 20:43:20 UTC (rev 52291)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex	2019-10-05 20:49:13 UTC (rev 52292)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%  Molecular Coding Format manual                by  Akira Yamaji 2019.07.07
+%  Molecular Coding Format manual                by  Akira Yamaji 2019.10.05
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \documentclass[a4paper]{article}
 %%%%\documentclass[a4paper,twoside]{article}
@@ -1367,14 +1367,6 @@
       |,?6,6=dl,{6,2^35,2^-35}:/_)                      > end MCF
 endfont                                                 > end font
 %------------------------------------------------------------------------
-beginfont("NO:5","EN:Gibberellin A3");            > begin font(information)
-  MC(<18,?5,3=?7,5=?6[12],                              > begin MCF (5)
-     8:@,160`1.3,3:#,13=dl,6=wf,8=wb,                   >
-     5:@,40~zf`1,O,60,//O^180,14~zb:#,                  >
-     2:/COOH,7://_,13:*/OH,8:/*OH,                      >
-     14:*/_,{1^60,4^60}:*/H)                            > end MCF
-endfont;                                                > end font
-%------------------------------------------------------------------------
 bye
 \end{verbatim}
 %------------------------------------------------------------------------
@@ -1383,12 +1375,14 @@
 \subsection{Information auxfile output}
 \paragraph{(Insert option parameter setting)}
 \begin{verbatim}
-  sw_aux_out:=1;
+  sw_aux_out=1 : tag1:var1;tag2:var2
+  sw_aux_out=2 : tag1;tag2 var1;var2
   ** default : sw_aux_out=0
 \end{verbatim}
 \paragraph{(Command line)}
 \begin{verbatim}
-  >mpost -s ahlength=1 FILENAME
+  >mpost -s ahlength=1 FILENAME  (sw_aux_out=1)
+  >mpost -s ahlength=2 FILENAME  (sw_aux_out=2)
 \end{verbatim}
 \paragraph{(Sourse)}
 \begin{verbatim}
@@ -1396,7 +1390,6 @@
 beginfont("EN:Cholesterol")(....)
 beginfont("EN:Limonin")(....)
 beginfont("EN:beta-Carotene")(....)
-beginfont("EN:Gibberellin A3")(....)
 \end{verbatim}
 \paragraph{(Setting)}
 \begin{verbatim}
@@ -1407,20 +1400,18 @@
 \end{verbatim}
 \paragraph{(Output)}
 \begin{verbatim}
-(sw_auxfix=0)
+(sw_aux_out=1)
 F:mcf_man_soc;C:1;cMW:349.40462;cFM:C16H19N3O4S;EN:Ampicillin
 F:mcf_man_soc;C:2;cMW:386.6532;cFM:C27H46O;EN:Cholesterol
 F:mcf_exa_soc;C:3;cMW:470.5113;cFM:C26H30O8;EN:Limonin
 F:mcf_exa_soc;C:4;cMW:536.8722;cFM:C40H56;EN:beta-Carotene
-F:mcf_exa_soc;C:5;cMW:346.3742;cFM:C19H22O6;EN:Gibberellin A3
 
-(sw_auxfix=1)
+(sw_aux_out=2)
 F;C;cMW;cFM;EN
 mcf_man_soc;1;349.40462;C16H19N3O4S;Ampicillin
 mcf_man_soc;2;386.6532;C27H46O;Cholesterol
 mcf_exa_soc;3;470.5113;C26H30O8;Limonin
 mcf_exa_soc;4;536.8722;C40H56;beta-Carotene
-mcf_exa_soc;5;346.3742;C19H22O6;Gibberellin A3
 
 (aux_delimiter:="/";)
 F:mcf_man_soc/C:1/cMW:349.40462/cFM:C16H19N3O4S/EN:Ampicillin
@@ -1427,7 +1418,6 @@
 F:mcf_man_soc/C:2/cMW:386.6532/cFM:C27H46O/EN:Cholesterol
 F:mcf_exa_soc/C:3/cMW:470.5113/cFM:C26H30O8/EN:Limonin
 F:mcf_exa_soc/C:4/cMW:536.8722/cFM:C40H56/EN:beta-Carotene
-F:mcf_exa_soc/C:5/cMW:346.3742/cFM:C19H22O6/EN:Gibberellin A3
 \end{verbatim}
 \paragraph{(Tag)}
 \begin{verbatim}

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex	2019-10-05 20:43:20 UTC (rev 52291)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex	2019-10-05 20:49:13 UTC (rev 52292)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of  MCF typest with LuaLaTeX(luamplib)     by A.Yamaji    2019.07.07
+% Example of  MCF typest with LuaLaTeX(luamplib)     by A.Yamaji    2019.10.05
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%% mcf2graph.mf it must be version 4.44 or later
+%%% mcf2graph.mf it must be version 4.45 or later
 \documentclass{article}
 %------------------------------------------------------------------------------
 \usepackage{luamplib}%
@@ -38,6 +38,7 @@
 {{\tt FM(C) :} molecular formula calculated by mcf2graph\\
 {{\tt MW(C) :} molecular weight calculated by mcf2graph\\
 {{\tt MW(D) :} molecular weight from literature data\vspace{5mm}\\
+%------------------------------------------------------------------------------------
 \begin{mplibcode}
   fsize:=(80mm,40mm);
   beginfont("NO:1","EN:Chlorophyll a","MW:893.49")

Modified: trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
===================================================================
--- trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf	2019-10-05 20:43:20 UTC (rev 52291)
+++ trunk/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf	2019-10-05 20:49:13 UTC (rev 52292)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 4.44     Copyright (c) 2013-2019   Akira Yamaji
+% mcf2graph ver 4.45     Copyright (c) 2013-2019   Akira Yamaji
 %
 % Permission is hereby granted, free of charge, to any person obtaining a copy of this software
 % and associated documentation files (the "Software"), to deal in the Software without restriction,
@@ -28,8 +28,9 @@
 % Set outputformat to "png"                  : mpost -s ahangle=1      FILENAME
 % Set outputformat to "svg"                  : mpost -s ahangle=2      FILENAME
 % Set outputformat to "eps" (.eps)           : mpost -s ahangle=3      FILENAME
-% Set output aux file                        : mpost -s ahlength=1     FILENAME
-% Set output report                          : mpost -s ahlength=2     FILENAME
+% Set output aux file (tag1:var1;tag2:var2)  : mpost -s ahlength=1     FILENAME
+% Set output aux file (tag1;tag2 var1;var2)  : mpost -s ahlength=2     FILENAME
+% Set output report                          : mpost -s ahlength=3     FILENAME
 % Set output MOL(V2000)                      : mpost -s ahlength=5     FILENAME
 % Set output MOL(V3000)                      : mpost -s ahlength=6     FILENAME
 % Set to use plain.mp (label,arrow)          : mpost -s labeloffset=1  FILENAME
@@ -46,9 +47,9 @@
 picture mol_stru[],save_picture,temp_picture;
 path    arrow_path,arrow_head;
 %-------------------------------------------------------------------------------------------------
-char_num:=str_cnt:=proc_end:=mangle:=sw_label_emu:=sw_calc:=sw_extall:=0;
-sw_numberA:=sw_numberB:=sw_mframe:=sw_aux_out:=sw_expand:=sw_fframe:=sw_trimming:=0;
-sw_aframe:=sw_rep_out:=sw_mol_out:=sw_subst_off:=sw_single:=sw_auxfix:=sw_arrow:=0;
+char_num:=str_cnt:=proc_end:=mangle:=sw_label_emu:=sw_calc:=sw_ext_all:=0;
+sw_numberA:=sw_numberB:=sw_aux_out:=sw_expand:=sw_fframe:=sw_mframe:=sw_aframe:=sw_trimming:=0;
+sw_rep_out:=sw_mol_out:=sw_subst_off:=sw_single:=sw_arrow:=0;
 numberA_start:=numberB_start:=1; numberA_end:=numberB_end:=4095; aux_max:=max_inf_num:=20;
 aux_delimiter:=";";  var1:="jobname";  tag1:="F";  var2:="char_num"; tag2:="C";
 for i=3 upto aux_max: var[i]:=tag[i]:=""; endfor
@@ -76,7 +77,8 @@
   fi
   %--default ahlength=4---------------------------------------------------------------------
   if     ahlength=1: sw_aux_out:=1; bboxmargin:=0;             % output aux file
-  elseif ahlength=2: sw_rep_out:=1; bboxmargin:=0;             % output report
+  elseif ahlength=2: sw_aux_out:=2; bboxmargin:=0;             % output aux file(fixed mode)
+  elseif ahlength=3: sw_rep_out:=1; bboxmargin:=0;             % output report
   elseif ahlength=5: sw_mol_out:=1; bboxmargin:=0;             % output MOL(V2000)
   elseif ahlength=6: sw_mol_out:=2; bboxmargin:=0;             % output MOL(V3000)
   fi
@@ -98,7 +100,6 @@
   def # = enddef;
   vardef totalweight expr a= 0 enddef;
   def Cp(expr s) = if known s: if s<>0: withcolor color_list[s] fi fi enddef;
-  def ext(text TXT)= sw_extall:=sw_calc:=1; def EXTALL = TXT enddef; enddef;
   if atomfont="":    atomfont:="draw";    fi % default atom font
   if defaultfont="": defaultfont:="draw"; fi % default label font
   %-----------------------------------------------------------------------------------------
@@ -113,7 +114,6 @@
   dotlabeldiam:=3bp;
   def Cp(expr s) = enddef;
   def color = transform enddef;
-  def ext(text TXT)= enddef;
   sw_arrow:=0;
   atomfont:="draw";
   defaultfont:="draw";
@@ -122,11 +122,17 @@
 clearit;
 %--------------------------------------------------------------------------------------------------
 message "---------------------------------------------";
-message "This is mcf2graph ver 4.44  2019.07";
+message "This is mcf2graph ver 4.45  2019.10";
 if f_MP=1:
+  if     bboxmargin=0: message "output no image file";
+  elseif bboxmargin=1: message "output first font only";
+  fi
+  message "jobname="&jobname;
   message "numbersystem="&numbersystem;
   if     ahlength=1: message "output aux file";
                      message "out_file_aux="&out_file_aux;
+                     message "aux_delimiter="&aux_delimiter;
+                     message "aux_delimiter="&aux_delimiter;
   elseif ahlength=2: message "output report file";
                      message "out_file_rep="&out_file_rep;
   elseif ahlength=5: message "output MOL file(V2000)";
@@ -134,16 +140,11 @@
   elseif ahlength=6: message "output MOL file(V3000)";
                      message jobname&"-nnn-"&"inf_EN"&".mol";
   fi
-  if bboxmargin=0:
-    message "No image file";
-  else:
-    if outputformat="png":
-      message "outputformat="&outputformat &" / ppp="&decimal(hppp);
-    else:
-      message "outputformat="&outputformat;
-    fi
-    message "outputtemplate="&outputtemplate;
-  fi
+  message "outputformat="&outputformat;
+  if outputformat="png": message "hppp="&decimal(hppp)&"/vppp="&decimal(vppp); fi
+  message "outputtemplate="&outputtemplate;
+  message "atomfont="&atomfont;
+  message "defaultfont="&defaultfont;
 fi
 message "---------------------------------------------";
 %--------------------------------------------------------------------------------------------------
@@ -151,6 +152,8 @@
 %--------------------------------------------------------------------------------------------------
 primarydef a at b = fat(a,b) enddef;
 def fat(expr a,b)= mposition:=b; a enddef;
+def ext(text TXT)= sw_ext_all:=1; def EXT_ALL = TXT enddef; enddef;
+def ext_clear=     sw_ext_all:=0; def EXT_ALL = enddef; enddef;
 %--------------------------------------------------------------------------------------------------
 ?3:=?20:=Ph:=Ph1:=Ph2:=hz:=0; vt:=1;
 ratio_chain_ring:= 0.66;   ratio_atom_bond:=0.36;
@@ -180,14 +183,14 @@
 def def_com(expr n)(text tx)= nA:=n; forsuffixes list=tx:: list:=nA; nA:=nA+1; endfor enddef;
 def_com(-4000)(_term,_jp_atom,_jp_atom_abs,_jp_bond,_cyc,_cyc_sB,_cyc_eB,_set_line,_chg_line,
   _dl,_mb,_N,_O,_S,_tmp_line,_chg_len,_get_len,_ring_len,_tmp_len,_rot_ang,_adj_ang,_chg_env,
-  _tmp_env,_set_colorA,_set_colorB,_postA,_postB,_postC,_postD,_postE,_postF,_postG,_postH,
+  _tmp_env,_set_colorA,_set_colorB,_substA,_substB,_substC,_substD,_substE,_substF,_substG,_substH,
   _set_clr,_set_adr,_mk_bond,_set_atom,_arg_ang,_chg_atom,_tmp_rot,_fuse,_push,_pop,
   _size_a,_numeric,_jump_at,_connect_at,_set_and,_chg_charge,_nop);
 def_com(1)(si,dl,dr,db,dm,tm,wf,wb,bd,bz,zf,zb,dt,wv,nl,vf,vb,si_,wf_,wb_,bd_);
 %--------------------------------------------------------------------------------------------------
 def parameter_list=
-  sw_rep_out,sw_numberA,sw_numberB,sw_mframe,sw_aux_out,sw_expand,sw_mol_out,sw_calc,sw_extall,
-  sw_aframe,sw_fframe,sw_subst_off,sw_single,sw_trimming,sw_arrow,sw_label_emu,
+  sw_rep_out,sw_numberA,sw_numberB,sw_mframe,sw_aux_out,sw_expand,sw_mol_out,sw_calc,sw_single,
+  sw_ext_all,sw_aframe,sw_fframe,sw_subst_off,sw_trimming,sw_arrow,sw_label_emu,
   ratio_atom_bond,ratio_thickness_bond,ratio_char_bond,
   ratio_chain_ring,ratio_bondgap_bond,ratio_zebra_black,ratio_zebragap_bond,ratio_thickness_char,
   ratio_wedge_bond,ratio_atomgap_atom,lonepairdiam,lonepairspace,
@@ -271,7 +274,7 @@
 enddef;
 %==================================================================================================
 def endfont=
-  if (f_MP=1)and(sw_extall=1): ext_font(EXTALL); fi
+  if sw_ext_all=1: ext_font(EXT_ALL); fi
   if sw_trimming>=1:
     nA:=nC:=4095; nB:=nD:=-4095;
     for i=1 upto cntM:
@@ -308,27 +311,23 @@
 enddef;
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 def set_def_MC=
-  save /,//,/*,*/,**,*/*,~,~~,^,^^,`,'`,<,>,>>,:>,&,:,=,\,\\,*\,\*,*\*,@,$,{,},#,
+  save /,//,/*,*/,**,*/*,~,^,`,<,>,>>,&,:,=,\,\\,*\,\*,*\*,@,$,{,},#,
        |,||,|<,>|,|<=,|=,=|,|:,:|,_,d,w,z,inside_def_MC;
   inside_def_MC:=1;
   _:=Me; d:=db; w:=wf; z:=zf;
   tertiarydef a=b == if (known a)and(known b):: change_bond(a,b) else:: _nop fi enddef; 
   tertiarydef a:b == if (known a)and(known b):: change_atom(a,b) else:: _nop fi enddef;
-  def { == '''( enddef;
+  def { == read_number( enddef;
   let } == );
   def &primary s == (_set_and,ASCII(s)) enddef;
   vardef $primary a == a-4095 enddef;
-  def ^^primary n == (_tmp_rot,n) enddef;
   def ``primary n == (_chg_len,n) enddef;
-  def '`primary n == (_tmp_len,n) enddef;
   def <primary n  == (_rot_ang,n) enddef;
   def >>primary n == (_chg_env,n) enddef;
-  def ~~primary n == (_tmp_line,n) enddef;
-  def :>primary n == (_tmp_env,n) enddef;
-  tertiarydef a^b == if known b:: ^^b,a else:: _nop,a fi enddef;
-  tertiarydef a`b == if known b:: '`b,a else:: _nop,a fi enddef;
-  tertiarydef a~b == if known b:: ~~b,a else:: _nop,a fi enddef;
-  tertiarydef a>b == if known b:: :>b,a else:: _nop,a fi enddef;
+  tertiarydef a^b == if known b:: (_tmp_rot,b),a  else:: _nop,a fi enddef;
+  tertiarydef a`b == if known b:: (_tmp_len,b),a  else:: _nop,a fi enddef;
+  tertiarydef a~b == if known b:: (_tmp_line,b),a else:: _nop,a fi enddef;
+  tertiarydef a>b == if known b:: (_tmp_env,b),a  else:: _nop,a fi enddef;
   def #  == _connect_at enddef;
   def @  == _jump_at enddef;
   def \  == @,0 enddef;
@@ -344,17 +343,17 @@
   def =| == (_pop,0) enddef;
   def |  == (_push,2) enddef;
   def || == (_pop,2) enddef;
-  def /secondary n ==   if known n:: (_postA,n) else:: _nop fi enddef;
-  def //secondary n ==  if known n:: (_postB,n) else:: _nop fi enddef;
-  def */secondary n ==  if known n:: (_postC,n) else:: _nop fi enddef;
-  def /*secondary n ==  if known n:: (_postD,n) else:: _nop fi enddef;
-  def **secondary n ==  if known n:: (_postF,n) else:: _nop fi enddef;
-  def */*secondary n == if known n:: (_postG,n) else:: _nop fi enddef;
+  def /secondary n ==   if known n:: (_substA,n) else:: _nop fi enddef;
+  def //secondary n ==  if known n:: (_substB,n) else:: _nop fi enddef;
+  def */secondary n ==  if known n:: (_substC,n) else:: _nop fi enddef;
+  def /*secondary n ==  if known n:: (_substD,n) else:: _nop fi enddef;
+  def **secondary n ==  if known n:: (_substF,n) else:: _nop fi enddef;
+  def */*secondary n == if known n:: (_substG,n) else:: _nop fi enddef;
 enddef;
 %=================================================================================================
-vardef '(text TXT)= ''(incr sub_usr)(TXT); sub_usr enddef;
+vardef '(text TXT)= read_command(incr sub_usr)(TXT); sub_usr enddef;
 %-------------------------------------------------------------------------------------------------
-def ''(expr ADR)(text TXT)=
+def read_command(expr ADR)(text TXT)=
   begingroup
   save list_cnt;
   if unknown inside_def_MC:: set_def_MC fi
@@ -394,7 +393,7 @@
   endgroup
 enddef;
 %-------------------------------------------------------------------------------------------------
-vardef '''(text TXT)=
+vardef read_number(text TXT)=
   sub_int:=sub_int+1;
   cntD[sub_int]:=0;
   for list==TXT::
@@ -475,7 +474,7 @@
     if (b>=H)and(b<=U):: if b==N:: PP(a,_N) elseif b==O:: PP(a,_O) elseif b==S:: PP(a,_S)
                          else::    PX(a)(_chg_atom,b)
                          fi
-    ef b==NH::    PA(_set_clr,1) PP(a,_N) PX(a)(_postH,H) PA(_set_clr,0)
+    ef b==NH::    PA(_set_clr,1) PP(a,_N) PX(a)(_substH,H) PA(_set_clr,0)
     ef b==_jump_at:: PA(_jp_atom,a)
     ef b==_connect_at:: PA(_cyc,a)
     fi
@@ -743,7 +742,7 @@
 enddef;
 %-------------------------------------------------------------------------------------------------
 def sub_add_op(expr a,b)=
-  op_cnt[cntP]:=op_cnt[cntP]+1; op_com[cntP][op_cnt[cntP]]:=a; op_par[cntP][op_cnt[cntP]]:=b;
+  op_cnt[cntS]:=op_cnt[cntS]+1; op_com[cntS][op_cnt[cntS]]:=a; op_par[cntS][op_cnt[cntS]]:=b;
 enddef;
 %-------------------------------------------------------------------------------------------------
 def sub_pro(expr a,b)=
@@ -769,7 +768,7 @@
 %-------------------------------------------------------------------------------------------------
 def MC(text TXT)=
   begingroup
-  save com,par,adrA,adrB,f_bra,envT,envB,lenT,lineT,strAT,stkA,stkB,stkL,stkM,cntP,bondL,temp_len,
+  save com,par,adrA,adrB,f_bra,envT,envB,lenT,lineT,strAT,stkA,stkB,stkL,stkM,cntS,bondL,temp_len,
        temp_cntB,f_end,f_term,rotT,adrS,f_at,f_lineT,f_rotT,f_lenT,f_envT,angT,tempB,tempA,
        maxX,maxY,f_char,ps_adr,ps_com,sA,sC,sD,pA,pB,factor,m_wd,m_ht,
        op_com,op_par,op_cnt,crR,colorA,colorB,PA,PO,PP,PX,defaultsize,defaultscale;
@@ -788,7 +787,7 @@
   if (sw_expand=1)or(sw_mol_out>=1): expand_set; fi
   sub_usr:=sub_usr_start;
   sub_int:=sub_int_start;
-  cntA:=cntB:=cntP:=cntC:=0; strD[0]:=""; str_cnt:=2000; crR:=-ratio_chain_ring;
+  cntA:=cntB:=cntS:=cntC:=0; strD[0]:=""; str_cnt:=2000; crR:=-ratio_chain_ring;
   %-----------------------------------------------------------------------------------------------
   font_wd:=xpart(fsize);
   font_ht:=ypart(fsize);
@@ -795,11 +794,11 @@
   margin_lr:=xpart(fmargin);
   margin_tb:=ypart(fmargin);
   %===============================================================================================
-  ''(0)(TXT,(_term,0));
+  read_command(0)(TXT,(_term,0));
   %-----------------------------------------------------------------------------------------------
   proc_bond_atom(1);
   %-----------------------------------------------------------------------------------------------
-  if (cntP>0)and(sw_subst_off=0): post_get(1); fi
+  if (cntS>0)and(sw_subst_off=0): subst_get(1); fi
   %-----------------------------------------------------------------------------------------------
   char_use_check;
   %-scaling---------------------------------------------------------------------------------------
@@ -898,7 +897,7 @@
   mol_stru[cntM]:=currentpicture;
   clearit;
   endgroup;
-  if ((sw_aux_out=1)or(sw_rep_out=1)or(sw_mol_out>=1)or(sw_calc=1))and(f_MP=1): proc_calc; fi
+  if ((sw_aux_out>=1)or(sw_rep_out=1)or(sw_mol_out>=1)or(sw_calc=1))and(f_MP=1): proc_calc; fi
   %-----------------------------------------------------------------------------------------------
 %%%%  message "count of usr ="& decimal(sub_usr) &" "& decimal(sub_usr-sub_usr_start);
 %%%%  message "count of int ="& decimal(sub_int) &" "& decimal(sub_int-sub_int_start);
@@ -905,11 +904,11 @@
   %-----------------------------------------------------------------------------------------------
 enddef;
 %-------------------------------------------------------------------------------------------------
-def post_put=
+def subst_put=
   begingroup
   save nA;
   if f_at=1: nA:=getA(adrT); check_adrA(nA); else: nA:=cntA+1; fi
-  cntP:=cntP+1; ps_adr[cntP]:=nA; ps_com[cntP]:=par; op_cnt[cntP]:=0;
+  cntS:=cntS+1; ps_adr[cntS]:=nA; ps_com[cntS]:=par; op_cnt[cntS]:=0;
   if lineT<>0:  PO(_tmp_line,lineT) fi
   if rotT<>0:   PO(_rot_ang,rotT) fi
   if lenT<>crR: PO(_chg_len,lenT) fi
@@ -923,16 +922,16 @@
   endgroup
 enddef;
 %-------------------------------------------------------------------------------------------------
-def post_get(expr n)=
+def subst_get(expr n)=
   sub_int:=0;
-  nA:=cntP; nB:=cntD[0];
-  for i=n upto cntP:
+  nA:=cntS; nB:=cntD[0];
+  for i=n upto cntS:
     PA(_jp_atom_abs,ps_adr[i]) PA(_push,1)
     for j=1 upto op_cnt[i]: PA(op_com[i][j],op_par[i][j]) endfor
     for j=1 upto cntD[ps_com[i]]: PA(comD[ps_com[i]][j],parD[ps_com[i]][j]) endfor 
     PA(_pop,1) PA(_term,0)
   endfor
-  proc_bond_atom(nB+1); if cntP>nA: post_get(nA+1); fi
+  proc_bond_atom(nB+1); if cntS>nA: subst_get(nA+1); fi
 enddef;
 %-------------------------------------------------------------------------------------------------
 def draw_frame(expr PS,LX,LY,PN)=
@@ -1013,14 +1012,14 @@
   ef nC=_mk_bond:  if (par=0)and(rotT<>0): rotT:=0; fi  add_atom;
   ef nC=_set_adr:  adrT:=par;
   ef nC=_set_atom: strAT:=par;
-  ef nC=_postA:            post_put;
-  ef nC=_postB: lineT:=dm; post_put;
-  ef nC=_postC: lineT:=wf; post_put;
-  ef nC=_postD: lineT:=zf; post_put;
-  ef nC=_postE: lineT:=nl; post_put;
-  ef nC=_postF: lineT:=0;  post_put;
-  ef nC=_postG: lineT:=wv; post_put;
-  ef nC=_postH: lineT:=nl; lenT:=_size_a; post_put;
+  ef nC=_substA:            subst_put;
+  ef nC=_substB: lineT:=dm; subst_put;
+  ef nC=_substC: lineT:=wf; subst_put;
+  ef nC=_substD: lineT:=zf; subst_put;
+  ef nC=_substE: lineT:=nl; subst_put;
+  ef nC=_substF: lineT:=0;  subst_put;
+  ef nC=_substG: lineT:=wv; subst_put;
+  ef nC=_substH: lineT:=nl; lenT:=_size_a; subst_put;
   ef nC=_jp_bond: termA; tempB:=getB(par); check_adrB(tempB); sB[cntB+1]:=sB[tempB]; f_bra:=1;
   ef nC=_jp_atom: termA; tempA:=getA(par); check_adrA(tempA); sB[cntB+1]:=tempA; f_bra:=1;
   ef nC=_jp_atom_abs: sB[cntB+1]:=par; f_bra:=1; temp_cntB:=cntB;
@@ -1106,7 +1105,7 @@
   ef nC=_mk_bond:  if (par=0)and(rotT<>0):par:=rotT; rotT:=0; fi add_bond(par);
   ef nC=_rot_ang:  angT:=(angT+par) mod 360;
   ef nC=_tmp_rot:  rotT:=par;
-  ef (nC>=_postA)and(nC<=_postH): rotT:=0;
+  ef (nC>=_substA)and(nC<=_substH): rotT:=0;
   ef nC=_chg_env: envB:=par;
   ef nC=_tmp_env: envT:=par;
   ef nC=_set_clr: f_at:=par; if par=0: lineT:=si; lenT:=crR; rotT:=envT:=0; fi
@@ -1347,7 +1346,7 @@
 R:='("R"); R1:='("{R^1^}"); R2:='("{R^2^}"); R3:='("{R^3^}"); R4:='("R^4^"); R5:='("{R^5^}");
 %-------------------------------------------------------------------------------------------------
 CHO:='("CHO"); OH:='("OH"); COOH:='("COOH"); CH2:='("C{H_2_}"); CH3:='("C{H_3_}"); CN:='("CN");
-NH2:='("N{H_2_}"); NO2:='("N{O_2_}"); SH:='("SH"); SO3:='("S{O_3_}"); NH:='(N,(_postE,H));
+NH2:='("N{H_2_}"); NO2:='("N{O_2_}"); SH:='("SH"); SO3:='("S{O_3_}"); NH:='(N,(_substE,H));
 NMe:=N!:='(N,/Me); iPr:=Me!:='(/Me,60); tBu:='(/Me,/Me^60,60);
 SO:='(S,//O); SOO :='(S,//O^-35,//O^35);
 OMe:=O!:='(O,!); OEt:=O!2:='(O,!x2); OPr:=O!3:='(O,!x3); OiPr:=OMe!:='(O,!,iPr); 
@@ -1574,25 +1573,25 @@
 enddef;
 %==================================================================================================
 tbl_cnt:=0;
-STa("C"   ,12.0107,   12.0000000);      STa("H"   , 1.00794,   1.00782503223);
-STa("{Al}",26.9815,   26.98153853);     STa("{As}",74.9216,   74.92159457);
-STa("B"   ,10.811,    11.00930536);     STa("{Br}",79.904,    78.9183376);
-STa("{Ca}",40.078,    39.962590863);    STa("{Cl}",35.453,    34.968852);
-STa("{Co}",58.933194, 58.93319429);     STa("{Cr}",51.9961,   51.94050623);
-STa("{Cu}",63.546,    62.92959772);     STa("D"   ,2.012,      2.01410177812);
-STa("F"   ,18.9984,   18.99840316273);  STa("{Fe}",55.845,    55.93493633);
-STa("{Hg}",200.59,   201.97064340);     STa("I"   ,126.90447,126.9044719);
-STa("K"   ,39.0983,   38.9637064864);   STa("{Li}",6.941,      7.0160034366);
-STa("{Mg}",24.305,    23.985041697);    STa("{Mn}",54.938044, 54.93804391);
-STa("N"   ,14.0067,   14.00307400443);  STa("{N^+^}",14.0067, 14.00307400443);
+STa("C"   ,12.0107,   12.0000000);        STa("H"   , 1.00794,   1.00782503223);
+STa("{Al}",26.9815,   26.98153853);       STa("{As}",74.9216,   74.92159457);
+STa("B"   ,10.811,    11.00930536);       STa("{Br}",79.904,    78.9183376);
+STa("{Ca}",40.078,    39.962590863);      STa("{Cl}",35.453,    34.968852);
+STa("{Co}",58.933194, 58.93319429);       STa("{Cr}",51.9961,   51.94050623);
+STa("{Cu}",63.546,    62.92959772);       STa("D"   ,2.012,      2.01410177812);
+STa("F"   ,18.9984,   18.99840316273);    STa("{Fe}",55.845,    55.93493633);
+STa("{Hg}",200.59,   201.97064340);       STa("I"   ,126.90447,126.9044719);
+STa("K"   ,39.0983,   38.9637064864);     STa("{Li}",6.941,      7.0160034366);
+STa("{Mg}",24.305,    23.985041697);      STa("{Mn}",54.938044, 54.93804391);
+STa("N"   ,14.0067,   14.00307400443);    STa("{N^+^}",14.0067, 14.00307400443);
 STa("{N^-^}",14.0067, 14.00307400443);
-STa("{Na}",22.98977,  22.9897692820);   STa("{Ni}",58.693,    57.93534241);
-STa("O"   ,15.9994,   15.99491461957);  STa("{O^-^}",15.9994, 15.99491461957);
-STa("{O^p^}",15.9994, 15.99491461957);  STa("P"   ,30.973762, 30.97376199842);
-STa("S"   ,32.065,    31.9720711744);   STa("{S^p^}",32.065,    31.9720711744);
-STa("{S^m^}",32.065,    31.9720711744);
-STa("{Se}",78.971,    79.9165218);      STa("{Si}",28.0855,   27.97692653465);
-STa("{Sn}",118.71,   119.90220163);     STa("{Ti}",47.867,    47.94794198);
+STa("{Na}",22.98977,  22.9897692820);     STa("{Ni}",58.693,    57.93534241);
+STa("O"   ,15.9994,   15.99491461957);    STa("{O^-^}",15.9994, 15.99491461957);
+STa("{O^p^}",15.9994, 15.99491461957);    STa("P"   ,30.973762, 30.97376199842);
+STa("S"   ,32.065,    31.9720711744);     STa("{S^p^}",32.065,    31.9720711744);
+STa("{S^m^}",32.065,  31.9720711744);
+STa("{Se}",78.971,    79.9165218);        STa("{Si}",28.0855,   27.97692653465);
+STa("{Sn}",118.71,   119.90220163);       STa("{Ti}",47.867,    47.94794198);
 STa("{Zn}",65.409,    63.92914201);
 %--------------------------------------------------------------------------------------------------
 STb("{H_2_}")("H","H"); STb("OH")("O","H"); STb("O{Na}")("O","{Na}"); STb("CN")("C","N");
@@ -1658,26 +1657,26 @@
   endfor
   cal_MI:=substring (0,10) of decimal(num_MI);
   cal_MW:=substring (0,8)  of decimal(num_MW);
-  if sw_aux_out=1:  proc_auxfile_out; fi
+  if sw_aux_out>=1: proc_auxfile_out; fi
   if sw_rep_out=1:  proc_report_out;  fi
   if sw_mol_out>=1: proc_mol_out;     fi
   endgroup
 enddef;
 %==================================================================================================
-def auxtag_out=
-  for i=1 upto aux_max: exitif tag[i]=""; if i=1: printf tag[1] else: &aux_delimiter&tag[i] fi
-  endfor
-enddef;
-%==================================================================================================
 def proc_auxfile_out=
   message "["&decimal(char_num)&"]:"&inf_EN;
   out_file_name:=out_file_aux;
-  for i=1 upto aux_max:  exitif tag[i]="";
-    if i=1: printf "" else: &aux_delimiter fi if sw_auxfix=0: &tag[i]&":" fi &
+  if (char_num=1)and(sw_aux_out=2):
+    printf tag[1] for i=2 upto aux_max: exitif tag[i]=""; &";"&tag[i] endfor ;
+  fi
+  for i=1 upto aux_max: exitif tag[i]="";
+    if i=1: printf "" else: &aux_delimiter fi
+    if sw_aux_out=1: &tag[i]&":" fi &
     if     string  scantokens(var[i]): scantokens(var[i])
-    elseif numeric scantokens(var[i]): decimal(scantokens(var[i])) fi
+    elseif numeric scantokens(var[i]): decimal(scantokens(var[i]))
+    fi
   endfor
-  if sw_auxfix=0: for i=1 upto inf_num: &aux_delimiter&info[i] endfor; fi
+  if sw_aux_out=1: for i=1 upto inf_num: &aux_delimiter&info[i] endfor; fi
 enddef;
 %==================================================================================================
 vardef round_auto(expr n)=



More information about the tex-live-commits mailing list