4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

TeX/LaTeXで日本語の原稿と英語の原稿を切り替えたいとき

Last updated at Posted at 2020-04-19

はじめに

現在、国際学会向けの論文を書いています。
ただ、あまり自分では自信のある内容ではないので、間に合ったとしても落ちる可能性大ですが・・・ (でも最後まで頑張ってみます><)

さて、国際学会ということは英語なので、英語で書く必要があります(?)
ただ、僕は論文を英語で書きなれていないのでまずは「日本語」で書くことになりました。

日本語で書き終わった後、英語にする必要がありますが実際に
すべての日本語を1文1文消して直接英語にするのは面倒なので避けたいところです(元の日本語の文も消えてしまうため)

そこで、日本語の原稿の中に英語の文章も追加して、なにか変数一つで切り替えられないか考えることにしました。
(TeX/LaTeX初心者です>< 間違いがあればどんどんコメントいただければうれしいです!)

TeXのマクロ

組版システムであるTeXには、
\ifelse, \newifなどのマクロが存在しています。
これは、TeXファイルをコンパイル時にこれらのマクロをコンパイラが読んで、実行を変えるものです。

原稿状態の日本語を英語に変えるには、「\newif, if, else, fi」を用います。

\documentclass[]{jsreport}

\newif\ifdraft

% 日本語
\drafttrue

% English
% \draftfalse

\begin{document}

\ifdraft

ここは日本語です。

\else

This is English.

\fi

\end{document}

上記のようなTeXファイルを作成します。

\newifは新しいifマクロを定義していて
\ifdraft(原稿かどうか?)のマクロを作っています。

そして、drafttrueで原稿状態であるということを定義します。

これによって、\ifdraftから\elseの内部のみが展開され、
英語部分は利用されません。

スクリーンショット 2020-04-19 16.32.13.png
\documentclass[]{jsreport}

\newif\ifdraft

% 日本語
% \drafttrue

% English
\draftfalse

\begin{document}

\ifdraft

ここは日本語です。

\else

This is English.

\fi

\end{document}

上記のようにすることで、draftfalseになり
\elseから'\fi'までが実行されます。

スクリーンショット 2020-04-19 16.32.31.png

LaTeXのコマンド

TeXは、システムかつ言語であり、組版を作るための言語として開発されました。
しかし、TeXは高度かつ難しいため、いろいろな文法をTeX言語を用いて拡張したものが$\LaTeX$です。

そのため、LaTeXはTeXの拡張であり、子クラスみたいな存在に当たります。

TeX自体で、先程のマクロを触るのは大変難しいらしく(ベテラン向け)、初心者は拡張された優しい文法のLaTeXを用います(一般的に言われているのは最近はこっち)。

そのため、先程のifの分岐は、より優しく書くこと、柔軟に書くことができ

LaTeX で条件分岐や反復処理:ifthen パッケージのキホン
で丁寧に説明されています。

例えば、日本語と英語の切り替えは以下のようにコマンドで行えます。

\documentclass[]{jsreport}
\usepackage{ifthen}

\newboolean{Draft}
\setboolean{Draft}{false}

\begin{document}

\ifthenelse{\boolean{Draft}}{
    ここは日本語です。
}{
    This is English.
}


\end{document}

拡張版のLaTeXを用いることで、他の様々な細かく柔軟な条件分岐を行うことができるため、こちらを使っていくのがいいのだろうと思います。

参考文献

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?