2007-12-01から1ヶ月間の記事一覧

Webでプログラミング!

・・・できるものを作ってみた。 http://storehouse.quickvps.net/firter/ Luaでサーブレットっぽいものを作れる。Operaには(CodePressが)未対応。 future changes パーソナライズ ライブラリの追加 NKFで外部リソースの文字コードの自動変換 外部リソースの…

ShallowTree(作りかけ)

shallow_tree.js shallow_tree.css Example JavaScriptのTreeViewライブラリを探したけど、よさげなのがないので、自作中。

オーバーライドされた元のメソッドを呼ぶ

もう少しスマートなやり方があるような気が。 class Foo def initialize @val = 'foo val' end def func @val end end class Bar < Foo def initialize @val = 'bar val' end def func 'Bar#func' end end foo = Foo.new bar = Bar.new puts bar.func puts F…

gemパッケージの「-60」

gemを0.9.5にしたらプラットフォームごとのファイル名の命名規則が変わったらしく、「rua-0.3.7-x86-mswin32-60.gem」というファイル名になってしまった。 x86はともかく、末尾の「60」がよくわからないのでplatform.rbを覗く。 ## # A pure-ruby gem that m…

1.9.0

http://www.ruby-lang.org/ja/news/2007/12/25/ruby-1-9-0-release/ リリースされたなー。とりあえずWindows版待ち。

Rua: 0.3.6-b1

http://storehouse.sakura.ne.jp/rua/beta/0.3.6-b1/ 末尾に「=」がつくメソッドがある場合、「hoge=」→「set_hoge」というエイリアスを作るようにしてみた。 メタテーブルを使えば、もう少しましな動作になると思うけど、とりあえず後回し。 require 'rua' …

Merb

マルチスレッドを強くアピールしてたと思ったんだけど、あんまり話題になっていないような。(Merbの話題自体少ないけど) だれかスループット計ってくんないかな?

Rua: 0.3.6-b2

http://storehouse.sakura.ne.jp/rua/beta/0.3.6-b2/ エイリアスを作るのはやめ。newindexイベントつかって、ふつーの代入っぽくSetterを呼べるようにした。 require 'rua' rua = Rua.new(:all) class Foo def bar=(v) @bar = v end def bar @bar end end ru…

cygwinでscreenでdetach

http://home.tiscali.de/emilio.lopes/screen/screen-4.0.2_cygwin.patch ↑のパッチを充てて、bashを起動する前に環境変数CYGWINに'tty'をセットしたら、とりあえず使えるようになった。

Shooting Starを3.2.5にした

http://rubyforge.org/projects/shooting-star/ とりあえず。 やっぱりIEカチカチ Flashのバージョンをあげるというのもなんなので、いろいろ調査。 どうも、IEの場合、onloadが呼び出されない場合があるっぽい。 http://support.microsoft.com/kb/239638/ja…

QDBM + Ruby + WindowsでSEGV

VC8でビルドしたQDBMとRubyバインディングを使ってたら、SEGVで落ちまくるんで調査。 結論としては、dllでmallocしたメモリをexeでfreeするとだめっぽい。 dllとexeでシームレスにmallocする方法がわかんないので、とりあえずqdbmをstaticリンクするようにし…

今日の戦果

「ちろちゃん」は「まとちゃん2」でもいいような。

ルールを作るよりツールを作れ

DEV

ルールや手順書作るより、それらが不要になるようなスクリプトを書こうよ、と思う。

Resizable

http://storehouse.sakura.ne.jp/resizable/resizable.htm これ見て「すごいなー」と思ったので、prototype.jsで実装してみた。 Operaだとイマイチな動作。 <html> <head> <script src="prototype.js" type="text/javascript"></script> <script type="text/javascript"> var Resizable = Class.create(); Resizable.prototype = { initialize: function(element…</head></html>

CodePress: Lua用syntax highlighting

LUA

http://storehouse.sakura.ne.jp/viewvc/viewvc.cgi/codepress_lua/?root=svn JavaScript用をベースにして作ってみた。バージョンは5.1。 /* * CodePress regular expressions for Lua syntax highlighting */ // Lua Language.syntax = [ { input : /\"(.*?…

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.…

Rua 0.3.5

http://rua.rubyforge.org/ 外部の文字コードを指定すると、ホストから渡された文字列は内部的にUTF-8に変換して処理するようにした。 rua = Rua.new(:all) rua.external_charset = Rua::SJIS # 外部の文字コードはSJIS rua.str = 'あいうえお' # SJIS→UTF-8…

非同期I/O 概説

http://lab.klab.org/files/alm/20070806/aio.pdf AIO便利そうだなー。

mod_ruby for Windows + Apache 2.2

コーディングをしようと思ったけど酒飲んでるので無理! かわりにmod_rubyをWindows + Apache 2.2でビルドした。 ビルド環境 mod_ruby-1.2.6 Visual C++ 2005 Express Edition Microsoft Platform SDK Apache_2.2.3-Openssl_0.9.8d-Win32 ActiveScriptRuby 1…

Ruaで簡単なフィルタを作る

もはや、何言語だか。 $stdoutは渡して大丈夫かな? require "cgi" require 'open-uri' require 'rua' cgi = CGI.new print cgi.header("text/html") rua = Rua.new(:base, :string) rua.stdout = $stdout rua.open = OpenURI.method(:open_uri) rua.eval(<

iconvとライセンス

Ruaの文字コードまわりがやばそうなので、入力された文字コードを自動的にUTF-8に変換する機能を追加しようと思って、iconvまわりを調査。 mswin32版のiconv.dllはMeadowのものっぽいけど、GNU版なのかなぁ?LGPLだから静的リンクしない限り、CPLで問題ない…

Rua 0.3.4-b2

http://storehouse.sakura.ne.jp/rua/beta/ 内部的にUTF8に変換することで、SJISの問題になんちゃって対応してみた。 require 'rua' rua = Rua.new(:string) rua.external_charset = Rua::SJIS rua.repl = '寿限無' puts rua.eval(<<EOS) #=> "寿限無寿限無" s, n = s</eos)>…