LaTeXの始め方

# Summary
[最初に入れるやつら](https://qiita.com/y_marui/items/0ce03b01de0e7ea02de1)に付け足す`latex`のパートが長いので分離。 

基本的には、Overleafを使う。
ローカルで作業するときは、VS Codeで編集、Gitでバージョン管理。
文献は、Zoteroにコレクションを作って、Dropbox経由で同期。
(OverleafのGitとDropboxは、課金かもしれない。)
LaTeXのローカルでの作業は、macOSでしかしてないので、Windowsの場合は分からない。

# インストール
フルパッケージは重すぎるので、BasicTexを使う。
```
brew cask install basictex
sudo tlmgr update --self --all
```
重要なパッケージは、この辺。
```
sudo tlmgr install \
	biber
	biblatex
	biblatex-nature
	collection-fontsrecommended
	collection-langjapanese
	collection-mathsciencelatexmk 
```
他にもあったら便利のなやつら。
```
sudo tlmgr install \
	braket
	csvsimple
	doicsquotes
	graphbox
	pdfcomment (datetime2 (tracklang), zref, marginnote, soulpos)
	seqsplit
	standalone (currfile, gincltex, adjustbox (collectbox), filemod)
	subfiles (xpatch)
	tikz-optics
	xstring
	(soulutf8)
```
括弧に入っているのは`tlmgr`で解消できない依存先。
(一応、Issueは出したので、修正されるかも。)

物理で便利なのは、`physconst`、`physics`、`physunits`。

# コンパイル
`latexmk`を使って、英語は`pdflatex`、日本語は`uplatex`を使う。

## 日本語用の設定
```.latexmkrc
$out_dir = 'build';
$aux_dir = $out_dir;
$do_cd = 1;
$pdf_mode = 3;
$latex = 'uplatex -synctex=1 -interaction=nonstopmode  -halt-on-error -file-line-error %O %S';
$pdflatex = 'pdflatex -synctex=1 -interaction=nonstopmode %O %S';
$dvipdf = 'dvipdfmx %O -o %D %S';
$makeindex = 'mendex %O -o %D %S';
$bibtex = 'upbibtex';
$biber = 'biber --bblencoding=utf8 -u -U --output_safechars %B';
```

# 校正刷りの作成
日本語で`uplatex`を使う場合、`dvipdfmx`の圧縮で時間がかかる事がある。
`dvidfmx`に`-z 0`を渡すと、非圧縮になる。
下のコマンドをプリアンブルに入れてもいい。
```latex
\special{dvipdfmx:config z 0}
```

校正刷りに、コメントと行番号、ラベルを表示する。
コメントは、`\HL{本文}{コメント}`で使う。
```latex:main.tex
% Proofreading
\newif\ifProofreading\Proofreadingtrue
\Proofreadingfalse
% if \ifProofreading is ture, display proofreading tools
\ifProofreading
    \usepackage{xcolor}
    \usepackage[dvipdfmx]{pdfcomment}
    \hypersetup{unicode}
    \usepackage[dvipdfmx]{pxjahyper}
    \usepackage[notref,notcite]{showkeys}
    \usepackage{seqsplit}
    \renewcommand*\showkeyslabelformat[1]{%
    \fbox{\parbox[b]{0.5\marginparwidth}{\seqsplit{\raggedright\normalfont\small\ttfamily#1}}}}
    \usepackage{lineno}
    \pagewiselinenumbers

    \newcommand{\HL}[2]{#1\pdfmargincomment[color=yellow]{「#1」: #2}}

    \makeatletter
    \def\fps@figure{ht}
    \def\fps@table{ht}
    \makeatother
\else
    \newcommand{\HL}[2]{#1}
\fi
```

# 校正差分の作成
Gitでローカルに持ってきて作成。
校正差分を作ってくれる`latexdiff`を使う。

## Install
```
sudo tlmgr install latexdiff
```

## Usage
単純に差分を取るだけなら`latexdiff`を使う。
```
latexdiff old.tex new.tex > diff.tex
```
Gitでの差分を取るには、`latexdiff-vc`を使う。`#rev`はコミット番号。昔は、`latexdiff-vc`から`latexdiff-git`にリンクが貼られていたらしい。
```
latexdiff-vc -r #rev targe.tex
```

## Usage for 日本語

```
latexdiff -e utf8 --git -t CFONT old.tex new.tex > diff.tex
```
```
latexdiff-vc -e utf8 --git -t CFONT -r #rev targe.tex
```

ファイルを分割したときは、`--flatten`を使う。

```
latexdiff-vc -e utf8 --git --flatten -t CFONT -r #rev targe.tex
```

#スペルチェック
英語は、Grammarly+Textlint。
日本語は、Textlint。

## 英語 at Overleaf 
拡張機能の[Overleaf textarea](https://chrome.google.com/webstore/detail/overleaf-textarea/iejmieihafhhmjpoblelhbpdgchbckil)を使うと、Overleafの入力パネルがGrammarlyに認識される。

# Word (.docx) to Latex
進捗報告なんかは、PowerPointとかWordとかの方が便利だけど、論文ならLatexの方が綺麗。
とはいえ、数式を打ち直すのはめんどくさいので、`pandoc`を使ってLatexに数式を持ってくる。
```sh
pandoc -i in.docx -o out.tex
```

# References
* [初心者がBasicTexをmacにインストールする(2019年) - Qiita](https://qiita.com/yuukami1024/items/bec77e17111ad95a1188) 
* [Latexdiff で日本語を](http://www.quickhack.net/nom/blog/2013-06-16-latexdiff-for-japanese-documents.html)  
* [git + latexdiff でTeXの原稿を添削してもらいやすくする。 - やったことの説明](https://ksknw.hatenablog.com/entry/2015/07/25/230230)