レトロゲームプラクティス

仕事中の雑談から思いついたプラクティス。
テストに失敗するたびに、スペランカーの死亡音とかドラクエの呪われたときの音とか、暗い効果音をながす。
で、テストに成功したら、レベルアップとか面クリアとか明るい効果音を流す。
見える化というか聞こえる化。

…だめかなぁ…

WEBrickでeRuby

Apache使うよりぜんぜん手軽だなー。
でも、ERBHandlerの使い方、あってるのかな?


#!/usr/bin/env ruby
require "webrick"
include WEBrick

class MyERBHandler < HTTPServlet::ERBHandler
ERB = "/usr/local/ruby/bin/erb.bat"

def initialize(server, filename)
super
@filename = filename
end

def do_GET(req, res)
IO.popen("#{ERB} #{@filename}") {|io|
res.body = io.read
}
res["content-type"] = "text/html"
end
end

HTTPServlet::FileHandler.add_handler("rhtml", MyERBHandler)

s = WEBrick::HTTPServer.new(:Port=>8000)
s.mount("/myeruby", HTTPServlet::FileHandler, Dir.pwd)
trap("INT") {s.shutdown}
s.start


<html>
<head>
<title>hello, WEBrick+ERb</title>
</head>
<body>
現在時刻: <%= Time.now %>
</body>
</html>

WEBrickでプロキシ

ルビま!の記事を模写。
Access Logの抑制が間抜けなかんじだなぁ。


#!/usr/bin/env ruby
require 'webrick'
require 'webrick/httpproxy'
include WEBrick

h = lambda {|req, res|
}

s = HTTPProxyServer.new(
:Port=>8080,
:Logger=>Log.new(nil, Log::ERROR),
:AccessLog=>[ [ File.open("NUL", "w"), AccessLog::COMBINED_LOG_FORMAT ] ],
:ProxyContentHandler=>h
)

Signal.trap('INT') {
s.shutdown
}

s.start