Outlined YAYADoc マニュアル

Conversion from Outline to YAML

随風 老師 [FAMILY Given]

Project PaoPei

Last modified: 2004-03-19 17:19:23


目次

1. Outlined YAYADoc
1.1. 見やすく、書きやすい構造化文書
1.2. 各種エディタのアウトライン・モードに適合
1.3. 表組みやリストも簡単
1.4. YAML技術を使用
2. 実例
2.1. 章節構造と段落
2.2. リスト
2.3. 用語定義
2.4. 警告文
2.5. 整形済みブロック
2.6. ファイルの差し込み
2.7. 引用(ブロッククオート)
2.8. 表組み
3. インラインのマークアップ
3.1. ハイパーリンク

1. Outlined YAYADoc

1.1. 見やすく、書きやすい構造化文書

Outlined YAYADoc は、エディタで編集しやすいように、マークアップを極力排除した構造化文書です。

ヘッダー行をタブ・インデントするだけで、入れ子の章節構造が簡単に作れます。

1.2. 各種エディタのアウトライン・モードに適合

秀丸、サクラエディタ、WZエディタなど、各種エディタのアウトライン・モードに適合します。お好みのエディタでサクサク編集できます。

ヘッダーの書式は、ユーザーの好みに応じて、任意に設定できます。デフォルトでは、■や●などの記号で始まる行がヘッダーと解釈されます。

1.3. 表組みやリストも簡単

面倒なタグ付けなしで、表組みができます。リストのネストも、インデントだけで簡単に指定できます。

1.4. YAML技術を使用

アウトライン・テキストは、ポストXMLとして注目されているYAMLフォーマットに変換されます。YAMLフォーマットは見読性と汎用性が高く、また、処理が非常に軽いため、これをピボットとして、XMLやHTMLなど様々な文書形式に変換して再利用することが容易です。

2. 実例

2.1. 章節構造と段落

長編小説のような「第1章 第1節………」という章節構造を、ヘッダーとインデントで指定することができます。構造は、入れ子になります。[1]

ヘッダーは、行頭に0個以上のタブ・インデントと■や●などの記号で始まります。記号は、次の正規表現に含まれるものが使えます。[2]

         
  ([■□▲△▼▽◆◇○◎●☆★・§]
      |[【〔[{〈《「『【#*♯♪†‡¶!]
        |[\[\*]
           |[0-9A-Za-z]+\.)

            

章や節のナンバリングと目次の作成は、HTMLに変換するときに、システムが自動的に行います。

段落のタブ・インデントは、ヘッダーよりも一段深くします。段落は、1行以上の空行[3]で区切ります。

こうした章節構造や段落の指定の仕方は、エディタをオートインデント・モードにして文章を書くと、自然に行われるものです。Outlined YAYADocは、タグ付けに注意を奪われずに、文書作成に集中できて、しかも自然に文書が構造化されるシステムをめざしています。

インデントには、デフォルトではタブのみが使えます。[4]半角スペースでインデントした行は、段落ではなく、整形済みブロックになります。[項2.5. 「整形済みブロック 」参照]

ソース:

■第1章 はじめに
[tab]第1段落
[tab]
[tab]第2段落
[tab]●第1節 ごあいさつ
[tab][tab]第1段落
[tab][tab]
[tab][tab]第2段落

            

2.2. リスト

番号なしの箇条書きは、文のはじめに'-'(半角のマイナス記号)を入れます。はじめに'+'(半角のプラス記号)を入れると、番号付きになります。番号なし・番号付きは、混在してもかまいません。

リストのレベル(深さ)は、タブ・インデントで指定します。

たとえば、こんな複雑なリストも作れます。

  • listitem1

    • listitem1.1

      • listitem1.1.1

        段落をリストの中に作れます

        paragraph2

        paragraph3

      • listitem1.1.2 リストのインデントは厳密に!

      1. 番号付リストを混在させられます。

      2. numbered 2

ソース:

- listitem1
[tab]- listitem1.1
[tab][tab]- listitem1.1.1
[tab][tab][tab]
[tab][tab][tab]段落をリストの中に作れます
[tab][tab][tab]
[tab][tab][tab]paragraph2
[tab][tab][tab]
[tab][tab][tab]paragraph3
[tab][tab][tab]
[tab][tab]- listitem3.3.3 リストのインデントは厳密に!
[tab][tab]+ 番号付リストを混在させられます。
[tab][tab]+ numbered 2
[tab]- listitem3.4
- listitem4

            

2.3. 用語定義

HTMLdl, dt, ddに対応する用語定義は、インデントに続く:(半角コロン)ではじまります。定義用語と定義の間にも、:を入れます。

インデントの深さは指定できますが、入れ子にはなりません。定義にリストは使えません。

注意:用語が空であってはなりません

用語部分が空である場合には、整形式のDocBooK XMLに変換されません。定義は空であってもかまいません。

用語1

定義1

用語2

インデントはできますが、ネストはしません。

用語3

ぱら

パラ

ソース:

:用語1:定義1
[tab]:用語2:インデントはできますが、ネストはしません。
[tab][tab] :用語3:
[tab][tab][tab]ぱら
[tab][tab][tab]
[tab][tab][tab]パラ

            

 ●定義中に段落を切ることができます。定義中にリストは使えません。

2.4. 警告文

インデントに続く!(びっくりマーク)ではじまる行は、警告表示に整形されます。

警告の表題

警告内容

ソース:

!警告の表題!警告内容

            

2.5. 整形済みブロック

ひとつ以上の半角スペースではじまる行は、整形済みブロック[5]になります。

ここから
  …………
    ………… …………
      ………… ………… …………
       ………… ………… ………… …………
        ここまで           整形済みです

            

ソース:

ここから
  …………
    ………… …………
      ………… ………… …………
       ………… ………… ………… …………
        ここまで           整形済みです

            

2.6. ファイルの差し込み

行頭の>>>に続いて、ファイル名を指定すると、ファイルを読み込んで、整形済みブロックとして表示します。タブ・インデントがあってもなくても、かまいません。

次のブロックは、ファイルから差し込んでいます。

---
- c:
    - title: はじめに
    - s: 
        - title: これは節です
        - |
            sect1の最初のパラグラフ

            sect1の2番目のパラグラフ

            sect1の3番目のパラグラフ
        - s: 
            - title: サブセクション
            - |
                sect2のパラグラフ
            - s: 
                - title: サブサブセクション
                - |
                    sect3のパラグラフ
                - s: 
                    - title: サブサブサブセクション
                    - |
                        sect4のパラグラフ
                    - s: 
                        - title: サブサブサブサブセクション
                        - |
                            sect5 までいけます
    - s: 
        - title: 第2節
        - |
            ああ、なんて簡単なんだ!

            

ソース:

>>> ../var/ayaya/chapsec.ya

2.7. 引用(ブロッククオート)

行頭にタブ・インデントに続く半角または全角の>記号のある行は、ブロッククオートされます。

ブロッククオートは、インデントにより、入れ子にできます。

引用1

引用2

引用3

ソース:

> 引用1
[tab]> 引用2
[tab][tab]> 引用3

            

2.8. 表組み

表組みとなる行は、タブ・インデントに続く'|'ではじまります。表題行をいれるときは'|='ではじめます。表題は、表とは別に表示されます。

コラムの区切りも、'|'です。行末の'|'は不要です。先頭(左端)コラムが'|:'ではじまると、ヘッダー行になります。

表 1. 表組みの例

第1列 第2列 第3列
1.1 1.2 1.3
2.1 2.2 2.3

ソース:

|=表組みの例
|: 第1列 | 第2列 | 第3列
| 1.1 | 1.2 | 1.3
| 2.1 | 2.2 | 2.3

            

3. インラインのマークアップ

強調文字、文中に画像を表示する、ハイパーリンクなどのインライン・マークアップは、POD風の簡単な記法を使います。一部RDやPukiWikiの記法にも対応しています。

3.1. ハイパーリンク

ハイパーリンクは、POD式・RD式・PukiWiki式に対応しています。PukiWiki式では、ASINコードによるAmazon自動リンクに対応しています。

The Art of Computer Programming

YAYADoc Blog

ソース:

PukiWiki式
[[ASIN:0201896842:image]]  
[[The Art of Computer Programming:ISBN:0201896842]]

POD式
L<YAYADoc Blog|http://blogger.main.jp/yayadoc>

            

書式:

POD式
  L<address>
  L<anchor|address>

RD式
  ((<URL:address>))            'URL:'の後にhttp://....を書きます
  ((<anchor|URL:address>))

PukiWiki式
  [[address]]
  [[anchor:address]]
  [[ASIN:code]]                'ASIN:'または'ISBN:'の後に
  [[anchor:ASIN:code]]         10桁のコードを書きます
  [[ASIN:code:image]]          画像付き
  [[ASIN:code:image:small]]    サムネイル付き

            

URLを自動的にリンクにする機能はありません。

  • このマニュアルのソースはこちらです。



[1] DocBookの sect1, sect2 .. .. sect5 に対応します。

[2] プログラムのパラメータを変更することで、ユーザーが任意に設定することもできます。

[3] 0個以上のタブと1個の改行マークだけからなる行。

[4] プログラムのパラメータを変更することで、ユーザーは、たとえば半角スペースや全角スペースなど、タブ以外のインデントを指定することもできます。半角スペースをインデントに使う場合、整形済みブロックは、行頭に'=begin text'のある行から、行頭に'=end text'のある行までの間になります。

[5] DocBookのscreenやHTMLのpreに対応します。