タグ

ブックマーク / moro.hatenadiary.org (6)

  • vCardのデータをCSVに変換するスクリプト - moroの日記

    年末という事でMacのAddressBookから住所録を抜き出してOO Calcで読めるようにしろというからの指示がありまして、作ってみました。葉書ABとかよくできてるので、そっちから直接刷るほうがお薦めですが*1、もし必要な方がいれば。 $ vcard2csv.rb [vCard.vcfとかvCardファイルのパス] で、/tmp/hoge.csvに吐きます。 *1:うちは土日まで待たずに刷りたいらしい

    vCardのデータをCSVに変換するスクリプト - moroの日記
  • Ruby on Rails Code Quality Checklist抄訳 - moroの日記

    オレンジニュース経由でこんなものを見かけました。 Ruby on Rails Code Quality Checklist これはいいチェックリスト。あとだしジャンケンぽいですが、私がいつも思っていることがいろいろ書いてあってすばらしいです。これをすべてYesにするのは難しいというか机上の空論ぽいところもありますが、これを目指すことには価値はあると思います。 ということで項目だけを抄訳(&地の文は私感)を書いてみます。誤訳などがあればツッコミお待ちしています。 コントローラのアクションではfindやnew以外のモデルメソッドは一つくらいにしなさい(必要なら.newや.updateメソッドをオーバーライドするといい)。 原文: 1. Each controller action only calls one model method other than an initial find or

    Ruby on Rails Code Quality Checklist抄訳 - moroの日記
  • JRubyとPOIを使ってMS Officeのテキストを抜き出すライブラリを作りました - moroの日記

    仕事で必要になりそうな気配がしてきたので、夏休み中にMS Officeドキュメントに含まれるテキストを抽出するためのツールを作ってみました。 DeltaAttackという名前でGitHubで公開しています。 http://github.com/moro/delta_attack/tree/master 最初はxlhtmlでテキストを抽出しようとしたんですが、SI屋さんがよく見かけるような複雑な段組みのExcel帳票をうまく抜けませんでした。というかよりによって抜きたい部分のテキストだけ抜けないという。そこで、Apache POIを使ってみました。Javaを書くか、、と思ったのですが、まるごとRubyを見ながらJRubyで試してみたら簡単に書けたのでそちらで。WEBrickも使えるし。やらない夫大場さん++。 JRubyは使ってますが、CRubyRailsアプリから使いたかったので何とかな

    JRubyとPOIを使ってMS Officeのテキストを抜き出すライブラリを作りました - moroの日記
  • ProxyにもなるRailsアプリ - moroの日記

    このあいだWEBrick::HTTPProxyServerを使ってみてすごく簡単にProxyが書けることに感激したんですが、ふと「Proxyにしつつ自身へのリクエストはRailsで処理できないか」と思いました。 で、某WEBrickハッカーに聞いてみたところ、「できるよ。てかProxyってそもそも(ry」とのことでしたのでちょっと試してみましたら動いてこりゃすごい。 rails-1.2.3/lib/webrick_server.rbとrails-1.2.3/lib/commands/servers/webrick.rbを見ながら適当にスクリプトを作ったら動きました。 Proxyの側から直でRailsのモデルを使いまくれるかはまだ未確認ですが(でもできるよね、常識的に考えて)、これをベースにいろいろいじってみたいと思います。 以下実際に動作する起動スクリプトです。script/proxy_r

    ProxyにもなるRailsアプリ - moroの日記
  • sqlite3-rubyをインストールするときの注意点 - moroの日記

    先日から悩んでた件です。 MacOS Xでsqlite3-rubyをインストールするときには必ずMacPortsかなんかでswigを入れてからインストールすること。 swigを入れてずに gem install sqlite3-rub をするとypure-rubySQLite3ドライバがインストールされ、その状態でもそれなりに動いてしまうので気づき辛いのですが、変なところでエラーになります。 ちゃんと拡張ライブラリが生成されているかどうかは、こんな感じで解りますので、入ってない場合はswigを入れてからもう一回 gem install sqliete3-ruby をすればよかったはず。 $ find /opt/local/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.1.0 -name \*.bundle /opt/local/lib/ruby/gems/1

    sqlite3-rubyをインストールするときの注意点 - moroの日記
  • Macに自前コンパイルでUnixアプリを入れるときの注意 - moroの日記

    メモ MacPortsでインストールされる各種ライブラリは/opt/local以下に入るので、コンパイル時にはそっちも参照するようにしないとはまる。特に公式に取り込まれていない機能を追加するパッチなんかを当てたときには要注意。 具体的には vim に香り屋さんのパッチを当てたものを作ったときにはまりました。 そんな時はあらかじめ、以下のような環境変数を設定するか、configureスクリプトに常に渡すようにすれば解決するものもありそうです。 CPPFLAGS="${CPPFLAGS} -I/opt/local/include" LDFLAGS="${LDFLAGS} -L/opt/local/lib"このへん、コンパイラのデフォルト値として与えるにはどうすれば良いんでしたっけ?特にリンカのほう。ldがさっぱり解らない。やっぱり地道に指定するか、環境変数で頑張るしかないんですかね、教えて偉い

    Macに自前コンパイルでUnixアプリを入れるときの注意 - moroの日記
  • 1