2012-09-07 5 views
20

はSweave源のための好ましい位置は サブディレクトリソースパッケージのビネットが、Rの以前のバージョンとの互換性 ため、ビネット源であるR 2.14.0からように、私はCRAN提出用のパッケージビネットはどこに置くのですか? <a href="http://cran.r-project.org/doc/manuals/R-exts.html#Writing-package-vignettes">Writing R Extensions Manual</a>から

こと読み出しますvignettesが存在しない場合、 inst/docで検索されます。

私はパッケージソースのvignettesサブディレクトリを作成するとき、私はdevtools::check()R CMD checkを実行したときしかし、私はPackage vignette(s) without corresponding PDFのための警告が表示されます。 inst/docにビネット(.Rnwと.pdf)を記入すると、苦情なしでチェックが完了します。インストールされたパッケージで自分のライブラリを探してみましたが、vignettesという名前のディレクトリはありませんでした。非推奨の場所をまだ使用する必要がありますか?

答えて

20

あなたはあなたとしてvignettes/.Rnwソースを置きますあなたはクリティカルなステップを逃しました。ソースツリーをチェックしないでください。予想されるワークフローは、ソースtarballを構築し、そのtarballをチェックすることです。 tarballをビルドすると、ビネットPDFが作成されます。添付パッケージ名とバージョンと現在のディレクトリに.tar.gzパッケージを作成../foo/pkgにソースからソースパッケージtarballを構築する例えば

R CMD build ../foo/pkg 
R CMD check ./pkg-0.4.tar.gz 

。次に、そのソースパッケージでR CMD checkを実行します。

あなたのためにビネットを作成したい場合はvignettes/に入れ、ソースパッケージを作成します。将来のある日には、R Coreはinst/docからビネットを構築する機能を削除する可能性があるので、今すぐアドバイスされた場所に行って、ソースを直接チェックしないようにしてください。

13

私もこれを解釈するのに苦労しました。

私は意図はあなたがvignettes/.Rnwファイル、あなたは慎重に十分に読めば、技術的文書と一致するinst/doc/でPDFを(適当に圧縮さ)、置く必要があることだと考えています。つまり、のソースvignettes/に入るはずです。私は多くの言葉で、対応するPDFをinst/doc/に入れるべきであるとは言いませんが、ではなく、と言っています。その解釈はR CMD checkを幸せにするようです...)

解像度は@ GavinSimpsonの答えです(つまり、ソースディレクトリ自体を調べるのではなく、tarballをビルドして確認することになります)。 (私の2セントのRコアが正式に廃止予定の(そして最終的に削除した場合、それは最高かもしれないということです)直接ソースをチェックするのではなく、私たちのすべてのgroundlings混乱...)

+2

パッケージソースをチェックするのではなく、パッケージ化された*バージョン、つまり 'R CMDビルド '操作で作成されたソースパッケージをチェックすることが目的です。 –

+5

'foo.Rnw'と' foo.pdf'を 'vignettes /'に置くと、pdfは自動的にインストールされた 'doc'ディレクトリに転送されます。 'inst/doc'を介して手動で介入する必要はありません。 –

+1

私が変換したいくつかのものを含め、多数のパッケージが 'vignettes /'で動作するので、何か他のものが間違っています。 –

関連する問題