summaryrefslogtreecommitdiff
path: root/graphics/mcf2graph
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/mcf2graph')
-rw-r--r--graphics/mcf2graph/CHANGELOG6
-rw-r--r--graphics/mcf2graph/README2
-rw-r--r--graphics/mcf2graph/mcf2graph.mf61
-rw-r--r--graphics/mcf2graph/mcf_data_base.mcf11
-rw-r--r--graphics/mcf2graph/mcf_exa_soc.mf8
-rw-r--r--graphics/mcf2graph/mcf_example.pdfbin314077 -> 312868 bytes
-rw-r--r--graphics/mcf2graph/mcf_example.tex2
-rw-r--r--graphics/mcf2graph/mcf_man_soc.mf6
-rw-r--r--graphics/mcf2graph/mcf_manual.pdfbin344886 -> 382758 bytes
-rw-r--r--graphics/mcf2graph/mcf_manual.tex8
-rw-r--r--graphics/mcf2graph/mcf_mplib_exa.pdfbin184158 -> 184025 bytes
-rw-r--r--graphics/mcf2graph/mcf_mplib_exa.tex4
12 files changed, 57 insertions, 51 deletions
diff --git a/graphics/mcf2graph/CHANGELOG b/graphics/mcf2graph/CHANGELOG
index 4ed3c84848..79b7e2d68c 100644
--- a/graphics/mcf2graph/CHANGELOG
+++ b/graphics/mcf2graph/CHANGELOG
@@ -1,6 +1,10 @@
*******************************************************************************
- Changelog of mcf2graph software package by Akira Yamaji 2021-09-20
+ Changelog of mcf2graph software package by Akira Yamaji 2021-10-10
*******************************************************************************
+[ver. 4.73 / 2021-10-10]
+ -update mcf_data_base.mcf
+ -update MCF manual,example
+
[ver. 4.72 / 2021-09-20]
-change syntax of beginfont()
keep file open 'f+' => 'v+'
diff --git a/graphics/mcf2graph/README b/graphics/mcf2graph/README
index aa2aee88f5..bf39e90947 100644
--- a/graphics/mcf2graph/README
+++ b/graphics/mcf2graph/README
@@ -1,7 +1,7 @@
********************************************************************************
mcf2graph : Convert Molecular Coding Format to graphics with METAFONT/METAPOST
Author : Akira Yamaji
- version : 4.72 2021-09-20
+ version : 4.73 2021-10-10
E-mail : mcf2graph@gmail.com
Located at : http://www.ctan.org/pkg/mcf2graph
********************************************************************************
diff --git a/graphics/mcf2graph/mcf2graph.mf b/graphics/mcf2graph/mcf2graph.mf
index 2dfefbba64..c6cedf1637 100644
--- a/graphics/mcf2graph/mcf2graph.mf
+++ b/graphics/mcf2graph/mcf2graph.mf
@@ -38,7 +38,7 @@
% Set to use plain.mp (label,arrow,atom) : mpost -s labeloffset=2 FILENAME
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
tracingstats:=1;
-message "* This is mcf2graph ver 4.72 2021.09.20";
+message "* This is mcf2graph ver 4.73 2021.10.10";
%-------------------------------------------------------------------------------------------------
newinternal cntA,cntB,cntM,minX,minY,maxX,maxY,sftX,sftY,com,par,envT,envB,lenT,lineT,angT,rotT,
crR,nA,nB,nC,nD,nE,nF,nS,nL,nR,nU,nP,xpos,ypos,markA,markB,saveA,saveB,bondL;
@@ -64,11 +64,11 @@ Atom:=8; Bond:=16; Brock:=32; Inverse:=64; Group:=32; Mol:=64;
Outside:=1; Inside:=2; Bothside:=Outside+Inside;
%-------------------------------------------------------------------------------------------------
a_prn_s:=ASCII("("); a_prn_e:=ASCII(")"); a_brc_s:=ASCII("{"); a_brc_e:=ASCII("}");
-a_brk_s:=ASCII("["); a_brk_e:=ASCII("]"); a_cmm:=ASCII(","); a_equ:=ASCII("=");
-a_ast:=ASCII("*"); a_sls:=ASCII("/"); a_gtn:=ASCII("<"); a_ltn:=ASCII(">"); a_and:=ASCII("&");
-a_dol:=ASCII("$"); a_hsh:=ASCII("#"); a_hat:=ASCII("^"); a_tld:=ASCII("~"); a_bqt:=ASCII("`");
+a_brk_s:=ASCII("["); a_brk_e:=ASCII("]"); a_cmm:=ASCII(","); a_equ:=ASCII("=");
+a_ast:=ASCII("*"); a_sls:=ASCII("/"); a_gtn:=ASCII("<"); a_ltn:=ASCII(">"); a_and:=ASCII("&");
+a_dol:=ASCII("$"); a_hsh:=ASCII("#"); a_hat:=ASCII("^"); a_tld:=ASCII("~"); a_bqt:=ASCII("`");
a_cln:=ASCII(":"); a_amk:=ASCII("@"); a_zero:=ASCII("0"); a_nine:=ASCII("9"); a_qut:=ASCII("'");
-a_bar:=ASCII("|");
+a_bar:=ASCII("|"); a_plus:=ASCII("+"); a_minus:=ASCII("-");
%--------------------------------------------------------------------------------------------------
let DIV= /; let MUL= *; let LT= <; let GT= >; let AND= &; let :: = : ; let == = =; let ef=elseif;
def ]]]=] ] ] enddef;
@@ -258,7 +258,7 @@ enddef;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def beginfont(text s)=
begingroup
- save ',f_beginchar,f_ext,blen,ext,add,ang_br,fw_n,bw_n,at_colon,temp_tag,
+ save ',f_beginchar,f_ext,blen,ext,add,ang_br,fw_n,bw_n,at_colon,temp_tag,info_cnt,
mc,info,file_name_input,bond_cnt,warning_cnt,hideH_cnt,bondC,filter_s;
string info[],mc[],mc,file_name_input,temp_tag,filter_s;
%------------------------------------------------------------------------------------------------
@@ -275,7 +275,7 @@ def beginfont(text s)=
%------------------------------------------------------------------------------------------------
char_num:=char_num+1;
store_par(parameter_list);
- f_ext:=cntM:=mc_row:=inf_num:=f_EOF:=0;
+ f_ext:=cntM:=mc_row:=info_cnt:=f_EOF:=0;
%------------------------------------------------------------------------------------------------
for list=s:
at_colon:=scan_char(":",list,0,1);
@@ -287,6 +287,7 @@ def beginfont(text s)=
mc[mc_row]:=substring (fw_n-1,bw_n) of list;
mc:=mc&mc[mc_row];
ef at_colon>=1:
+ info_cnt:=info_cnt+1; info[info_cnt]:=list;
tag_s:=substring (0,at_colon-1) of list;
var_s:=substring (at_colon,length(list)) of list;
if tag_s="f":
@@ -386,7 +387,7 @@ enddef;
%-------------------------------------------------------------------------------------------------
def pickup_data_unit(expr t,v,f)=
begingroup
- save unit_cnt,f_end,semicol_cnt,f_match,var_n,info_s,tag_a,var_a;
+ save unit_cnt,f_end,semicol_cnt,f_match,var_n,tag_a,var_a,info_s;
string tag_a[],var_a[],info_s;
f_end:=unit_cnt:=semicol_cnt:=f_match:=inf_num:=0;
if t="n": var_n:=scantokens(v); fi
@@ -456,7 +457,7 @@ vardef scan_char(expr c,s,d,n)=
fi
n_s
enddef;
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def set_def_MC=
save /,//,/*,*/,**,*/*,~,^,',`,<,>,:,=,\,\\,*\,\*,*\*,@,@$,$,&,&$,#,##,{,},|,||,_,inside_def_MC;
inside_def_MC:=1;
@@ -577,7 +578,7 @@ def fuse_ring_size(expr a,b,c) =
elseif b==8:: CP(_mk_bond,45-(c-8)) for i==1 upto 5:: CP(_mk_bond,45+((c-8) DIV 3)) endfor fi
CP(_com,_len_e) if a<=0:: CP(_cyc_eB,a-b+2) else:: CP(_cyc_eB,a) fi
enddef;
-%==================================================================================================
+%=================================================================================================
vardef change_bond(expr a,b) =
save nCP;
if known b::
@@ -623,8 +624,8 @@ vardef change_atom(expr a,b)=
CP(_tmp_line,dm) CP(_tmp_rot,-35) CPx(a)(_group_si,O) CP(_com,_group_e)
ef b==SO:: CPe(a)(_chg_atom,S) CP(_com,_group_s) CP(_tmp_line,dm)
CPx(a)(_group_si,O) CP(_com,_group_e)
- ef b==n_:: CP(_com,_group_s) CP(_set_add,ASCII("-")) CP(_chg_add,a) CP(_com,_group_e)
- ef b==p_:: CP(_com,_group_s) CP(_set_add,ASCII("+")) CP(_chg_add,a) CP(_com,_group_e)
+ ef b==n_:: CP(_com,_group_s) CP(_set_add,a_minus) CP(_chg_add,a) CP(_com,_group_e)
+ ef b==p_:: CP(_com,_group_s) CP(_set_add,a_plus) CP(_chg_add,a) CP(_com,_group_e)
fi
ef pair b:: CP(_com,_group_s) CPx(a)(xpart(b),ypart(b)) CP(_com,_group_e)
ef color b:: color_list[incr cntC]:=b; CPe(a)(_set_colorA,cntC)
@@ -645,7 +646,7 @@ def com_par_ex(expr f)(expr c)(expr a,b)=
else:: com_par(_set_adr,c) com_par(a,b)
fi
enddef;
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def puts(expr POS)(expr STR)=
begingroup
save temp_c,temp_p;
@@ -669,7 +670,7 @@ def puts(expr POS)(expr STR)=
fi
endgroup
enddef;
-%==================================================================================================
+%=================================================================================================
def ext_setup=
pickup pencircle scaled ext_defaultline;
dotlabeldiam:=3bp;
@@ -689,7 +690,7 @@ def ext_setup=
def drawdblarrow = drawdblarrow_emu enddef;
fi
enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
def add_to_molecule(text TXT)=
begingroup
save w,h,n,l,p,am,aw,A,B,plus,minus,lonepair,__,**,=>,<<,/*;
@@ -726,7 +727,7 @@ def add_to_molecule(text TXT)=
TXT addto mol_stru[cntM] also currentpicture; clearit;
endgroup;
enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
def ext_to_font(text TXT)=
begingroup
save w,h,An,Bn,wd,ht,n,p,am,aw,__,**,<<,=>,/*;
@@ -751,14 +752,14 @@ def ext_to_font(text TXT)=
TXT addto mol_stru[0] also currentpicture; clearit; f_ext:=1;
endgroup;
enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
vardef image_emu(text TXT) =
save_picture:=currentpicture; currentpicture:=nullpicture;
TXT;
temp_picture:=currentpicture; currentpicture:=save_picture;
temp_picture
enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
vardef scan_picture(expr PIC,SD)=
save iw,erase_h,erase_v;
path erase_h,erase_v;
@@ -789,12 +790,12 @@ vardef scan_picture(expr PIC,SD)=
currentpicture:=temp_picture;
nA
enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
vardef llcorner_emu(expr b)= (scan_picture(b,3),scan_picture(b,1)) enddef;
vardef lrcorner_emu(expr b)= (scan_picture(b,4),scan_picture(b,1)) enddef;
vardef urcorner_emu(expr b)= (scan_picture(b,4),scan_picture(b,2)) enddef;
vardef ulcorner_emu(expr b)= (scan_picture(b,3),scan_picture(b,2)) enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
vardef circled_plus_add=
nA:=circlediam; nB:=circlepen;
image(draw fullcircle scaled nA wpcs nB;
@@ -809,7 +810,7 @@ enddef;
vardef lone_pair_add expr ANG=
image(draw (0,0) wpcs lonepairdiam; draw ((0,lonepairspace) rotated ANG) wpcs lonepairdiam;)
enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
vardef label_emu@#(expr OBJ,POS) = %% modified 'thelabel@#(expr s,z)' of plain.mp
save oft,fx,fy,wd_s,wd_c,pA,pB,pC,pD,sC;
pair oft,oft.lft,oft.rt,oft.top,oft.bot,oft.ulft,oft.llft,oft.urt,oft.lrt,pA,pB,pC,pD;
@@ -849,7 +850,7 @@ vardef label_emu@#(expr OBJ,POS) = %% modified 'thelabel@#(expr s,z)' of plain.m
enddef;
%-------------------------------------------------------------------------------------------------
vardef dotlabel_emu@#(expr OBJ,POS)= label_emu@#(OBJ,POS); draw POS wpcs dotlabeldiam; enddef;
-%==================================================================================================
+%=================================================================================================
def drawarrow_emu expr PATH = arrow_path:=PATH; draw_arrow enddef;
%-------------------------------------------------------------------------------------------------
def draw_arrow text t = %% modified 'drawarrow' of plain.mp
@@ -866,7 +867,7 @@ def draw_dblarrow text t =
shifted point infinity of arrow_path t;
draw arrow_path t
enddef;
-%==================================================================================================
+%=================================================================================================
arrow_head:=(0,0)--(ahlength,-(sind 0.5ahangle)*ahlength)--
(ahlength, (sind 0.5ahangle)*ahlength)--cycle;
%-------------------------------------------------------------------------------------------------
@@ -1167,12 +1168,12 @@ def add_atom(expr n)=
else: f_bra:=0; fi
if n=0: eB[cntB]:=cntA+1; f_term:=0; else: eB[cntB]:=n; f_term:=1; fi
enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
def check_adrA(expr n)=
if (n>iif(f_term=0,cntA+1,cntA))or(n<=0): errmessage("cntA=[ "&decimal(n)&" ]"); fi
enddef;
def check_adrB(expr n)= if (n>cntB)or(n<=0): errmessage("cntB=[ "&decimal(n)&" ]"); fi enddef;
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def proc_skeleton(expr a)=
markA:=markB:=cntA:=cntB:=f_bra:=rotT:=f_term:=0;
envT:=envB:=f_lineT:=f_rotT:=f_lenT:=f_envT:=0; lineT:=si; angT:=mangle;
@@ -1841,7 +1842,7 @@ enddef;
def proc_mf_out(expr f)=
message "["&decimal(char_num)&"]:"&inf_EN;
file_name_output:=jobname&"-mf.aux";
- printf "beginfont()";
+ printf "beginfont("&ditto&"NO:"&decimal(char_num)&ditto&","&ditto&"EN:"&inf_EN&ditto&")";
printf "MC(";
for i=1 upto mc_row: printf mc[i]; endfor
printf ")";
@@ -1935,7 +1936,7 @@ for i==2 upto 20:
![i]:='((_com,_len_ss),(_get_len,_tmp_len),! for j==2 upto i::,! endfor ,(_com,_len_ee));
endfor
Me:='(); Et:='(!); iPr:=?!:='(/_,!); tBu:=??!:='(/_,/_^60,60); !?!:='(!,?!); !??!:='(!,??!);
-n_:='((_set_add,ASCII("-"))); p_:='((_set_add,ASCII("+")));
+n_:='((_set_add,a_minus)); p_:='((_set_add,a_plus));
zero_wf:='(0~wf); zero_zf:='(0~zf); zero_dm:='(0~dm); zero_wv:='(0~wv);
%-------------------------------------------------------------------------------------------------
NH:='(N,/H~nl); N!:='(N,/_); N!2:='(N,/!); SO:='(S,//O); SOO:='(S,//O^-35,//O^35);
@@ -2106,10 +2107,10 @@ def query(text s)=
numeric unit_row_cnt[],order[],order_tbl[],filter_sign[],filter_p[];
unit_row:=f_mcf:=mc_row:=line_cnt:=info_cnt:=par_cnt:=key_cnt:=filter_cnt:=0;
unit_cnt:=1;
- %------------------------------------------------------------------------------------------------
+ %-----------------------------------------------------------------------------------------------
file_name_input:=default_data_file;
file_name_output:=default_temp_file;
- %------------------------------------------------------------------------------------------------
+ %-----------------------------------------------------------------------------------------------
for list=s:
at_colon:=scan_char(":",list,0,1);
at_equal:=scan_char("=",list,0,1);
@@ -2267,7 +2268,7 @@ vardef is_num(expr s)=
endfor
numeric_n
enddef;
-%--------------------------------------------------------------------------------------------------
+%-------------------------------------------------------------------------------------------------
vardef count_semicol(expr s)=
save nS;
nS:=at_semicol[0]:=0;
diff --git a/graphics/mcf2graph/mcf_data_base.mcf b/graphics/mcf2graph/mcf_data_base.mcf
index 8d41567570..7e088381ab 100644
--- a/graphics/mcf2graph/mcf_data_base.mcf
+++ b/graphics/mcf2graph/mcf_data_base.mcf
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% molecular data base file mcf_data_base.mcf by Akira Yamaji 2021.09.20
+% molecular data base file mcf_data_base.mcf by Akira Yamaji 2021.10.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% tag1:var1;tag2:var2;tag3:var3 .....
% first character of line "%" comment out
@@ -1977,13 +1977,14 @@ Cat:antibacterial;EN:Sulfamerazine;MW:264.303;EXA:1
+
<30,Ph,1:/NH2,@4,\,SOO,!,NH,!,|,Ph,{2,6}:N,3:/_
+------------------------------------------------------------------------------
-Cat:antibacterial;EN:Trimetoprim;MW:290.323;EXA:1
+Cat:antibacterial;EN:Trimethoprim;MW:290.323;EXA:1
+
-<30,Ph,{1,5}:N,6:/NH2,@3,\,!,|,Ph,{3,4,5}:/O!
+<30,Ph,{1,5}:N,{2,6}:/NH2,@3,\,!,|,Ph,{3,4,5}:/O!
+------------------------------------------------------------------------------
Cat:antibacterial;EN:Ofloxacin;MW:361.373;EXA:1
+
-<30,Ph,3=?6,(2,7)=?6[4],7:N,11:O,9:/COOH,10://O,13:/_,@1,\,|,?6,{1,4}:N,4:/!
+<30,Ph,3=?6,(2,7)=?6[4],9=dl,7:N,11:O,
+ 6:/F,9:/COOH,10://O,13:/_,@1,\,|,?6,{1,4}:N,4:/_
+------------------------------------------------------------------------------
Cat:antibacterial;EN:Ciprofloxacin;MW:331.347;EXA:1
+
@@ -2042,7 +2043,7 @@ Cat:antibacterial;EN:Sulfamethoxazole;MW:253.276;EXA:1
+------------------------------------------------------------------------------
Cat:antibacterial;EN:Pirimethamin;MW:248.714;EXA:1
+
-<30,?6,{1,4}=dl,{1,5}:N,4:/!,6://NH,@3,\,Ph,-3:/Cl
+<30,Ph,6:/Cl,@3,\,Ph,{-2,-4}:N,-1:/!,{-3,-5}:/NH2
+------------------------------------------------------------------------------
Cat:antibacterial;EN:Oxibendazole;MW:249.27;EXA:-
+
diff --git a/graphics/mcf2graph/mcf_exa_soc.mf b/graphics/mcf2graph/mcf_exa_soc.mf
index b5513ffbf0..65fc98818c 100644
--- a/graphics/mcf2graph/mcf_exa_soc.mf
+++ b/graphics/mcf2graph/mcf_exa_soc.mf
@@ -1,8 +1,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2021.09.20
+% Molecular Coding Format for mcf_example.tex by Akira Yamaji 2021.10.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf; %%% it must be version 4.72
-message "* mcf_exa_soc 2021.09.20";
+input mcf2graph.mf; %%% it must be version 4.73
+message "* mcf_exa_soc 2021.10.10";
message "";
%------------------------------------------------------------------------------
fsize:=(35mm,24mm);
@@ -23,7 +23,7 @@ else: % mpost -s ahlength=7 mcf_exa_soc.mf
%------------------------------------------------------------------------------
%%%%query("Cat=biological","MW<200","s:MW");
%%%%query("Cat=biological","MW<150.0","s:EN");
-%%%%query("MW>=150","MW<=200","s:MW");
+%%%%query("MW>=150","MW<=250","s:MW");
%******************************************************************************
%%%% beginfont("t:EN","v:Caffeine") % select EN=Caffeine
forever:
diff --git a/graphics/mcf2graph/mcf_example.pdf b/graphics/mcf2graph/mcf_example.pdf
index 6d2b88c7e0..1cadd2296b 100644
--- a/graphics/mcf2graph/mcf_example.pdf
+++ b/graphics/mcf2graph/mcf_example.pdf
Binary files differ
diff --git a/graphics/mcf2graph/mcf_example.tex b/graphics/mcf2graph/mcf_example.tex
index a61439d39b..bf10feb5b3 100644
--- a/graphics/mcf2graph/mcf_example.tex
+++ b/graphics/mcf2graph/mcf_example.tex
@@ -10,7 +10,7 @@
%--------------------------------
%%%%\pdfpkresolution=1200
%--------------------------------
-%%%%%\edef\f@ext{pk}%
+%%%%\edef\f@ext{pk}%
\edef\f@ext{mps}%
%--------------------------------
\pagestyle{empty}
diff --git a/graphics/mcf2graph/mcf_man_soc.mf b/graphics/mcf2graph/mcf_man_soc.mf
index 3b5e2ce307..e585c60853 100644
--- a/graphics/mcf2graph/mcf_man_soc.mf
+++ b/graphics/mcf2graph/mcf_man_soc.mf
@@ -1,9 +1,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2021.09.20
+% Molecular Coding Format file for mcf_manual.tex by Akira.Yamaji 2021.10.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph.mf; %% it must be version 4.72
+input mcf2graph.mf; %% it must be version 4.73
% ** use data base file 'mcf_data_base.mcf'
-message "mcf_man_soc 2021.09.20"; message "";
+message "mcf_man_soc 2021.10.10"; message "";
%------------------------------------------------------------------------
sw_mframe:=0;
sw_expand:=0;
diff --git a/graphics/mcf2graph/mcf_manual.pdf b/graphics/mcf2graph/mcf_manual.pdf
index 070738c234..d5b5234c71 100644
--- a/graphics/mcf2graph/mcf_manual.pdf
+++ b/graphics/mcf2graph/mcf_manual.pdf
Binary files differ
diff --git a/graphics/mcf2graph/mcf_manual.tex b/graphics/mcf2graph/mcf_manual.tex
index 59745ac19a..c83840b2a3 100644
--- a/graphics/mcf2graph/mcf_manual.tex
+++ b/graphics/mcf2graph/mcf_manual.tex
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format manual by Akira Yamaji 2021.09.20
+% Molecular Coding Format manual by Akira Yamaji 2021.10.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
\usepackage[pdftex]{graphicx}
@@ -667,8 +667,8 @@ MC(<30,?6,{4,6}:/iBuOH)
\subsubsection{Move position}
\index{"@()}%
\begin{verbatim}
-@(x,y) : Move (l*x,l*y) from current position
-@$(x,y): Move (l*x,l*y) from origin(@1)
+@(x,y) : Move l*(x,y) from current position
+@$(x,y): Move l*(x,y) from origin(@1)
** l=bond length of ring
<30,?6,@3,!4,//O,!,O,n_^60,@$(6,1),H,p_^15
@@ -1563,7 +1563,7 @@ forever:
beginfont("f:mcf_data_base","t:EXA","v+:1") > 'v+:1'= select EXA=1
if f_EOF=0: if check(mc)=0: MC(scantokens(mc)) fi fi > keep file open
endfont >
- exitif (f_EOF=1)or(f_close=1); > exit if file end
+ exitif f_EOF=1; > exit if file end
endfor
%------------------------------------------------------------------------------
bye
diff --git a/graphics/mcf2graph/mcf_mplib_exa.pdf b/graphics/mcf2graph/mcf_mplib_exa.pdf
index cb28688db6..2b4318347e 100644
--- a/graphics/mcf2graph/mcf_mplib_exa.pdf
+++ b/graphics/mcf2graph/mcf_mplib_exa.pdf
Binary files differ
diff --git a/graphics/mcf2graph/mcf_mplib_exa.tex b/graphics/mcf2graph/mcf_mplib_exa.tex
index b204383651..b19328888b 100644
--- a/graphics/mcf2graph/mcf_mplib_exa.tex
+++ b/graphics/mcf2graph/mcf_mplib_exa.tex
@@ -1,7 +1,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2021.09.20
+% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2021.10.10
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.72
+% ** mcf2graph.mf must be version 4.73
% ** use mcf_data_base.mcf
\documentclass{article}
%------------------------------------------------------------------------------