RStudioを用いてRmdファイルから日本語PDFを作成する際に、ドキュメントクラスをbxjsarticleと設定すると、次のようなエラーが出てPDFファイルが作成されません。
エラーは、subtitleコマンドが二重に定義されているために起こっているようです。
エラーは、subtitleコマンドが二重に定義されているために起こっているようです。
! LaTeX Error: Command \subtitle already defined.
Or name \end... illegal, see p.192 of the manual.
See the LaTeX manual or LaTeX Companion for explanation.
Type H for immediate help.
...
l.61 }
pandoc: Error producing PDF from TeX source
エラー: pandoc document conversion failed with error 43
実行が停止されました
ここではその解決策の一つとして、subtitleコマンドに別の名前を付けて、このエラーを回避する方法をお伝えします。
環境は次の通りです。
OS | Ubuntu 16.04 |
---|---|
R | 3.3 |
実際の作業は次の通り。
(out)# ディレクトリの移動
cd ~/R/x86_64-pc-linux-gnu-library/3.3/rmarkdown/rmd/latex
(out)
(out)# バックアップ
cp default-1.15.2.tex default-1.15.2.tex.bk
(out)
(out)# ファイルの編集
vim default-1.15.2.tex
default-1.15.2.texファイルの「subtitle」という文字列を別の名前に置換します。
ここでは「subtitleorigin」という名前にすることにします。
また、ここではvimでファイルを開いたが、別のエディタで開いて「subtitle」という文字列を置換しても問題ありません。
vimでファイルを開いた場合は、ノーマルモードで次のコマンドを実行すれば、ファイル内の「subtitle」文字列が「subtitleorigin」文字列に一括置換されます。
:%s /subtitle/subtitleorigin/g
vimで保存して終了する場合は、ノーマルモードで次のコマンド実行します。
:wq
以上で、準備が整いました。
あとは、Rmdファイルで今まで「subtitle」としていたところを新らたな名前である「subtitleorigin」とします。
---
title: "タイトル"
subtitleorigin: "サブタイトル"
author: "著者"
date: "2016年7月27日"
output:
pdf_document:
latex_engine: xelatex
documentclass: bxjsarticle
classoption: xelatex,ja=standard
geometry: no
---
これを実行すると次のようになります。
R×knitr bxjsarticleを用いた際にサブタイトルでエラーが出る場合の対処法