試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

DocBook文書をPDFファイルに変換するdblatexで外部の設定ファイルを用いる(バージョン0.3現在・ページ2/3)

DocBook文書をPDFファイルに変換するdblatexで外部の設定ファイルを用いる(バージョン0.3現在・ページ1/3)」の続き。

スタイルファイル

.specs/.confファイルを用いずにこのファイルの設定を適用するには、.styファイルのファイル名の「.sty」を除いた部分(foo.styというファイルを指定する場合は「foo」)を実行時に--texstyle(-s)オプションで指定する必要がある。また、.styファイルのあるディレクトリが現在の.styファイルの探索ディレクトリに含まれない場合は--texinputs(-i)オプションで.styファイルのあるディレクトリを指定する必要がある。

$ dblatex --texinputs=[.styファイルのあるディレクトリ] --texstyle=[.styファイルのファイル名の「.sty」を除いた部分] [DocBook文書]

DocBook文書をPDFファイルに変換するdblatexのリンク色変更と日本語の段落の自動改行に関するメモ(バージョン0.3現在)」の自動改行の修正と「DocBook文書をPDFファイルに変換するdblatexでprogramlisting要素のコード内の日本語の表示がおかしくなる件とその対処について(バージョン0.3現在)」のコード内の日本語の表示の修正についての記述は以下のように行う。
[任意]ファイル名: ~/.dblatex/style/japanese.sty

% -*- coding: utf-8 -*-

\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{japanese}[2010/05/06 DocBook Style for Japanese]

% docbook.styから派生したものにする
\RequirePackageWithOptions{docbook}

% 自動改行されない問題の対処
\XeTeXlinebreaklocale "ja"

% 別途用意したjlistingを用いてコード内の日本語表示を修正する
% .specsファイルのTexStyle指定で読み込む場合は
% UTF-8エンコーディングに変換したjlisting.styをこのディレクトリに配置し
% .specsファイルのTexInputsを
% このファイルとjlisting.styを含むディレクトリの絶対パスにすると便利
\usepackage{listings,jlisting}

このファイルをページ3で扱う.specs/.confファイルから参照するようにした場合、「TexStyle: japanese」指定の他に.styファイルのあるディレクトリをTexInputsという設定項目で設定する必要があるが、jlistingの.styファイルをこれから配置する場合は上のファイルと同じディレクトリに入れておけば「DocBook文書をPDFファイルに変換するdblatexでprogramlisting要素のコード内の日本語の表示がおかしくなる件とその対処について(バージョン0.3現在)」の作業とは異なりmktexlsrコマンドを実行する必要はなくなる(上のファイルと一緒に探索ディレクトリに入るため)。
.styファイルの記述の要領は
http://dblatex.sourceforge.net/doc/manual/sec-custom-latex.html
の通りで、細かいレベルでの調整が色々と行えるようになっている。また、上のファイルでは標準のdocbook.styを利用しているが、既存のファイルを用いずに新しいスタイルファイルを作る方法もあり、/usr/share/texmf/tex/latex/dblatex/以下(ディストリによって異なる可能性がある)のdocbook.stydb2latex.styの中身を参考にして作ることになる(LaTeXに関する知識が必要)。

(「DocBook文書をPDFファイルに変換するdblatexで外部の設定ファイルを用いる(バージョン0.3現在・ページ3/3)」に続く)

関連記事:

使用したバージョン:

  • dblatex 0.3
  • TeX Live 2007-21.r6295.7mdv2010.0
  • Python 2.6.4