いろいろメモがき用。
RBBSは、WWW上の掲示板システムです。あなたは、新規に記事(スレッド)を投稿したり、既存の記事に返事(レスポンス)をつけることができます。RBBSに記事を投稿すると、WWWを通じて世界中に情報発信することができます。もちろん、友達同士のコミュニケーションに使ってもいいですし、個人的な日記システムとして使っても構いません。いわゆるblogやWikiのような使い方もできます。機能的に見ると、RBBSには以下の特徴があります。
RBBSのコンセプトを一言でいえば、「掲示板風ネタ振り指向チャットシステム」です。あるユーザは、記事を投稿することで、話のネタを振りつつ、新しいチャットルームを作ります。彼とその他のユーザは、興味のあるスレッドに続々とレスポンスを投稿してチャットを展開させるのです。百聞は一見に如かず。以下の説明を読みながら、実際にRBBSを使ってみてください。RBBSのデモサイトを訪れてもよいでしょう。
最初にRBBSにアクセスした時には、上の方にずらっと文字が並んでいるのが目に付いたと思います。これは「新着リスト」といいます。投稿された記事の題名がリストされているのです。個々の題名を選択すると、その記事の内容を見ることができます。記事は、新しく投稿または更新されたものから順に並べられます。
新着リストの下に「HOME」や「HELP」というマークがありますが、これらは「ナビゲーションリンク」といいます。以下の機能があります。
最新の何件かの記事は、新着リストと同じページに本文も表示されます。それより古い記事を見たい場合は、「NEXT」リンクを選択してください。「NEXT」をずっとたどって行けば、全ての記事を閲覧することができます。
各記事の本文の肩にもナビゲーションリンクがあります。以下の機能があります。
基本的には、「RELOAD」「PREV」「NEXT」「FOCUS」だけ使えれば記事の閲覧には困らないはずです。しばらく使って雰囲気をつかんでみてください。
新しい記事を投稿するには、ナビゲーションリンクの「POST」を選択します。すると、記事の内容を入力するページに移ります。なお、投稿者がパスワードで制限されている場合は、パスワードを入力するページに移るので、そこで投稿者用のパスワードを入力します。パスワードは管理者に聞いてください。
次に、「Language(言語)」「Category(分類)」「Subject(題名)」「Author(著者名)」を入力してから、「Text(本文)」を入力します。入力し終わったら「SUBMIT(送信)」を選択します。なお、「Password(管理用パスワード)」の欄がある場合は、そこで入力したパスワードを覚えておけば、後で管理者専用の「EDIT」機能が利用できます。
本文の各行は段落(パラグラフ)として扱われます。つまり、本文中に改行を入れることによって段落を分けることができます。ただし、行頭が「!」の場合、その行は小見出しとして扱われます。行頭が「!!」の場合、その行は副小見出しとして扱われます。行頭が「*」の場合、その行は箇条書きとして扱われます。行頭が「|」の場合、その行は整形済みテキストとして扱われます。大量の整形済みテキストを扱うには、「===|」という行を前後に置いてください。行頭が「@graph:」の場合、その行のURLを参照する画像として扱われます。行が「----」の場合、そこに罫線が引かれます。
文の一部を修飾することもできます。文中で「[[^foo]]」とすると、「foo」は強調句になります。文中で「[[~foo]]」とすると、「foo」は引用句になります。文中で「[[+foo]]」とすると、「foo」は挿入句になります。文中で「[[-foo]]」とすると、「foo」は削除句になります。文中で「[[foo|bar]]」とすると、「foo」は「bar」へのハイパーリンクになります。
本文の例を以下に示します。
!私のグルメ 私は自他ともに認める[[^グルメ]]です。 私の好きな料理を3つあげるとしたら、以下のものになるでしょう。 *ハヤシライス : 牛肉のコクが決め手 *ピザトースト : アクセントの[[-セロリ]][[+ピーマン]]が最高 *ホルモン焼 : ホッピーを飲みながらどうぞ !RBBSのロゴ 作りました。 @graph:http://rbbs.sourceforge.jp/logo.png ---- !Hello World C言語における最も簡単なプログラムです。 !!サンプル1 [[GCC|http://gcc.gnu.org/]]でコンパイルしました。 |int main(int argc, char **argv){ | printf("Hello, World\n"); | return 0; |} !!サンプル2 制御構文も習いましょう。 ===| int i; for(i = 0; i < 10; i++){ printf("%d\n", i); } ===|
記事の内容を入力し終わったら、その記事がどのように表示されるかを確認するページに移ります。下の方にある「Source」というところは、その記事をXMLという言語で表現したものです。表示を確認したら、「SUBMIT」を選択して記事を書き込みます。書き込みが終わったら「RELOAD」リンクが表示されるので、それを選択して、元のページに戻ります。今さっき投稿した記事が表示されているはずです。
なお、各々の記事にある「EDIT」リンクを選択すると、その記事の内容を編集することができますが、それには管理者のパスワードが必要です。
記事を閲覧している際に、その記事の内容に対してレスポンスをつけたくなったら、その記事の「RESP」リンクを選択します。記事の下の方にレスポンス用の入力フォームが表示されます。左側の欄にはあなたの名前、右側の欄には本文を入力してから、「SUBMIT」を選択します。
レスポンスが投稿された記事は、更新されたとみなされます。更新された記事はリストの一番前に移動するので、他の読者の目にとまりやすくなります。そうすると、レスポンスに対して元の記事の著者からレスポンスがつくかもしれませんし、他のユーザが別のレスポンスをしてくるかもしれません。そんな風にして、記事をネタにしたコミュニケーションをとっていきます。「2ちゃんねる」風といえばわかりやすいかもしれません。ただし、1回のレスポンスで入力できるのは1行のテキストだけなので、チャット(おしゃべり)の雰囲気で気軽に書き込めることがRBBSの特徴です。
チャット状態になった時には、書き込みせずにページを更新したくなるでしょう。それには、本文を空にしたまま「SUBMIT」を選択します。著者名の前に「sink:」をつけると、記事の更新日時を変えずに投稿できます。
初級編で見たような記事の書式をWikiスタイルと呼びますが、それをXMLという言語で表現することもできます。本文の最初の文字が「<」の場合、本文がXMLとして扱われます。
XMLの記事は以下のブロックから構成されます。
ブロックの中身のテキストには、以下の修飾ができます。
XMLによる本文の例を以下に示します。なお、このヘルプも同じ書式のXMLで書かれています。
<topic>朝食</topic> <para>今日の朝食はハムエッグだった。おいしかった。</para> <list> <item>ハムエッグ = 340 kcal.</item> <item>クロワッサン = 280 kcal.</item> <item>コーヒー = 0 kcal.</item> </list> <topic>昼食</topic> <para>昼食は<del>抜いた</del><ins>スニッカーズで済ませた</ins>。</para> <topic>夕食</topic> <para>豪勢に焼肉を食った。<emp>中落ちカルビ</emp>が最高だった。</para> <topic>今日の発見</topic> <para><link to="http://qdbm.sourceforge.net/">QDBM</link> というソフトを見つけた。ロゴがイマイチだった。</para> <graph data="http://qdbm.sourceforge.net/logo.png"/> <subtopic>名言</subtopic> <para><cite>幸福は香水のごときものである。</cite> -- エマーソン</para> <break/> <topic>今日のHello, World</topic> <asis>#include <stdio.h> int main(int argc, char **argv){ printf("Hello, World\n"); return 0; } </asis>
Webサイトのコンテンツが更新されたことを読者に伝えるための仕組みをシンジケーションといいます。その更新内容を記述するデータフォーマットとして、RSSやAtomというものがあります。RBBSではAtom形式のシンジケーションをサポートしています。
シンジケーションを利用するには、専用のソフトウェアが必要です。RSSリーダと呼ばれるソフトウェアが巷に転がっていますが、その多くはAtomにも対応しています。どのソフトも使い方はだいたい一緒です。「Subscribe(購読)」といった項目にシンジケーションのURLを登録するだけです。あとは自動的にそのデータを取ってきて、更新内容を表示してくれます。
RBBSのシンジケーションは2種類あります。ページの上の方にある「FEED」リンクは、最新の記事の更新情報のURLです。普通はこちらを使うとよいでしょう。各記事にある「FEED」リンクは、その記事のみの更新情報のURLです。特定の記事のレスポンスをすぐに知りたい場合はこちらを使うとよいでしょう。
Web上のコンテンツは様々な環境からアクセスされます。携帯電話のように小さい画面かもしれませんし、文字しか表示できない機械かもしれませんし、マウスやキーボードでなくタッチパネルディスプレイかもしれません。また、読者にも様々な人がいます。例えば目が見えない人は点字ディスプレイや音声読み上げ装置を使います。そのような様々な環境から使えることをアクセシビリティといいます。詳しくはW3Cの勧告(その邦訳)を御覧ください。
HTMLでアクセシブルなコンテンツを作るのはなかなか大変ですが、RBBSでは簡単です。記事のXMLをアクセシブルなXHTML(XMLベースのHTML)に変換してくれるからです。RBBSのXMLは要素(タグ)の種類が少ないので、ユーザは単純な構造の文章を書かざるを得なくなります。書き手は表現上の工夫が必要となって少し苦労しますが、読み手にとっては理解しやすいものとなります。例えば、RBBSの記事には表もありませんし、リストを入れ子にすることもできません。それらは音読した時に聞き手が理解しずらいからです。その観点に立つと、整形済みテキスト(asis)や図(graph)も邪道といえますので、なるべく別の表現で代替してください。
RBBSの出力するXHTMLは文書構造のみを記述し、プレゼンテーション(表現形式)はスタイルシートによって指定しています。これによって、XHTMLを変換したり、独自のスタイルシートを適用したりすることで、各ユーザは自分の環境に合わせた表現を手に入れることができます。
RBBSは平林幹雄が開発したフリーソフトウェアです。あなたがWebサイトを持っていれば、そこにRBBSを自由に(無料で)設置することができます。詳しくはRBBSのホームページを御覧ください。