2012-01-01から1年間の記事一覧

RailsでKWIC

KWICと言っていいのか悩ましいところだが、検索結果で下記のようなことを行いたいケースは一般的だと思う。 検索語の前後x文字を表示 検索語を強調させたいときがある これをRailsで実現するには、viewに以下のように書く。 highlight(excerpt(article_body,…

RubyGemsでRIとRDocを作成しない

~/.gemrc に以下のように書く。 gem: --no-ri --no-rdoc または、 install: --no-rdoc --no-ri update: --no-rdoc --no-ri

Macでファイル名に濁音、半濁音を利用したらハマった。

Ruby1.9で文字列比較していたら、同じ文字列のはずなのに一致しなくて悩んでいた。なので、String#dumpしてみると… >> puts filname.inspect => "うぃきぺいじ.md" >> p filname.dump => "\"\\u{3046}\\u{3043}\\u{304d}\\u{3078}\\u{309a}\\u{3044}\\u{3057…

Postgresql で null を 0 で返す方法

select price + tax from mytable; みたいなことをしようとしたら、taxにnullが入っていて計算が上手く行かなかった。ということで、nullを0に変えてやる必要がある。 select coalesce(column, 0) from mytable; ここではPostgresのcoalesce関数を利用した。…

ダウンロードが途中で止まった

ブラウザで大きいファイルをダウンロードしていて途中で止まってしまった。再開ボタンを押しても新しいダウンロードが始まってしまうだけ。また最初からダウンロードするのも疲れた…という時に思い出したいtips.前提としては、途中までダウンロードしたファ…

Ruby1.9でUTF-8の漢字だけ正規表現でヒットさせる

1.9.2 :001 > "隣の客は良く柿食う客だ".each_char do |c| 1.9.2 :002 > if c =~ /\p{Han}/ 1.9.2 :003?> puts $& 1.9.2 :004?> end 1.9.2 :005?> end 隣 客 良 柿 食 客 => "隣の客は良く柿食う客だ" Ruby1.9では正規表現のエンジンがonigurumaに変更になっ…

コピーした記号がどういう意味か知りたい場合

` とか ¶ どういう意味だろう。どうやって調べればいいのだろうという時はWikipediaで調べましょう。http://ja.wikipedia.org/wiki/` http://ja.wikipedia.org/wiki/¶みたいにURLの http://ja.wikipedia.org/wiki/ の後に続けて記号を入れれば調べられます。

必要のないコードはしっかり消しましょう

直していたコードが実は使われていなかった件。コードを直すもなかなか上手くいかず。そこは運悪くメール送信処理。自分が悪いにも関わらずメールサーバーを疑うはめに。真に疑うべきは、別の場所にあったとさ。教訓。いらないコードはいらないと思った時に…

CakePHPでAppControllerのbeforeFilter()が呼び出されない時

AppControllerのbeforeFilter()に処理を書けば、それぞれのメソッドに共通する処理を書けるのだが、個別のControllerにてbeforeFilter()を設定してしまった場合、親(要するにAppController)のbeforeFilter()を呼び出す必要がある。かなりハマった。またCak…

Google IMEアップデートした

1.05くらいなのが、1.4くらいになってた。まだ違いはよくわからないが、機能が色々と追加されているみたい。忘れがちだと思われるので是非アップデートしてみてください。

HTMLにおける強調にはemとstrongがある

HTMLにはemとstrongという要素型があり、それぞれ強調とより強い強調を示すものとされています。これらの要素については、強調の強弱を示すためなら要素を多重に入れ子にすればよい(例えば、強調 のように)との考えから、強調を表す要素は2つも必要無いと…

カゴヤ・クラウド/VPSにプラン変更機能キター

仮想専用サーバー・VPS | スケールアップ | オプション | カゴヤ・クラウド/VPSカゴヤ・クラウド/VPSにスケールアップ機能が追加された模様。今回の仕様変更で、サーバーのリソースが柔軟に変更できるようになりました。また、今気づきましたが、サーバーの…

seam-carving という新しい画像リサイズ方法

前から知っていたんだけど、いざ利用する際に名前が分からず何時間も探していたので個人的にメモしておく。画像の縮小を行う際、原則的には、画像の比率は変わらずに小さくなる。ところが、seam-carvingでは、面白いことが起きる。これを言葉で説明するのは…

CakePHP2でBASIC認証

事情がありCakePHPでBASIC認証に挑戦。ところがPHPもCakePHPもあまり詳しくなく、さらにネット転がっている情報のほとんどがCakePHP1の情報で動くまで大変苦労しました。その試行錯誤の結果を記しておきます。まず、データベースにテーブルを作成します。今…

Rails3.2でRails.logger.debug効かない…

Rails.logger.debug { "message" } # 何も表示されない Rails.logger.debug "message" # ブロック渡しやめる。表示される。 便利に使っていたのですが、Rails2.3にアップグレードしてからログに何も表示されなくなりました。ブロック渡しをやめたら動きまし…

mongoidでログに色付ける

mongoidは便利で出来る子だが、ログに色付いていないのがいまいち。ということで色を付けましょう。Gemfileに以下を付け加える。 group :development, :test do gem 'mongoid_colored_logger' end

”The following packages have been kept back”

apt-get update すると下記のようなメッセージを見かける。 以下のパッケージは保留されます: # The following packages have been kept back:(英語の場合) linux-headers-server linux-image-server linux-server How do I upgrade the kernel in Ubuntu …

counter_cacheは、合計値を計算しているわけではないようだ

まぁ、APIに書いてあるから説明するのもどうかと思うんだが、日本語での情報は見た記憶がないので誰かのために残しておく。 class Comment < ActiveRecord::Base belongs_to :article, :counter_cache => true # counter_cacheを有効にする際には、予め arti…

ベンチャー企業が起業時に導入するビジネスツール ベスト5についてツッコミを入れる会

ベンチャー企業が起業時に導入するビジネスツール ベスト5 ― 米 BestVendor 調べ - インターネットコムツールって大事ですからね。ベスト5まで突っ込み入れるのは面倒なので、原則ベスト3まで。また一部省いている項目があるので興味が有る方は元記事参照…

MongoDBを使う

$ mongo MongoDB shell version: 2.0.2 connecting to: test Tue Jan 17 22:43:09 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84 exception: connect failed まず、サーバーであるmongod(daemon??)を動かす。mongodサーバーも立ち上がって…

グーグルのバグ予測アルゴリズムを実装したツール「bugspots」は思ったより簡単な作りだった

予備知識: グーグルのバグ予測アルゴリズムを実装したツール「bugspots」、オープンソースで公開 - Publickey バグ修正のための変更の40%が新たなバグを混入するという研究結果 - Googleのバグ予測方法との共通点:森崎修司の「どうやってはかるの?」:IT…