[備忘] texにソースコードを載せる

本日はTeXを用いてレポート作成を行う際に必要となるであろうソースコードの記載方法についてまとめておこうと思います.環境はいつも通りUbuntu14.04です.

参考にしたサイト様
TeXでソースコードを埋め込む

ソースコードを記載する際にはlistings.sty・jlisting.styという二つを使うらしいです.二つ目のstyファイルは一つ目のstyファイルを日本語対応させるためのマクロのみが含まれているようです.

それぞれのファイルが下記ディレクトリ内に含まれているか確認してみましょう.
/usr/share/texlive/texmf-dist/tex/latex/listings
端末上のコマンドでtexliveをインストールした方は恐らくこの辺にディレクトリがあるはず.なかったら頑張って探してみてください.

私はこのディレクトリ内にlistings.styというファイルはあったのでjlisting.styというファイルだけダウンロードして同ディレクトリに突っ込みました.

ファイルを移動する際に権限の関係で弾かれる方は
$ sudoΔsuΔ –
と打ってrootになり
# cdΔ/usr/share/texlive/texmf-dist/tex/latex/listings
でstyファイルをコピーしたいディレクトリに移動し
# mvΔ/ダウンロード/jlisting.styΔjlisting.sty
というコマンドによってファイルを移動できるかもしれません.(Δの部分はスペースです.)ただしこの操作によって何らかのトラブルが発生しても当サイトは責任をもちません.
ちなみにここからlistings.sty本体もダウンロードできるそうですが,私は試していないのでやり方など分かりません.

さて,二つのstyファイルを無事listingsディレクトリ内に用意することが出来たら次はインストールです.
$ cdΔ/usr/share/texlive/texmf-dist/tex/latex/listings
でディレクトリを移動し
$ sudoΔmktexlsr
というコマンドによってインストールします.
これで使えるようになったはずです.

では,実際に使ってみましょう.TeXのプリアンブルに以下を書き加えてください.
\usepackage{listings,jlisting}

\lstset{%
language={C},
basicstyle={\small},%
identifierstyle={\small},%
commentstyle={\small\itshape},%
keywordstyle={\small\bfseries},%
ndkeywordstyle={\small},%
stringstyle={\small\ttfamily},
frame={tb},
breaklines=true,
columns=[l]{fullflexible},%
numbers=left,%
xrightmargin=0zw,%
xleftmargin=3zw,%
numberstyle={\scriptsize},%
stepnumber=1,
numbersep=1zw,%
lineskip=-0.5ex%
}
各設定は自由に設定してみてください.こちらで詳しく参照できます.

ソースコードを挿入したい場所で
\lstinputlisting{ファイル名}
 と入力することによって挿入することができます.ソースコードたちをtexファイルと同ディレクトリ内に一つのフォルダsourceとしてまとめた場合{source/ファイル名}でもソースコードを挿入することができます.

実際に
Screenshot from 2015-05-05 11:06:23といった風に書いてみると
Screenshot from 2015-05-05 11:06:36といった感じで表示される.

以上で今回のまとめは終了です.誰かのお役に立てればなにより.

コメントを残す