Sublime Forum

Issues with LaTeXTools 4.5

#1

I appreciate the constant support for LaTeXTools! I updated to version 4.5 yesterday, and since I have faced two issues.

First, when I build with Compile to PDF - Traditional Builder with PdfLaTeX, now I get an error saying that I have to install perl, which I never had to. Compiling with Compile to PDF - Basic Builder with PdfLaTeX works fine as usual. However, I prefer the former when I have no bib references in the document because it used to compile much faster.

The second issue is some sort of syntax highlighting in the Build Results panel. LaTeXTools used to show warnings in yellow and errors in red. It would be super helpful to get that back.

0 Likes

#2

latexmk / perl not found

Basically latexmk is a perl script. On Windows TexLive provides a little latexmk.exe helper to be able to directly start it. LaTeXTools still invokes latexmk command directly, as it did before - tested on Windows 11, Debian 13 and Ubuntu 25.04 using TexLive 2025 with default settings.

Perl not being found indicates it not being found on $PATH of used environment. If custom texpath setting is specified or any custom "env" in e.g. sublime-build file contains a $PATH entry, make sure it ends with :$PATH (e.g.: "texpath" : "/usr/texbin:$PATH"). Otherwise any $PATH from your login shell’s environment would be completely replaced.

build output

Build output now uses more common markup.error.build.latextools, markup.warning.build.latextools and markup.error.build.latextools to scope related items, instead of latextools.console. ..., which didn’t match any scope naming guideline at all, and thus was only supported by special color schemes with explicit support for LaTeXTools.

Section headings like Warnings: are scoped markup.heading.warning.

0 Likes

#3

FWIW, as of v4.5.1 final build output scopes are inline with default message. scopes used by ST’s syntax test output panel, which Mariana color scheme already provides highlighting for.

see: https://sublimetext.github.io/LaTeXTools/buildsystem/#build-output-highlighting

1 Like

#4

@deathaxe, thank you so much for the effort you have put into LaTeXTools!

I was able to customize my color scheme based on those scopes. Thank you!

However, I was unable to address the problem with Compile to PDF - Traditional Builder with PdfLaTeX. I do not have a custom path. I still tried to add to my LaTeXTools settings "texpath": "C:\\Users\\USERNAME\\AppData\\Local\\Programs\\MiKTeX\\miktex\\bin\\x64;$PATH", without success. Could the issue be that I have installed MiKTeX, which uses texify, instead of TeXLive, which uses latexmk? I am not sure.

An additional thing I noticed regarding V4.5.1 is that by default it creates auxiliary files in a .aux folder. I added "aux_directory": "", to the settings to address this issue. This should be the default, according to settings, but it does not seem to be.

0 Likes

#5

Traditional builder prefers latexmk, if present, regardless which distro is used. I have to checkout MikTeX to find out.

“.aux” is the new default, to attempt to keep tex_root directory cleaner. Actually some people even call a single .synctex.gz file next to created PDF “cluttering”.

0 Likes

#6

Findings:

  • TexLive ships perl.exe, but its installer doesn’t add its location to PATH environment.

  • MikTeX doesn’t ship perl interpreter

  • both however ship a latexmk.exe, which LaTeXTools v4.5+ prefers, if present.

It worked on my box for both distros, as perl is bundled with Git for Windows, and I configured all unix tool locations to be added to PATH.

May need to add an additional check for perl being present, or add it to the list of prerequisities, if latexmk is present.

0 Likes

#7

Thank you for investigating this issue I am having. I noticed that there is a file called perltex.exe in C:\Users\USERNAME\AppData\Local\Programs\MiKTeX\miktex\bin\x64. Is it the same thing as perl.exe? Is there a way for me to tell LaTeXTools to use that file when I compile with the Traditional Building? I would appreciate your guidance.

Regarding the auxiliary files, would it be possible to remove the saying that "" is the default to prevent other users from misunderstanding? Just a thought.

	// OPTION: "aux_directory"
	// Specifies the auxiliary directory
	// Possible values:
	//
	// ""				the default; does not use any auxiliary directory

0 Likes

#8

I am not sure whether this is the correct approach, but I was able to address the issue by adding the following to my settings:

	"builder_settings": {
		"command": "texify -b -p --engine=%E --tex-option=\"--synctex=1\"",
	}

I don’t understand why this is needed, but it seems to work.

0 Likes

#9

I noticed that there is a file called perltex.exe

No, it isn’t.

Regarding the auxiliary files, would it be possible to remove the saying that "" is the default to prevent other users from misunderstanding?

Sure. Additional looking for ways to also support it properly, when texify is being used.

… I was able to address the issue by adding the following to my settings:

That’s a possible workaround.

As already stated, LaTeXTools v4.5 prefers latexmk, when present, regardless the distro being used. This change was primarily made due to texify not supporting aux-directory and me not being aware of MikTeX also shipping latexmk. Maybe a config to choose between them would be useful, without also requiring users to care about the whole command line.

1 Like

#10

Thank you so much!

0 Likes