技術書典7にサークル参加したことの振り返りも終わったので、同人誌制作の振り返りへ。
今日は参考文献の一覧の作り方について。
なお、とは区別せずに扱っている。
参考にしたのは以下:
LaTeX2ε辞典 増補改訂版 (DESKTOP REFERENCE)
- 作者: 吉永徹美
- 出版社/メーカー: 翔泳社
- 発売日: 2018/08/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
参考文献の一覧を作る2つの方法
で参考文献の一覧を作る場合、2つの方法がある:
thebibliography
環境を使って参考文献を手動でリストアップする- BibTeXを使い
\bibliography
によって参考文献を半自動で出力する
参考文献のデータベースがある場合、後者を使えばいろいろ便利なのだけど、そうでない場合はあまり後者を使うメリットはないと思う。
特に今回は後者だと細かい調整が大変そうだったので、前者の方法を使った。
thebibliography
環境の使い方
thebibliography
環境は以下のように使う:
\begin{thebibliography}{<n>} \bibitem{<refname>} <refitem> ... \end{thebibliography}
<n>
は文献番号の数字の最大幅と同じ幅の文字列。
何言ってるんだという感じだけど、基本的には以下のようにしておけばいい:
<n> |
説明 |
---|---|
9 | 文献番号の数字は最大1桁(1〜9) |
99 | 文献番号の数字は最大2桁(1〜99) |
999 | 文献番号の数字は最大3桁(1〜999) |
<refname>
は参照するときに使う名前。
例えば\cite{<refname>}
とすると[<文献番号>]
と文献への参照が入る。
<refitem>
は参考文献の情報。
著者とか、本のタイトルとか、出版社、出版年などの情報を書く。
ここは文献の種類によってスタイルがあるようなので、それを守って書くといい。
自分の場合、試しにBibTeXで出力してみて、その出力を真似してみた。
書籍の場合だと、以下のような感じ:
<著者名>. \newblock 『<本のタイトル>』. \newblock <出版社>, <出版年>.
Webページは以下のようにした:
<Webページ名>. \newblock <URL>.
参考文献での小見出し
参考文献もいろいろとジャンルに分けたいことがある。
今回の場合、ポーカー関連の参考文献と、数学関連の参考文献、それにWebページに分けたかった。
そこで本を参考に\bibsection
という命令を用意した:
\makeatletter % 参考文献で小見出しを出せるようにする \newcommand{\bibsection}[1]{% #1: 小見出し \par \if@newlist\else \medskip \fi \item[]% 1項目分、間を開ける \item[]\noindent\vspace{\baselineskip}\hskip-\@totalleftmargin {\Large\bfseries #1}\par} \makeatother
thebibliography
環境は実質リストなので、小見出し用のアイテムを追加する命令を定義している感じ。
参考文献の目次での見出しの修正
TeXで同人誌を作ってみた。(目次デザイン) - いものやま。で書いたとおり、章番号なしの章を目次に追加するときに\protect\numberline{\null}
をタイトルの前に足すことでインデントの位置を揃えていた。
thebibliography
環境を使うと「参考文献」という章番号なしの章が勝手に開始されるので、そのままだとインデントの位置が揃わなくなる。
そこで、以下のように修正してインデントの位置を揃えるようにした:
\makeatletter %%% 参考文献のスタイルをカスタマイズ % 目次でのインデントを合わせる \renewenvironment{thebibliography}[1]{% \@jsc@warnoldfontcmdexceptiontrue \global\let\presectionname\relax \global\let\postsectionname\relax \chapter*{\bibname}\@mkboth{\bibname}{}% \addcontentsline{toc}{chapter}{\protect\numberline{\null}\bibname}% ここを変えた \list{\@biblabel{\@arabic\c@enumiv}}% {\settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth \advance\leftmargin\labelsep \@openbib@code \usecounter{enumiv}% \let\p@enumiv\@empty \renewcommand\theenumiv{\@arabic\c@enumiv}}% \sloppy \clubpenalty4000 \@clubpenalty\clubpenalty \widowpenalty4000% \sfcode`\.\@m} {\def\@noitemerr {\@latex@warning{Empty `thebibliography' environment}}% \endlist} \makeatother
もうちょっとスマートに修正できるといいんだけどねぇ(^^;
参考文献の一覧の作り方については以上。
ちなみに『Math Poker Girl』はBOOTHで販売しているのでよろしくお願いします!
今日はここまで!