From: Toshiro Kuwabara Date: 1999-08-20T23:26:06+09:00 Subject: [ruby-list:16240] Summary of discussion about RD from ruby-talk Toshです。 =begin = Preface RDの仕様に関する議論はruby-talkの方に移りました。これは現在進行中の議論 に関するサマリです。RDについての提案はruby-listでも受け付けるつもりですが、 積極的に議論に参加する意志のある方はruby-talkに参加される事をお勧めします。 # Toshでもなんとかなっているので、英語どうこうといった心配はたぶんないかと。 = Summary == More InlineElement インラインの形式は、ごとけんさんの提案した"((x ... x))"(xは記号文字)に 賛成の人が多いため、この形に決まりそうです。 # もっとも多いと言ってもそう何人もの人が議論に参加しているわけでもない のですが。(^^; インラインの機能で提案されているものは、 : ((*em*)) 強調。LaTeXの\em相当。 ("((!...!))"の形は他の機能に残しておくことになるようです。) : ((|while gets...|)) コード。HTMLの...相当。 : ((var)) 変数。HTMLの...相当。 : ((%ruby -v%)) キーボード。HTMLの...相当。 : ((:Term:)) 索引に載せる用語。LaTeXの\index。今までは"[-- Term --]"。 : (()) リファレンス。詳しくは後述します。 : ((-Footnote-)) 脚注。いままでは"(--Footnote--)"でした。この形式が残るかは未決定です。 : (('verb')) ("((`verb'))"かも) インラインのVerbatim。LaTeXの\verb相当。ごとけんさんの最初の提案では "((`verb'))"(前のがバッククォート)だったのですが、英語よりもPerlやRuby に馴染みのあるToshが(誤って)"(('verb'))"の形に。実際のところ、どちらが より自然でしょうか? == "(())" ごとけんさんの提案では"(())"を次の3つの用途に使うというものでした。 (1) ドキュメント内の見出しやリストの参照(リンク)。 (2) URLの指定によるネット上の情報へのリンク。("(())"の形) (3) 参考文献のリストの参照(リンク)("(())"の形) ごとけんさんによると(2)の形式はRFC1738のAPPENDIXから持って来たものだ そうです([ruby-talk:00710])。"(())"の代わりに"の 形式を使う、もしくは省略形として認めるという意見もでています ([ruby-talk:00715])。 一方で(3)の参考文献リストの参照って必要?って意見も([ruby-talk:00706])。 == RDへのHTML等の挿入 PODにはPODにHTML等の他のフォーマットのテキストを挿入する機能があるようです。 フォーマッタはHTMLへ変換する場合にはその部分をその場所に挿入して出力し、 他のフォーマットに変換する場合には無視します。(perlpod(1)も参照) RDにも同様の機能があると便利じゃない?って案が。こんな感じで。 =begin html
Figure 1.
=end html [ruby-talk:00693]でToshが反対意見を出しています。概要は、 * RDは人間がそのままで読めるようになっているべき。 * これを使うとHTML, LaTeX, man形式に対応するだけでもRDがかなり見苦しくなる。 代わりの案として、"@input filename"もしくは"<<< filename"の様な行を使う案 がでています。フォーマッタはこの行のある場所に出力フォーマットに合わせて 「filename.html」「filename.tex」などのファイルを挿入するのです。これだと RDはそれほど見づらくなりません。しかし、ファイルの数が多くなり管理などが 面倒になるかも知れません。 == Multiline Comment 複数行に渡るコメントにRDを使いたい、って提案。[ruby-talk:00687,00695,00703] で"=begin "〜"=end"の形のものはすべて(標準では)コメントとして 扱うという案が出ています。RDのフォーマッタが固有の処理を行いたい時は、これ を機能拡張に使うという提案を含んでいます。つまり、*どうしても* HTMLを 埋め込みたい場合には、"=begin html"〜"=end"の中をHTMLとして処理してくれる フォーマッタを使えば不可能ではなくなります。 == Malti-paragraphs in List リストの中にも複数のTextElementを置きたい、とう要望([ruby-list:16200])。 どうやって表現するか、が焦点でした。まつもとさんの提案では空白文字のみ の行を区切りに使い、その行のインデントの深さは無視されると言うものです。 (まつもとさんの元記事には「Pythonのように」って注釈がついてます。) それと、リストの中にVerbatimを置く方法についても、リスト項目の最初の行 からベースラインを決めてそれより深いインデントの行はVerbatim ([ruby-talk:00702])、って感じに。[ruby-talk:00704]にはTermをベースライン の基準にすれば?って案も出ています。 == Separater セパレータが欲しいと言う要望は、「セパレータってHTML固有って気が。TeXや Roffにはないですよね?」って意見があって([ruby-talk:00685])、セパレータは なし、ってことになりました。 == Additional thing... \cleさんからrd2latexの動作について、"="や"=="がないときには"==="が\section になるようにしてほしい、という要望があり([ruby-talk:00683])そうなる予定です。 (ToshはRDのセマンティックスには矛盾していないと思ったのですが、Headlineの 大きさは絶対的なものであるべき、って意見の人もいるかも?) = P.S. なんか、そふでざの海外の雑誌の話題をつまみぐいしてる某コラムみたいな文体に なってしまった気も。(^^;;; =end --- Tosh