texlive[63559] Master/texmf-dist/doc/metapost/mcf2graph: mcf2graph

commits+karl at tug.org commits+karl at tug.org
Sun Jun 12 22:38:57 CEST 2022


Revision: 63559
          http://tug.org/svn/texlive?view=revision&revision=63559
Author:   karl
Date:     2022-06-12 22:38:57 +0200 (Sun, 12 Jun 2022)
Log Message:
-----------
mcf2graph (12jun22)

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/mcf2graph.mp
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.pdf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp
    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_library.mcf
    trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp
    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

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/CHANGELOG	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,6 +1,11 @@
 *******************************************************************************
- Changelog of mcf2graph software package          by Akira Yamaji 2022-05-08
+ Changelog of mcf2graph software package          by Akira Yamaji 2022-06-12
 *******************************************************************************
+[ver. 4.85  / 2022-06-12]
+  -fix bug in function mc_query()
+  -update mcf_library.mcf
+  -update MCF manual
+
 [ver. 4.84  / 2022-05-08]
   -fix bug in atom drawing
   -improve report output

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/README
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/README	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,7 +1,7 @@
 ********************************************************************************
  mcf2graph  : Convert Molecular Coding Format to graphics with MetaPost
  Author     : Akira Yamaji
- version    : 4.84 2022-05-08
+ version    : 4.85 2022-06-12
  E-mail     : mcf2graph at gmail.com
  Located at : http://www.ctan.org/pkg/mcf2graph
 ********************************************************************************

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf2graph.mp	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% mcf2graph ver 4.84    Copyright (c) 2013-2022   Akira Yamaji
+% mcf2graph ver 4.85    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,13 +33,13 @@
 % Set output MOL file (V3000)                           : mpost -s ahlength=6     FILENAME
 % Set output report                                     : mpost -s ahlength=7     FILENAME
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-message "* This is mcf2graph ver 4.84  2022.05.08";
+message "* This is mcf2graph ver 4.85  2022.06.12";
 tracingstats:=1; prologues:=3; warningcheck:=0;
 %-------------------------------------------------------------------------------------------------
 numeric save_num[],parts_com[][],parts_par[][],parts_cnt[],tbl_atom[],tbl_group[][],tbl_atom_wt[],
-        tbl_atom_mi[],tbl_char_wd[],tbl_char_ht[];
-string  save_str[],tbl_atom_str[],str_tbl[],tag[],aux_delimiter,default_library,
-        default_temp_file,mpfont,atomfont,tempc,temps,blanks;
+        tbl_atom_mi[],tbl_char_wd[],tbl_char_ht[],at_char[];
+string  save_str[],tbl_atom_str[],str_tbl[],tag[],info_s[],arg_s[],aux_delimiter,default_library,
+        file_input,file_output,default_temp_file,mpfont,atomfont,tempc,temps,blanks;
 pair    save_pair[],msize,mposition,fsize,fmargin,dum,save_mposition;
 %-------------------------------------------------------------------------------------------------
 fig_num:=str_cnt:=tbl_cnt:=mangle:=sw_expand:=sw_frame:=sw_trimming:=sw_ext_all:=0;
@@ -182,16 +182,16 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 def beginfigm(text s)=
   begingroup
-  save ',mc,f_ext,blen,ext,add,ang_br,fw_n,bw_n,at_colon,info_cnt,group_num,info_s,bond_cntA,
+  save ',mc,f_ext,blen,ext,add,ang_br,fw_n,bw_n,at_colon,info_cnt,group_num,bond_cntA,
        warning_cnt,hideH_cnt,filter_s,mc_indent,cntM,cntA,cntB,minX,minY,maxX,maxY,posA,posM,
        hideH,lineB,sB,eB,angB,angA,lenB,angX,numS,sumA,bond_num,wdM,htM,chargeA,addA,add_rot,
-       file_input,file_output,cal_FM,cal_MW,cal_MI,inf_Cat,inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,
+       cal_FM,cal_MW,cal_MI,inf_Cat,inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,
        inf_USE,inf_EXA,inf_EXB,inf_MW,mol_pic,sC,sI,sS,sT,sV,color_list,unit_cnt,f_end,semic_cnt,
-       f_match,var_n,tag_a,var_a,at_char,arg_s;
+       f_match,var_n,tag_a,var_a;
   numeric mc_indent[],hideH[],lineB[],sB[],eB[],angB[],angA[],lenB[],angX[],strA[],sumA[],
-          bond_num[],wdM[],htM[],chargeA[],addA[],add_rot[],at_char[];
+          bond_num[],wdM[],htM[],chargeA[],addA[],add_rot[];
   pair posA[],posM[][];
-  string info_s[],mc[],tag_a[],var_a[],arg_s[],mc,filter_s,file_input,file_output,cal_FM,cal_MW,
+  string mc[],tag_a[],var_a[],mc,filter_s,cal_FM,cal_MW,
          cal_MI,inf_Cat,inf_NO,inf_EN,inf_JN,inf_FM,inf_CAS,inf_USE,inf_EXA,inf_EXB,inf_MW,
          sC,sI,sS,sT,sV;
   picture mol_pic[];
@@ -205,7 +205,7 @@
   mc:=temps:=cal_MW:=cal_MI:=cal_FM:=filter_s:=""; file_input:=default_library;
   %------------------------------------------------------------------------------------------------
   parts_num:=parts_usr_start; parts_int:=parts_int_start;
-  fig_num:=fig_num+1; f_ext:=cntM:=mc_row:=info_cnt:=f_EOF:=at_char[0]:=0;
+  fig_num:=fig_num+1; f_ext:=cntM:=mc_row:=info_cnt:=f_EOF:=0;
   %------------------------------------------------------------------------------------------------
   for list=s:
     at_colon:=scan_char(":",list,0,1);
@@ -316,7 +316,7 @@
         endfor
       fi
     else:
-      inf_num:=split_char(sS,";")+1;
+      inf_num:=split_char(sS,";");
       for i=1 upto inf_num:
         sI:=arg_s[i]; nA:=scan_char(":",sI,0,1);
         tag_a[i]:=substring(0,nA-1) of sI; var_a[i]:=substring(nA,length(sI)) of sI;
@@ -1553,17 +1553,20 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 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,key_cnt,
-       info_s,sign_at,sign_n,filter_n,filter_tag,filter_var,filter_sign,filter_cnt,filter_p,
-       at_char,at_colon,at_equal,at_less,at_greater,at_n,sort_all,key_s,sort_s;
-  string line_s[][],sort_s[],sort_all[],key_s[],filter_tag[],filter_var[],info_s[];
-  numeric row_cnt[],order[],order_tbl[],filter_sign[],filter_p[],at_char[];
-  unit_row:=f_mcf:=mc_row:=info_cnt:=key_cnt:=filter_cnt:=0; unit_cnt:=1;
+  save f_mcf,f_line,unit_row,unit_cnt,line_s,row_cnt,semic_cnt,info_cnt,order,min_n,max_n,
+       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;
+  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;
+  sign_s[1]:="="; sign_s[2]:="<>"; sign_s[3]:="<"; sign_s[4]:=">"; sign_s[5]:="<=";
+  sign_s[6]:=">=";
   %-----------------------------------------------------------------------------------------------
   for list=s:
     at_colon:=scan_char(":",list,0,1); at_equal:=scan_char("=",list,0,1);
     at_less:=scan_char("<",list,0,1); at_greater:=scan_char(">",list,0,1);
+    key_s:="";
     %---------------------------------------------------------------------------------------------
     if at_colon>=2:                               sign_at:=at_colon;   sign_n:=0; at_n:=1;
     ef at_equal>=2:   if (at_equal-1)=at_less:    sign_at:=at_equal;   sign_n:=5; at_n:=2;
@@ -1577,7 +1580,9 @@
     if sign_n=0:
       if sT="f": if scan_char(".",sV,0,1)=0: file_input:=sV&".mcf";  else: file_input:=sV; fi
       ef sT="o": if scan_char(".",sV,0,1)=0: file_output:=sV&".aux"; else: file_output:=sV; fi
-      ef sT="s": key_s[incr key_cnt]:=sV; fi
+      ef sT="a": key_s:=sV; sort_oder:=0;
+      ef sT="d": key_s:=sV; sort_oder:=1;
+      fi
     else:
       filter_tag[incr filter_cnt]:=sT; filter_sign[filter_cnt]:=sign_n;
       if (sign_n>=3)and(is_num(sV)=1): filter_var[filter_cnt]:=fix_num(sV);
@@ -1591,13 +1596,11 @@
       if (substring(0,2) of temps)="+-":
         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
-        for i=1 upto key_cnt: sort_s[i]:=""; endfor
+        sort_s:="";
         for i=1 upto info_cnt:
-          nA:=scan_char(":",info_s[i],0,1); 
-          sT:=substring(0,nA-1) of info_s[i]; sV:=substring(nA,length(info_s[i])) of info_s[i];
-          for j=1 upto key_cnt:
-            if key_s[j]=sT: if is_num(sV)=1: sort_s[j]:=fix_num(sV); else: sort_s[j]:=sV; fi fi
-          endfor
+          nA:=scan_char(":",arg_s[i],0,1); 
+          sT:=substring(0,nA-1) of arg_s[i]; sV:=substring(nA,length(arg_s[i])) of arg_s[i];
+          if sT=key_s: if is_num(sV)=1: sort_s:=fix_num(sV); else: sort_s:=sV; fi fi
           for j=1 upto filter_cnt:
             if filter_tag[j]=sT:
               filter_p[j]:=1;
@@ -1610,28 +1613,37 @@
               ef filter_sign[j]=6: if not(temps>=filter_var[j]): filter_n:=0; fi fi fi endfor
         endfor
         for i=1 upto filter_cnt: if filter_p[i]=0: filter_n:=0; fi endfor
-        sort_all[unit_cnt]:="";
-        for j=1 upto key_cnt:
-          if j=key_cnt: sort_all[unit_cnt]:=sort_all[unit_cnt]&sort_s[j];
-          else: sort_all[unit_cnt]:=fix_str(15,sort_s[1]); fi endfor
-        info_cnt:=0; if filter_n=1: unit_cnt:=unit_cnt+1; fi
+        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)="+": f_mcf:=1; mc_row:=1;
       ef subc(1,temps)<>"%":
-        if f_mcf=1: mc_row:=mc_row+1;
-        else:
-          info_cnt:=split_char(temps,";")+1; for i=1 upto info_cnt: info_s[i]:=arg_s[i]; endfor fi
-      fi
+        if f_mcf=1: mc_row:=mc_row+1; else: info_cnt:=split_char(temps,";"); fi fi
     fi
   endfor
+  unit_cnt:=unit_cnt-1;
   %=============================================================================================
-  unit_cnt:=unit_cnt-1;
-  if key_cnt>=1:
+  printf "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%";
+  printf "% Input  : "&file_input&" ["&decimal(lib_unit_cnt)&"]";;
+  printf "% Output : "&file_output&" ["&decimal(unit_cnt)&"]";
+  if filter_cnt>=1:
+    for i=1 upto filter_cnt:
+      printf "% Filter("&decimal(i)&"): "&filter_tag[i]&" "&sign_s[filter_sign[i]]&filter_var[i];
+    endfor
+    if key_s<>"": printf "% Sort key : "&key_s&iif(sort_oder=0," (ascending)"," (descending)"); fi
+  printf "%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%";
+  %-----------------------------------------------------------------------------------------
+  if key_s<>"":
     for i=1 upto unit_cnt: order[i]:=0; endfor
-    for i=1 upto unit_cnt: temps:="~";
-      for j=1 upto unit_cnt:
-        if order[j]=0: if sort_all[j]<temps: temps:=sort_all[j]; min_n:=j; fi fi
-      endfor
-      order[min_n]:=i; order_tbl[i]:=min_n;
+    for i=1 upto unit_cnt:
+      if sort_oder=0: temps:="~";
+        for j=1 upto unit_cnt:
+          if order[j]=0: if sort_tbl[j]<temps: temps:=sort_tbl[j]; min_n:=j; fi fi endfor
+        order[min_n]:=i; order_tbl[i]:=min_n;
+      ef sort_oder=1: temps:=" ";
+        for j=1 upto unit_cnt:
+          if order[j]=0: if sort_tbl[j]>temps: temps:=sort_tbl[j]; max_n:=j; fi fi endfor
+        order[max_n]:=i; order_tbl[i]:=max_n;
+      fi
     endfor
     for i=1 upto unit_cnt:
       for j=1 upto row_cnt[order_tbl[i]]: printf line_s[order_tbl[i]][j]; endfor
@@ -1641,10 +1653,6 @@
   endgroup;
 enddef;
 %=============================================================================================
-vardef fix_str(expr n,s)=
-  if length(s)<n: sS:=s&substring(0,n-length(s)) of blanks;
-  ef length(s)>n: sS:=substring(0,n) of s; fi sS enddef;
-%-------------------------------------------------------------------------------------------------
 vardef fix_num(expr s)=
   sS:=s; nN:=scan_char(".",sS,0,1);
   if nN=0: sS:=fsr(4)(sS); ef nN=1: sS:="   0"&sS;
@@ -1667,6 +1675,6 @@
   nN:=0; for i=1 upto length(s): if subc(i,s)=c: at_char[incr nN]:=i; fi endfor nN enddef;
 %-------------------------------------------------------------------------------------------------
 vardef split_char(expr s,c)=
-  nN:=scan_chars(s,c); at_char[nN+1]:=length(s)+1;
-  for i=1 upto nN+1: arg_s[i]:=substring(at_char[i-1],at_char[i]-1) of s; endfor nN enddef;
+  nN:=scan_chars(s,c)+1; at_char[0]:=0; at_char[nN]:=length(s)+1;
+  for i=1 upto nN: arg_s[i]:=substring (at_char[i-1],at_char[i]-1) of s; endfor nN enddef;
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

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

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_code.tex	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Print out mcf data list                           by A.Yamaji   2022.05.08
+% Print out mcf data list                           by A.Yamaji   2022.06.12
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.84
+% ** mcf2graph.mf must be version 4.85
 % ** use mcf_library.mcf
 % ** typeset by LuaLaTeX(luamplib)
 \documentclass{article}

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_exa_soc.mp	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,8 +1,8 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Molecular Coding Format                      by Akira Yamaji  2022.05.08
+% Molecular Coding Format                      by Akira Yamaji  2022.06.12
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph;   %%% it must be version 4.84
-message "* mcf_exa_soc 2022.05.08";
+input mcf2graph;   %%% it must be version 4.85
+message "* mcf_exa_soc 2022.06.12";
 message "";
 %------------------------------------------------------------------------------
 %%%%sw_frame:=Outside;
@@ -21,8 +21,9 @@
 %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<150.0","s:EN");
-%%%%mc_query("MW>=150","MW<=250","s:MW");
+%%%%mc_query("Cat=biological","MW<110.0","s:EN");
+%%%%mc_query("Cat=biological","MW>=150","MW<=200","a:EN");
+%%%%mc_query("Cat=biological","MW>=150","MW<=200","d:MW");
 %******************************************************************************
 fsize:=(35mm,24mm);
 max_blength:=4mm;

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	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_example.tex	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of MCF   Typeset with LuaLaTeX(luamplib)   by A.Yamaji   2022.05.08
+% Example of MCF   Typeset with LuaLaTeX(luamplib)   by A.Yamaji   2022.06.12
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mf must be version 4.84
+% ** mcf2graph.mf must be version 4.85
 % ** use mcf_library.mcf
 % ** typeset by LuaLaTeX(luamplib)
 \documentclass{article}

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_library.mcf
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_library.mcf	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_library.mcf	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,16 +1,15 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% molecular library file    mcf_library.mcf   by Akira Yamaji   2022.05.08
+% molecular library file    mcf_library.mcf   by Akira Yamaji   2022.06.12
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %  tag1:var1;tag2:var2;tag3:var3 .....
 %  first character of line "%" comment out
 %  first character of line "+"  begin MCF
 %  first string    of line "+-" end MCF
-%  first string    of line "%-" end header
 %  Cat = Category
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %==============================================================================
 % molecular data for mcf_example.tex   EXA=1(155) EXA=2(7)
-%-=============================================================================
+%==============================================================================
 Cat:biological;EN:Adenine;MW:135.13;EXA:1
 +
 <30,?6,3=?5,{1,3,5,9}=dl,{2,6,9}:N,5:/NH2,7:NH

Modified: trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp
===================================================================
--- trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_man_soc.mp	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,9 +1,9 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% MCF file for mcf_manual.tex  by Akira.Yamaji               2022.05.08
+% MCF file for mcf_manual.tex  by Akira.Yamaji               2022.06.12
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-input mcf2graph;   %% it must be version 4.84
+input mcf2graph;   %% it must be version 4.85
 % ** use library file 'mcf_library.mcf'
-message "mcf_man_soc 2022.05.08"; message "";
+message "mcf_man_soc 2022.06.12"; message "";
 %------------------------------------------------------------------------
 sw_mframe:=0;
 sw_expand:=0;

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	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_manual.tex	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,5 +1,5 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%  Molecular Coding Format manual                by  Akira Yamaji 2022.05.08
+%  Molecular Coding Format manual                by  Akira Yamaji 2022.06.12
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \documentclass[a4paper]{article}
 %%%\usepackage{graphicx}
@@ -1559,10 +1559,8 @@
 %  first character of line "%" comment out
 %  first character of line "+"  begin MCF
 %  first string    of line "+-" end MCF
-%  first string    of line "%-" end header
 %  Cat = Category
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%------------------------------------------------------------------------------
 Cat:biological;EN:Adenine;MW:135.13
 +
 <30,?6,3=?5,{1,3,5,9}=dl,{2,6,9}:N,5:/NH2,7:NH
@@ -1620,39 +1618,43 @@
 %
 % "f:filename" : input file name  (default "mcf_library.mcf")
 % "o:filename" : output file name (default "temp.mcf")
-% "s:sort-key" : sort by sort-key 
 %
+% "a:sort-key" : sort by sort-key ascending
+% "d:sort-key" : sort by sort-key descending
+%
 % operator  :  = , <> , <= , >= , < , >
 %
 % filter 1  : Cat=biological
 % filter 2  : MW>=285
 % filter 3  : MW<=295
+%
 %--------------------------------------------------------------
-mc_query("s:EN","Cat=biological","MW>=285","MW<=295");
+mc_query("Cat=biological","MW>=285","MW<=290","a:EN");
 %--------------------------------------------------------------
-forever:
-  beginfigm("f:temp","v+:*")    % use file temp.mcf / select all
-    if f_EOF=0: if mc_check(mc)=0: MC(scantokens(mc)) fi fi
-  endfigm
-  exitif f_EOF=1;
-endfor
-%---------------------------------------------------------------
 \end{verbatim}
 %---------------------------------------------------------------
 \paragraph{(output)}
 \begin{verbatim}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Input  : mcf_library.mcf [506]
+% Output : temp.mcf [5]
+% Filter(1): Cat =biological
+% Filter(2): MW >= 285
+% Filter(3): MW <= 290
+% Sort key : EN (ascending)
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 Cat:biological;EN:Atoropin;MW:289.375;EXA:1
 +
-<30,O,!,//O,!,!,Ph,@$1,\~zb^-60,|,?7`1.1, at 6,*\^190`1.25,N!,&3~wb,$3:/!OH~wv 
+<30,O,!,//O,!2,Ph,@$1,\~zb^-60,|,?7`1.1, at 6,*\^190`1.25,N!,&3~wb,$3:/!OH~wv 
 +------------------------------------------------------------------------------
-Cat:biological;EN:Cianidanol;MW:290.27;EXA:1
+Cat:biological;EN:Luteolin;MW:286.24;EXA:-
 +
-<30,Ph,3=?6, at 8,*\,Ph,7:O,{1,5,13,14}:/OH,9:/*OH
+<30,Ph,3=?6,9=dl,10:O,7://O, at 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:/*H^180,10:*/H^60,13:*/OH,14:/*OH
+ {9'^180,10^60}:*/H,{13,14'}:*/OH
 +------------------------------------------------------------------------------
 Cat:biological;EN:Morphine;MW:285.343;EXA:1
 +
@@ -1661,7 +1663,7 @@
 +------------------------------------------------------------------------------
 Cat:biological;EN:Piperine;MW:285.343;EXA:1
 +
-<30,Ph,|,-1=?5,{1,3}:O,@$4,\,!!,!,!!,!,//O,!,|,?6,1:N
+<30,Ph,-1=?5,{-1,-3}:O, at 4,\,!!,!,!!,!,//O,!,?6,-6:N
 +------------------------------------------------------------------------------
 \end{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	2022-06-12 08:18:31 UTC (rev 63558)
+++ trunk/Master/texmf-dist/doc/metapost/mcf2graph/mcf_mplib_exa.tex	2022-06-12 20:38:57 UTC (rev 63559)
@@ -1,7 +1,7 @@
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% Example of  MCF typest with LuaLaTeX(luamplib)    by A.Yamaji    2022.05.08
+% Example of  MCF typest with LuaLaTeX(luamplib)    by A.Yamaji    2022.06.12
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% ** mcf2graph.mp must be version 4.84
+% ** mcf2graph.mp must be version 4.85
 % ** use mcf_library.mcf
 \documentclass{article}
 %------------------------------------------------------------------------------



More information about the tex-live-commits mailing list.