このリポジトリは管理者の大学卒業に伴い、現在管理されていません。
そのため使用テーマやツールが古い可能性があります。ご注意ください。
なおこのリポジトリを引き継いでくれる学生の方・研究室がありましたら本リポジトリをフォークし、更新お願いします。
その際は作者のchez-shanpuへの連絡等は不要です。
修論執筆がんばってください💪
- Dockerコンテナを使うことでLaTeXのセットアップ作業を必要としません.
- ホスト環境でのビルドも可能です
- 以下のツールを用いて自動ビルドすることが可能です
- GitHub Actions
- BitBucket Pipelines
- macOS 10.14 or later
- Ubuntu 18.04 LTS or later
- Windows 10
Docker
- Docker Desktop for Mac 2.1 or later
- Docker 18.06 or later
- Docker Desktop for Windows
Dockerコンテナは内部でTeX Live 2020 on Ubuntu 20.04 LTSを使用します. 詳細はこちら.
ホスト環境でのビルドはVSCodeの拡張機能を利用しているため,VSCodeの使用を推奨します(好きなエディタとMakefile
を利用しての作業も可能です).
PDFの生成に関連した操作は全て,デフォルトでDockerコンテナを利用します.
これはUSE_DOCKER
という環境変数によって制御されています.
デフォルトではUSE_DOCKER=yes
です.
Dockerは不要でネイティブで動かしたい場合,USE_DOCKER=no
とすることでこれを無効化できます.
また,Windowsで利用する場合は以下のようにすることでDockerの有効無効を切り替えることが出来ます.
# 無効
# PowerShell
$ env:USE_DOCKER="no"
# cmd.exe
$ set USE_DOCKER=no
# 有効
# PowerShell
$ env:USE_DOCKER="yes"
# cmd.exe
$ set USE_DOCKER=yes
main.texをコンパイルし,完全なPDFを生成するコマンドです.
このコマンドでは\subfile
によって分割したファイルを個別にコンパイルすることはサポートされていません.
このツールは全体を通してコンパイルにはlatexmkを使用します.デフォルトで使用されている.latexmkrcをカスタマイズするには,make latexmkrc
の項を参照してください.
latexmkによる変更検知時の自動ビルドを実行します.
Dockerを利用しない場合,viewerの指定があればビルドしたPDFを開きます.
Dockerを利用する場合,Dockerコンテナ内からホスト上のPDFビューワを開くことができないため,-view=none
として開かないようにしています.
自動リロードに対応したPDFビューワで開くと,ビルドの度に自動で変更が反映されます.
このコマンドでは分割したファイルの個別コンパイルをサポートしています.例えば以下の様に実行することで,sections/usage.tex
だけをusage.pdf
として閲覧できます.
ターゲットの指定が無い場合,main.tex
が対象となります.
$ make watch target=sections/usage.tex
TeXソースのコンパイルを行う前に,前回のコンパイルによる生成物を全て破棄してコンパイルを実行します.
コンパイルによる成果物を全て破棄します. 最終成果物のPDFも含めて破棄されることに注意してください.
現在のブランチから新しいブランチを切り,空のcommitを行ってリモートへpushします. その後,hubコマンドを利用してPull Request作成のページを標準のブラウザで表示します. 実行時にブランチ名を指定することが出来ます. 指定しない場合,デフォルト値のWIPが使用されます.
コンテナ内で使用されている.latexmkrcをこのディレクトリ直下にコピーします. これを編集することで,latexmkの動作をカスタマイズできます.
GitHub Actions上で実行されるlintをローカルでも実行します.
事前にNodejsをインストールしnpm install
を実行しておく必要があります.
lintに違反したもののうち,自動的に適用が可能なものについて訂正します.
これは例えばprhなどによる表記揺れ訂正が対応しています.
事前にNodejsのインストールとnpm install
の実行が必要です.
VSCode使用時は,LaTeX Workshopプラグインを用いて自動的に動作するよう.vscode/settings.json
に記述されています。
.vscode/settings.json
を変更することで反映されます.
また,GitHub Actionsを用いて下記の操作をサポートします.
- masterブランチへのpush時に自動ビルド・生成PDFをアップロード
- Pull Request作成時にルールベースでの校正,および,レビューでの指摘
- タグをpushするたびにGitHub Releasesへ自動でPDFをアップロード.
- ブランチを切り空のプルリクエストを発行する.
make draft branch=ブランチ名
で新しいブランチが切られ,プルリクエスト発行の画面がブラウザで開くので,タイトル等を入力する. - 通常通りtexソースを編集してコミットおよびプッシュする.
- textlintによる校正結果がreviewdogによりプルリクエストにレビューとして投稿されるので,それを参考に修正する.
- ある程度書けたら共著者や教員・先輩など,内容をレビューする人をレビュアーとしてアサインする.
- レビュアーの指摘を元に修正.
- 全ての指摘を修正し,加筆の必要がなくなった時点でmasterへマージする.
- ローカルのリポジトリでmasterにチェックアウトしてgit pullする.
- 1へ戻る.
https://github.com/pddg/latex-template-ja/releases/download/v1.0.1/main.pdf
CC0
このテンプレートはShoma Kokuryoさんのpddg/latex-template-jaを元に作成されました.
素晴らしいテンプレートの作成および提供に感謝いたします.