a-shellでiPad用のLaTeX環境を整える

iPad mini (A17 pro) でドキュメントを作成してみようと思い立ちました。オフライン実行可能なLaTeX環境を作ることができましたので、備忘録として残しておきます。

3行でまとめると

  • a-shellでTeX Live2025をインストール
  • Tex Wikiチュートリアルに従って、LuaTexの文法でtexファイルを作成
  • オフライン環境でもLaTeXでドキュメント作成可能な環境が完成

1. ドキュメント作成環境の比較

単にドキュメントを作成すると言えども様々な環境があります。パッと思いついたいくつかの技術を比較してみました。

No. 名称 メリット デメリット
1 Word ・Officeソフトの定番
・互換性が高い
サブスクリプション必須(iPad miniでも無料にならなかった)
2 Pages Apple純正Officeソフト
・無料で永続利用可能
Apple端末のみ
3 Markdown ・テキストベース
・さまざまなツールがMarkdown対応している
・表現力に限界がある(表関連が辛い)
4 Asciidoc ・テキストベース
Markdownより表現力が高い
・対応ツールが少ない
5 LaTeX ・テキストベース
・論文や書籍にも利用されている
・環境構築が面倒

Asciidocにも興味がありましたが、iPadでの環境構築事例が見当たりませんでした。 試行錯誤してなんとか環境構築することが目的ではないので、事例が豊富なLaTeXを採用することにしました。

2. iPadでのLaTeX環境事例の調査

LaTeXのことならこのサイトということで、TeX Wiki を確認してみました。すると、ちょうどOS別にまとめられておりました。

texwiki.texjp.org

ターミナルエミュレータのa-shellでLuaTexが動作するようです。以前は日本語環境のLaTeXといえばpLaTeXの印象がありましたが、色々なLaTeXがあるようです。 LuaTeXにはさまざま特徴があるようですが、DVIファイルを介さずにPDFを出力可能なのは、素人目にも分かる大きな変化点でした。

3. iPadでのLaTex環境構築

アプリをインストールして、2つのコマンド投入だけで環境構築ができました。

  1. a-shellのインストール
  2. TeX Live 2025のインストール
    • pkg install texlive-2025
  3. TeX Live用のフォントをインストール
    • pkg install texlive_fonts-2025

画像はApple silliconのMacにて、iOS / iPadOS用のa-shellを動かしているものです。iPadで試行錯誤するのが手間でしたので、Macで動作確認を行っていました。 以降もMac上でa-shellを実行しておりますが、挙動はiPadと同じです。

4. ドキュメントを作成する

久しぶりのLaTeXでのドキュメント作成のため、文法などもあまり記憶にありませんでした。 そこで、前述のTeX Wikiの入門記事から順に進めていくこととしました。

texwiki.texjp.org

4-1. 作業用のディレクトリやファイルの準備

4-2. picoでtexファイルの内容を編集する

Tex Wikiの記載例通りにそのまま入力します。

\documentclass{jlreq}
\begin{document}

吾輩は猫である。名前はまだ無い。

どこで生れたかとんと見当がつかぬ。
何でも薄暗いじめじめした所で
ニャーニャー泣いていた事だけは記憶している。
吾輩はここで始めて人間というものを見た。

\end{document}

編集を終了する際は、^X Exitですので、controlを押下したままXを押下します。 次に、保存の有無を聞かれるので、yで上書き保存します。

4-3. pdfファイルを出力する

4-4. pdfファイルを確認する(iPad)

iPadであれば、view test.pdfで内蔵ビュアーで閲覧できます。

4-5. pdfファイルを確認する(Mac)

Macでは内蔵ビュアーでは開けませんでした。そこで、iCloudDriveにファイルをコピーして、Finderから確認することにしました。

無事にMacでもpdfファイルが正しくできたことを確認できました。

おわりに

iPadでもMacでも動作するLaTeX環境を構築できました。ローカルにファイルを作成すれば、オフライン環境でもpdfを作成可能です。iCloudに保存すれば、複数端末で同期できるので、これはこれで便利そうです。この環境でドキュメント作成をしてみようと思います。