On Mon, 28 Jul 2014, Wolfgang Schuster wrote: > > Am 28.07.2014 um 16:15 schrieb Xan : > >> Hi, >> >> Any hint on that [https://github.com/adityam/filter/issues/17], please? > > Don’t use \doifmode{…}{…} etc. with buffers or environments which rely on a buffer because you disable the function to keep end of lines in the input. > > What you have to do in this case is to use the \startmode or \startnotmode commands. > > \usemodule[filter] > > \defineexternalfilter > [python] > [filtercommand={python \externalfilterinputfile\space > \externalfilteroutputfile},cache=force] > > \starttext > > \startmode[solucions] > > \starttextrule{Solucions} > > \startpython > .... > \stoppython > > \stoptextrule > > \stopmode > > \stoptext Another option is (untested): \defineexternalfilter [python] [ filtercommand={...}, before={\starttextrule{Solutions}}, after={\stoptextrule}, ] \startmode[solutions] \setupexternalfilter[python][state=stop, read=no] \stopmode \starttext \startpython ... \stoppython \stoptext BTW, you can simplify your setup using: \startbuffer[sympy] from sympy.solvers import solve from sympy import Symbol from sympy import Eq x = Symbol('x') \stopbuffer \defineexternalfilter [python] [ filtercommand={...}, bufferbefore={sympy}, ] \starttext \startpython print(solve(Eq(3*x + 2, 35), x)) \stoppython \stoptext Aditya