tectonic
tectonic copied to clipboard
Tectonic does not handle packages requiring makeindex to be run
Calls to \makeindex and \printindexfrom the package index do not result in the execution of makeindex and the rerunning of TeX.
This results in:
- indices not being build or included
.idxfiles being created in the document directory even when--keep-intermediatesis not specified.
Tectonic should support packages providing index functionality (such as index) which require makeindex to be called and TeX to be rerun to incorporate the generated files.
Current workaround is to run tectonic, makeindex as needed, and then run tectonic again, then delete intermediates.
This is entirely correct! makeindex appears to be written in C so we should be able to embed it in the Tectonic executable just like bibtex.
@pkgw Thank you for validating this. I've looked into what was required to integrate bibtex and unfortunately at the moment I don't have the spare bandwidth to pick up the language/infrastructure and contribute a PR. I ran into this issue when building documents using the tufte-* classes (which depend on index functionality) and thought I'd document the issue and a workaround until it can be addressed.
@justinlynn No worries, adding makeindex shouldn't be too hard but it would definitely be a nontrivial task. We're all bandwidth-starved so I can't say when someone will get to this, but thanks for getting it on the radar!
If I may use this thread, what are the implications for having other executables needed to invoked in the workflow? For example, if use glossaries-extra with external glossary (in bib files) will tectonic run bib2gls for me?
Hello, any news on this? I was unable to print a glossary :/
ps: thanks you a lot for this great tool!
@polc You mean you couldn't use the workaround of running makeindex (semi-)manually?
One problem with running makeindex (or texindy in my case) manually is that the input for the indexes (.idx) is expected to be in the output directory but tectonic expects the resulting ind files to be in the source directory.
Just checking in on glossaries-extra support with tectonic
@SamuelMarks No work specifically towards that goal, but the recently added support for biber and shell-escape has laid the groundwork for us to provide better support for external tools in the future. I'm not familiar with the support tools in this area, but if there's a way to detect from the first-pass files that a specific tool needs to be run, changes along the lines of #794 can wire them into the processing pipeline.
any news on this?
Edit: the workaround doesn't work as well since there ist no idx file being generated.
No news, I'm afraid. If there's anyone willing to try implementing makeindex or bib2gls support themselves, I will do my best to assist them, but I'm afraid I don't have the bandwidth to work on it myself for the foreseeable future.
I just want to mention that if you have makeindex in your path (for example, if you have a TeX distribution on your system), you can run tectonic with -Z shell-escape and it should work.
I can't make idx file to be created, even if I specify "shell_escape" to true in Tectonic.toml and enabling both --keep-logs and -k. Is this expected?
This means I can't create the index (even manually), preventing me to use Tectonic if I need an index.