summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-09-01 21:49:29 +0000
committerKarl Berry <karl@freefriends.org>2015-09-01 21:49:29 +0000
commit575f2bbe8910ca23531c9bbadb78f3334be696e2 (patch)
tree9b6eb3c323b8e6b300122458ab19213237cdd554
parent632a696b8806aa0f77259c3e22c5348a86d1ddac (diff)
mcf2graph (1sep15)
git-svn-id: svn://tug.org/texlive/trunk@38266 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/README4
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdfbin260066 -> 259704 bytes
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex2
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf25
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdfbin308530 -> 307967 bytes
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex26
-rw-r--r--Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdfbin120942 -> 120942 bytes
-rw-r--r--Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf35
8 files changed, 47 insertions, 45 deletions
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/README b/Master/texmf-dist/doc/metapost/mcf2graph/README
index fde20ffe328..1c4a5d08512 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/README
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/README
@@ -1,7 +1,7 @@
********************************************************************************
mcf2graph : Convert Molecular Coding Format to graphics with Metafont/Metapost
Author : Akira Yamaji
- version : 3.595 / 2015-08-30
+ version : 3.61 / 2015-09-01
E-mail : akira.yamaji5@gmail.com
Located at : http://mirror.ctan.org/pkg/graphics/mcf2graph
Home page : http://molecoding.cocolog-nifty.com/blog/
@@ -113,4 +113,4 @@
ver. 3.57 / 2015-08-14 improve AUX file format
ver. 3.58 / 2015-08-18 improve calculation of molecular formula and weight
ver. 3.59 / 2015-08-23 update MCF syntax manual
- ver. 3.595 / 2015-08-30 update MCF syntax manual 2
+ ver. 3.61 / 2015-09-01 fix bug in local setting of font_wd# and font_ht#
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
index 97e771ce0ac..c2943bbf6fe 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex
index 718e9f64326..7a00b00389f 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF typeset by LaTeX mcf_examples.tex by A.Yamaji 2015.8.28
+% Example of MCF typeset by LaTeX mcf_examples.tex by A.Yamaji 2015.8.31
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
\usepackage{graphicx}
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
index 043880f96a4..2c0ab56fa5e 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mf
@@ -203,7 +203,8 @@ endfont
%***********************************************************************
beginfont("EN:Chain start multi characters")
% sw_start_vector:=1;
- MCf(^^30,COOH,!0,!,/OH^-30,/COOH^30,!2,COOH)
+ MCd(1,1)(0,.9)(^^30,COOH,!0,!3,COOH)
+ MCd(.8,1)(.3,.1)(^^30,COOH,!4,COOH)
endfont
%***********************************************************************
beginfont("EN:User definition")
@@ -263,16 +264,14 @@ beginfont("EN:Gibberellin A3");
)
endfont
%***********************************************************************
-font_wd#:=30mm#;%
-font_ht#:=20mm#;%
beginfont("EN:Font size")
+ font_wd#:=30mm#;%
+ font_ht#:=20mm#;%
sw_font_frame:=1;
MCf(^^30,
?6,-4=??5,$(3,8)dl,@(2,6,7,9)N,
@(2,6,9)/Me,@(1,5)//O)
endfont
-font_wd#:=60mm#;
-font_ht#:=30mm#;
%***********************************************************************
beginfont("EN:max_bond_width")
sw_mol_frame:=1;
@@ -294,9 +293,9 @@ beginfont("EN:ratio_thickness_bond")
endfont
%***********************************************************************
beginfont("EN:offset_thickness")
- offset_thickness#:=0.0pt#; MCd(1,.3)( 0,0.5)(^^30,Ph) endfont
+ offset_thickness#:=0.0pt#; MCd(1,.3)(.1,0.5)(^^30,Ph) endfont
beginfont() offset_thickness#:=0.2pt#; MCd(1,.3)(.5,0.5)(^^30,Ph) endfont
-beginfont() offset_thickness#:=0.5pt#; MCd(1,.3)( 1,0.5)(^^30,Ph) endfont
+beginfont() offset_thickness#:=0.5pt#; MCd(1,.3)(.9,0.5)(^^30,Ph) endfont
%***********************************************************************
beginfont("EN:ratio_char_bond")
ratio_char_bond:=1.0;
@@ -317,11 +316,11 @@ beginfont("EN:ratio_bondgap_bond")
endfont
%***********************************************************************
beginfont("EN:offset_bond_gap") offset_bond_gap#:=0.0pt#;
-MCd(1,.3)(0, .5)(^^30,Ph) endfont
+MCd(1,.3)(.1, .5)(^^30,Ph) endfont
beginfont() offset_bond_gap#:=0.3pt#; %<<== default
MCd(1,.3)(.5, .5)(^^30,Ph) endfont
beginfont() offset_bond_gap#:=1.0pt#;
-MCd(1,.3)(1, .5)(^^30,Ph) endfont
+MCd(1,.3)(.9, .5)(^^30,Ph) endfont
%***********************************************************************
beginfont("EN:ratio_atom_bond")
ratio_atom_bond:=0.25;
@@ -333,11 +332,11 @@ beginfont("EN:ratio_atom_bond")
endfont
%***********************************************************************
beginfont("EN:offset_atom") offset_atom#:=0.0pt#;
-MCd(1,.3)(0, .5)(^^30,?6,@(2,5)O) endfont
+MCd(1,.3)(.1, .5)(^^30,?6,@(2,5)O) endfont
beginfont() offset_atom#:=0.8pt#; %<<== default
MCd(1,.3)(.5, .5)(^^30,?6,@(2,5)O) endfont
beginfont() offset_atom#:=2.0pt#;
-MCd(1,.3)(1, .5)(^^30,?6,@(2,5)O) endfont
+MCd(1,.3)(.9, .5)(^^30,?6,@(2,5)O) endfont
%***********************************************************************
beginfont("EN:ratio_wedge_bond")
ratio_wedge_bond:=0.1;
@@ -349,11 +348,11 @@ beginfont("EN:ratio_wedge_bond")
endfont
%***********************************************************************
beginfont("EN:offset_wedge") offset_wedge#:=0.0pt#;
-MCd(1,.3)(0, .5)(^^30,?6,5:*/Me) endfont
+MCd(1,.3)(.1, .5)(^^30,?6,5:*/Me) endfont
beginfont() offset_wedge#:=0.4pt#; %<<== default
MCd(1,.3)(.5, .5)(^^30,?6,5:*/Me) endfont
beginfont() offset_wedge#:=1.0pt#;
-MCd(1,.3)(1, .5)(^^30,?6,5:*/Me) endfont
+MCd(1,.3)(.9, .5)(^^30,?6,5:*/Me) endfont
%***********************************************************************
beginfont("EN:ratio_atomgap_atom")
sw_atom_frame:=1;
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
index 45889b0718a..1c7c00b00a9 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
index 62429c969d3..6fff0e21405 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format manual by Akira Yamaji 2015.8.30
+% Molecular Coding Format manual by Akira Yamaji 2015.9.1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
\usepackage[dvipdfmx]{graphicx}
@@ -24,17 +24,17 @@
\def\MCFtitle#1{\framebox{\sf No.\the\tempnum}\hspace{2mm}\bf #1}
%----------------------------------------------------------------------------
\def\MCFstru{%
- \rlap{\makebox(75,0)[t]{\makebox(70,35){\@strufont\char\fontnum}}}%
+ \rlap{\makebox(77,0)[t]{\makebox(68,33){\@strufont\char\fontnum}}}%
\advance\fontnum\@ne\relax}%
\def\MCFstructure{%
- \makebox(75,0)[t]{\frame{\makebox(70,35){\@strufont\char\fontnum}}}%
+ \makebox(77,0)[t]{\frame{\makebox(68,33){\@strufont\char\fontnum}}}%
\advance\fontnum\@ne\relax\advance\tempnum\@ne\relax}%
%----------------------------------------------------------------------------
\begin{document}
\noindent%
\begin{picture}(180,0)
\put(25,12){{\LARGE Molecular Coding Format manual}\hspace{10mm}
- by Akira Yamaji 2015.8.30}
+ by Akira Yamaji 2015.9.1}
\end{picture}\vspace{-4.2mm}\\
%----------------------------------------------------------------------------
\begin{minipage}[t][38mm]{100mm}
@@ -461,10 +461,12 @@ $(3)red : change color of B3 red
\begin{minipage}[t][38mm]{100mm}
\MCFtitle{Chain start multiple characters}
\begin{verbatim}
-Use !0 instead of !,
-if begin with multi charactor string
+if chain start multi charactor string,
+use !0 instead of !
- ^^30,COOH,!0,!,/OH^-30,/COOH^30,!2,COOH
+ MCd( 1,1)(0 ,0.9)(^^30,COOH,!0,!3,COOH)
+
+ MCd(.8,1)(0.3,0.1)(^^30,COOH,!4,COOH)
\end{verbatim}
\end{minipage}
\MCFstructure
@@ -578,9 +580,9 @@ Insert user defined substructure
\begin{minipage}[t][38mm]{100mm}
\MCFtitle{Font size}
\begin{verbatim}
- font_wd#:=30mm#;
- font_ht#:=20mm#;
beginfont("EN:Caffeine")
+ font_wd#:=30mm#; %<==font width
+ font_ht#:=20mm#; %<==font height
sw_font_frame:=1;
MCf(^^30,?6,-4=??5,$(3,8)dl,@(2,6,7,9)N,
@(2,6,9)/Me,@(1,5)//O)
@@ -957,7 +959,7 @@ beginfont("NO:3")
\begin{verbatim}
beginfont() sw_info_weight:=sw_info_formula:=1;
MCf(...) endfont
-%% Output to mcf_man_soc_info.aux %%
+%% Output to mcf_man_soc-info.aux %%
\INFO{{F:mcf_man_soc}{C:82}{MWc:194.19174}
{FMc:C8H10N4O2}}%
MWc:calculated molecular weight
@@ -972,9 +974,9 @@ FMc:calculated molecular formula
\begin{verbatim}
beginfont("EN:Caffeine","CAS:58-08-2")
MCf(...) endfont
-%% Output to mcf_man_soc_info.aux %%
+%% Output to mcf_man_soc-info.aux %%
\INFO{{F:mcf_man_soc}{C:83}{EN:Caffeine}
- {CAS:111-111-111}}%
+ {CAS:58-08-2}}%
*F:filename *C:char number EN:molecular name
CAS:CAS number *:default output
\end{verbatim}
diff --git a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
index d7ab27f6662..16298f169c3 100644
--- a/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
+++ b/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.pdf
Binary files differ
diff --git a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
index ae32d1dd010..c7beb8ad15a 100644
--- a/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
+++ b/Master/texmf-dist/metapost/mcf2graph/mcf2graph.mf
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 3.595 Copyright (c) 2013-2015 Akira Yamaji
+% mcf2graph ver 3.61 Copyright (c) 2013-2015 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,
@@ -30,7 +30,7 @@
% Set output checklist : mpost -s ahlength=2 FILENAME
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
tracingstats:=1;
-message " This is mcf2graph ver 3.5 2015.8 ";
+message " This is mcf2graph ver 3.6 2015.9 ";
newinternal com,par,cntA,cntB,adrS,adrA,adrB,dx,nX,i,u,j,k,v,xp,yp,nA,nB;
%-------------------------------------------------------------------------------------------------
pair posB[],posA[],pairT,Ls,Le,pairA;
@@ -45,7 +45,7 @@ picture atom_font[],chem_structure,temp_picture;
sw_numberA:=sw_numberB:=sw_mol_frame:=sw_logout:=sw_solid:=sw_expand:=sw_start_vector:=0;
sw_font_frame:=sw_atom_frame:=sw_checklist:=sw_MOLfile:=0;
sw_info_file:=sw_info_char:=1; sw_info_lenx:=sw_info_leny:=sw_info_weight:=sw_info_formula:=0;
-char_num:=str_cnt:=size_changed:=proc_end:=0;
+char_num:=str_cnt:=proc_end:=0;
if known green: f_MP:=1;
mp_log_name:=jobname&"-info.aux";
if ahlength=1: proc_end:=1; fi % first molecular only
@@ -74,7 +74,7 @@ margin_left_right:=margin_top_bottom:=0.4mm; ratio_chain_ring:= 0.66; ratio_a
ratio_thickness_bond:=0.015; offset_atom#:=0.8pt#; max_bond_width:=0.25;
ratio_char_bond:=1.5; ratio_bondgap_bond:=0.15; ratio_zebragap_bond:=0.12;
ratio_zebra_black:=0.4; ratio_wedge_bond:=0.12; ratio_atomgap_atom:=.050;
-offset_thickness#:=0.2pt#; offset_bond_gap#:=0.3pt#; offset_zebra_gap#:=0.1pt#;
+offset_thickness#:=0.2pt#; offset_bond_gap#:=0.3pt#; offset_zebra_gap#:=0.1pt#;
offset_wedge#:=0.4pt#;
par_s=ASCII("{"); par_e=ASCII("}"); score_u=ASCII("_"); hat=ASCII("^");
max_info_num:=12; for i:=1 upto max_info_num: info[i]:=":"; endfor
@@ -86,8 +86,8 @@ def_com(-4000)(_term,_jp_atom,_jp_atom_abs,_jp_bond,_cyc,_cyc_sB,_cyc_eB,_set_li
def_com(1)(si,dl,dr,dm,tm,wf,wb,bd,zf,zb,ov,dt,no,ar,vf,vb,wv,nl);
%-------------------------------------------------------------------------------------------------
def parameter_list=
- sw_checklist,sw_numberA,sw_numberB,sw_mol_frame,sw_logout,sw_solid,sw_expand,
- sw_MOLfile,sw_start_vector,sw_atom_frame,sw_font_frame,
+ sw_checklist,sw_numberA,sw_numberB,sw_mol_frame,sw_logout,sw_solid,sw_expand,sw_MOLfile,
+ sw_start_vector,sw_atom_frame,sw_font_frame,
margin_left_right,margin_top_bottom,ratio_atom_bond,ratio_thickness_bond,ratio_char_bond,
ratio_chain_ring,offset_atom,offset_atom#,max_bond_width,ratio_bondgap_bond,ratio_zebra_black,
ratio_zebragap_bond,ratio_wedge_bond,ratio_atomgap_atom,offset_wedge,offset_wedge#,
@@ -95,22 +95,22 @@ def parameter_list=
offset_thickness,offset_thickness#
enddef;
%-------------------------------------------------------------------------------------------------
-nA:=0; for list=parameter_list: st_p[incr nA]:=list; endfor
-def store_par(text t)= nA:=0; for list=t: if st_p[incr nA]<>list: st_p[nA]:=list; fi endfor enddef;
+nA:=0; for list=parameter_list: stock_p[incr nA]:=list; endfor
+def store_par(text t)=
+ nA:=0; for list=t: if stock_p[incr nA]<>list: stock_p[nA]:=list; fi endfor enddef;
def restore_par(text t)= nA:=0;
- forsuffixes list=t: if list<>st_p[incr nA]: list:=st_p[nA]; fi endfor
+ forsuffixes list=t: if list<>stock_p[incr nA]: list:=stock_p[nA]; fi endfor
enddef;
%-------------------------------------------------------------------------------------------------
def beginfont(text s)=
- mol_name:=mol_formula:=""; len_x:=len_y:=cntA:=info_num:=mol_weight:=0;
- store_par(parameter_list);
- ratio_bond_width:=1mm#/font_wd#;
+ mol_name:=mol_formula:=""; len_x:=len_y:=cntA:=info_num:=mol_weight:=f_beginchar:=0;
+ store_par(parameter_list); stock_wd#:=font_wd#; stock_ht#:=font_ht#;
+ ratio_bond_width:=1/30;
for list=s: info_num:=info_num+1; info[info_num]:=list;
if substring (0,2) of list="EN": mol_name:=substring (3,length(list)) of list; fi
if substring (0,2) of list="FM": mol_formula:=substring (3,length(list)) of list; fi
if substring (0,2) of list="MW": mol_weight:=scantokens(substring (3,length(list)) of list); fi
endfor
- beginchar(char_num,font_wd#,font_ht#,0); clearit;
enddef;
%-------------------------------------------------------------------------------------------------
def endfont=
@@ -119,10 +119,10 @@ def endfont=
if sw_logout=1: logfile_out; fi
if sw_checklist=1: checklist_out; fi
if sw_MOLfile=1: MOL_out; fi
- char_num:=char_num+1; currentpicture:=chem_structure; chem_structure:=nullpicture;
- restore_par(parameter_list);
- if size_changed=1: font_wd#:=stock_wd#; font_ht#:=stock_ht#; size_changed:=0; fi
- endchar;
+ if f_beginchar=1:
+ char_num:=char_num+1; currentpicture:=chem_structure; chem_structure:=nullpicture;
+ endchar; fi
+ restore_par(parameter_list); font_wd#:=stock_wd#; font_ht#:=stock_ht#;
if proc_end=1: scantokens("bye"); fi
enddef;
%-------------------------------------------------------------------------------------------------
@@ -289,6 +289,7 @@ def AUX(expr a,b)(text s)=s addto chem_structure also currentpicture shifted(a,b
def MCf(text s)= MCd(1,1)(.5,.5)(s); enddef;
%-------------------------------------------------------------------------------------------------
def MCd(expr RW,RH)(expr FW,FH)(text s)=
+ if f_beginchar=0: beginchar(char_num,font_wd#,font_ht#,0); clearit; f_beginchar:=1; fi
mc_num:=user_def_number; ab_num:=ab_def_number; chainRT:=-ratio_chain_ring;
adrA:=adrB:=cntA:=cntB:=adrS:=cntPS:=angA[0]:=angB[0]:=br_ang[0]:=sB[0]:=cntC:=cntP:=0;
stkA[0]:=stkB[0]:=stkL[0]:=stkM[0]:=strAT:=f_lineT:=f_lenT:=f_envT:=f_rotT:=0;