Your SlideShare is downloading. ×
0
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Embed Shogiboard - my first mediawiki extension -
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Embed Shogiboard - my first mediawiki extension -

1,249

Published on

Celebrating historic victory of Akara 2010 (computer Shogi engine) over Ichiyo Shimizu (women's champion in Japan), this talk explains how to create MediaWiki extension to embed Shogi board in …

Celebrating historic victory of Akara 2010 (computer Shogi engine) over Ichiyo Shimizu (women's champion in Japan), this talk explains how to create MediaWiki extension to embed Shogi board in MediaWiki - and hopefully in Wikipedia in some future.

Published in: Technology, Design
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,249
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  1. @tyamadajp EmbedShogiboard ~ 将棋盤 for MediaWiki ~
  2. Why MediaWiki? いい WikiEngine は沢山あります。 でも Wikipedia に入る=世界中が使う…かも?
  3. なんで将棋盤? VS あから 2010 清水女流王将 2010 年 10 月 11 日、通常条件での対局で 「公式に」プロ棋士の一角(女流)が崩れる
  4. Wikipedia 中の棋戦の扱い チェスの棋譜 チェスの棋譜将棋の棋譜
  5. 勝敗だけじゃなく内容も残したい チェスの充実ぶり凄すぎ…
  6. 作ってみた:将棋プラグイン 機能 :CSA 形式等の表示・再生
  7. MediaWiki Extension の種類 拡張タイプ できること SpecialPage, Skin ページ全体を独自生成したり、 デザインのカスタマイズができる Tag WikiText の <mytag>...</mytag> を 好きな HTML に置換できる Magic words WikiText の {{#mymagic: … }} を 好きな WikiText に置換できる Macro WikiText の {{MYVAR}} を 好きなテキストに置換できる Hook ページ更新など MediaWiki の特定 動作タイミングに連動して関数を呼ぶ AJAX スキン内への JS 追加とあわせて コールハンドラ登録で AJAX をできる 今回はコレ
  8. どう作る? MediaWiki Extension $wgExtensionFunctions[] = "efHelloInit"; function efHelloInit() { global $wgParser; $wgParser->setHook("hello", "efHelloRender"); } function efHelloRender($input, $args, $parser) { $parser->disableCache(); return "<p>hello!</p>"; } 世界で一番簡単な Tag Extension 。 <hello>...</hello> を <p>hello!</p> に変換
  9. $wgHoge? efHuga? wg:(Media)Wiki Global (Variable) ef:Extension Function 1.歴史的理由から、グローバル変数で   設定情報や主要オブジェクトにアクセス 2. MediaWiki 本体や他プラグインとの   干渉を防ぐため、名前付けルールなどが   かなり整備されている。 最上位の変数・関数は wgMyExtHoge など、拡張名を含めるコーディング規約
  10. グローバルの嵐をやり過ごす 変数名 用途 $wgExtensionCredits プラグインのクレジット情報の登録先 $wgExtensionFunctions プラグインの初期化関数の登録先 $wgExtensionMessagesFiles メッセージデータベースの登録用 $wgLang ユーザの言語設定 $wgContLang コンテンツの言語 $wgParser WikiText パーサ $wgHooks フック処理の登録用 $wgServer ウェブサーバの絶対 URL (ベース URL ) $wgScriptPath インストール先の相対 URL $wgArticlePath 記事リンク生成用の URL $IP ウェブサーバ上のインストール先フォルダ 計 418 個あるが、よく使いそうなのは 10 個程度
  11. EmbedShogiboard の中身 <kifu 再生設定 > 棋譜データ </kifu> <textarea id=hash> 棋譜データ </kifu> <iframe src= 盤面 ?id=hash /> 1.プラグインとしては iframe/textarea を   吐き出しているだけ。コメント込みで 63 行。 2. iframe 先は MediaWiki に依存しない   汎用の棋譜プレーヤにできるので潰しが効く
  12. デモ ネットワークが取れない場合は ごめんなさいでスキップします
  13. ここでお知らせ 実は明日、 MediaWiki イベント開催! WCJ2010 Tech Talk   - MediaWiki Developers ~開催内容~  ・ Hadoop による Wikipedia データの解析  ・ MediaWiki の内部クラスと応用研究  ・開発者コミュニティに参加するには  ・ディスカッション URL: http://atnd.org/events/9164 Hash: #wcj2010
  14. http://www.mediawiki.org/wiki/    Manual:Extensions    Manual:Global_object_variables    Manual:Configuration_settings    Coding_convention おしまい ■ とにかく役に立つリファレンス ■ 参考にしたチェス版 MediaWiki 拡張、作ってみませんか? ■ 今回作った EmbedShogiboard https://github.com/tai/mediawiki-kifu http://www.mediawiki.org/wiki/Extension:EmbedChessboard

×