$pdf_mode = 1;                          # latexmk -pdf par défaut
$pdflatex = 'pdflatex -interaction=nonstopmode -synctex=1 %O %S';

# --- Config PlantUML ----------------------------------------------------
# Si plantuml est dans le PATH :
# $plantuml = 'plantuml';

# Si tu utilises un JAR :
$plantuml = 'java -jar -Djava.awt.headless=true /usr/share/plantuml/plantuml.jar';

# Options PlantUML : sortie LaTeX/TikZ
$plantuml_opts = '-tlatex:nopreamble';

# --- Dépendance personnalisée .puml -> .tex -----------------------------
# Quand latexmk a besoin de "truc.tex" et que "truc.puml" existe,
# il appelle la fonction puml2tex pour le générer.

add_cus_dep( 'puml', 'tex', 0, 'puml2tex' );

sub puml2tex {
    my ($base_name) = @_;   # base du fichier cible, sans extension

    # Exemple : $base_name = 'diagrams/login'
    my $puml = "$base_name.puml";
    my $tex  = "$base_name.tex";

    # Message dans le log latexmk
    print "PlantUML: génération de $tex à partir de $puml\n";

    # Commande PlantUML
    my $cmd = "$plantuml $plantuml_opts $puml ";
    my $ret = system($cmd);

    # 0 = succès, 1 = erreur pour latexmk
    return $ret ? 1 : 0;
}

# --- Confort ------------------------------------------------------------
# Compilation continue (latexmk -pvc)
$preview_continuous = 1;