2011-10-01から1ヶ月間の記事一覧

kaminari.gemの依存関係を分離する

aereal/kaminari · GitHubfeature/separate-each-gemというブランチでRails (依存関係にはrailtiesが指定されているけどいっしょにrails.gemも入る) や特定のORMへの依存をそれぞれのgemへ分離する作業をしている。 Kaminari::Initializerというフックを叩く…

ActiveRecord (3.0.9) で group by を使いつつ will_paginate (3.0.pre4) でちゃんとページネーション

ActiveRecordは3.x系になってからQuery Interfaceというより抽象的にSQLを構築できるメソッド群が加えられた。groupはSQLのGROUP BY句を構築するメソッドで引数にグループ化する行を渡す。またcountは条件に該当する列の件数を数え上げる。ActiveRecord 3.x…

べんりなユーザ定義補完関数を使う

zsh

zsh-users/zsh-completions · GitHub GitHubにあるzsh-usersというOrganizationがべんりそうなユーザ定義補完関数を集めたリポジトリを公開しているのでこれを使ってみる。 $ mkdir -p ~/.zsh $ git clone git://github.com/zsh-users/zsh-completions.git ~…

OS X LionでLLVMではなくGCCを使ってRubyをビルドする

いい加減RVMの行儀の悪さにうんざりしてきて、rbenv + ruby-buildに移行しようと思い立ったものの、cassandra_object.gem 0.6.0 preの組み合わせでCassandraObject::Persistence.multi_getを叩くと落ちる (bundle exec rails cがzsh.c: abortとか言う) ので…

padrino-gen の --tiny オプションによる構成の違い

$ padrino g project sample --tiny $ mv sample sample.tiny $ padrino g project sample この状態で diff -r sample.tiny/ sample/ した結果: Only in sample/app: controllers Only in sample.tiny/app: controllers.rb Only in sample/app: helpers Only…

ソフトタブが使われているプロジェクトのファイルをハードタブで編集する

vim

au BufEnter,BufWritePost */soft_tab_proj/* setlocal ts=2 sts=2 sw=2 noet au BufEnter,BufWritePost */soft_tab_proj/* %retab! au BufEnter,BufWritePost */soft_tab_proj/* setlocal ts=4 sts=4 sw=4 au BufWritePre */soft_tab_proj/* setlocal ts=2 …

RubyのリファレンスマニュアルをインストールするFormulaを書いた

るりまプロジェクトへはruby-lang.orgから辿れなくて、環境をセットアップするたびにどこだっけ、と右往左往して時間を浪費していたのでHomebrewのFormulaを書いた。 aereal's gist: 1287146 — Gist refeを入れておけばref.vimでサクサク引けてべんり。gemの…