Skip to content

Unicode drivers warnings

This PR rolls up usage of fontspec/OTF fonts for xelatex and lualatex with fixes for warnings and information/readme updates.

I have tested it on pdflatex, xelatex and lualatex on TexLive 2023, as well as pdflatex on TeXLive 2013. I've fixed all warnings apart from underfull/overfull hboxes, and the missing italic small capts in pdflatex (which is not a problem since it replaces with slanted), and performed a visual test. All outputs look the same.

Here is my current test script. As requested I am not cluttering the repository with any development scripts:

#!/usr/bin/env python3

import os
from pathlib import Path
from subprocess import run
from shutil import rmtree, copy

outdir = Path("testouts")
rmtree(outdir)

ENGINES = ["pdflatex", "xelatex", "lualatex", "pdflatex2013"]
EXAMPLES = ["malliopas", "enthesis"]


def srun(cmd, **kwargs):
    print(cmd)
    run(cmd, shell=True, **kwargs)


for engine in ENGINES:
    os.makedirs(outdir / engine, exist_ok=True)
    engine_dir = outdir / engine
    for filename in ["malliopas.tex", "enthesis.tex", "malliopas.bib", "gradu3.cls", "opus-kissa.pdf"]:
        copy(filename, engine_dir)
    os.chdir(engine_dir)
    for example in EXAMPLES:
        if engine == "pdflatex2013":
            docker_cmd = "docker run -it -w /work/ -v $(pwd):/work/ registry.gitlab.com/islandoftex/images/texlive:TL2013-historic"
            engine_cmd = f"{docker_cmd} pdflatex"
            biber_cmd = f"{docker_cmd} biber"
            texfot_cmd = f"{docker_cmd} texfot pdflatex"
        else:
            engine_cmd = engine
            biber_cmd = "biber"
            texfot_cmd = f"texfot {engine}"
        srun(f"{engine_cmd} {example}.tex")
        srun(f"{biber_cmd} {example}", check=True)
        srun(f"{engine_cmd} {example}.tex")
        srun(f"{texfot_cmd} {example}.tex > {example}.clean.log", check=True)
        srun(f"exiftool -a -G1 {example}.pdf > {example}.exiftool.log", check=True)
        srun(f"verapdf {example}.pdf > {example}.verapdf.log")
        srun(f"pdfinfo {example}.pdf > {example}.pdfinfo.log", check=True)
    os.chdir("../../")

Merge request reports