8

関数が機能するように pkg/doc フォルダーに PDF を含めることはできますvignetteが、対応する Rnw、Rtex などは存在しませんか?

Rチャンクで織り込まれたマークダウンテキストを含むスライドまたはドキュメントを考えています。これらはビルドプロセスが異なり、したがってファイル拡張子が異なります。

R 拡張機能の作成ガイドでは、インストール時にビルドできないドキュメントを含めることが可能であることを示唆していますが、vignette関数は特別な拡張子 (Rnw、Rtex など) を持つファイルと、vignette.rds.

ヒントをいただければ幸いです。

4

3 に答える 3

5

私は数年前にこれについて尋ねました。Fritz Leisch はその考えに賛成ですが、それを実装する時間がありませんでした。

于 2011-07-09T13:47:57.390 に答える
5

これは R 3.0.0 以降でネイティブにサポートされています。 http://yihui.name/knitr/demo/vignette/を参照してください。

knitrビネット エンジンとして使用する手順は次のとおりです。

  1. ソースドキュメントに追加%\VignetteEngine{knitr::knitr}Rnwます(以前と同じように必要であることに注意してください%\VignetteIndexEntry{}
  2. VignetteBuilder: knitrパッケージ記述ファイルで指定
  3. ビネットにのみ必要な場合は追加Suggests: knitrしてくださいDESCRIPTIONknitr

そのトピックに関する公式の R ドキュメントも参照してください。

于 2013-12-11T10:31:05.750 に答える
5

( R-helpに残したばかりの応答からのクロスポスト:)

xvignette回避策として、パッケージに独自の関数を含めることができます: 以下を参照してください。インデックスは表示されませんがinst/doc、パッケージのディレクトリに含まれる適切な名前のファイルが選択されます...

xvignette <- function(vname,pkg,ext="pdf") {
   vname <- paste(vname,ext,sep=".")
   fn <- system.file("doc",vname,package=pkg)
   if (nchar(fn)==0) stop("file not found")
   utils:::print.vignette(list(pdf=fn))
   invisible(fn)
 }

おそらく、パッケージ自体のヘルプ ファイルに、この代替ドキュメントが存在するという事実をパッケージ ユーザーに警告する必要があります。

上記のデフォルト値にpkgパッケージ名を入力して、ユーザーにとって使いやすくすることができます: のいくつかのバリアントを使用getPackageName(environment(xvignette))して自動的に実行することを考えましたが、それは複雑すぎるようです...

ブライアン・リプリーは、質問への回答で次のようにも述べています。

現在、 vignette() は Sweave ドキュメントを意味します。タイトルなどのメタデータのみが含まれているためです。これは近日中に変更される予定です。

…でも、「すぐ」が何を意味するのかわかりません(2.14.0が出るまで、約6ヶ月かかると思います)

edit : http://article.gmane.org/gmane.comp.lang.r.devel/28449では、別の回避策について詳しく説明しています (既存の PDF ファイルを組み込んだダミーのビネットを作成する)。

編集2:そして

于 2011-07-14T17:03:36.870 に答える