Jupyter Notebook メモ

# 環境

* OS: windows7 64bit
* Editor: SublimeText3 Build3126でBuild(TeXファイルの作成まで。)
* TeX: Version 3.14159265 (TeX Live 2016/W32TeX/dev)
* Jupyter                     version                  python
    * jupyter                   1.0.0                    py35_3
    * jupyter_client            4.4.0                    py35_0
    * jupyter_console           5.0.0                    py35_0
    * jupyter_core              4.2.0                    py35_0



# ショートカット
esc を押してコマンドモード

Enter:セルの編集
L :行番号表示。再度押すと非表示
M: マークダウンモード
Y: コードモード
C:セルのコピー
V:コピーしたセルのペースト
K:上のセルに移動
J:下のセルに移動
A:上のセルの選択
B:下のセルの選択
DD:セルの削除
Space:スクロールダウン
Shift + Space: スクロールアップ
セルの編集モードの時

Shift+Enter:セルの実行、次のセルへ移動
ctrl +Enter:セルの実行のみ



# TeXの生成
日本語を使う場合はメニューバーのExport as PDFは使えない。

なぜなら`\documentclass[a4paper,dvipdfmx]{jsarticle}`のdocumentclassが英語版で生成されるので。

## テンプレートファイル(jsarticle.tplx)使う。

1. `jsarticle.tplx`をtexの環境変数の通っているところ(platex.exeあるところなど)にいれておく
2. jsarticleに自動的に変えるコマンド`jupyter-nbconvert --to latex %1 --template jsarticle.tplx`をターミナルに打ち込む。%1がファイル名、%2はファイルベースネーム。
3. 画像をpngとしてエクスポートする。画像はワークディレクトリ以下のファイルベースネームをフォルダ名に下ディレクトリ以下に保存される。`extractbb %2_files/*.png`



```jsarticle.tplx
% Default to the notebook output style
((* if not cell_style is defined *))
    ((* set cell_style = 'style_ipython.tplx' *))
((* endif *))

% Inherit from the specified cell style.
((* extends cell_style *))

%===============================================================================
% Latex Article
%===============================================================================

((* block docclass *))
\documentclass[a4paper,dvipdfmx]{jsarticle}
((* endblock docclass *))
```




### ここまではsublimetext-build形式で書いて、build(ctrl+b)で実行させた。(ゆえにファイル名が%1とか引数だったりするのである。)

```JSON:Jupyter2PDF.sublime-build
{
    "cmd":["Jupyter2PDF.bat","$file","$file_base_name"],
}
```

```batch:Jupyter2PDF.bat
@echo off
jupyter-nbconvert --to latex %1 --template jsarticle.tplx
extractbb %2_files/*.png
```

### ココより下は%1, %2を引数としてではなく、ファイル名に打ち直さないといけない。

4. platexをコマンドライン上で走らせる。`platex %2.tex`.styファイルがないとかわめきだすけど、すべてEnter押し続けて続行させる。
5. dvipdfmxをコマンドラインで走らせる。`dvipdfmx %2.dvi`

### ここまででpdfが作成された。

6. pdfクリックしたときにtexソースに行きたいときはreuse-instanceでSumatraPDFを起動させる。`SumatraPDF -reuse-instance %2.pdf`




### LaTeXエラー一覧

```
! LaTeX Error: File `ucs.sty' not found.

Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: sty)

Enter file name:
body...
```


```
! LaTeX Error: Unknown option `mathletters' for package `ucs'.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...

l.54     \usepackage
                    [utf8x]{inputenc} % Allow utf-8 characters in the tex do...

?
```


```
! LaTeX Error: File `utf8x.def' not found.

Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: def)

Enter file name:
```

```
! Missing $ inserted.
<inserted text>
                $
l.1047     \(\newpage
                     \)
?
```

以下`\newpage`に関するエラーがぞろぞろ20こくらい

BuildだけでPDFまで作成したいけど、platexでとまる。ucs.styがないからいけない？誰か教えてください。





## 画像の貼り付け

* ipynb上に画像を表示
> `<img src = '画像パス'>`
* pdf上にtexを通して画像を表示
> `\includegraphics{画像パス}`
>>[clip, width=\columnwidth], [clip, width=4cm], [clip], [width=4cm]とかいろいろ試したけど、[]つけると画像が貼り付けられない模様