Implementing the texlogsieve package with Scrivener+LaTeX

I recently became aware of the availability of an update to the texlogsieve package that I think may be of significant assistance when attempting to debug my Scrivener+LaTeX project. See below for a brief description of what the texlogsieve package does.

I am, however, a bit mystified as to the procedure necessary to implement the texlogsieve package within my project.

I currently use the arara package/application as a front end for my project with the following commands included in my Scrivener Text Layout as part of the LaTeX (Memoir Book) Project Format:

	%% Replace < \footnote{[@@] >
	%%  with < \endnote{ >
	% !TEX TS-program = Arara 
	% !TEX encoding = UTF-8 Unicode
	% arara: pdflatex: { synctex: yes, shell: yes } 
	% arara: pdflatex: { synctex: on, shell: yes } 
	% arara: bibtex
	% arara: makeglossaries if missing('gls') || changed('glo')
	% arara: pdflatex: { synctex: on, shell: yes } 
	% arara: makeindex: { style: <$projecttitle>.ist }
	% arara: makeindex: { style: <$projecttitle>.ist } if changed ('idx') || 	missing 		
	% arara: nomencl 
	% arara: makeglossaries if found('aux', '@istfilename')
	% arara: pdflatex: { synctex: on, shell: yes } 
	% arara: makeindex: { style: <$projecttitle>.ist } if changed ('idx') || missing ('ind')
	% arara: pdflatex: { synctex: on, shell: yes } 
	% arara: authorindex
	% arara: pdflatex: { synctex: on, shell: yes } 

The texlogsieve documentation includes the following instructions for the Configuration file (See: ‘4 Configuration File’ of the documentation) to implement the texlogsieve package:

no-page-delay
# no-page-delay enables shipouts, but we do not want that
no-shipouts
silence-string = Hyperreferences in rotated content will be misplaced 
# no need to escape the "\" (or any other) character
silence-string = Using \overbracket and \underbracket from `mathtools' 
# silence a string using lua pattern matching
silence-string = ////luaotfload | aux : font no %d+ %(.-%) 
silence-files = *.sty

Which brings me to my question:


How do I incorporate the instructions provided in the texlogsieve package for the Configuration file within my Scrivener Text Layout ? My goal would be to run the texlogsieve package each time I compile my Scrivener+LaTeX project so that I’d have an current version of the filtered LaTeX log file for debugging purposes.


Thanks for reading,
scrive
:thinking:


A brief description of what the texlogsieve package does:

texlogsieve - (yet another program to) filter and summarize LaTeX log files

texlogsieve reads a LaTeX log file (or the standard input if no file is specified), filters out less relevant messages, and displays a summary report. It is a texlua script, similar in spirit to tools such as texfot, texloganalyser, rubber-info, textlog_extract, texlogparser, and others. Highlights:

  • Two reports: the most important messages from the log file followed by a summary of repeated messages, undefined references etc.;
  • The program goes to great lengths to correctly handle TeX line wrapping and does a much better job at that than existing tools;
  • Multiline messages are treated as a single entity;
  • Several options to control which messages should be filtered out;
  • No messages are accidentally removed;
  • The summary report is currently simple, but useful.

Scrive, this tool is to be run at the command line, that means you must run it in the post-processing section of the compiler (though I think you use TXT output so post-processing commands cannot be run by Scrivener), or you’ll need to write a small wrapper script that runs that runs your latex commands and then this tool. How do you normally trigger latex after you’ve compiled?

[pdf|lua|xe]latex -interaction nonstopmode myfile.tex | texlogsieve

This is a classic shell pipe, so the standard output of latex is fed into this script’s standard input.

1 Like

The plain-text file type does in fact support the Processing pane, and the LaTeX project template comes with a little example (deactivated by default) that shows how you can have latexmk run automatically when you compile, producing a PDF as a final result, rather than the usual .tex file.

So one could modify that little script to chain together any further post-production utilities, as demonstrated above.

1 Like

Hi AmberV,

Thank you for your instructions.

I was a bit confused about the “Processing compile format pane” as I did not see such a pane on the left side of the LaTeX (Memoir Book) Project Format as shown below:

so I went searching the internet for the Scrivener “Processing compile format pane” and found the following screen shot where a Processing pane is listed below Footnotes & Comments[1]:

I assume the Processing pane displayed above is what you referred to in the LaTeX project template. You also mentioned something about “a little example (deactivated by default)”.

My question is: How can I activate the Processing pane in the LaTeX (Memoir Book) Project Format to make it available for the next step in your instructions to:

Thank you for your assistance to what I hope is a way to run what nontroppo has described as a:

Do I have that right?

Thanks for all your help,
scrive
:thinking:

[1] First go to Is it possible to use bibtex with Scrivener?, then click on Screenshot by Lightshot.

Scrive, indeed I just checked and Processing pane is visible for me (I just went off your screenshot that showed it missing for TXT outputs). I now remember this is probably a difference between App store and non-app store installs, you probably need to download from the L&L site directly?

1 Like

Hi AmberV,

I searched in the Scrivener Manual for the “Processing compile format pane” and was referred to section 24.22 of the Manual where there is a note to the effect that the section is for Scrivener sold via <Direct-sale only>.


Since I purchased my Mac copy of Scrivener through the Apple App Store, does this mean I will not be able to access the “Processing compile format pane” to follow your instructions to:

Are there any other options to access the “Processing compile format pane” to purchasing a second copy of Scrivener (which I don’t mind doing, except that I don’t know what it will mean to have 2 copies of the Scrivener application in my Applications folder)?

Thanks,
scrive
:thinking:

You can “upgrade” for free :nerd_face:
https://scrivener.tenderapp.com/help/kb/purchasing-and-installation/installing-the-direct-sale-version-as-a-mac-app-store-customer

1 Like

Hi nontroppo,

Thank you for bringing the upgrade tip to the Scrivener <Direct-Sale> Version to my attention.

Installing the Direct-Sale Version as a Mac App Store Customer answers my question above to AmberV and should put me on my way to exploring how to implement texlogsieve in my Scrivener project.

I’m a bit sleep deprived at the moment, and after a brief cursory viewing of the steps to install the <Direct-Sale> Version, I’m inclined to wait till I’m a bit more refreshed before I begin the installation. Having your link to the installation instructions above is much appreciated and will allow me to delay my installation till a bit later.

Thank you for this,
scrive
:thinking: