aboutsummaryrefslogtreecommitdiff
path: root/latexmkrc
diff options
context:
space:
mode:
authorMax-001 <80035972+Max-001@users.noreply.github.com>2024-09-12 16:10:09 +0200
committerMax-001 <80035972+Max-001@users.noreply.github.com>2024-09-12 16:10:09 +0200
commiteab8e502f173d3efb22f48da1c64cb4428905103 (patch)
tree7dffdcaa3e1fd73f7a5503f0e3835bbb87af260f /latexmkrc
parent57b1d29670d4b8dbe1b3b00cad6f74a172a4d30b (diff)
parent6ff3195cfee6eeeedd730a3b18473eb2f88efc23 (diff)
Merge remote-tracking branch 'origin/jaro/project-plan' into max/project-plan
Diffstat (limited to 'latexmkrc')
-rw-r--r--latexmkrc45
1 files changed, 45 insertions, 0 deletions
diff --git a/latexmkrc b/latexmkrc
index ad6c178..66ed0d1 100644
--- a/latexmkrc
+++ b/latexmkrc
@@ -2,3 +2,48 @@ $pdflatex = "xelatex %O %S";
$pdf_mode = 1;
$dvi_mode = 0;
$postscript_mode = 0;
+
+# https://tex.stackexchange.com/questions/400325/latexmkrc-for-bib2gls
+add_cus_dep('glo', 'gls', 0, 'run_makeglossaries');
+add_cus_dep('acn', 'acr', 0, 'run_makeglossaries');
+add_cus_dep('aux', 'glstex', 0, 'run_bib2gls');
+
+sub run_makeglossaries {
+ if ( $silent ) {
+ system "makeglossaries -q '$_[0]'";
+ } else {
+ system "makeglossaries '$_[0]'";
+ };
+}
+
+sub run_bib2gls {
+ if ( $silent ) {
+ my $ret = system "bib2gls --silent --group '$_[0]'";
+ } else {
+ my $ret = system "bib2gls --group '$_[0]'";
+ };
+ my ($base, $path) = fileparse( $_[0] );
+ if ($path && -e "$base.glstex") {
+ rename "$base.glstex", "$path$base.glstex";
+ }
+ # Analyze log file.
+ local *LOG;
+ $LOG = "$_[0].glg";
+ if (!$ret && -e $LOG) {
+ open LOG, "<$LOG";
+ while (<LOG>) {
+ if (/^Reading (.*\.bib)\s$/) {
+ rdb_ensure_file( $rule, $1 );
+ }
+ }
+ close LOG;
+ }
+ return $ret;
+}
+
+push @file_not_found, '^Package .* No file `([^\\\']*)\\\'';
+push @generated_exts, 'glo', 'gls', 'glg';
+push @generated_exts, 'acn', 'acr', 'alg';
+$clean_ext .= ' %R.ist %R.xdy';
+$clean_ext .= ' bbl run.xml';
+