summaryrefslogtreecommitdiff
path: root/graphics
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2022-11-07 03:04:25 +0000
committerNorbert Preining <norbert@preining.info>2022-11-07 03:04:25 +0000
commit5fcfa99e5deaf9c601ba9e338f07fbefdd5d4487 (patch)
tree19d4022cbaed433610ef4cc56ce51cea0604eaad /graphics
parent0a7c9b85de9aeaffafa0cf8944fa81ffe9652d09 (diff)
CTAN sync 202211070304
Diffstat (limited to 'graphics')
-rw-r--r--graphics/mcf2graph/CHANGELOG12
-rw-r--r--graphics/mcf2graph/README2
-rw-r--r--graphics/mcf2graph/mcf2graph.mp56
-rw-r--r--graphics/mcf2graph/mcf_exa_code.pdfbin78850 -> 78850 bytes
-rw-r--r--graphics/mcf2graph/mcf_exa_code.tex4
-rw-r--r--graphics/mcf2graph/mcf_exa_soc.mp10
-rw-r--r--graphics/mcf2graph/mcf_example.pdfbin449243 -> 449558 bytes
-rw-r--r--graphics/mcf2graph/mcf_example.tex4
-rw-r--r--graphics/mcf2graph/mcf_library.mcf29
-rw-r--r--graphics/mcf2graph/mcf_man_soc.mp18
-rw-r--r--graphics/mcf2graph/mcf_manual.pdfbin289188 -> 289236 bytes
-rw-r--r--graphics/mcf2graph/mcf_manual.tex40
-rw-r--r--graphics/mcf2graph/mcf_mplib_exa.pdfbin195490 -> 195837 bytes
-rw-r--r--graphics/mcf2graph/mcf_mplib_exa.tex4
14 files changed, 87 insertions, 92 deletions
diff --git a/graphics/mcf2graph/CHANGELOG b/graphics/mcf2graph/CHANGELOG
index a5160a5a14..d8a9090da3 100644
--- a/graphics/mcf2graph/CHANGELOG
+++ b/graphics/mcf2graph/CHANGELOG
@@ -1,6 +1,16 @@
*******************************************************************************
- Changelog of mcf2graph software package by Akira Yamaji 2022-10-10
+ Changelog of mcf2graph software package by Akira Yamaji 2022-11-06
*******************************************************************************
+[ver. 4.89 / 2022-11-06]
+ -change syntax of fused ring
+ (a,b)=?n => {a--b}=?n
+ {(a,b), ..}=?n => {a--b, ..}=?n
+ {(a',b), ..}=?n => {a---b, ..}=?n
+ {(a',b'), ..}=?n => {a----b, ..}=?n
+ -fix bug in MOL(V3000) file output
+ -update MCF manual,example
+ -update mcf_library.mcf
+
[ver. 4.88 / 2022-10-10]
-change format of mcf_library.mcf
-update MCF manual,example
diff --git a/graphics/mcf2graph/README b/graphics/mcf2graph/README
index bbeb4dcb83..76578d6375 100644
--- a/graphics/mcf2graph/README
+++ b/graphics/mcf2graph/README
@@ -1,7 +1,7 @@
********************************************************************************
mcf2graph : Convert Molecular Coding Format to graphics with MetaPost
Author : Akira Yamaji
- version : 4.88 2022-10-10
+ version : 4.89 2022-11-06
E-mail : mcf2graph@gmail.com
Located at : http://www.ctan.org/pkg/mcf2graph
********************************************************************************
diff --git a/graphics/mcf2graph/mcf2graph.mp b/graphics/mcf2graph/mcf2graph.mp
index 729be297d0..1961a2ee89 100644
--- a/graphics/mcf2graph/mcf2graph.mp
+++ b/graphics/mcf2graph/mcf2graph.mp
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 4.88 Copyright (c) 2013-2022 Akira Yamaji
+% mcf2graph ver 4.89 Copyright (c) 2013-2022 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,
@@ -33,7 +33,7 @@
% Set output MOL file (V3000) : mpost -s ahlength=6 FILENAME
% Set output report : mpost -s ahlength=7 FILENAME
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-message "* This is mcf2graph ver 4.88 2022.10.10";
+message "* This is mcf2graph ver 4.89 2022.11.06";
tracingstats:=1; prologues:=3; warningcheck:=0;
%-------------------------------------------------------------------------------------------------
newinternal string EN_;
@@ -338,6 +338,9 @@ vardef read_ud(text t)= parts_num:=parts_num+1;
read_mcf(parts_num)(dum,dum,|,t,(_com,_rest)); parts_num enddef;
vardef abs_adress primary n = if n LT 0:: (n+360)-4095 else:: n-4095 fi enddef;
primarydef a from_until b = (_from,a),(_until,b) enddef;
+tertiarydef a bond__bond b = (a,b) enddef;
+tertiarydef a bond___bond b = (a+0.5,b) enddef;
+tertiarydef a bond____bond b = (a+0.5,b+0.5) enddef;
tertiarydef a op_equ b = if (known a)and(known b):: change_bond(a,b) else:: _nop fi enddef;
tertiarydef a op_col b = if (known a)and(known b):: change_atom(a,b) else:: _nop fi enddef;
tertiarydef a op_hat b = if known b:: (_tmp_rot,b),a else:: _nop,a fi enddef;
@@ -393,8 +396,9 @@ def read_mcf(expr n)(text t)=
enddef;
%-------------------------------------------------------------------------------------------------
vardef read_number(text t)=
- save :,','`;
- let : == from_until; def ' == +0.5 enddef; def '` == +0.5` enddef; parts_int:=parts_int+1;
+ save --,---,----,:,','`;
+ let : == from_until; let -- == bond__bond; let --- == bond___bond; let ---- == bond____bond;
+ def ' == +0.5 enddef; def '` == +0.5` enddef; parts_int:=parts_int+1;
nA:=0;
for list==t::
if known list::
@@ -470,22 +474,15 @@ vardef change_bond(expr a,b) =
if b==?6::
if (frac parts_com[a][i]==0)and(frac parts_par[a][i]==0)::
fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),6,4)
- ef frac parts_com[a][i]==0::
- fuse_ring_bonds((parts_com[a][i],floor parts_par[a][i]),6,3)
ef frac parts_par[a][i]==0::
fuse_ring_bonds((floor parts_com[a][i],parts_par[a][i]),6,3)
else:: fuse_ring_bonds((floor parts_com[a][i],floor parts_par[a][i]),6,2) fi
ef b==?5::
if (frac parts_com[a][i]==0)and(frac parts_par[a][i]==0)::
fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),5,3)
- ef frac parts_com[a][i]==0::
- fuse_ring_bonds((parts_com[a][i],floor parts_par[a][i]),5,2)
ef frac parts_par[a][i]==0::
fuse_ring_bonds((floor parts_com[a][i],floor parts_par[a][i]),5,2) fi
ef b==?4:: fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),4,2)
- ef b==?6[3]:: fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),6,3)
- ef b==?6[2]:: fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),6,2)
- ef b==?5[2]:: fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),5,2)
ef b==Ph1:: fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),6,4)
CA(_set_line,dl,-1) CA(_set_line,dl,-3)
ef b==Ph2:: fuse_ring_bonds((parts_com[a][i],parts_par[a][i]),6,4)
@@ -498,15 +495,8 @@ vardef change_bond(expr a,b) =
ef (b>=?7[11])and(b<=?7[15]):: fuse_ring_size(a,7,b-?7[11]+11)
ef (b>=?8[11])and(b<=?8[15]):: fuse_ring_size(a,8,b-?8[11]+11)
else:: fuse_ring(a,b-?3+3) fi fi
- ef pair a::
- if b==?6:: fuse_ring_bonds(a,6,4)
- ef b==?5:: fuse_ring_bonds(a,5,3)
- ef b==?4:: fuse_ring_bonds(a,4,2)
- ef b==?6[3]:: fuse_ring_bonds(a,6,3)
- ef b==?6[2]:: fuse_ring_bonds(a,6,2)
- ef b==?5[2]:: fuse_ring_bonds(a,5,2)
- ef b==Ph1:: fuse_ring_bonds(a,6,4) CA(_set_line,dl,-1) CA(_set_line,dl,-3)
- ef b==Ph2:: fuse_ring_bonds(a,6,4) CA(_set_line,dl,-2) CA(_set_line,dl,-4) fi fi fi
+ fi
+ fi
elseif color b:: color_list[incr cntC]:=b; CA(_set_colorB,cntC,a) fi
parts_cnt[parts_int]:=nC; parts_int fi
enddef;
@@ -515,7 +505,7 @@ vardef change_atom(expr a,b)=
if known b:: parts_int:=parts_int+1; nC:=0;
if numeric b::
if (b GT parts_emb_start)and(b<=parts_atom_end):: CA(_chg_atom,b,a)
- ef b==NH:: CA(_chg_atom,N,a) if NH<>xNH:: CP(_tmp_line,nl) fi
+ ef b==NH:: CA(_chg_atom,N,a) CP(_tmp_line,nl)
CP(_com,_group_s) CA(_group_si,H,a) CP(_com,_group_e)
ef b==N!:: CA(_chg_atom,N,a) CP(_com,_group_s) CA(_group_si,_,a) CP(_com,_group_e)
ef b==N!2:: CA(_chg_atom,N,a) CP(_com,_group_s) CA(_group_si,!,a) CP(_com,_group_e)
@@ -1322,7 +1312,7 @@ def proc_mol_out(expr n)=
%-V3000---------------------------------------------------------------------------------------
elseif n=2:
printf ""; printf " -MCFtoMOL- "&fsl(20)(info_s[1]); printf "";
- printf " 0 0 0 0 0 999 V3000";
+ printf " 0 0 0 0 0 0 0 0 0 0 0 V3000";
printf "M V30 BEGIN CTAB";
printf "M V30 COUNTS "&decimal(cntA)&" "&decimal(cntB)&" 0 0 0";
printf "M V30 BEGIN ATOM";
@@ -1416,7 +1406,6 @@ tbl_group_end:=tbl_cnt; parts_atom_end:=parts_num;
for i=3 upto 20: ?[i]:='((_com,_len_ss),(_get_len,_ring_len),<((-180 DIV i)-90)
for j==2 upto i:: ,(360 DIV i) endfor,(_cyc_sB,1-i),(_com,_len_ee)); endfor
Ph:=Ph1:='(?6,-2=dl,-4=dl,-6=dl); Ph2:='(?6,-1=dl,-3=dl,-5=dl);
-for i=4,5,6: for j=2 upto i-2: ?[i][j]:='(); endfor endfor
for i=5,6,7,8: for j=11 upto 15: ?[i][j]:='(); endfor endfor
%-------------------------------------------------------------------------------------------------
!:=!1:='((_mk_bond,_arrange_ang)); !!:='(!~db); !!!:='(!~tm);
@@ -1455,9 +1444,10 @@ R6:='("R6"); R7:='("{R^7^}"); R8:='("{R^8^}"); R9:='("{R^9^}"); R10:='("R^10^");
hexose_hp:='(#1.4,-30~wf_r,30~bd_r`1,30~wb_r,120,O,30,&1,##);
Pyranose_hp:='(#1.4,-35~wf_r,35~bd_r`1,30~wb_r,130`1.66,O,&1,##);
%-------------------------------------------------------------------------------------------------
-xCH3:='(/H,/H^60,/H^-60); xNH:='(N,/H); xNH2:='(N,/H^60,/H^-60); xNO2:='(N,//O^60,//O^-60);
-xOH:='(O,/H); xNO:='(N,//O); xSO2H:='(S,//O^60,/OH^-60); xSO3H:='(S,/OH,//O^60,//O^-60);
-xCHO:='(//O^-60,/H^60); xCOOH:='(//O^-60,/xOH^60); xCN:='(/N~tm); xSH:='(S,/H);
+xCH3:='(/H,/H^60,/H^-60); xNH:='(N,/H~nl); xNH2:='(N,/H~nl^60,/H~nl^-60);
+xNO2:='(N,//O^60,//O^-60); xOH:='(O,/H~nl); xNO:='(N,//O);
+xSO2H:='(S,//O^60,/OH^-60); xSO3H:='(S,/OH,//O^60,//O^-60);
+xCHO:='(//O^-60,/H^60); xCOOH:='(//O^-60,/xOH^60); xCN:='(/N~tm); xSH:='(S,/H~nl);
!xOH:='(!,xOH); !xCHO:='(!,xCHO); !xCOOH:='(!,xCOOH); !xCH3:='(!,xCH3); !xCN:='(!,xCN);
!xNH2:='(!,xNH2); !xNO2:='(!,xNO2); !xSH:='(!,xSH);
%=================================================================================================
@@ -1555,10 +1545,10 @@ def proc_err(expr e,n)= err_adr[incr err_cnt]:=n; err_code[err_cnt]:=e;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
def mc_query(text s)=
begingroup
- save f_mcf,f_line,unit_row,unit_cnt,line_s,row_cnt,semic_cnt,info_cnt,order,min_n,max_n,
+ save f_mcf,f_line,unit_row,unit_cnt,line_s,row_cnt,semic_cnt,info_cnt,order,min_n,max_n,firstc,
sign_at,sign_n,filter_n,filter_tag,filter_var,filter_sign,filter_cnt,filter_p,lib_unit_cnt,
at_colon,at_equal,at_less,at_greater,at_n,sort_tbl,key_s,sort_s,sign_s,sV,sS,sT,sort_oder;
- string line_s[][],sort_s,sort_tbl[],key_s,filter_tag[],filter_var[],sign_s[],sV,sS,sT;
+ string line_s[][],sort_s,sort_tbl[],key_s,filter_tag[],filter_var[],sign_s[],sV,sS,sT,firstc;
numeric row_cnt[],order[],order_tbl[],filter_sign[],filter_p[];
unit_row:=f_mcf:=mc_row:=info_cnt:=filter_cnt:=lib_unit_cnt:=0; unit_cnt:=1;
file_input:=default_library; file_output:=default_temp_file;
@@ -1592,10 +1582,10 @@ def mc_query(text s)=
endfor
%-----------------------------------------------------------------------------------------------
forever:
- temps:=readfrom file_input; exitif temps=EOF;
- if subc(1,temps)<>"%":
+ temps:=readfrom file_input; exitif temps=EOF; firstc:=subc(1,temps);
+ if firstc<>"%":
line_s[unit_cnt][incr unit_row]:=temps;
- if subc(1,temps)=";":
+ if firstc=";":
row_cnt[unit_cnt]:=unit_row; f_mcf:=unit_row:=0; filter_n:=1;
for i=1 upto filter_cnt: filter_p[i]:=0; endfor
sort_s:="";
@@ -1616,8 +1606,8 @@ def mc_query(text s)=
for i=1 upto filter_cnt: if filter_p[i]=0: filter_n:=0; fi endfor
info_cnt:=0; lib_unit_cnt:=lib_unit_cnt+1;
if filter_n=1: if key_s<>"": sort_tbl[unit_cnt]:=sort_s; fi unit_cnt:=unit_cnt+1; fi
- ef (subc(1,temps)=":")or(subc(1,temps)="="): f_mcf:=1; mc_row:=1;
- ef subc(1,temps)<>"%":
+ ef (firstc=":")or(firstc="="): f_mcf:=1; mc_row:=1;
+ ef firstc<>"%":
if f_mcf=1: mc_row:=mc_row+1; else: info_cnt:=split_str(temps,";")(arg_s); fi fi
fi
endfor
diff --git a/graphics/mcf2graph/mcf_exa_code.pdf b/graphics/mcf2graph/mcf_exa_code.pdf
index b0efde435d..4e0f118ce4 100644
--- a/graphics/mcf2graph/mcf_exa_code.pdf
+++ b/graphics/mcf2graph/mcf_exa_code.pdf
Binary files differ
diff --git a/graphics/mcf2graph/mcf_exa_code.tex b/graphics/mcf2graph/mcf_exa_code.tex
index 7500dcfdf3..a27bb71714 100644
--- a/graphics/mcf2graph/mcf_exa_code.tex
+++ b/graphics/mcf2graph/mcf_exa_code.tex
@@ -1,7 +1,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Print out mcf data list by A.Yamaji 2022.10.10
+% Print out mcf data list by A.Yamaji 2022.11.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.88
+% ** mcf2graph.mf must be version 4.89
% ** use mcf_library.mcf
% ** typeset by LuaLaTeX(luamplib)
\documentclass{article}
diff --git a/graphics/mcf2graph/mcf_exa_soc.mp b/graphics/mcf2graph/mcf_exa_soc.mp
index 4757efc670..d3d54052db 100644
--- a/graphics/mcf2graph/mcf_exa_soc.mp
+++ b/graphics/mcf2graph/mcf_exa_soc.mp
@@ -1,8 +1,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format by Akira Yamaji 2022.10.10
+% Molecular Coding Format by Akira Yamaji 2022.11.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph; %%% it must be version 4.88
-message "* mcf_exa_soc 2022.10.10";
+input mcf2graph; %%% it must be version 4.89
+message "* mcf_exa_soc 2022.11.06";
message "";
%------------------------------------------------------------------------------
%%%%sw_frame:=Outside;
@@ -21,8 +21,8 @@ tag1:="J"; tag2:="C"; tag3:="fm"; tag4:="mw"; tag5:="EN"; tag6:="MW";
%ext(defaultfont:=mpfont; defaultscale:=.3;
%label.rt(inf_EN&" / "&cal_MW&" / "&decimal(num_MW-scantokens(inf_MW)),(0,0));)
%------------------------------------------------------------------------------
-%%%%mc_query("Cat=biological","MW<200","s:MW");
-%%%%mc_query("Cat=biological","MW<110.0","s:EN");
+%%%%mc_query("Cat=biological","MW<200","a:MW");
+%%%%mc_query("Cat=biological","MW<50.0","a:EN");
%%%%mc_query("Cat=biological","MW>=150","MW<=200","a:EN");
%%%%mc_query("Cat=biological","MW>=100","MW<=250","a:MW");
%******************************************************************************
diff --git a/graphics/mcf2graph/mcf_example.pdf b/graphics/mcf2graph/mcf_example.pdf
index fd1caad561..8fbbc5affe 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 8d5ea965f0..8ae368ba5f 100644
--- a/graphics/mcf2graph/mcf_example.tex
+++ b/graphics/mcf2graph/mcf_example.tex
@@ -1,7 +1,7 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF Typeset with LuaLaTeX(luamplib) by A.Yamaji 2022.10.10
+% Example of MCF Typeset with LuaLaTeX(luamplib) by A.Yamaji 2022.11.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.88
+% ** mcf2graph.mf must be version 4.89
% ** use mcf_library.mcf
% ** typeset by LuaLaTeX(luamplib)
\documentclass{article}
diff --git a/graphics/mcf2graph/mcf_library.mcf b/graphics/mcf2graph/mcf_library.mcf
index 61909067d0..3235ad1292 100644
--- a/graphics/mcf2graph/mcf_library.mcf
+++ b/graphics/mcf2graph/mcf_library.mcf
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% molecular library file mcf_library.mcf by Akira Yamaji 2022.10.10
+% molecular library file mcf_library.mcf by Akira Yamaji 2022.11.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% tag1:var1;tag2:var2;tag3:var3 .....
% first character of line "%" comment out
@@ -620,7 +620,7 @@ Cat:biological;EN:Febrifugine;MW:301.34;EXA:1
%------------------------------------------------------------------------------
Cat:biological;EN:Hypericin;MW:504.44;EXA:1
:
-<30,Ph,{-4,-3,(11,4),(16',17),19,(23',24),(22,29)}=?6,
+<30,Ph,{-4,-3,11--4,16---17,19,23---24,22--29}=?6,
{12,14,16,17,22',24,26,28,33,35}=dl,
{7,25}://O,{13,26}:/_, {2,6,11,21,23,28}:/OH
;
@@ -706,7 +706,7 @@ Cat:biological;EN:Sesamine;MW:354.35;EXA:1
%------------------------------------------------------------------------------
Cat:biological;EN:Morphine;MW:285.343;EXA:1
:
-<30,Ph,{2,-4}=?6,(1,12)=?5[2],-1:O,-1=zb,
+<30,Ph,{2,-4}=?6,{1---12}=?5,-1:O,-1=zb,
@7,60~wf`0.75,70~si_`1.3,45,N!,&9~wb,15=dl,6:/OH,8^180:*/H,12:/*OH
;
%------------------------------------------------------------------------------
@@ -728,7 +728,7 @@ Cat:biological;EN:Colchicine;MW:399.443;EXA:1
%------------------------------------------------------------------------------
Cat:biological;EN:Lycorine;MW:287.315;EXA:1
:
-<30,Ph,{-4,-2}=?6,{6,(9,12)}=?5,13=dl,8:N,{15,17}:O,
+<30,Ph,{-4,-2}=?6,{6,9--12}=?5,13=dl,8:N,{15,17}:O,
{9'^180,10^60}:*/H,{13,14'}:*/OH
;
%------------------------------------------------------------------------------
@@ -881,18 +881,17 @@ Cat:synthetic;EN:Chrysene;MW:228.3;EXA:-
%------------------------------------------------------------------------------
Cat:synthetic;EN:Pyrene;MW:202.25;EXA:-
:
-<30,Ph2,{6,4}=Ph,(16,7)=?6[3],-2=dl
+<30,Ph2,{6,4}=Ph,{16---7}=?6,-2=dl
;
%------------------------------------------------------------------------------
Cat:synthetic;EN:Coronene;MW:300.35;EXA:1
:
-<30,Ph,{1,(11,2),(15,3),(19,4),(23,5),(27',7)}=?6,
- {9,12,14,17,20,22,25,28,30}=dl
+<30,Ph,{1,11--2,15--3,19--4,23--5,27---7}=?6,{9,12,14,17,20,22,25,28,30}=dl
;
%------------------------------------------------------------------------------
Cat:synthetic;EN:Kekulene;MW:600.7;EXA:1
:
-<30,?6,{3,-3,-2,-3,-2,-3,-2,-3,-2,-3,(-2',5'),(5',-4')}=?6,
+<30,?6,{3,-3,-2,-3,-2,-3,-2,-3,-2,-3,-2----5,5---- -4}=?6,
{1,5',7,9,11,13,17,19,21,23,27,29,31,33,37,39,41,43,47,49,51,53,57,60}=dl
;
%==============================================================================
@@ -1181,7 +1180,7 @@ Cat:antibiotics;EN:Emamectine;MW:886.133;EXA:1
:
<24,?6,6=?5,3=dl,9:O,2:*/OH,3:/_,6:/*OH^-60,
@5,#1.04,6,//O,-60,O,60~wb,60,-60,60~wf,60,-60,60,60,60,-60,60,##,&7,
- {-1,-3,-7}=dl,(-11,-10)=?6,@-2,?6,-6=wf,-1=zb,-5=dl,
+ {-1,-3,-7}=dl,{-11-- -10}=?6,@-2,?6,-6=wf,-1=zb,-5=dl,
{-1,-6}:O,-3:*/_,@-2,\,*/_,!2,
17:/_,19:/*_,@18,\,O,!,?6`.7,-1:O,#.5,-2:*/_,-4:*/O!,##,
@-3,\,O,60,?6`.7,-5:O,#.5,-4:*/_,-3:/*NH!,-2:*/O!
@@ -1199,7 +1198,7 @@ Cat:antibiotics;EN:Spinosad;MW:731.968;EXA:2
Cat:antibiotics;EN:Natamycin;MW:665.733;EXA:1
:
<-90,#1,60,60,-60,60,-60,60,-60,60,-60,60,60,60,O,-60,
- 60,60,-60,60,-60,60,-60,60,60,-60,&1,##,(12,13)=?6,
+ 60,60,-60,60,-60,60,-60,60,60,-60,&1,##,{12--13}=?6,
{2,4,6,8,20}=dl,11=zb,23:O,-2:/*OH,-3:*/COOH,
18=?3,-1=wb,-2=wf,-1:O,22://O,24:*/_,{14^60,16}:*/OH,
@10,*\^15,O,90,?6`.7,-1:O,#.5,{-3,-5'}:*/OH,-4:/*NH2,-2:/*_
@@ -1881,7 +1880,7 @@ Cat:pesticide;EN:Pyrimethanil;MW:199.257;EXA:-
%------------------------------------------------------------------------------
Cat:pesticide;EN:Pyroquilon;MW:173.2;EXA:-
:
-<30,Ph,3=?6,10:N,9://O,(11,4)=?5
+<30,Ph,3=?6,10:N,9://O,{11_4}=?5
;
%------------------------------------------------------------------------------
Cat:pesticide;EN:Vinclozolin;MW:286.108;EXA:-
@@ -2307,10 +2306,12 @@ Cat:pesticide;EN:Indoxacarb;MW:527.837;EXA:-
<-6,Ph,3=?5,9=?6,15=dl,10:O,{12,13}:N,1:/Cl,8`1^-54:/COO!,
@12,\,//O,!,N,/COO!,!,Ph,@-3,\,O,!,CF3
;
+%------------------------------------------------------------------------------
Cat:pesticide;EN:Oxamyl;MW:219.3;EXA:-
:
<-30,!,N,?!,//O,!,/S!,!!,N,!,O,!,//O,!,NH,!
;
+%------------------------------------------------------------------------------
Cat:pesticide;EN:Oryzalin;MW:346.4;EXA:-
:
<30,Ph,{1,3}:/NO2,@5,\,SOO,!,NH2,@2,\,/!2,N,!3
@@ -2635,7 +2636,7 @@ Cat:antibacterial;EN:Sulfapyrizine;MW:249.288;EXA:-
%------------------------------------------------------------------------------
Cat:antibacterial;EN:Marbofloxacin;MW:362.361;EXA:-
:
-<30,Ph,{3,(2,7)}=?6,9=dl,6:/F,{7,13}:N,11:O,9:/COOH,10://O,13:/_,
+<30,Ph,{3,2--7}=?6,9=dl,6:/F,{7,13}:N,11:O,9:/COOH,10://O,13:/_,
@1,\,|,?6,{1,4}:N,4:/_
;
%------------------------------------------------------------------------------
@@ -2651,7 +2652,7 @@ Cat:antibacterial;EN:Trimethoprim;MW:290.323;EXA:-
%------------------------------------------------------------------------------
Cat:antibacterial;EN:Ofloxacin;MW:361.373;EXA:-
:
-<30,Ph,{3,(2,7)}=?6,9=dl,7:N,11:O,
+<30,Ph,{3,2--7}=?6,9=dl,7:N,11:O,
6:/F,9:/COOH,10://O,13:/_,@1,\,|,?6,{1,4}:N,4:/_
;
%------------------------------------------------------------------------------
@@ -2770,7 +2771,7 @@ Cat:antibacterial;EN:Flubendazole;MW:313.288;EXA:-
%------------------------------------------------------------------------------
Cat:antibacterial;EN:Flumequine;MW:261.225;EXA:-
:
-<30,Ph,{3,(2,7)}=?6,9=dl,7:N,6:/F,9:/COOH,10://O,13:/_
+<30,Ph,{3,2--7}=?6,9=dl,7:N,6:/F,9:/COOH,10://O,13:/_
;
%------------------------------------------------------------------------------
34;Cat:antibacterial;EN:Sulfanitran;MW:335.334;EXA:-
diff --git a/graphics/mcf2graph/mcf_man_soc.mp b/graphics/mcf2graph/mcf_man_soc.mp
index 2443a83c70..a2cc417f86 100644
--- a/graphics/mcf2graph/mcf_man_soc.mp
+++ b/graphics/mcf2graph/mcf_man_soc.mp
@@ -1,9 +1,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% MCF file for mcf_manual.tex by Akira.Yamaji 2022.10.10
+% MCF file for mcf_manual.tex by Akira.Yamaji 2022.11.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph; %% it must be version 4.88
+input mcf2graph; %% it must be version 4.89
% ** use library file 'mcf_library.mcf'
-message "mcf_man_soc 2022.10.10"; message "";
+message "mcf_man_soc 2022.11.06"; message "";
%------------------------------------------------------------------------
sw_mframe:=0;
sw_expand:=0;
@@ -447,13 +447,13 @@ beginfigm("EN:fused ring 2")
fmargin:=(2mm,2mm);
sw_numbering:=Bond;
msize:=(1,.9);
- MCat( 0,.5)(<30,?6,{3,(11,4)}=?6,{11,4}=dt,{12:15}=bd_r)
+ MCat( 0,.5)(<30,?6,{3,11--4}=?6,{11,4}=dt,{12:15}=bd_r)
add(defaultscale:=0.4; label("(1)",p0);)
msize:=(1,.9);
- MCat(.5,.5)(<30,?6,3=?6,(11,4)=?5,{11,4}=dt,{12:14}=bd_r)
+ MCat(.5,.5)(<30,?6,3=?6,{11--4}=?5,{11,4}=dt,{12:14}=bd_r)
add(defaultscale:=0.4; label("(2)",p0);)
msize:=(1,.9);
- MCat( 1,.5)(<30,?6,3=?6,(11,4)=?4,{11,4}=dt,{12,13}=bd_r)
+ MCat( 1,.5)(<30,?6,3=?6,{11--4}=?4,{11,4}=dt,{12,13}=bd_r)
add(defaultscale:=0.4; label("(3)",p0);)
endfigm
%***********************************************************************
@@ -461,9 +461,9 @@ beginfigm("EN:fused ring 3")
fsize:=(60mm,20mm);
fmargin:=(2mm,2mm);
sw_numbering:=Bond;
- MCat(0,1)(?6,{3,10}=?6,(16,4)=?6[3],{16,4}=dt,{17:19}=bd_r)
+ MCat(0,1)(?6,{3,10}=?6,{16---4}=?6,{16,4}=dt,{17:19}=bd_r)
add(defaultscale:=0.4; label("(1)",p0);)
- MCat(1,0)(?6,{3,10}=?6,(16,4)=?5[2],{16,4}=dt,{17,18}=bd_r)
+ MCat(1,0)(?6,{3,10}=?6,{16---4}=?5,{16,4}=dt,{17,18}=bd_r)
add(defaultscale:=0.4; label("(2)",p0);)
endfigm
%***********************************************************************
@@ -471,7 +471,7 @@ beginfigm("EN:fused ring 4")
fsize:=(60mm,20mm);
fmargin:=(2mm,2mm);
sw_numbering:=Bond;
- MC(<-30,?6,{3,10,15}=?6,(21,4)=?6[2],{21,4}=dt,{22,23}=bd_r)
+ MC(<-30,?6,{3,10,15}=?6,{21----4}=?6,{21,4}=dt,{22,23}=bd_r)
endfigm
%***********************************************************************
beginfigm("EN:Spiro ring ")
diff --git a/graphics/mcf2graph/mcf_manual.pdf b/graphics/mcf2graph/mcf_manual.pdf
index 24bd35cb07..c407c4fd54 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 a756a684e1..6588d356a0 100644
--- a/graphics/mcf2graph/mcf_manual.tex
+++ b/graphics/mcf2graph/mcf_manual.tex
@@ -1,5 +1,5 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format manual by Akira Yamaji 2022.10.10
+% Molecular Coding Format manual by Akira Yamaji 2022.11.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
%%%\usepackage{graphicx}
@@ -429,16 +429,17 @@ attached bond length
\MCFgraph
%-----------------------------------------------------------------------------
%%%\subsubsection{Attached 2 bond}
+\index{--}%
\begin{verbatim}
(Attached 2 bond)
-(4,11)=?6 : fuse 4/6 ring to B11..B4
-(4,11)=?5 : fuse 3/5 ring to B11..B4
-(4,11)=?4 : fuse 2/4 ring to B11..B4
+{4--11}=?6 : fuse 4/6 ring to B11..B4
+{4--11}=?5 : fuse 3/5 ring to B11..B4
+{4--11}=?4 : fuse 2/4 ring to B11..B4
-1:<30,?6,3=?6,(11,4)=?6
-2:<30,?6,3=?6,(11,4)=?5
-3:<30,?6,3=?6,(11,4)=?4
+1:<30,?6,3=?6,{11--4}=?6
+2:<30,?6,3=?6,{11--4}=?5
+3:<30,?6,3=?6,{11--4}=?4
\end{verbatim}
\MCFgraph
\vspace{-3mm}%
@@ -446,17 +447,16 @@ attached bond length
\end{verbatim}
%-----------------------------------------------------------------------------
%%%\subsubsection{Attached 3 bond}
+\index{---}%
\begin{verbatim}
(Attached 3 bond)
-(16,4)=?6[3] or {(16',4)}=?6
- : fuse 3/6 ring to B16..B4
-(16,4)=?5[2] or {(16',4)}=?5
- : fuse 2/5 ring to B16..B4
-** ?m[n] (5<=m<=6,n=m-3)
+{16---4}=?6 : fuse 3/6 ring to B16..B4
+{16---4}=?5 : fuse 2/5 ring to B16..B4
+
+1:?6,{3,10,16---4}=?6
+2:?6,{3,10}=?6,{16---4}=?5
-1:?6,{3,10,(16',4)}=?6
-2:?6,{3,10}=?6,(16,4)=?5[2]
\end{verbatim}
\MCFgraph
\vspace{-3mm}%
@@ -464,15 +464,14 @@ attached bond length
\end{verbatim}
%-----------------------------------------------------------------------------
%%%%\subsubsection{Attached 4 bond}
+\index{----}%
\begin{verbatim}
(Attached 4 bond)
-(21,4)=?6[2] or {(21',4')}=?6
- : fuse 2/6 ring to B21..B4
+{21----4}=?6 : fuse 2/6 ring to B21..B4
-<-30,?6,{3,10,15,(21',4')}=?6
+<-30,?6,{3,10,15,21----4}=?6
-** ?m[n] (m=6,n=2)
\end{verbatim}
\MCFgraph
%-----------------------------------------------------------------------------
@@ -1651,29 +1650,24 @@ Cat:biological;EN:Atoropin;MW:289.375;EXA:1
:
<30,O,!,//O,!2,Ph,@$1,\~zb^-60,|,?7`1.1,@6,*\^190`1.25,N!,&3~wb,$3:/!OH~wv
;
-%------------------------------------------------------------------------------
Cat:biological;EN:Luteolin;MW:286.24;EXA:-
:
<30,Ph,3=?6,9=dl,10:O,7://O,@9,\,Ph,{2,6,14,15}:/OH
;
-%------------------------------------------------------------------------------
Cat:biological;EN:Lycorine;MW:287.315;EXA:1
:
<30,Ph,{-4,-2}=?6,{6,(9,12)}=?5,13=dl,8:N,{15,17}:O,
{9'^180,10^60}:*/H,{13,14'}:*/OH
;
-%------------------------------------------------------------------------------
Cat:biological;EN:Morphine;MW:285.343;EXA:1
:
<30,Ph,{2,-4}=?6,(1,12)=?5[2],-1:O,-1=zb,
@7,60~wf`0.75,70~si_`1.3,45,N!,&9~wb,15=dl,6:/OH,8^180:*/H,12:/*OH
;
-%------------------------------------------------------------------------------
Cat:biological;EN:Piperine;MW:285.343;EXA:1
:
<30,Ph,-1=?5,{-1,-3}:O,@4,\,!!,!,!!,!,//O,!,?6,-6:N
;
-%------------------------------------------------------------------------------
\end{verbatim}
%------------------------------------------------------------------------------
\noindent%
diff --git a/graphics/mcf2graph/mcf_mplib_exa.pdf b/graphics/mcf2graph/mcf_mplib_exa.pdf
index 749c4ce4f6..f3677cd833 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 7106de782c..e7cc265369 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 2022.10.10
+% Example of MCF typest with LuaLaTeX(luamplib) by A.Yamaji 2022.11.06
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mp must be version 4.88
+% ** mcf2graph.mp must be version 4.89
% ** use mcf_library.mcf
\documentclass{article}
%------------------------------------------------------------------------------