自動でビルドをするためにはCI/CDという機能を使います
学科のGitLabにLaTeXのコード一式をcommit, pushすることで、LaTeXのコンパイルを学科サーバー側で行うことができます。
これによりローカルのmacOSにLaTeXの環境をインストールすることなく、レポートや論文を書くことが可能です。
.gitlab-ci.yml
を作成します.gitlab-ci.yml
を書きます。report.tex
, master_paper.tex
などreport.pdf
, master_paper.pdf
stages:
- build
latexmk:
stage: build
script:
- $HOME/tool/latex.sif latexmk -f [要変更: メインのtexファイル].tex
- git add [要変更: 生成されたpdf]
- git commit -m '[skip ci] generate pdf'
- git push git@gitlab:${CI_PROJECT_PATH}.git HEAD:${CI_COMMIT_BRANCH}
stages:
- build
latexmk:
stage: build
script:
- $HOME/tool/latex.sif latexmk -f master_paper.tex
- git add master_paper.pdf
- git commit -m '[skip ci] generate pdf'
- git push git@gitlab:${CI_PROJECT_PATH}.git HEAD:${CI_COMMIT_BRANCH}
latexmk
を使っています.latexmkrc
を書くと上書き可能です#!/usr/bin/env perl
$latex = 'uplatex -shell-escape -synctex=1 -halt-on-error';
$latex_silent = 'uplatex -shell-escape -synctex=1 -halt-on-error -interaction=batchmode';
$bibtex = 'upbibtex %O %B';
$biber = 'biber %O --bblencoding=utf8 -u -U --output_safechars %B';
$dvipdf = 'dvipdfmx %O -o %D %S';
#$makeindex = 'upmendex %O -o %D %S';
$max_repeat = 5;
$pdf_mode = 3;
$HOME/tool/latex.sif
の後ろに実行したいコマンドを書くと実行可能ですgit add
の前に書くようにしてくださいstages:
- build
latexmk:
stage: build
script:
- $HOME/tool/latex.sif make
- git add master_paper.pdf
- git commit -m '[skip ci] generate pdf'
- git push git@gitlab:${CI_PROJECT_PATH}.git HEAD:${CI_COMMIT_BRANCH}
[skip ci] generate pdf
」と表示されていたら、pdfが生成されていますコメント:画像を中央に配置する centerコマンドを有効に