Hiki Luaプラグイン

Ruaを作っていたのは、こーゆーことをやりたかったわけで。
プログラミングできるWikiって、よさげじゃないですかね?

require 'rubygems'
require 'rua'
require 'stringio'

def lua_eval(src)
  rua = Rua.new
  rua.stdout = StringIO.new
  rua.eval(src)
  rua.stdout.string
rescue RuaError => e
  e.message
end

export_plugin_methods(:lua_eval)

セキュリティは微妙だけど、危ないリソースには触らせてないし、大丈夫じゃないかなぁ…と。メタプログラミングも出来ないようにしている(はずだ)し。
とりあえず、ぜんぜん使い物にならないので、以下タスク。

  • Ruaのbetaをさっさとリリース
  • 出力がエスケープされないようにする
  • 適当なライブラリをRubyからLuaに渡してやる
    • open_uri
    • REXML
    • あと何かあるかなぁ?
  • Luaの標準ライブラリも、危なくなければ使えるようにする
  • 正規表現まわりをテストのこと
  • Hikiプラグインの書き方を勉強
    • コードブロックをうまい具合にプラグインに渡せるといいんだけど