はじめに
LaTeX で作成した文書内でソースコード(日本語を含まない)を綺麗に表示したい場合、デフォルトでインストール済みの listing パッケージを利用します。一方、日本語を含むソースコードを綺麗に表示するための jlisting パッケージは自ら導入する必要があります。そこで、LaTeX の文書内でソースコード (日本語を含む) を綺麗に表示したい方のために、jlisting パッケージのインストール手順について説明します。
また、jlisting パッケージ未インストールの状態でそれを利用した TeX ソースを無理やりビルドしようとすると、以下のエラーメッセージ 1が表示されます。
! LaTeX Error: File `jlisting.sty' not found.
そこで、このエラーが出た方のためにも jlisting パッケージのインストール手順を説明します。
前提とする PC の環境
Ubuntu20.04
できるようになること
jlisting パッケージの利用
今回行うこと
- jlisting パッケージのインストール
- 動作確認
jlisting パッケージのインストール
まず圧縮ファイル jlisting.sty.bz2
をダウンロードします。以下をクリックしてください。自動でダウンロードされます。
ダウンロードした jlisting.sty.bz2
を任意のディレクトリに配置します。例えば、~/tmp
に配置してください。
次に、~/tmp
で jlisting.sty.bz2
を解凍します。ターミナルを開き以下のコマンドを実行してください。
$ bzip2 -d ~/tmp/jlisting.sty.bz2
その後、解凍して取得した jlisting.sty
を listings パッケージのインストールディレクトリに配置します。例えば、listings パッケージのインストールディレクトリが /usr/local/texlive/2023/texmf-dist/tex/latex/listings/
の場合、以下のコマンドを実行してください。
$ cd /usr/local/texlive/2023/texmf-dist/tex/latex/listings/
$ sudo mv ~/tmp/jlisting.sty ./
jlisting.sty
の権限を設定します。以下のコマンドを実行してください。
$ chmod 644 jlisting.sty
最後に TeX Live のファイルの一覧表を更新します。以下のコマンドを実行してください。
$ sudo mktexlsr
以上の手順は "Ubuntu上のtex文書にjlistingパッケージを使ってソースコードを掲載する" を参考にしました。
動作確認
TeX ソースを用意します。例えば、以下のサンプルファイルをクリックして開き、sample.tex
として ~/tmp/tex/jlisting_test
ディレクトリに保存してください。
サンプルファイル
\documentclass{jarticle}
\usepackage{listings, jlisting}
\renewcommand{\lstlistingname}{リスト}
\lstset{
language=c,
basicstyle=\ttfamily\scriptsize,
commentstyle=\textit,
classoffset=1,
keywordstyle=\bfseries,
frame=tRBl,
framesep=5pt,
showstringspaces=false,
numbers=left,
stepnumber=1,
numberstyle=\tiny,
tabsize=2,
breaklines = true,
}
\begin{document}
\section{テスト}
\begin{lstlisting}
#include <stdio.h>
int main(void)
{
printf("hello, world\n");
printf("はろーわーるど\n"); //日本語でもOK
return 0;
}
\end{lstlisting}
\end{document}
サンプルファイルの内容は "LaTexで綺麗にソースコードを貼る方法【日本語対応可】 - 記述方法" を参考にしました。
上記の TeX ソースを正常にビルドできたら、jlisting パッケージのインストール完了です。
おわりに
上記の手順では、jlisting.sty
ファイルを listings パッケージのインストールディレクトリに配置しました。実は、その配置先をビルドする TeX ソースが置いてあるディレクトリに変えても結果は変わりません。そのため、急いでいる場合や1つの TeX ソースしか編集する予定がない場合には後者をおすすめします。その際は以下の手順を参考にしてください。
$ cd <TeX ソースがあるディレクトリ>
$ mv ~/tmp/jlisting.sty ./
$ chmod 644 jlisting.sty
$ sudo mktexlsr
参考文献
- https://osdn.net/projects/mytexpert/downloads/26068/jlisting.sty.bz2/
- Ubuntu上のtex文書にjlistingパッケージを使ってソースコードを掲載する
- LaTexで綺麗にソースコードを貼る方法【日本語対応可】 - 記述方法
-
jlisting.sty
パッケージが自身の環境 (TeX Live) にインストールされていないことを表します。 ↩