読者です 読者をやめる 読者になる 読者になる

カイヤン雑記帳

カイヤンがやったことを書いておいたり、ぼやきたいことを書き込んだりする場所

Linuxに完全敗北した/TeXWorksは救い

TeX 思想・宗教

おはようございますまたはこんにちはまたはこんばんは。カイヤンです。 今日はTeXについてぼやきます。

導入

さて、この春から数理・計算科学な専門に変わったのですが、 そうなると今までのようにMSWordで文章を作るだけでは行かなくなってきました。 かつていた生命科学の場では、数式をほとんど使わないため学位論文だけでなく、 ジャーナル論文も多くはMSWordで書かれていたのですが、 数式を多用する今の専攻ではMSWordでは重すぎることが多くなりそうです。

MSWordは形式的な文を書くのに向かないと、Windowsに親を殺されてない人でも思っている人は多いでしょうが、 スタイル機能を(必要に応じて自ら設定して)利用すればむしろsubsectionに限りがあるTeXより高い自由度を誇ります。 (無論TeXスクリプトをいじればいくらでも--チューリング完全らしいですね--自由にできるのですが、ものすごく面倒らしいです。) しかし、数式の重さだけはGUIの宿命なのか、どうしようもありません。MSには早くCUIをOfficeに搭載して欲しいものです。

というわけでTeX環境を導入したいと思いました。第一クオーターは課題に追われ、環境構築どころでさえなかったのですが、 第二クオーターでは時間があったのでやってみました。

方法と結果

環境選び

WindowsTeXは導入するのも運用するのも非常に辛い」

私の周りでよくこんなことを聞いていました。Windowsは想定内のことは極めて簡単にできるので大好きなOSなのですが、 TeXを使わないといけないという状況である以上、他のOSも見てみることにしました。 MacOSXUNIXベースゆえ、導入が非常に楽と聞きました。しかしお金が掛かります。 そこでLinux仮想マシンにいれてみようと考えました。

さて、仮想マシンをいれるとなるとホスト側に相応のスペックが必要となります。 研究室のデスクトップPCは16GBのメモリと2GHzのCPUというなかなか高いスペックを持ち、 普段のメモリ使用率も高々20%程度でした。4GBくらい普通に仮想マシンに明け渡せます。 一方、自分のラップトップは、4GBのメモリと1.7GHzのCPUです。これはひどい。WoTとか遊べないスペックです。 こんな状況でUbuntuやMintをいれても満足に動かせないのは自明です。

研究室のデスクトップには、LinuxMintをいれました。 さて、自前のラップトップはどうしましょうか? Linuxをメインマシンにしたいわけではないのはもちろん、開発がしたいわけでもありません。 まだまだバグが多いらしいですが、そろそろWindows10にbashが導入されるみたいですし。きっとpython3.xの開発も cygwinいらずでできるようになるだろうと思っています。よってLinuxの用途はTeXの運用に限るのです。

従って、Mintみたいないろんな機能は不要である、TeXを動かす必要最小限の機能さえ選んでおけば良い。 そのように考えました。周囲の方にも伺うと、選択肢は2つでした:

Arch LinuxGentoo Linux

正直、Windowsに魂を売った私がまさか生きているうちにこいつらを使うことになるとは思いませんでした。 さて、最小をモットーとするArchか、選択をモットーとするGentooかとなったわけです。 #ArchInstallBattle だの#GentooInstallBattle だの、インストールするだけで戦いになるようなOSですが、どちらをいれるべきでしょうか。

ArchはGentooに比べればカジュアルに導入できる一方、更新が早く、管理に非常にコストがかかると聞きます。 その点、Gentooは最初に苦労すればあとは”使いやすい”と。そういうわけで私の#GentooInstallBattleがはじまりました。 Twitter実況する余裕なかったからしてないけど。

GentooInstallBattle

タイトルからお察しでしょうが先に結論を述べます。 負けました。 Gentooをメインマシンにしているという方にかなり丁寧に教えていただけたにもかかわらず、 カーネルの設定にすら漕ぎつけませんでした。

emerge --ask --update --deep --newuse @world

がうまく動いていないのかなんなのか。一晩かけたリビルドもどこかでこけていたようです。 ロケールの設定で負けました。GentooWikiのハンドブックを訳してくれたのに、支援者の方には申し訳ない。 せっかくなのでいつかまたリトライしたい。その日まで仮想マシンはとっておきます。

Mintについて

一方の研究室PCのLinuxMint。5GBのメモリを与えてやると普通にぬるぬる動きます。あっけなくインストールは完了、 さらに日本語化もうまくいきました。このままお気に入りのエディタをいれてTeX環境を構築すれば勝ちです。 というわけでSublime Text 3を導入します。ぐぐったとおりにやればあっけなく導入できました。 sublime_text.desktopをいじってもなぜかアイコンが表示できませんでしたが。 さて、日本語入力に対応させてあげれば、あとはtexliveをいれておしまいです。それでおしまいというのがUNIXの強みと聞きます。

で、肝心の日本語入力はというと、てんでダメでした。こちらも何かが足りないだのynuってなんぞやと言われてしまい、 結局日本語入力は叶わず。emacsだとできたのですが、使い慣れてないエディタなのでうーんという感じ。 これを機にemacsを使えばいいのでしょうが、数理計算といえど私は数理側の人間。理論研究してうまくいったらMATLABで 数値実験すれば修士としては万々歳で、ばりばりコーディングする低レイヤ開発に全く興味も必要もないのです。 そんな高級なエディタに慣れるリソースがあったら数学をやれという。高級エディタは自転車のようなものらしいので 興味はあるのですが、これもいつかリトライということで。

TeXWorks

Linuxには完全敗北したので、また今度にしました。とはいえ本題のTeX環境構築はしないといけません。 弱者は弱者らしくWordでポチポチやればいいと思う人もいるでしょうが、Wordはある程度TeXコマンドに対応しているのでGUIポチポチなんてしませんし、 そういう人が嫌う拡張子を.docxで指定するようなことが.texだとジャーナルなどで公然と行われているということもある(とボスが言ってた)以上、TeXをなんとかして導入する必要があるわけです。

さて、WindowsTeXをいれようとしてつらみを感じたことが私もあったのですが、それは2013年のころ。今は2016年と随分と時間が経ちました。 そこでググってみると、非常に素晴らしいものが公開されていました:

TeXインストーラ3

これはこちらのブログで見つけたのですが、そのブログで使い方が丁寧に説明されていました。

北大数学科と上述のブログに圧倒的感謝!

ブログの説明通り、流れに沿っていくとあっけなくTeXWorksを含めたLaTeX環境が構築されました! 環境が出来上がったので、これからは好きなエディタで書いたコードをTeXWorksにはりつけてコンパイルすればいいだけです。

結論

  • Linuxは難しい

  • TeXWorksは救い

以上です。ではまた。