shibuya trac8
TRANSCRIPT
Wikiマクロ 5分3分クッキング
Shibuya.trac 第8回 勉強会
自己紹介
risk(高橋 登)Twitter @riskrisk
八王子の会社でソフトウェア開発やってます。
Trac使ってます。
名刺配布中です。
Wiki見てますか?
私のプロジェクトのWikiには、「小人さん」が住んでいます
http://wikipatterns.com
http://wikipatterns.com
Wikiの小人(Wiki Gnome)
Wikiを見やすくしたり文章を読みやすくしたり
書きやすくしたり
続きはWebで。(日本語アリ)
でも、小人さんが頑張ってくれても、誰も見てくれなかったら
小人さんのテンションDown
なので、小人さんのために
みんなから見てもらえるような
小人さんの編集の手助けになるような
Wikiマクロで、Wikiを盛り上げよう
Wikiマクロ 3分クッキング!
てれてってててて〜 てれてってっててて〜てれてってっててててて てって〜てって〜
てれてってって〜 てれてってって〜
今日のメニュー
素直にあやまれる男を目指す
「すみませんマクロ」
誠意の度合い調整機能付き
材料
WindowsXP TracLightning入り ・・・ 1台
Wikiマクロ用簡単テンプレート ・・・ 1枚
アイデア ・・・ 少々
Pythonの知識(helloworld程度) ・・・ 少々
0. 下ごしらえ
Wikiマクロ用のテンプレを使います
Tracには、テスト用のSandBoxプロジェクトを!
テンプレの内容
#!/usr/bin/env python# -*- coding: utf-8 -*-
from trac.wiki.macros import WikiMacroBase
class TemplateMacro(WikiMacroBase):
# マクロのエントリポイント def expand_macro(self, formatter, name, args): arguments = args.split(',') return main(count=int(arguments[0]))
def main(count):
return u'Template ' * count
if __name__ == '__main__': # マクロテスト用 print main(3)
1. テンプレファイルの名前変更
ファイル名
Template.py
を
Sumimasen.py
に変更します。
2. クラス名を決めます
テンプレの中の、クラス名
TemplateMacro
を
SumimasenMacro
にします。
テンプレの内容
#!/usr/bin/env python# -*- coding: utf-8 -*-
from trac.wiki.macros import WikiMacroBase
class SumimasenMacro(WikiMacroBase):
# マクロのエントリポイント def expand_macro(self, formatter, name, args): arguments = args.split(',') return main(count=int(argument[0]))
def main(count): return u'Template ' * count
if __name__ == '__main__': # マクロテスト用 print main(3)
3. マクロ動作を書く
main から returnで返した文字が、そのままWikiに出力されます
誠意の度合いを調整するので、数値で「ホント」の数を調整
return ('ホント' * count) + 'すみません'
テンプレの内容
#!/usr/bin/env python# -*- coding: utf-8 -*-
from trac.wiki.macros import WikiMacroBase
class SumimasenMacro(WikiMacroBase):
# マクロのエントリポイント def expand_macro(self, formatter, name, args): arguments = args.split(',') return main(count=int(arguments[0]))
def main(count):
return ( u'ホント' * count ) + u'すみません'
if __name__ == '__main__': # マクロテスト用 print main(3)
4. 作ったマクロを設置する
egg化 とか 必要ありません
pluginsの中に、そのまま突っ込みます
SandBoxプロジェクトならココ!
TracLight/projects/trac/SandBox/plugins
5. Tracのサービスを再起動
6. Wikiで使う
今回使用したテンプレは、ブログにアップロードします
もう少し詳しい内容もかけたら書きます
最後に
ご清聴 ありがとうございました。