Hello Adytia.
Thanks for sending Your code. It seems that it works with Asymptote. 
Unfortunately, when I am trying to multiple call a macro then I get fatal 
error, and then compile collapse. I do not know what it could be. Is it 
possible that my code is wrong. But it is possible that there is a stack 
overflow etc. It would be a need to look at why the fatal error occurs - It 
probably can evaluate Hans. Thanks again for your support. Below is my code. If 
removed commentary characters occurs advised error.

Jaroslav Hajtmar


\usemodule[filter]

\defineexternalfilter
   [ASY]
   [
     filtercommand={asy -tex context \externalfilterinputfile\space -o 
\externalfilteroutputfile}, output=\externalfilterbasefile.pdf,
     purge=no, 
     cache=yes,
     readcommand=\ReadImage,
   ]

\define[1]\ReadImage{\externalfigure[#1]}

\define[1]\mycircle{
#1 - XXX
\setbuffer[ASY]
        import graph;
        draw(Circle((0,0),#1));
\endbuffer
\processASYbuffer[ASY]
}

\starttext
AAA
\startASY
        import graph;
        draw((0,0)--(100,100));
\stopASY

BBB
\mycircle{100}


%CCC
%\mycircle{50}

%DDD
%\mycircle{200}

\stoptext





Dne 22.12.16 5:49, ntg-context za uživatele Aditya Mahajan 
<ntg-context-boun...@ntg.nl za uživatele adit...@umich.edu> napsal(a):

    On Tue, 20 Dec 2016, Jaroslav Hajtmar wrote:
    
    > very much for your Metapost example. This I certainly sufficient for the 
    > production of simple images for my ideas.
    
    > \define[1]\mycircle{
    >   \startASY
    >   import graph;
    >   draw(Circle((0,0),#1));
    >   \stopASY
    > }
    >
    > \starttext
    > \mycircle{20}
    > \mycircle{30}
    > \mycircle{40}
    > \stoptext
    
    It is already feasible to define something this simple using the filter 
    module. I don't have asymptote installed on the machine that I am 
    currently working on, but here is an example that uses pandoc.
    
    \usemodule[filter]
    
    \defineexternalfilter
         [MARKDOWN]
         [
           filtercommand={pandoc -f markdown -t context 
\externalfilterinputfile\space -o \externalfilteroutputfile},
           cache=yes,
           purge=no, % Just for testing. May be removed.
         ]
    
    \define[1]\TEST
         {\setbuffer[MARKDOWN]This is #1\endbuffer
          \processMARKDOWNbuffer[MARKDOWN]}
    
    \starttext
    \startMARKDOWN
       This is **one**
    \stopMARKDOWN
    
    \TEST{**ONE**}
    
    \TEST{_TWO_}
    \stoptext
    
    With this method, the results are not cached. Let me know if this works 
    for your needs.
    
    Aditya
    
___________________________________________________________________________________
    If your question is of interest to others as well, please add an entry to 
the Wiki!
    
    maillist : ntg-context@ntg.nl / 
http://www.ntg.nl/mailman/listinfo/ntg-context
    webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
    archive  : https://bitbucket.org/phg/context-mirror/commits/
    wiki     : http://contextgarden.net
    
___________________________________________________________________________________

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to