Certain special cases must be kept in mind when working with specialised packages.

## Shell Escape

LaTeX is more than a markup language, it allows great flexibility when compiling your documents. One example is the ability for your code and the packages you include to call other utilities installed on your computer to carry out various tasks. This is achieved by including

    \write18{}

in the LaTeX code that allows the code to launch external binaries. Packages such as epstopdf, minted, gnuplot, etc. use this facility. To provide additional security, LaTeX requires `-shell-escape` be specified on the command line. In Texpad, this amounts to switching the option Shell Escape on in the typeset configuration from the toolbar of an open project.

### Shell escape security warning

Shell escape allows for execution of arbitrary code during typesetting, which is a potential, but serious, security hole. Please use this sparingly and only with packages you trust.

Texpad's auto-sense typesetting is capable of enabling this feature when necessary. You can however override this by configuring the "Shell Escape security policy for Autosense" in the Typesetting pane of your Preferences.

## Using 'Hide Intermediate Files' option

In order to keep the working directory clean Texpad will by default create a hidden .texpadtmp directory in the same path as the root file and use this for all intermediate files created whilst typesetting. It goes to great lengths to ensure that this does not interfere with typesetting your documents. Occasionally you may use packages that conflict with this option. Texpad in such cases auto-corrects itself and switched the option off.

However some packages call external tools which are unaware of LaTeX's intermediate files setting and hence cannot find these intermediate files. In order to typeset with these packages you must uncheck the "Hide intermediate files" option in Texpad's preferences.

Known packages with this problem are

- Minted
- Gnu plot
- dot2tex