texinfo でR FAQ ソースを読んでいて、R 構造として解析した方が管理と拡張が容易になると考えています。これに関連する既存の例がいくつかあります。
運命のパッケージ
bibtex エントリ
Rd ファイル
それぞれにいくつかの望ましい機能があります。
私の意見では、FAQ は R コミュニティで十分に活用されていません。ii) 強力な検索機能; iii) 相互参照; iv) 寄贈されたパッケージの拡張。パッケージbibtex
とからアイデアを引き出すとfortunes
、次のような新しいシステムを考えることができます。
FAQ は R から検索できます。典型的な呼び出しは、
fortune()
インターフェイスに似ています: 、faq("lattice print")
またはfaq() #surprise me!
、。faq(51)
faq(package="ggplot2")
パッケージは独自の を提供できますが
FAQ.rda
、その形式はまだ明確ではありません (以下を参照)。Sweave
/knitr
適切にフォーマットされた Markdown/LaTeX などを出力するためのドライバーが提供されます。
質問
ただし、最適な入力形式が何であるかはわかりません。既存の FAQ を変換するため、または新しいエントリを追加するため。
ネストされたリストのツリー (またはアドホックな S3/S4/refclass
またはstructure
,
\list(title = "Something to be \\escaped", entry = "long text with quotes, links and broken characters", category = c("windows", "mac", "test"))
Rd
ドキュメンテーションは、R 構造自体ではありませんが (独自のパーサーを備えた LaTeX のサブセットです)、入力形式のより魅力的な例を提供できる可能性があります。また、Rの構造を解析するためのツールのセットもあります。ただし、現在の目的はかなり具体的で異なり、FAQ エントリではなく、R 関数の一般的なドキュメントに向けられています。その構文も理想的ではありません。マークダウンのような、より現代的なマークアップの方が読みやすいと思います。
マークダウンファイルをR構造に解析する例など、他に何かありますか? Rd ファイルを意図した目的から逸脱させる例はありますか?
要約すると
私は思いつきたい:
fortune
1-パッケージをFAQアイテムなどのより一般的なエントリに拡張するR構造(おそらくクラス)の優れた設計
2- 新しい FAQ を入力するためのより便利な形式 (現在の texinfo 形式よりも)
3- 既存の FAQ を新しい構造 (1) に、および/または新しい入力形式 (2) を R 構造に変換する、R または他の言語 (bison?) で記述されたパーサー。
更新 2: 報奨金期間の最後の 2 日間で、私は 2 つの回答を得ました。どちらも興味深いが、まったく異なるものでした。質問は非常に広大であるため(おそらく不適切な設定)、完全な解決策を提供する回答はありません。したがって、私は(とにかく今のところ)回答を受け入れません. 賞金については、賞金が期限切れになる前に最も賛成票を投じられた回答に帰属させます。もっと均等に分割する方法があればいいのにと思います。