Bibtex まで含めて自動コンパイルできるようになった

結局こちらのサイトに載っている方法を採用 (^_^) 。
Atom で LaTeX on Windows (+ 最近のビルド環境)
http://ichiro-maruta.blogspot.jp/2016/01/atom-latex-on-windows.html

なお、このサイトではカレントディレクトリで Terminal を起動する方法として、Atom に「atom-terminal パッケージをインストールする方法が紹介されているので、これも採用 (^_^) 。ただしパッケージの設定で「Surpress Directory Argument」のチェックをオフにしないと、Terminal がホームディレクトリで起動してしまう。これに気づくまで少々ハマった。

この方法だと、TeX のソースファイルが置いてあるディレクトリで「latexmk -pvc (filename)」を一旦実行すれば、ファイルに修正を加えて保存するたびに、自動的にコンパイルが走って PDF ファイルが更新される。しかも Skim を使えば PDF の表示も自動的に更新される。これは便利 (^_^) 。

 

ちなみに .bib ファイルを別のディレクトリにまとめて置いてあるので、PATH の設定はこちらに載っている方法に倣った。
LaTeXのsty, bst, bibファイルなどを単一フォルダで管理する方法
http://ochiailab.blogspot.jp/2013/01/latexsty-bst-bib.html




テキストエディタを全面的に乗り換えた話

今年 1 月の転職を契機に検討を始め、昨日ようやく結論が出た。結果的に結構な長旅になったので、この辺でまとめておこうと思う。結論から書くと、Mac / Windows / Linux とも Atom に落ち着いた。

検討を始めたきっかけと検討候補

昨年まで勤めていた会社では PC へのソフトウェアのインストールが制限されていたが、1 月に転職し、現在の会社ではソフトウェアのインストールに制限がないことが分かったので、どうせなら使いやすいエディタを探して使おうと思った。
しかし、そもそも Windows のソフトウェアに全く興味がなく、Windows のエディタをほとんど知らないので、Web でいろいろ探しているうちに、どうせなら Mac と Windows 両方で使えた方がいいし、ちょうど 1 月に、大学院に置いてある古い MacBook Pro に Linux を入れたので、3 つのマシンで同じエディタが使えるといいな、などと欲も出てきた。
そして Mac / Windows / Linux に対応している無料のエディタ、というだけで候補は次の 3 つに絞られた。

  • Atom (何にも考えずに使える普通の GUI テキストエディタ)
  • Vim (20 年以上前に UNIX でプログラミングする仕事で常用してたので慣れてる)
  • Emacs (全く未経験)

ある程度使ってみないと分からないので、とりあえず 3 台に全部インストールしてしばらく使ってみることにしたが、Emacs は環境整備さえ上手くできれば LaTeX での作業が劇的に楽になるらしい、という捨てがたい魅力があったので、この時点では Emacs が本命になってた。

結論にたどり着いた経緯

先人の知恵を Web で探しまくって 3 台のマシンに Emacs と Vim をインストールして、日本語が使える状態にし、Mac と Linux に関しては YaTeX が使える状態まで持っていった。すっかり Emacs をメインにするつもりになっていたが、ここまでできたところで、Atom のプラグインで LaTeX が便利に使えるようになるらしい、という記事をたまたま見つけた。

そもそも Atom は多少カスタマイズがいろいろ出来るエディタ、という程度の認識で、LaTeX に対応してるなんて夢にも思ってなかったので、全く調べてもいなかった。
試しにやってみたらあっさり成功。最初からこれにしていれば良かった。やっぱりこういうのは変な先入観を持たず、初期段階でしっかり調査すべきだと改めて思った。

負け惜しみ

結果的には壮大な回り道をしたが、今まで使ったことのなかった Emacs を使えるようになったし(ついでに環境設定のしかたも分かったし)、Mac で Homebrew を使えるようになったし、勉強になったので、今回の長旅にかけた時間は無駄ではなかった。




Atom で快適な LaTeX 文書作成環境ができてしまった

Emacs + YaTeX で日本語を含めた文書のコンパイルが通るようになって、いよいよ実戦投入しようかと思っていたところで、Atom で LaTeX のコンパイルができるようになるプラグインがあることをたまたま知った。

とりあえず下記のサイトに書いてある通りに作業したら、割とあっさり出来てしまった。なんだ最初からこれにすれば良かったじゃん、という話。

「atomで快適LaTeX編集環境」
http://ayihis.hatenablog.com/entry/2016/09/24/143641

ただし Atom のインストールは Homebrew Cask (Mac)や apt (Ubuntu)で行い、TeX Live は既に導入済みなので、上記サイトの記載内容の中で実行したのは Atom のプラグインの部分のみ。

Ubuntu の方はこれだけで日本語を含む文書のコンパイルが通った。

Mac の方では、コンパイルが始まった後に「! LaTeX Error: This file needs format pLaTeX2e' but this isLaTeX2e’.」というエラーが出て正常にコンパイルされない。しかしこれも先人の知恵を下記リンク先で見つけてあっさり解決 (^_^) 。

TeX Wiki「TeXworks などの統合環境でタイプセットをすると,“! LaTeX Error: This file needs format `pLaTeX2e’ but this is `LaTeX2e’.” となって日本語が出ない」
https://texwiki.texjp.org/?%E3%82%88%E3%81%8F%E3%81%82%E3%82%8B%E8%B3%AA%E5%95%8F#cb7a8a28

この文書には Atom での解決方法が直接書かれていないが、Atom では「latex」パッケージの設定で、「Engine」を「uplatex」に切り替えたら、問題なく日本語もコンパイルされるようになった。

簡単な文書で文書の編集・コンパイルを試してみたが、シンプルで使いやすいエディタで編集できて、ホットキー一発(Mac だと Command + i、Ubuntu だと Shift + Ctrl + b)で PDF に変換できて、しかも Atom の別タブに表示してある PDF に編集結果が即反映される。これは先日まで Mac で使ってた TeXShop より快適なのではないだろうか?

今後、実際に論文執筆に使ってみて、図の挿入とか Bibtex なんかの使い勝手も追々確認していきたい。




諸々アップデート用コマンド一覧

またまた自分用メモ。こういうの覚えるの苦手だし、いちいち検索するのもナニなので。

TeX Live アップデート

sudo tlmgr update --self --all

Mac OSX の homebrew のアップデート

brew update
brew upgrade
brew file cask_upgrade -C

Mac OSX anaconda のアップデート(最初から全部 homebrew で入れれば良かった)

conda update conda
conda update anaconda

Ubuntu の apt アップデート

sudo apt-get update
sudo apt-get upgrade

Ubuntu への YaTeX(野鳥)導入メモ

大学院側のマシンは Ubuntu を入れた時に既に LaTeX を導入済みだし、Emacs も apt で導入済みだったので、YaTeX のみ追加導入した。

基本的には Mac に導入した時と同じ。ただし ~/.emacs.d/init.el の記述内容は OS や使用するアプリケーションによって変える必要があるので、次の箇所のみ変更した。

  • 「(add-to-list ‘load-path “~/.emacs.d/lisp/yatex”)」という記述を削除(単に削除するだけでいいのかどうか確証が無いが、とりあえず自分のマシンにこのようなディレクトリが無いため)
  • 「(setq dvi2-command “open -a Preview”)」で、呼び出すプログラムのファイル名を「”evince”」に変更(PDF ビューワー)

とりあえずこちらでも、簡単なテスト文書のコンパイルと PDF ファイルの表示はできたので OK とする。あとは実際の論文のファイルを使って他の機能が問題ないかどうか、追々テストする。

Mac OSX への YaTeX(野鳥)導入メモ

これまで自宅の Mac では TeXShop を使っていたが、大学院に置いてある Linux と同じように使えたほうが良いかなと思って、Emacs + YaTeX に移行してみる。

ちなみに OSX El Capitan(Version 10.11.6)へ導入したときのメモ。自分のための備忘録なので、例によって自分にとって必要なことしか書いてません。

1. Emacs の導入

インストール自体は homebrew で簡単。後の作業のために MELPA を使えるようにしておく。~/.emacs.d/init.d に次の記述を追加した。

(require 'package)
    (add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/"))
    (add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
    (package-initialize)

 

2. Ghostscript の導入

TeXShop の導入時に既に MacTeX は導入済みなので、homebrew で Ghostscript のみインストールした。

3. YaTeX の導入

MELPA を使ってインストールした。~/.emacs.d/init.d への追記内容は下記サイトの記述に倣った。

(参考)さりんじゃーのプログラミング日記「MacでTeX環境の構築」
http://salinger.github.io/blog/2013/02/04/1/

テストしたところ Emacs の環境にシェルの環境変数が引き継がれておらず、platex が見つからなくなっていたため、MELPA で exec-path-from-shell をインストールし、~/.emacs.d/init.d に次の記述を追加した。

(exec-path-from-shell-initialize)

(参考)「EmacsでPATHの設定が引き継がれない問題をエレガントに解決する」
http://qiita.com/catatsuy/items/3dda714f4c60c435bb25

 

とりあえず今日のところは、簡単なテスト文書のコンパイルと PDF ファイルの表示はできたので OK とする。あとは実際の論文のファイルを使って他の機能が問題ないかどうかテストする。

 


(2017.3.22 追記)
Emacs で TeX のファイルを編集していたら、「\」(バックスラッシュ)を入力できないことに気づいた(TeXShop ではアプリケーション側の設定でこの問題を解決していた)。他のアプリでは Option + ¥ で入力できるが、Emacs だとこれができない。これまた先人の知恵のおかげで、~/.emacs.d/init.el に次の行を追記することで解決した。

(define-key global-map [?¥] [?\\])  ;; ¥の代わりにバックスラッシュを入力する

(参考)[Emacs] MacOSでEmacsを使うときは、バックスラッシュにご注意
http://qiita.com/aKenjiKato/items/4ac7d9b100bdce0b8920