Ruby

Ruby 2.0 を適当にぶちこむ PKGBUILD

普通のは上書きしないで、/opt/ruby20 にぶちこみます。 https://gist.github.com/5107774.git $ makepkg -f # pacman -U pacman -U ruby-20-2.0.0-1-x86_64.pkg.tar.xz

mechanize-prgressbar が動かない!

これが、mechanize の変更に追いついてなくて使えないのでごまかし。 # Monkey patch {{{ class Mechanize include MechanizeProgressBarAPI # (1of7)a class HTTP class Agent alias response_read_ response_read def response_read(response, request, ur…

青空文庫テキストのパーサーを書いたよ

青空文庫テキストのパーサーを書い(てい)たよ リポジトリはこちら。 https://github.com/anekos/aozora-parser使いかたのサンプルとして、HTML に変換するものを用意しました。 https://github.com/anekos/aozora-parser/blob/master/samples/html.rb ruby -…

weechat で URL をタイトル付きで収集するバッファを作るプラグイン

を書きました。https://github.com/anekos/weechat-url-buffer-with-title 見た目

日時パーサ(parser)

妙なフォーマットで日時が書かれている時に。

instance_eval と method_missing で DSL 的に HTML 生成

即興なので詰めが甘いです。

迷路を彷徨ってみた。

さて試験問題です。 内容は、壁とスペースで構成された迷路が与えられたとき、スタート地点からゴール地点に至る最短経路を求めよ、というものです。 探索アルゴリズムは、存在しかしらんかったので、調べずに適当にやってみた。 しかし、ググル禁止じゃなか…

5分問題 やってみた。

(サンプル問題 問題No:201) ■Q1.桁数の不明な整数xの各位の値を合計したものを返す関数を作りなさい。(例:x=123 の場合、1 + 2 + 3 = 6 となる)w2ソリューション株式会社を志望される方へ 事前通知問題に対する回答は、下記「A、B、C、Z」の区分…

Ruby動物本

表現力の高い文法と、強力で内容の豊かなAPIを持つコアクラスライブラリを備えた動的プログラミング言語であるRubyは、プログラミングの楽しさを感じる言語として世界中のプログラマから大きな支持を集めています。本書はRubyプログラミング言語を徹底的に、…

ごろびぃ

eban #6914(2008-08-03 07:25) [ Other ] 評価1/1=1.00 文字列は標準入力から ruby -pe'gsub(/\b./){$&.upcase}'$_ はいらなかったのか…

手抜き設定ファイル読み込みクラス

こんな風に読み込める。 ローカル変数に代入するだけ。 setting = EvalSetting.new <<-EOT directory = '~/script/ruby/' filename = 'fixmp3.rb' @base_name = 'anekos' item1 = @base_name + '_moge' item2 = @base_name * 2 + '_hoge' EOT アクセスはこん…

RubyのRangeリテラル

追記 しまった、うっかり<=だと読んでもうた! でも、範囲リテラルは括弧がいるのがなんとなくいやかな。 では、 「2..9 === x」や「x.between? 2, 9」で。 あれ? 以前これは試してエラーだったような。 実際試すとエラー。 p (1..100 === 6) #=> bad value…

ライフゲーム

ライフゲームのプログラムをはじめてかいてみた。 意外と面白いなぁ。 http://ja.doukaku.org/comment/5381/

Cで拡張モジュール

を、書いてみた。 かなり簡単にかけるのですばらしい。 WinAPIの ReadProcessMemory あたり使うモジュールなので、テストはほんの少し面倒だった。 (読み書きするための、プロセスが必要)

initialize での自動的なインスタンス変数のセット

Ruby で、Object#initialize の引数をそのままインスタンス変数とする方法。 を、ちょっと考えてみた。 class Object def make_instance_variables (_binding) eval(<<'EOC', _binding) local_variables.each do |lv_name| instance_variable_set("@#{lv_nam…

Ruby認定試験

2007年10月27日に行われる第一回 Ruby認定試験 の対策として、NaCl の有志で模擬試験問題を作成しました。作成した問題は以下の試験範囲から考えております。http://www.school.ctc-g.co.jp/ruby/rubycertify/問題の作成にあたり、以下の文書を参考にいたし…

read_body( dest = '' ) エンティティボディを取得し dest に メソッドを使って書きこみます。同じ HTTPResponse オブジェクトに対して二回以上呼ばれた場合、二回目からはなにもせずに一回目の戻り値をそのまま返します。 2回呼ぶとエラー出るよ…

猫の階乗

なにしろ、Ruby初心者なので、もっとスマートな書き方がありそうな気がします。どうでしょうか? こんなんどうじゃろう require 'rubygems' require 'active_support' puts (1..gets.to_i).inject(1, &:*) ActiveSupportを使わないなら、 puts (1..gets.to_i…

言語内DSL

First = build { filter { default accept /neko/ ignore /\.zip\Z/ } } こういうのをVimで書くと、SyntaxもIndentもおかしくなってしまう… 萎え

TApolloコンポネント

を、コンパイルしようとしたら関数が未定義なエラーが出て失敗する。 はてな、これはどういうことじゃろか。 と、sourceforgeのrepositoryみたら、当の関数 dl_String が削除されてる。 仕方がないから、そこだけ前のバージョンから失敬してきてコンパイル。…

exe化で謎のエラー

Exerbでexe化したら、TListItem#subItems.add で "無効なポインタ操作" エラーが… exe化前は平気だし他には問題ないのになぁ。

method_missing

上からたどらないでも良いようにしてみた。 class Phi::Form def method_missing (name, *args) if @all_controls and result = @all_controls[name] result else update_all_controls @all_controls[name] or super end end def update_all_controls @all_c…

MUGENコマンド表

つくった。 プレイヤ用じゃないと思われるコマンドなどは除外するようにしてある。 が、もっと賢い表示にしたい。 MUGEN上で矢印キーを押してコマンド表のキャラを選択できるようにもしてみた。 でもこれ、マルチモニタ環境じゃないといみないかな… なぜか、…

Apollo

Apolloで Phi.load_from_dfm を使うと (フォームの上にTPanel、その上に TButton が乗ってるばやい) main_form = Phi.load_from_dfm('main_form.dfm') main_form.panel1.button1.on_click = proc do hoge end のように、button1 にアクセスできるけれど main…

Apollo(Ruby)をいじってみた。

こいつはなかなか便利な予感。 http://wiki.fdiary.net/apollo/ 前いじったときはイマイチに感じたけれど何故だろう。

KEN_ALL.CSVのインポートスクリプト

こんな感じで良いのかなぁ… rails の Rakefile にかいた。

KEN_ALL.CSV

RubyのCSVモジュールは遅いようなので郵便番号データを読む際に line.split(',').map {|it| it.delete('"') } と、手抜きができるかチェック > sed -e "s/[^,]//g" KEN_ALL.CSV | wc 121941 121941 1829115 > echo $(( 1829115 % 121941 )) 0 > sed -e "s/[^…

実装すた!

reduce(l|r)というわけで問題。reducelとreducerを実装せよ。制限時間はあわせて10分。ただし、reducelとreducerは、Haskellにおいて次の挙動を示すものとする。 Symbol.class_eval do def to_proc proc do |*x| obj = x.shift obj.__send__(self, *x) end e…

Ruby Cookbook

Ruby Cookbook和訳版がでているようだが… 丸ごと収録してない章がわらわらあるってのはいかがなものか。 ページ数だと、906頁から512頁にへっている。 394頁って本一冊分減ってるじゃないか。 これ一冊で色々あるから便利なのに。 http://www.oreilly.co.jp/…

落ちる。落ちるのです。

WM_COPYDATA を使ってWinAmpにファイルを送ると落ちるので、m3u(プレイリスト)ファイルを生成してそれを開くようにした。 こっちのが楽じゃないか。