Coffee Break Script

モフモフしててニャーと鳴く気まぐれな生き物が好きです。情報を物理で工学するのが専門らしい。

TeXに行番号をつけるTips

久しぶりの更新ですね。

ところでみなさん、論文やレポートは何で書いてるんでしょうか。

Wordでしょうか? マカーはPagesとか使う人もいそうですね。

そういう人はこの記事を読まないでください。

さ、というわけで()TeXのTips紹介です。

共著者に論文をチェックしてもらったり、ジャーナルに投稿して査読してもらう段階(final camera ready原稿ではない段階)では、論文に行番号を入れて「何行目のここが〜」とかチェック/議論しやすくしておく、というのがデキる投稿者の気遣いらしいです。

TeXのよくあるディストリビューション(奥村先生の美文書本の付属CDとか)を入れている人は、おそらくlineno.styというパッケージが入っているはずで、これを使えば基本的にOK。

しかし、数式の入った段落では不具合が生じるらしく、プリアンブルにおまじないが必要になるとのこと。 ということで、

% line numbers
\usepackage{lineno}
\newcommand*\patchAmsMathEnvironmentForLineno[1]{
  \expandafter\let\csname old#1\expandafter\endcsname\csname #1\endcsname
  \expandafter\let\csname oldend#1\expandafter\endcsname\csname end#1\endcsname
  \renewenvironment{#1}
     {\linenomath\csname old#1\endcsname}
     {\csname oldend#1\endcsname\endlinenomath}}
\newcommand*\patchBothAmsMathEnvironmentsForLineno[1]{
  \patchAmsMathEnvironmentForLineno{#1}
  \patchAmsMathEnvironmentForLineno{#1*}}
\AtBeginDocument{
\patchBothAmsMathEnvironmentsForLineno{equation}
\patchBothAmsMathEnvironmentsForLineno{align}
\patchBothAmsMathEnvironmentsForLineno{flalign}
\patchBothAmsMathEnvironmentsForLineno{alignat}
\patchBothAmsMathEnvironmentsForLineno{gather}
\patchBothAmsMathEnvironmentsForLineno{multline}
}
\linenumbers

をプリアンブルにコピペしましょう。こうすれば万事解決です。

ではでは。