<div dir="ltr"><div dir="ltr"><div>Hi again,</div><div><br></div><div>In tex/texmf-context/tex/context/base/mkxl/mlib-svg.lmt the following regex appears a few times (line 1502, 1556, and 1570):<br></div><div><br></div><div>gmatch(VAR,"%s*([^:]+):%s*([^;]+);?")</div><div><br></div><div>It may be helpful to first normalize the string by appending a semicolon to the end, allowing for:</div><div><br></div><div>for w in (VAR .. ";"):gmatch("([^;]*);") do ...<br></div><div><br></div><div>Splitting 'w' afterwards on the colon within key:value pairs would still be necessary, so maybe that approach is a wash.<br></div><div><br></div><div>Aside, when I made changes to the file, I couldn't get either a report() or a print() statement to show up in the output, even when running with --debug. Any hints on how to sprinkle debug info into the code? Or was I barking up the wrong source file?<br></div><div><br></div><div>Cheers!<br></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, May 8, 2022 at 1:33 AM Thangalin <<a href="mailto:thangalin@gmail.com">thangalin@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hey hey,</div><div><br></div><div>The following produces a filled square, rather than an empty one:<br></div><div><br></div><div>\startbuffer[svg]<br><svg><br>  <rect width="100" height="100"<br>        style="stroke:rgb(0,0,0);;fill:none" /><br></svg><br>\stopbuffer<br><br>\starttext<br>  \placefigure{}{\includesvgbuffer[svg][conversion=mp]}<br>\stoptext</div><div><br></div><div>Remove the extra semicolon to get the expected result:<br></div><div><br></div><div><svg><br>  <rect width="100" height="100"<br>        style="stroke:rgb(0,0,0);fill:none" /><br></svg></div><br><div>It appears that a style immediately following two semicolons is ignored.</div><div><br></div><div>The SVG was generated using the following R code:</div><div><br></div><div>svg("filename.svg");</div><div>plot(rnorm(200));</div><div>dev.off()</div><div><br></div><div>Arguably, R's SVG routines could be a bit tighter. Can the MP SVG parser code be relaxed to skip "empty" semicolons?<br></div><div><br></div><div></div><div>$ context --version<br>mtx-context     | current version: 2022.05.02 16:19</div><div><br></div><div>Much appreciated.<br></div></div>
</blockquote></div>