『pLaTeX2eチートシート』を作りました

2017-01-13 (updated: 2025-12-09) #LaTeX

pLaTeX2eでよく用いられる命令を2ページにまとめた『pLaTeX2eチートシート』(日本語LaTeXのコマンド一覧)を作成しました。

Warning

本稿の情報は古いです。より新しい情報についてはこちらを参照してください。

pLaTeX2eチートシートp.1

pLaTeX2eチートシートp.2

PDF版およびソースコードはそれぞれ以下のリンクから入手できます。

既にTeX Liveにも収録済みなので、最新のTeX Liveが利用可能な環境であれば、以下のコマンド一発で表示させることができます。

$ texdoc platexsheet

また、本チートシート末尾に記載されている「pLaTeX文書のサンプル」の組版結果も以下で閲覧できます。

$ texdoc platexsample

想定ユーザ

『pLaTeX2eチートシート』はLaTeXの使い方を一通り学習したことのある方の利用を想定して作成されています。

完全なLaTeX未経験者が本シートを利用することは想定しておらず、作者としては少なくとも一度は市販の入門書等を利用して体系的にLaTeXについての知識を習得してからこのチートシートを活用していただくことを強く推奨します1

補足事項

Winston Changの*LaTeX2e Cheat Sheet*(以下「英語版」と呼称)を出発点に作成を開始しましたが、もはや単なる翻訳版とは言えないほど大掛かりにpLaTeX2e版独自の変更を加えています。

守備範囲

英語版には特定のパッケージを読み込んだ場合にしか利用できない命令や環境についての言及がありますが、pLaTeX2e版では完全にLaTeX標準の機能のみに絞って記載を行っています。

これはクラスについても同様で、現在の日本では奥村先生によるpLaTeX2e新ドキュメントクラス(jsclasses)のユーザが多いことはわかっておりますが、あくまでpLaTeXに添付されている “標準” クラスはjclassesなのでこちらのみに言及しています2

当然、pLaTeX2eを使いこなすには標準外のクラスやパッケージの知識も必要になると思いますが、それらは本チートシートの守備範囲外です。そうした知識については各成果物に付属するドキュメント3やその他の文献を参照してください。

BibTeXについて

英語版にはBibTeXの使い方(フィールド名やエントリ名など)について比較的多くのスペースが割かれていましたが、pLaTeX2e版ではそのほとんどを排除しました。

これはBibTeXがLaTeXにとって外部プログラムにあたるためというのもありますが、同時に「2017年においてBibTeXの文献データベースは手打ちすべきものとは考えられない」という私見がその判断の根底にあります。

すなわちBibTeX用の文献データベース(*.bibファイル)はMendeleyなどの文献管理ソフトやGoogle Scholarの検索結果から簡単にエクスポートすることが可能です。また、Amazonでの検索結果をBibTeX形式で出力できるLead2Amazonというサービスもあります。

このような状況の中「BibTeXデータベースを手打ちする」などというのはほとんど時間の無駄遣いに近い作業です。そのため、チートシートにはBibTeX関連の詳細な情報は不要と判断し、これを思い切って削除しました。

謝辞

『pLaTeX2eチートシート』はv1.0の公開以来、多数のフィードバックをいただきました。現在の最新版であるv2.0を作成するにあたっては、それらの意見が参考になりました。特にZRさんにはGitHub上で多くの指摘をいただき、大変助かりました。この場を借りて、深謝の意を表します。

付録:CTAN登録に関するTips

ここからは開発者向けの情報です。CTAN登録についての基礎的な情報はアミノフェンさんの記事(付録の部分)に詳しい記載があるのでそれを参考にするといいと思います。ここでは今回私が『pLaTeX2eチートシート』をCTANに登録するにあたって得た細かな知見を共有しておきます。

READMEは概要だけでも英語で書く必要がある

『pLaTeX2eチートシート』は日本人による日本人のための日本語ドキュメント(パッケージ)なので当初READMEは完全に日本語で記述したものしか用意していませんでした。しかし、これをアップロードしたところ「CTAN用のAnnouncement4 と同様の内容で構わないので(1段落分)、READMEに英語の説明を追加してくれ」と依頼されました。

つまり、CTANに成果物を上げる場合、READMEは全文が英語である必要はないようですが(たとえ完全に日本人のみを対象とする成果物でも)少なくとも概要については英語での記載を行った方がよいようです。

サイレントアップデートでもTeX Liveに反映される

私が最初にアップロードしたPDFには相互参照が解決していないものが含まれていたため、後日これを修正したものを再度アップロードしました(ソースコードに変更はないためバージョンは据え置きました)。

このときにはCTAN上でアナウンスの流れない“Update (without announcement)”を選択したのですが、それでもTeX Liveには即日更新内容が反映されました。したがってサイレントアップデートでもTeX Liveチームに更新を検知してもらえるようです。

情報の修正依頼には迅速に対応してもらえる

CTAN上のplatexcheatパッケージの情報には当初以下の問題がありました:

  • “Package Documentation”としてplatexcheat.pdfへのリンクが貼られていた5
  • メンテナである私の名前の綴りが間違っていた

先述のサイレントアップデートを行う際に、これらの2点について“Administrative notes (to the CTAN maintainers)”にて修正を依頼したところ、快く引き受けていただけました。本当に、CTANの中の人には頭が下がります。


  1. Markdownのように単純な仕様であればチートシートを眺めるだけでも習得できると思いますが、LaTeXはそれなりに複雑なシステムなのでそのような方法で使えるようにはならないと思います(仮にできたとしてもいずれ後悔することになる可能性が高いです)。 ↩︎

  2. 少しでも “標準外” に言及をしてしまうと「どこまでを含めるか」という線引きが難しくなるためです。 ↩︎

  3. TeX Liveに収録されているドキュメントについては『TeX Liveドキュメント案内』に詳述してあるので、よろしければ参考にしてください。 ↩︎

  4. これは英語で書くことが義務付けられています。 ↩︎

  5. platexcheatパッケージにおいてplatexcheat.pdfは「文書本体」なので(他のパッケージの例を見ても)“Documentation itself”もしくは類似の表記が適当です。 ↩︎