TinyTeXのインストール & RmarkdownでPDF on Ubuntu 18.04 LTS

TinyTex のインストール

Motivation

TeXのインストールはヘビーなので、なるべく簡素化したい。TeX Liveとか数GBをダウンロードせんといかん。

環境

  • Ubuntu 18.04 LTS on Hyper-V
  • 言語パックインストール済み

Atomのインストール

TeXのエディタとしてAtomを使う。

sudo add-apt-repository -n -y ppa:webupd8team/atom
sudo apt update
sudo apt install atom

パッケージのインストール

apm install japanese-menu latex language-latex latexer pdf-view

TinyTexのインストール

wget -qO- "https://yihui.name/gh/tinytex/tools/install-unx.sh" | sh

TinyTeXのインストール(for R users)

すでにRが入っていれば、以下でOK。

install.packages('tinytex')
tinytex::install_tinytex()

PATHの設定

export PATH=$HOME/.TinyTeX/bin/x86_64-linux:$PATH

.bashrcに追加しとく

TeXの日本語環境をインストール

# リポジトリの設定
tlmgr option repository http://ftp.jaist.ac.jp/pub/CTAN/systems/texlive/tlnet/
# collection-langjapaneseのインストール
tlmgr install collection-langjapanese

Notoフォントの設定

Ubuntuの日本語言語パックでNotoフォントが/usr/share/fonts/opentype/notoに入っているので、それを使う。入っていない場合はインストールする。

mkdir texmf-local
cd texmf-local
mkdir fonts
cd fonts
ln -s /usr/share/fonts/opentype/ opentype
mktexlsr

Atomの設定とタイプセットのテスト

Atomlatexパッケージの設定でEngineuplatexにする。

\documentclass[a4j, uplatex]{jsarticle}

\usepackage[noto-otc]{pxchfon}

\begin{document}
  \section{はじめに}
  $X \sim N(\mu, \sigma^2)${\bf 確率密度関数}\[
  f(x) = \frac{1}{\sqrt{2\pi}\sigma}
  \exp\left\{-\frac{(x-\mu)^2}{2\sigma^2}\right\}
  \]
  である。
\end{document}

完成!

f:id:nonki1974:20181227002409p:plain
AtomTeX

knitrでPDF出力

この流れでRmarkdownからpdf-documentとかbeamer presentationの作成までやってしまいたい。

Rのインストール

/etc/apt/sources.listに以下を追加

deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/

キーの登録、パッケージリスト更新、インストール

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
sudo apt update
sudo apt install r-base r-base-dev

RStudioのインストール

wget https://download1.rstudio.org/rstudio-xenial-1.1.463-amd64.deb
sudo apt install gdebi-core
sudo gdebi rstudio-xenial-1.1.463-amd64.deb

IPAexフォント入れとく

sudo apt install fonts-ipaexfont

Rmdファイルの作成

---
title: "TinyTeXを使ってみよう"
author: "nonki1974"
date: "2018年12月26日"
output:
  pdf_document:
    latex_engine: xelatex
documentclass: bxjsarticle
classoption: xelatex, ja=standard
geometry: no
header-includes:
  - \usepackage{zxjatype}
  - \setjamainfont{Noto Serif CJK JP}
  - \setjamonofont{Noto Sans Mono CJK JP}
  - \setjasansfont{Noto Sans CJK JP Medium}
  - \setmainfont{Noto Serif CJK JP}
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
knitr::opts_chunk$set(dev="cairo_pdf",
                      dev.args=list(family="Noto Sans CJK JP"))
```

## R Markdownのテスト
`pressure`データのプロットです。
```{r}
plot(pressure, xlab = "温度[℃]", ylab = "蒸気圧[mm]")
```

knitする

できた〜

f:id:nonki1974:20181227010200p:plain
knitrでPDF

宿題

Windowsでも動作確認