-
Notifications
You must be signed in to change notification settings - Fork 2
A common error when building a paper have a Python error which ends with something along the lines of:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 229: ordinal not in range(128)
which indicates a non-ASCII character is somewhere in the document. Common Unicode characters which are easy to miss include smart quotes ( “ ” ‘ ’), the em dash (—), and accented letters.
This can potentially be fixed by using xelatex for building documents, which can be enabled using the command scriptorium config LATEX_CMD xelatex.
An error looking like:
! LaTeX Error: File `abstract\unhbox\voidb@x \kern 0em\vbox {\hrule width0.5emh
eight0.5pt\kern -0.3ex}\relax test.tex' not found.
Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: tex)
Enter file name:
! Emergency stop.
<read *>
l.65 \input{\myabstract}
^^M
No pages of output.
Transcript written on paper.log.
in which an \input statement cannot find a file is often due to the existence of an underscore in a filename listed in the document frontmatter. By default, MultiMarkdown sanitizes the values in the frontmatter when converting to LaTeX, which includes converting any _ to \_, which breaks filename operations.
How do I include multiple citations in a single block? I want something like [1-3], as opposed to [1][2][3].
To group three citations together, the format is very similar to a normal citation, except only the first citation in the list uses a #. This makes the citation look like [#Alice, Bob, Charlie] which seems a bit odd, but is correct.
The easiest method to clean a scriptorium document folder of LaTeX generated files is to use scriptorium clean, which will remove all files which are generated as part of the build command.
If you are using git, there's a simple way to clean the commonly generated files from the document generation process. From the command line, git ls-files --others -i --exclude-standard | xargs rm will delete all files which are in the repository and are currently being ignored, which by default includes the byproducts. If the document is not in a git repository, or files are not committed which should be, this command will not work as expected.