利用者:井上経介/ぷればや

予定[編集]

  1. PHPを学ぶ。
  2. MediaWiki/jaを構造解析す。

開発計画[編集]

機能優先順位
  1. プレビューを表示せしむ。
  2. マークアップを表示せしむ。
    1. 見出し・段落・横線、箇条書き、リンク、文字飾り
    2. 目次
    3. その他変数など
  3. 編集ボタンを増設す。
  4. エラーマークアップを強調するを得しむ。
  5. ユーザーをして編集ボタンをカスタマイズするを得しむ。
  6. カット&ペーストによらずして編集するを得しむ。
  7. 同じく差分を表示するを得しむ。

資料[編集]

ウィキで用いられるマークアップ構文とHTMLへの変換例(本記事「ウィキ」の冒頭の一文)
保存されるウィキ構文
(ウィキペディアの場合)
変換されて送り出されるHTML ウェブブラウザによる表示例
'''ウィキ'''('''Wiki''') あるいは'''ウィキウィキ'''('''WikiWiki''')とは、[[ウェブブラウザ]]を利用してWWWサーバ上の[[ハイパーテキスト]]文書を書き換えるシステムの一種である。 <p><strong>ウィキ</strong>(<strong>Wiki</strong>) あるいは<strong>ウィキウィキ</strong>(<strong>WikiWiki</strong>)とは、<a href="/wiki/ウェブブラウザ" title="ウェブブラウザ">ウェブブラウザ</a>を利用してWWWサーバ上の<a href="/wiki/ハイパーテキスト" title="ハイパーテキスト">ハイパーテキスト</a>文書を書き換えるシステムの一種である。 ウィキ(Wiki) あるいはウィキウィキ(WikiWiki)とは、ウェブブラウザを利用してWWWサーバ上のハイパーテキスト文書を書き換えるシステムの一種である。
document.writeln("<div id='toolbar'>");
addButton('/skins-1.5/common/images/button_bold.png','強い強調(太字)','\'\'\'','\'\'\'','強い強調(太字)');
addButton('/skins-1.5/common/images/button_italic.png','弱い強調(斜体)','\'\'','\'\'','弱い強調(斜体)');
addButton('/skins-1.5/common/images/button_link.png','内部リンク','[[',']]','項目名');
addButton('/skins-1.5/common/images/button_extlink.png','外部リンク(http:// を忘れずにつけてください)','[',']','http://www.example.com リンクのタイトル');
addButton('/skins-1.5/common/images/button_headline.png','標準の見出し','\n== ',' ==\n','見出し');
addButton('/skins-1.5/common/images/button_image.png','埋め込み画像([[画像:~]]に直してください)','[[画像:',']]','Example.jpg');
addButton('/skins-1.5/common/images/button_media.png','メディアファイル(音声)へのリンク','[[Media:',']]','Example.mp3');
addButton('/skins-1.5/common/images/button_math.png','数式 (LaTeX)','\<math\>','\</math\>','\\\\int f(x)dx');
addButton('/skins-1.5/common/images/button_nowiki.png','入力文字をそのまま表示','\<nowiki\>','\</nowiki\>','そのまま表示させたい文字を入力');
addButton('/skins-1.5/common/images/button_sig.png','時刻つきの署名','--~~~~','','');
addButton('/skins-1.5/common/images/button_hr.png','水平線(利用は控えめに)','\n----\n','','');
document.writeln("</div>");

開発日誌[編集]

HTMLコマンドプロンプトくらいしか経験がないため、PHPが大変難解に思われる。Amazonにて『はじめてのPHP言語プログラミング入門』なる書籍を発見、後日購入しよう。

当面の課題は、Mediawikiから引き算して製作すべきか、それとも一から足し算して製作すべきかだろう。Mediawikiは複数のファイルが複雑に関連したソフトウェアであるため、どこをどう引き算すべきか全く見当が付かない。素人がエイリアンの外科手術をするようなものだ。「ぷればや」はほぼすべての作業をオフラインで処理し、しかもその機能は編集のみに特化制限せねばならない。後者の方法ならばそれが容易となり、素人が手探りで挑戦するにも丁度よいかもしれない。

何はともあれ、まずはPHPを齧ってみることだ。それとJavascriptについても。--2006年2月21日 (火) 10:32 (UTC)

どうやら「mediawiki-1.5.6\includes\EditPage.php」というファイルが編集ページの正体で、「mediawiki-1.5.6\includes\Skin.php」の一部がマークアップ変換を処理しているらしい。これらを構造解析せねば。--2006年2月21日 (火) 17:16 (UTC)