LaTeX の記法について
最終更新日:2018年12月12日
LaTeX の記法を紹介していきます. コンパイル環境は uplatex + dvipdfmx を想定して書いていきます.
見出し
見出しの種類
LaTeX には見出しを出力する以下のコマンドがあります.
-
\part
-
\section
-
\subsection
-
\subsubsection
-
\paragraph
-
\subparagraph
-
\chapter
(jsbook, jsreportなど限定)
これらを使って文書を章立てして作成することができます.
章番号,節番号は自動的に付加されます.
\part{ここが章になります} ここは章の中ここは章の中ここは章の中ここは章の中 ここは章の中ここは章の中ここは章の中ここは章の中 ここは章の中ここは章の中ここは章の中ここは章の中 ここは章の中ここは章の中ここは章の中ここは章の中 ここは章の中ここは章の中ここは章の中 \section{ここが節になります} ここは節の中ここは節の中ここは節の中ここは節の中 ここは節の中ここは節の中ここは節の中ここは節の中 ここは節の中ここは節の中ここは節の中ここは節の中 ここは節の中ここは節の中ここは節の中ここは節の中 ここは節の中ここは節の中ここは節の中 \subsection{ここが小節になります} ここは小節の中ここは小節の中ここは小節の中ここは小節の中 ここは小節の中ここは小節の中ここは小節の中ここは小節の中 ここは小節の中ここは小節の中ここは小節の中ここは小節の中 ここは小節の中ここは小節の中ここは小節の中ここは小節の中 ここは小節の中 \subsubsection{ここが小々節になります} ここは小々節の中ここは小々節の中ここは小々節の中ここは小々節の中 ここは小々節の中ここは小々節の中ここは小々節の中ここは小々節の中 ここは小々節の中ここは小々節の中ここは小々節の中ここは小々節の中 ここは小々節の中ここは小々節の中ここは小々節の中 \paragraph{ここが段落になります} ここは段落の中ここは段落の中ここは段落の中ここは段落の中ここは段落の中 ここは段落の中ここは段落の中ここは段落の中ここは段落の中ここは段落の中 ここは段落の中ここは段落の中ここは段落の中ここは段落の中ここは段落の中 ここは段落の中ここは段落の中 \subparagraph{ここが小段落になります} ここは小段落の中ここは小段落の中ここは小段落の中ここは小段落の中ここは小段落の中 ここは小段落の中ここは小段落の中ここは小段落の中ここは小段落の中ここは小段落の中 ここは小段落の中ここは小段落の中ここは小段落の中ここは小段落の中ここは小段落の中
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc008.png)
目次の生成
\tableofcontents
を使い,目次を表示することができます.
目次は文章中の
\section,\subsection
などから自動的に生成されます.
先程の見出し構成の例を目次にすると次のようになります.
\tableofcontents \clearpage
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc009.png)
改行,改段落,改ページ
LaTeXはソース内で改行しても,出力後の結果には反映されません.
文章内で強制的に改行をさせたい場合は,
\\
もしくは\newline
を使います.
改段落にはなりません.
段落を改める場合はソース内で2回改行するか
\par
を挿入することで,
出力後の結果も改行され,次の段落の最初の一文字分は余白が空きます.
段落の最初の一文字に余白を空けないようにするには
\noindent
を指定することで,
指定した段落のみ余白を空けません.
ページを改める場合,
\newpage
,\clearpage
のどちらかを使います.それぞれ効果は異なります.
-
\newpage
- このコマンドを挿入した先の内容から新しいページに移行する. 二段組の場合,左の段から右の段に移行する.
-
\clearpage
- このコマンドを挿入した時点で,未出力の図表がある場合,それらを全て出力してから 新しいページに移行する.二段組の場合,左の段から右の段に移行せず,次のページに移行する.
\documentclass[dvipdfmx,twocolumn]{jsarticle} \begin{document} \section{改行} \subsection{\textbackslash\textbackslash もしくは, \textbackslash newline} このように \\ 強制改行されます. 段落は改まらないので,\newline 字下げされません. \section{改段落} \subsection{\textbackslash parもしくは,ソース内2回改行} このように \par 改行されます. 字下げも されます. \subsection{\textbackslash noindent} 改段落しても \noindent 字下げされません. 次の段落から字下げされます. \section{改ページ} \subsection{\textbackslash newpage} 二段組の場合, \newpage 右端に移ります. もう一度コマンドを実行すると, \newpage 次のページの左端に移ります. \subsection{\textbackslash clearpage} 右端に移らず, \clearpage 次のページに移ります. \end{document}
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc010.png)
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc011.png)
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc012.png)
外部ファイルの読み込み
LaTeX では, tex ファイルを複数に分けて管理することができます.
\input
コマンドで引数に拡張子を除いてファイル名を入力すると,
文中に外部ファイルを読み込めます.
\include
コマンドで独立したページに外部ファイルを読み込めます.
コメントアウト
LaTeX では
%
から行末までをコメントアウトできます.
ここはコメントアウトされない.\\ ここはコメントアウトされない.\\ % ここはコメントアウトされる.\\ % ここはコメントアウトされる.\\ ここはコメントアウトされない.\\ ここはコメントアウトされない.
LaTeX は公式で複数行のコメントアウトはできません.
ここはコメントアウトされない.\\ ここはコメントアウトされない.\\ % ここはコメントアウトされる.\\ % ここはコメントアウトされる.\\ ここはコメントアウトされない.\\ ここはコメントアウトされない.
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc024.png)
特殊文字,ロゴ
制御文字の出力
LaTeX には制御文字(\, _, {, }など)があります.
例外はありますがこれらを出力するには記号の前にバックスラッシュを付けます.
バックスラッシュ自体は
\textbackslash
で出力できます.
ロゴの出力
LaTeX のロゴも出力できます.
-
\TeX
-
\LaTeX
-
\LaTeXe
その他の特殊記号の出力
他にもコマンドで出力できる特殊記号があります.
一覧などは LaTeX コマンド集
などを参照してください.
\&, \%, \$, \{, \}, \textbackslash, \\ \TeX, \LaTeX, \LaTeXe, \\ \pounds, \P, \dag, \ddag, \copyright, \textregistered
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc013.png)
文字の装飾
フォントサイズ
文中のフォントサイズを一部変更することができます.変更したい部分を波括弧でくくり,
フォントサイズを変更するコマンドを括弧内に書きます.
大きくならない部分 {\large 大きくなる部分} 大きくならない部分
フォントサイズを変更するコマンドを下記に小さい順に列挙します.
-
\tiny
-
\scriptsize
-
\footnotesize
-
\small
-
\normalsize
-
\large
-
\Large
-
\LARGE
-
\huge
-
\Huge
以下のコマンドでフォントサイズをポイントで指定することも可能です.
\fontsize{<サイズ>}{<行送り>}\selectfont
コマンドを置き換えて使えます.
大きくならない部分 {\fontsize{72pt}{0pt}\selectfont 大きくなる部分} 大きくならない部分
文字の色
colorパッケージを読み込む(プリアンブル部で
\usepackage{color}
)と
文字に色を付けることができます.
\textcolor{<色>}{<色が変わる文字列>}
例えば,文字を赤色にする場合
ここは変わらない \textcolor{red}{ここが赤色に変わる} ここも変わらない
以下は第一引数に指定できる色の種類の一覧は LaTeX コマンド集
を参照してください.
更に色の種類を増やしたい場合は xcolor パッケージを読み込みます.
書体の変更
フォントの書体を明朝体やゴシック体などに変更することもできます.
欧文の場合はローマン体やサンセリフ体などに変更できます.
例えば,和文の一部をゴシック体にする場合は以下のようにします.
ここはデフォルトの書体 \textgt{ゴシック体になる} ここもデフォルトの書体
変更できる書体は
こちら を参照してください.
\section{フォントサイズ} {\tiny 5pt} {\scriptsize 7pt} {\footnotesize 8pt} {\small 9pt} {\normalsize 10pt} {\large 12pt} {\Large 14.4pt} {\LARGE 17.28pt} {\huge 20.74pt} {\Huge 24.88pt} \section{フォントカラー} \textcolor{black}{黒} \colorbox{black}{\textcolor{white}{白}} \textcolor{red}{赤} \textcolor{green}{緑} \textcolor{blue}{青} \colorbox{black}{ \textcolor{cyan}{シアン} \textcolor{magenta}{マゼンタ} \textcolor{yellow}{黄色} } \section{書体} \textmc{明朝体} \textgt{ゴシック体} \textrm{Roman} \textsf{Sans Serif} \texttt{Typewriter} \textmd{Midium} \textbf{Bold} \textup{Uplight} \textit{Italic} \textsl{Slant} \textsc{Small Capital}
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc014.png)
箇条書き
LaTeX は様々な箇条書きで項目を列挙することができます.
通常の箇条書き
itemize環境を使うことで項目を列挙することができます.
itemコマンドの後に列挙したい項目を記述します.
\begin{itemize} \item 項目1 \item 項目2 \item 項目3 \end{itemize}
連番付きの箇条書き
行頭文字を連番にすることができます.
enumerate 環境を使うことで項目を番号付きで列挙することができます.
item コマンドの後に列挙したい項目を記述します.
\begin{enumerate} \item 項目1 \item 項目2 \item 項目3 \end{enumerate}
見出し付き箇条書き
行頭文字の代わりに見出しを付けることができます.
description 環境を使うことで見出し付きで項目を列挙することができます.
item コマンドのオプション引数に見出しを指定し,その後に列挙したい項目を記述します.
\begin{description} \item[見出し1] 項目1 \item[見出し2] 項目2 \item[見出し3] 項目3 \end{description}
\section{箇条書き} \begin{itemize} \item 項目1 \item 項目2 \item 項目3 \end{itemize} \section{番号付き箇条書き} \begin{enumerate} \item 項目1 \item 項目2 \item 項目3 \end{enumerate} \section{見出し付き箇条書き} \begin{description} \item[見出し1] 項目1 \item[見出し2] 項目2 \item[見出し3] 項目3 \end{description}
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc015.png)
基本的な数式の扱い方
数式モード
LaTeX は数式モードに入ると,変数や関数を扱うので, 欧文がデフォルトでイタリックになります. また,数式モードのみで使えるコマンド(三角関数や指数・対数関数など)があり, 上付き文字や下付き文字も出力することができます.
LaTeX にはインライン数式モードとディスプレイ数式モードがあります. インライン数式モードは文中に数式を埋め込むことができ, ディスプレイ数式モードは文とは別行立てで数式を表示できます.
$ で囲んだ部分がインライン数式モードになります.
数式モードではない $ ここはインライン数式モード $ 数式モードではない
equation 環境もしくは
\[
と\]
で囲むことでディスプレイ数式モードになります.
数式モードではない \begin{equation} ここはディスプレイ数式モード \end{equation} 数式モードではない \[ ここはディスプレイ数式モード \]
数式モードのコマンド
数式モードではコマンドでギリシャ文字を出力することができます.
例えばアルファの場合
\alpha
,ガンマの場合は\gamma
で出力することができます.その他のギリシャ文字は
ギリシャ文字一覧を
参照してください.
三角関数や指数・対数関数はコマンドを使うことで適切な余白で出力することができます. 例えばsin 関数を出力するときは
\sin x
と記述します.
他の関数については ここを
参照してください.
指数や底を表す上付き文字や下付き文字も数式モードで簡単に出力できます.
\log_a M^p = p\log_a M
と記述することで,
\[\log_a M^p = p\log_a M\]
と出力することができます.
分数や大型演算子はディスプレイ数式モードとインライン数式モードで表示が異なります. 例えば,総和や分数を表す記号は以下のような違いがあります.
数式モード | LaTeX | 出力される数式 |
---|---|---|
インライン |
$\sum_{n=1}^\infty \frac{1}{(4n-2)(4n+2)}$
|
\(\sum_{n=1}^\infty \frac{1}{(4n-2)(4n+2)}\) |
ディスプレイ |
\[\sum_{n=1}^\infty \frac{1}{(4n-2)(4n+2)}\]
|
\(\displaystyle\sum_{n=1}^\infty \frac{1}{(4n-2)(4n+2)}\) |
複数行の数式を書くときは amsmath パッケージを読み込み, aligh 環境を使います. aligh 環境を使うと,&を挿入した部分で式を揃えることができます. 例えば,等号で式を揃えたい場合,
\begin{align} 3x^2 - 12x + 12 &= 2(x^2 - 4x) + 6 \\ &= 3\{(x - 2)^2 - 4\} + 6 \end{align}
とします.
数式モード内で行列を書くこともできます. amsmath パッケージを読み込み,
bmatrix 環境, pmatrix 環境, vmatrix 環境でそれぞれ異なる括弧の行列を書くことができます.
行の区切りは&,列の区切りは\\です.
連立方程式は amsmath パッケージの cases 環境を使います. 値と条件の間は&を使い余白を空けます.
\[ x^n = \begin{cases} 1 & (n=0) \\ x \cdot x^{n-1} & (otherwise) \end{cases} \]
\documentclass[dvipdfmx,twocolumn]{jsarticle} \usepackage{amsmath} \begin{document} \section{数式モード} \subsection{インライン数式モード} 本文本文本文$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$本文本文 \subsection{ディスプレイ数式モード} 本文本文 \[ x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} \] 本文本文 \section{数式モードのコマンド} \[ \zeta(s) = \sum_{n=0}^\infty \frac{1}{n^s} \] \section{インライン数式モードとディスプレイ数式モードの違い} インライン数式モードは$\zeta(s) = \sum_{n=0}^\infty \frac{1}{n^s}$である. ディスプレイ数式モードは \[ \zeta(s) = \sum_{n=0}^\infty \frac{1}{n^s} \] である. \section{複数行からなる数式} \begin{align} 3x^2 - 12x + 12 &= 2(x^2 - 4x) + 6 \\ &= 3\{(x - 2)^2 - 4\} + 6 \end{align} \section{行列} \subsection{pmatrix} \[ \begin{pmatrix} x^\prime \\ y^\prime \end{pmatrix} = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix} \begin{pmatrix} x \\ y \end{pmatrix} \] \subsection{bmatrix} \[ \begin{bmatrix} x^\prime \\ y^\prime \end{bmatrix} = \begin{bmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix} \] \subsection{vmatrix} \[ \begin{vmatrix} a & b \\ c & d \end{vmatrix} = ad - bc \] \section{連立方程式} \[ x^n = \begin{cases} 1 & (n=0) \\ x \cdot x^{n-1} & (otherwise) \end{cases} \] \end{document}
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc016.png)
図表
図の表示には graphicx パッケージが
必要です(
\usepackage{graphicx}
で読み込む).
また,ドライバに dvipdfmx を使用することを明示的に指定する必要があるので,
1行目の
\documentclass
コマンドのオプション引数に必ず指定してください.
\documentclass[dvipdfmx,uplatex]{jsarticle}
画像を読み込みたい部分に
\includegraphics
コマンドを記述します.
以下の様に記述します.
\includegraphics{<使いたい画像の名前>}
また,サイズを調整しなければ画像がはみ出てしまう場合があるため,
オプション引数でサイズを指定することができます.
例えば, hoge.jpg という画像を文書内の文章の横幅に合わせて出力したい場合,
\includegraphics[width=\hsize]{hoge.jpg}
と記述します.サイズ指定のオプションは他にもあり,高さを合わせたい場合は
\includegraphics[height=300pt]{hoge.jpg}
など,倍率で合わせる場合は
\includegraphics[scale=0.5]{hoge.jpg}
などと指定します.
表の作成は tabular 環境を使います. tabular 環境の引数には
- 列数
- 縦罫線の有無
- セル内の水平方向の配置
を指定できます.
次の条件で表を作る場合
- 4列
- 1,2列目の間のみ罫線,それ以外,罫線なし
- 1行目のみ中央,それ以外,左寄せ
tabular 環境の引数は次のようになります.
\begin{tabular}{c|lll}
次に表の中身ですが,列の区切りは
&
で表し,
行の区切りは
\\
で表します.
また,横罫線は
\hline
で挿入します.
例えば,次の4x3の表であれば,
\begin{tabular}{{c|lll}} 1 & 2 & 3 & 4 \hline \\ 5 & 6 & 7 & 8 \\ 9 & 10 & 11 & 12 \end{tabular}
表の画像入れる
のように表示されます..
表や図には図表番号とキャプションを付けることができます. 図の場合は figure 環境,表の場合は table 環境を使います. これらの環境を総じてフロート環境と呼びます. フロート環境は引数に図表の出力位置を指定することができます. 引数と出力位置の対応は次の通りです.
引数 | 出力位置 |
---|---|
h | その場 |
t | ページ上部 |
b | ページ下部 |
p | 独立したページ |
また,引数には複数の文字を入れることで優先順位を決めることができます.
引数に
htbp
と指定した場合,最も優先される引数はh
で最も優先順位が低いのは
p
となります.指定した位置に出力できない場合,
次の優先順位に移行します.
図や表のキャプションはフロート環境内のみで付けることができます.
キャプションは
\caption
コマンドで付けます.
表のキャプションは上に,図のキャプションは下に付けます.
\begin{figure}[htbp] \includegraphics[width=\hsize]{hoge.jpg} \caption{hoge.jpgの図} \end{figure} \begin{table}[htbp] \caption{4x3の表} \begin{tabular}{{c|lll}} 1 & 2 & 3 & 4 \hline \\ 5 & 6 & 7 & 8 \\ 9 & 10 & 11 & 12 \end{tabular} \end{table}
LaTeX はキャプションを付けたときに図番号や表番号が自動的に付与されます.
これらの番号はラベル付けすることで文中でその番号をラベル名から参照することが可能です.
ラベル付けは
\label
コマンド,参照は\ref
コマンドです.
\begin{figure}[htbp] \includegraphics[width=\hsize]{hoge.jpg} \caption{hoge.jpgの図} \label{fig:example} \end{figure} \begin{table}[htbp] \label{tab:example} \caption{4x3の表} \begin{tabular}{{c|lll}} 1 & 2 & 3 & 4 \hline \\ 5 & 6 & 7 & 8 \\ 9 & 10 & 11 & 12 \end{tabular} \end{table} 例の画像を図\ref{fig:example}に示す. 例の表を表\ref{tab:example}に示す
ラベル名は自由ですが,図のラベルは
fig:
,
表のラベルは
tab:
を頭につけることが慣例になっています.
図や表は中央揃えや左寄せ,右寄せにできます.
フロートの環境内で
\centering>
コマンドを使うことで中央揃えになります.
左寄せは
\flushleft>
,右寄せは\flushright>
です.
図や表を複数枚横並びにする場合は minipage 環境を使います.
この環境は名前通り,ページ内に小さいページを作ることができます.
オプション引数には隣合う minipage 同士を揃える位置を指定することができます.
第二引数にはページの幅を指定します.例えば2つの図表を並べる場合は1つの図表に付き,
文章の幅の半分だけ必要なので,文章の幅を表す
\hsize
に余白分を考慮し,
0.49倍をminipageの幅とします.
\begin{figure} \begin{minipage}[t]{.49\hsize} \includegraphics[width=\hsize]{<1つ目の図>} \end{minipage} \begin{minipage}[t]{.49\hsize} \includegraphics[width=\hsize]{<2つ目の図>} \end{minipage} \end{figure}
画像の幅を
\hsize
で指定してますが,
値が minipage 内であることを考慮して変わっているので,
そのまま,倍率を変えず使うことができます.
\documentclass[dvipdfmx,uplatex]{jsarticle} \usepackage{graphicx} \begin{document} \section{図} \begin{figure}[htbp] \centering \includegraphics[width=\hsize]{cloudlatex_logo.pdf} \caption{文章と同じ横幅の中央揃えのCloud LaTeXのロゴ} \label{fig:full_width_cloud_latex} \end{figure} \begin{figure}[htbp] \flushleft \includegraphics[height=20pt]{cloudlatex_logo.pdf} \caption{高さが20ptの左寄せのCloud LaTeXのロゴ} \label{fig:20pt_height_cloud_latex} \end{figure} \begin{figure}[htbp] \flushright \includegraphics[scale=0.5]{cloudlatex_logo.pdf} \caption{倍率50\% の右寄せのCloud LaTeXのロゴ} \label{fig:half_cloud_latex} \end{figure} 図\ref{fig:full_width_cloud_latex}に文章の幅に合わせたサイズのCloud LaTeXのロゴを示す. 図\ref{fig:20pt_height_cloud_latex}に高さを20ptに指定したCloud LaTeXのロゴを示す. 図\ref{fig:half_cloud_latex}に倍率を50\% に指定したCloud LaTeXのロゴを示す. \section{表} \begin{table}[htbp] \centering \caption{4x3の表} \label{tab:example} \begin{tabular}{{c|lll}} 1 & 2 & 3 & 4 \\ \hline 5 & 6 & 7 & 8 \\ 9 & 10 & 11 & 12 \end{tabular} \end{table} 表\ref{tab:example}に例の表を示す. \section{複数の図表を並べる} \begin{figure}[htbp] \begin{minipage}[t]{.49\hsize} \includegraphics[width=\hsize]{cloudlatex_logo.pdf} \caption{Cloud LaTeXのロゴ} \end{minipage} \begin{minipage}[t]{.49\hsize} \includegraphics[width=\hsize]{logo_acaric.png} \caption{アカリクのロゴ} \end{minipage} \end{figure} \end{document}
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc017.png)
ソースコード
LaTeX にソースコードを載せる最も簡単な方法は itembox 環境と verbatim 環境を使うことです. itembox 環境は ascmac パッケージを読み込む必要があります. itembox 環境は環境内に書いたテキストを囲み,見出しを付けることができます.
\begin{itembox}[l]{ここに見出しが左寄せで入る} 環境内 \end{itembox}
verbatim 環境は環境内に書いたテキストが見た目通りに出力されます.
\begin{verbatim} \documentclass[dvipdfmx]{jsarticle} \begin{document} Hello, \LaTeX \end{document} \end{verbatim}
この2つを組み合わせることで,簡単にソースコードを LaTeX に載せることができます.
\begin{itembox}[l]{C言語でHello,World} \begin{verbatim} #include<stdio.h> int main(void){ printf("Hello, World"); return 0; } \end{verbatim} \end{itembox}
しかし, verbatim 環境によって,自動改行が無効化されているため,
ソースコードが横に長くなる場合,ページからはみ出てしまうという欠点があります.
また,改ページもされないため,縦に長い場合もページからはみ出てしまいます.
ソースコードを載せるための環境として listings パッケージがあります.
\usepackage{listings} % listingを使うため \usepackage{jlisting} % listingを日本語に対応させるため
このパッケージはソースコードをハイライトして出力することができます.
まずは予め,プリアンブル部に listings の設定を書きます.
\lstset{% language={C}, % 載せるソースコードの言語を指定する basicstyle={\small}, % 通常のソースのフォントを設定 identifierstyle={\small},% 変数名などのフォントを設定 commentstyle={\small\itshape\color[rgb]{0,0.5,0}}, % コメントのフォントを設定 keywordstyle={\small\bfseries\color[rgb]{0,0,1}}, % 予約語のフォントを設定 ndkeywordstyle={\small}, % keywordstyle以外に定義されている予約語のフォントを設定 stringstyle={\small\ttfamily\color[rgb]{1,0,1}}, % 文字列のフォントを設定 frame={tb}, % 実線で描く枠の位置指定 breaklines=true, % 自動改行の有無 columns=[l]{fullflexible},% 文字間の余白 numbers=left, % 行番号の位置 xrightmargin=0zw, % 右側の余白 xleftmargin=3zw, % 左側の余白 numberstyle={\scriptsize}, % 行番号のフォント stepnumber=1, % 行番号の刻み幅 numbersep=1zw, % 行番号とソースコードの余白 lineskip=-0.5ex, % 行間 }
document 環境内の lstlistings 環境内にソースコードを載せます.
\begin{lstlisting}[caption=listingのテスト,label=listTest] #include<stdio.h> int main(void){ printf("Hello World!!\"); return 0; } \end{lstlisting}
ちなみにオプション引数にキャプションと参照用のラベルを指定することができます.
LaTeX のソース内に直接プログラムのソースを書くことができますが,
ソースコードのファイルを読み込み,出力することも可能です.
例えば, example.c というファイルを読み込む場合
\lstinputlisting[caption=ファイル読み込みの例,label=example]{example.c}
となります.
\documentclass[dvipdfmx,uplatex]{jsarticle} \usepackage{color} \usepackage{listings} \usepackage{jlisting} \usepackage{ascmac} \lstset{% language={C}, % 載せるソースコードの言語を指定する basicstyle={\small}, % 通常のソースのフォントを設定 identifierstyle={\small},% 変数名などのフォントを設定 commentstyle={\small\itshape\color[rgb]{0,0.5,0}}, % コメントのフォントを設定 keywordstyle={\small\bfseries\color[rgb]{0,0,1}}, % 予約語のフォントを設定 ndkeywordstyle={\small}, % keywordstyle以外に定義されている予約語のフォントを設定 stringstyle={\small\ttfamily\color[rgb]{1,0,1}}, % 文字列のフォントを設定 frame={tb}, % 実線で描く枠の位置指定 breaklines=true, % 自動改行の有無 columns=[l]{fullflexible},% 文字間の余白 numbers=left, % 行番号の位置 xrightmargin=0zw, % 右側の余白 xleftmargin=3zw, % 左側の余白 numberstyle={\scriptsize}, % 行番号のフォント stepnumber=1, % 行番号の刻み幅 numbersep=1zw, % 行番号とソースコードの余白 lineskip=-0.5ex, % 行間 } \begin{document} \begin{itembox}[l]{C言語でHello,World} \begin{verbatim} #include<stdio.h> int main(void){ printf("Hello, World"); return 0; } \end{verbatim} \end{itembox} \begin{lstlisting}[caption=listingのテスト,label=listTest] #include<stdio.h> int main(void){ printf("Hello World!!\"); return 0; } \end{lstlisting} \lstinputlisting[caption=ファイル読み込みの例,label=example]{example.c} \end{document}
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc022.png)
参考文献の載せ方
参考文献を載せるにはBibTeXというツールを使います. Cloud LaTeX の場合, BibTeX をほとんど意識しなくても使うことができます. まずは bib ファイルの作成を行います.
bib ファイルには参考文献として載せたい文献の情報を記載します. 文献の情報を下記のようなフォーマットに基づいて書いていきます.
@<文献の種類>{<ラベル名> author = "<著者>", title = "<文献タイトル>", year = "<出版日など>", etc... }
文献の種類や種類毎の必須項目,任意項目については ここ
に詳しく記載してあります.
例えば,奥村晴彦先生の LaTeX2e 美文書作成入門を文献として参照したい場合
bib ファイルには次の様に書きます.
@book{bibunsho, title = "LaTeX2e 美文書作成入門", author = "奥村晴彦 \and 黒木裕介", publisher = "技術評論社", year = "2013", edition = "改訂第6版" }
文中で参照したい場合は
\cite
コマンドを使います.
本文本文参照したい部分\cite{bibunsho}本文本文
文書の末尾に参考文献の一覧を記載するには次のコマンドで出力します.
\bibliographystyle{junsrt} \bibliography{<文献データベースファイル名(.bibはつけない)>}
Cloud LaTeX で bib ファイルを作成するときは画面左端の「+」ボタンから「新規ファイル」をクリックし,
作成します.自分の PC から読み込むときはソースコードを載せるときと同様の手順で読み込むことが可能です.
\documentclass[dvipdfmx,uplatex]{jsarticle} \begin{document} 奥村先生の美文書作成入門\cite{bibunsho}は \LaTeX を学ぶ上でとても参考になる. \bibliographystyle{junsrt} \bibliography{citation} \end{document}
![image](https://s3-ap-northeast-1.amazonaws.com/cloudlatex.io/index_files/latex_notation/sc023.png)