MoinMoinをお好みのエディタで編集できるPythonスクリプトeditmoin
MoinMoinは海外で使用例が多いPython製のWikiエンジンです。ページ単位でアクセスコントロールが可能なほか、ローカルで動作させることができるなどの特徴があります。
editmoinというPythonスクリプトを使えば、MoinMoinのページを普段利用しているエディタで編集することができます。
基本的な使い方
ログインが必要ないMoinMoinならURLを引数にするだけでエディタが起動して編集が可能です。エディタを終了するとMoinMoinに書き込まれます。
テンプレートの指定は-tオプションを使って行えます。
editmoin http://moinmoin.wikiwikiweb.de/TestPage
editmoin -t SomeTemplate http://moinmoin.wikiwikiweb.de/TestPage
認証の設定(~/.moin_ids)
~/.moin_idsにMoinMoinのURLとMOIN_IDというCookieの対を記述することで、ログインが必要なwikiでも認証なしで書き込めます。
MOIN_IDはMoinMoinにログイン後にブラウザから調べます。Firefoxの場合は「編集->設定」の「プライバシー」にある「Cookieを表示」から調べられます。
以下のようになります。
http://moinmoin.wikiwikiweb.de 987654321.321.54321 http://wiki.canonical.com http://example.com/moin/moin.cgi 123456789.123.12345
Basic認証は~/.moin_idsで指定しなくても対話的に認証できますが、面倒な場合は~/.moin_ids中でURLにユーザ名とパスワードを埋め込むこともできます。
ユーザ名をuser、パスワードをpasswordとすると以下のようになります。
https://user:password@example.com/moin/moin.cgi 123456789.123.12345
ショートカット
~/.moin_idsに記述があればショートカットが利用可能です。URL中でMoinMoin以下のパス(サブパス)がはじまるスラッシュより前の文字列の一部分を入力するとだけでアクセスできます。
例えばhttp://wiki.canonical.comが存在する場合、canonicalだけでもアクセスできます。
editmoin canonical/FrontPage
エイリアス(~/.moin_alias)
深い階層のページなど、長いURLを打ち込むのは面倒な場合は、~/.moin_aliasesでエイリアスを設定することができます。
各行にエイリアスと展開結果の対を指定します。以下のようになります。
script http://moinmoin.wikiwikiweb.de/ScriptMarket
エイリアスを利用したアクセスも通常の使い方と変わりません。
以下の例ではhttp://moinmoin.wikiwikiweb.de/ScriptMarket/EditMoinにアクセスされます。
editmoin script/EditMoin
環境変数による設定
おまけ:Vimシンタックスファイル
VimにはMoinMoin記法のシンタックスファイルmoin.vimがあります。以下からダウンロードできます。~/.vim/syntax/以下に配置しておきます。
moin.vim - Syntax file for MoinMoin wiki text : vim online
さらにファイルタイプの自動判別のために~/.vim/ftdetect/moin.vimとして以下の内容を記述しておくと良いです。
au! BufRead,BufNewFile *.moin \ if getline(1) =~ '^@@ Syntax: 1\.5$' | setf moin1_5 \ | else | setf moin1_6 | endif