すがブロ

sugamasaoのhatenablogだよ

ruby

となりの ATND さんをリリースしました

ATND から Web API が提供されていますね ATND API リファレンス 昨日まで知らなかったのですが、 ATND が Web API を提供してくれています。 そこで、普段お世話になっていますので何か作れないかなーと思い、ちょっと作ってみました。 そういえば、ちょっ…

Sass 2.2.0 の Changelog を日本語に訳してみた

間違ってたらごめんなさい>< Sass 2.2.0 が出た事ですし、変更点が File: SASS_CHANGELOG に記載されていますから、そこを翻訳してみようと思います。 違っている部分等がありましたら、ご指摘お願いします。英語は苦手なので Excite翻訳だよりです>< 2.…

Sass のトップページを日本語でわかるようにしてみた

sass の公式ページ Sass - Syntactically Awesome Stylesheets 後半は特にトップページに記載されていないのですが、勢いで書きました。疲れました。 Sass Sass を使う事で再び CSS の虜になれるぜ。Sass は CSS にネスト、変数、 Mixin 等を加えたものさ。 …

saag 0.3.4 をリリースしました

バージョンがスゴく上がってますが パッチレベルを上げようとしたら失敗してマイナーバージョンを上げてしまったからです>< 変更点 幾つかありますが、動作に関わる部分は一つのみです。その他はドキュメンテーション部分なので、あまり気にしなくて良いと…

saag の不具合を修正しました

現在の最新バージョンは 0.2.4 になります お恥ずかしい限りですが、 -r オプションを使用するとエラーとなってしまうしょーもない不具合を修正した版となります。 また、先日のエントリでちょっと書きました、ログのバージョン部分の対応を行いました。 も…

github に saag をリリースしました

saag とは HTML/XHTMLを生成するためのマークアップ言語である、 Haml(参考:日本Hamlの会) をインストールするとついてくる CSS 用マークアップツール、 Sass の編集を補助するツールです。 Sass の説明はSassでCSSの弱点を克服しよう − @IT が詳しいで…

rubygems がぶっ壊れた

いまいち心当たりないんですけど 今日書いたスクリプトを gem 化して、github に上げようと思っていたのね。 んで、大分スクリプトが動くようになったし、gemspec ファイルもほぼできた。 だが、しかし ふと気がつくと、gemspec ファイルの内容云々ではなく…

sinatra アプリを Passenger で「Sub URI」で動かす(2)

sinatra アプリの PATH_INFO はどうなってんの? sinatra アプリを Passenger で「Sub URI」で動かす - @sugamasao.blog.title # => ”コードで世界を変えたい”の続き。 元々書こうとは思っていたのですが、ブコメでも言及された件について # b:id:Sixeight …

sinatra アプリを Passenger で「Sub URI」で動かす

Sub URIで動かすとは? ドメイン単位ではなく、ドメイン配下のディレクトリをルートとして環境を構築する場合の話です。 例えば、 http://example.com/ をアプリケーションのルートとする場合ではなく、 http://example.com/hogehoge/ の hogehoge/ をアプリ…

Passenger が動かない・・・!

Passenger を導入しようと思ったのだけど サラのCentOS5.3 に Ruby と Ruby gems をインストールしてある状態で、 Passenger を導入しようと思った。 で、Sinatraで鼻歌まじりのWeb開発を参考に、 gem install passenger passenger-install-apache2-module …

ruby gems が使えない

gem が使う dll が見つからない>< ruby 1.8 系の環境を作成するにあたり、One-Click Installer ではない ruby バイナリを使う場合、 ruby gems は別途インストールしなくてはいけないのだけど、そこでハマった。 Windows に Ruby on Rails 2.2 + MySQL 5.x…

Vim の autocomplpop.vim を使って Ruby をいじってると即死する

いい加減耐えられなくなってきた 「モジュール名::」とか、「クラス名.」みたいに打つとかなりの高確率で vim が強制終了する。 ちなみに、 vim の散り際の一言は以下の通り Vim: Caught deadly signal BUS- Searching... Vim: preserving files... Vim: Fin…

OSの文字コードを取得するには

標準出力に日本語を出したい! だけど OS の文字コードによっては文字化けしちゃう>< 例えば、-h のヘルプを日本語で書いたとしよう。そのヘルプを表示するとき、Windows なら SJIS で表示して欲しいし、Linux ならその端末に設定されている LANG の値で表…

Ruby のマニュアルが検索したくなったのでグリモン書いた

Ruby のマニュアルを google のサイト検索するフォームを付けるだけのグリモン Ruby Reference Manual - るりま 大分昔は Ruby のマニュアル自体に検索窓が付いていたような気がするけれど、いつの間にかなくなってしまっていた。 Ruby にも慣れてきたのがあ…

MacOSX での Rails 2.2 環境を構築して MySQL のドライバでハマる

またお前か! こないだは Windows 環境でハマったりしたのだけど、今度は Mac でハマりました。 基本的な手順はここ(Windows に Ruby on Rails 2.2 + MySQL 5.x 環境を構築する手順とハマり所 - @sugamasao.blog.title # => ”コードで世界を変えたい”)と同じ…

Windows に Ruby on Rails 2.2 + MySQL 5.x 環境を構築する手順とハマり所

始めに Windows 環境で Rails 2.2 を使える環境を作ろうとしたところ、MySQL5.1 を使用するとライブラリの関係で正しく動作しないという事象が発生したので、ゼロから環境を構築する手順と合わせてハマり所を記載しておく。 ちなみに、Rails 2.2 であること…

gzip ライクなコマンドを Ruby の zlib で作成した

Windows ではコマンドラインベースに zip が使えないっぽいので Ruby で gzip 的なものを実装した Windows で何か処理を書く時に、 Zip 圧縮ができないのが不便でした*1。 で、そんな時に Ruby の zlib ライブラリを発見。 これを使えば gzip 相当のコマンド…

せっかく MIME エンコードをパースしたので、本文をデコードしてみる

BASE64/Quoted-Printable のデコード方法 =~ と scan のパフォーマンスについて - @sugamasao.blog.title # => ”コードで世界を変えたい”ここで、文字コード、エンコード方法、エンコード文字列が取得できるロジックを組んでいた。 せっかくそこまで書いたの…

=~ と scan のパフォーマンスについて

以前も調べたのだけど、ちゃんとしたロジックで再検証してみる 以前、scan と正規表現のグループ化 - @sugamasao.blog.title # => ”コードで世界を変えたい” でも調べていて、scan の方が遅い事がわかったのだけど、もうちょっとまともなロジックで再検討し…

Eclipse に Ruby の Aptana plugin を入れてみた

Ruby Plugin の完成度が結構高い 昔 RDT って Plugin 使ってた頃があったけど*1、あれよりも細かい所で使い勝手が良くなってる気がする。 で、それは良いのだけど、実行する時にプログラムの実行と RUnit によるテストケースの実行がメニューにある。 それは…

+暗が gsub できない

これは Ruby の不具合? JISコードの +暗 という文字を gsub*1の第二引数として渡すと文字化けする。 以下のようなスクリプトで検証してみる。 検証環境 OS : Mac OSX Ruby : ruby 1.8.6 (2007-09-24 patchlevel 111) [i686-darwin9.3.0] ちなみに、Linux …

scan と正規表現のグループ化

どちらがパフォーマンスが良いのか 正規表現のグループ化を行って、 $1 等で値を取得する場合と scan メソッドを使って値を取得するのはどちらが高速なのだろうか。 名前からすると scan メソッドの方が高速な気がするが。。。 実測 以下のようなメソッドを…

JISコードの文字数を調べる(2)

修正版 エスケープシーケンスチェックあたりのロジックミスがあったので修正した版。 その他、ループ部分やエスケープシーケンス部分のチェックの記述方法を変更した。 def jis_couner(str) esc_flag = false esc_string = "" wide_byte_flag = false wide_f…

JISコードの文字数を調べる

ついカッとなって 2008/08/22:修正版→JISコードの文字数を調べる(2) - @sugamasao.blog.title # => ”コードで世界を変えたい” 文字数を調べるプログラムを作ってしまった。 ちなみに、 SJIS ではなく、 JIS のコードである。 JISコードは1バイト文字や2…

Rubyなんて使ってたまるか!と思わせる5個くらいの方法

教えてあげるね! ちょっと遅い話題ですが、とうとうRuby 1.9 がリリースされましたねー。 Rails でどんどんDLされ、今までシェアの薄かった日本でもDLされているようで、凄いことだね。 (DLされた数=満足している人の数、かどうかは別としても。) でもこ…

Ruby kaigi 2008 に行ってきたよ

1日目 あとで書く 午前中セッション 高度に発達したささださんは Matz と区別が付かない(っていうか顏似てね?)。 すごいっぽい外人さんが話している。 JRuby は早いよ! よくわからないがスピーカーの外人が観客席を激写www 名前しかしらなかったRubinius…

土日は Ruby 会議

とりあえず 土日は行きます。場所とか全然確認してないですけれども/(^o^)\ http://jp.rubyist.net/RubyKaigi2008/ っていうか、日曜の開場早すぎるwww 泊まらないとそんな時間に行けないだろ><

Vim の Ruby インターフェイス追加

諦め悪く調べてみたんだが やはり、既にインストール(コンパイル)されている状態で後付けで Ruby インターフェイスを追加するような方法は無いのだろうか。。。 そうなると、やはりソースからコンパイルしてみないと行けないのか。 #なんとなく、macports…

Rubyのデバッグ

今までずっと いわゆる print デバッグで開発してたんだけど、世の中の開発者さんはどうやってデバッグしてるのか。 標準でもデバッガは付いてるけど、ゆとりなおれにはコマンドラインデバッガは使いこなせる気がしないんだ\(^o^)/ Windows 環境だと eclip…

正規表現で間の文字列を抜き出したい

例えばタグの値とか <p>test</p> test部分だけを抜き出したい!>< そういうときってどんな風に正規表現を書けば良いだろう。とりあえずこんな風に書いたんだけど、なんかダサい。 >> str = "<p>test</p>" => "<p>test</p>" >> str =~ /<p>/ => 0 >> $' =~ /<\/p>/ => 4 >> puts $` </p>…