[Textures] \write18

Bruno Voisin bvoisin at me.com
Wed Jan 30 17:13:09 EST 2013


. Le 30 janv. 2013 à 19:16, Emilio Faro <efaro at dma.uvigo.es> a écrit :

> The following file:
> ------------------------------------
> \documentclass{article}
> \begin{document}
> \immediate\write18{echo `pwd` > pwd.txt}
> \end{document}
> ------------------------------------
> does the expected thing in TeXShop but not in Textures. It seems \write18 is not enabled in Textures. Does anybody know whether it is possible to enable it and how?

No, I don't think Textures has ever allowed that kind of thing. Textures predates OS X and has never been fully updated to support it; hence no ability to link to Unix commands such as 'echo' through \write18.

If the above works with TeXShop, this means your version is not up-to-date: shell escape (ie \write18) is now considered a security risk in TeX and disabled by default. You should accordingly remove --shell-escape from the tex command options in

Preferences > Engine > pdfTeX > Tex
Preferences > Engine > pdfTeX > Latex
Preferences > Engine > TeX + dvips + distiller > Tex
Preferences > Engine > TeX + dvips + distiller > Latex

for example by pressing the Default button for each.

The preferred way of proceeding now, if you absolutely trust a command and also absolutely need it, is to create a file /Library/TeX/Local/web2c/texmf.cnf, duplicate there the default shell_escape_commands list from /Library/TeX/Root/texmf/web2c/texmf.cnf and add the command you want to it, making it in your case

shell_escape_commands = \
bibtex,bibtex8,\
kpsewhich,\
makeindex,\
mpost,\
repstopdf,\
echo,\

That said, unless the Blue Sky TeX Systems web site resuscitates mysteriously within the next few days, it seems Textures is dead for good now and better left alone.

Bruno Voisin








More information about the Textures mailing list