(v0.8.3) Projects

Licensing

A round of correctness fixes around licensing and saving. Existing texspark licenses keep working exactly as before — nothing changes for paying users.

  • Product-scoped license keys. Activation and the periodic re-check now confirm a key actually belongs to texspark, so a key for a different product from the same store is turned away with a clear “this key isn’t for texspark” message instead of unlocking the app.
  • Save All, without the modal pile-up. Save All (⌥⌘S) is an explicit “write everything” action, so it no longer asks for per-file overwrite confirmation. Files that changed on disk outside texspark are left untouched — never clobbered silently — and reported together at the end so you can resolve each one with ⌘S or the reload button.
  • Steadier save / reload / build. The rules for what happens when a tab has unsaved edits and/or the file changed on disk are now driven by one shared decision path, covered by tests — so every entry point (⌘S, ⌘B, the reload button) behaves consistently.

Build commands

If you juggle projects that build differently — one on xelatex, another on latexmk, a third with a makeindex pass — texspark now remembers the build command for each project, and puts it right where you work.

  • A command per project. Each project (its build target 🔨, or the file you’re editing) keeps its own build command. Switch projects and the command follows — set latexmk once for the book and xelatex for the paper, and never swap them by hand again.
  • Command bar in the Terminal panel. Two always-visible, editable rows sit at the top of the Terminal: the build command with a ▶ to build (⌘B), and your custom command with a ▶ to run it (⌃⌘B). No trip to Preferences to tweak a flag.
  • Templates a click away. The 🔨 next to the build command opens Preferences → Compile, where the engine templates (xelatex / pdflatex / lualatex / latexmk / bibtex / makeindex) and options live.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *