タグ

ブックマーク / walf443.hatenablog.com (9)

  • rrails v1.0.0 released. - walf443's blog

    以前公開した、rails/rakeコマンドを超早くするrrailsですが、 http://d.hatena.ne.jp/walf443/20120427/1335482420 あれから、色々な方に使っていただいているようで、パッチをいくつかもらったりしてupdateしたりしています。 最近quark-zjuさんという方からたくさんpatchをいただいて、今までできなかったことができるようになった & 今までと非互換なところがでてきた、ということで紹介します。 rails console/serverができるように 今まで子プロセスへPTYの引きつぎをしていなかったため、rails console/serverなどが実行しても、こちらの入力をrrailsへ教えることができなかったのですが、できるようになりました。 個人的にはrails consoleあんまり使わないので対応しなくてもいいかな

    rrails v1.0.0 released. - walf443's blog
  • Rubyのaliasとalias_method - walf443's blog

    Rubyのaliasは文法でalias_methodはメソッドなのだけど、Railsの影響か、class内でショートカット的な役割をするメソッドはシンボルを引数に取るということが多くなっているので、 class SomeClass def old_some_method end alias new_some_method old_some_method endと書くよりも、 class SomeClass def old_some_method end alias_method :new_some_method, :old_some_method endと書く方が驚き最小の法則に従うと、よい気がする。 Refeによると、 Module#alias_method --- alias_method(new, old) メソッドの別名を定義します。 alias との違いは以下の通りです。 * メ

    Rubyのaliasとalias_method - walf443's blog
  • railsコマンドの実行を超早くするrrails - walf443's blog

    最近はお仕事で久々にがっつりrubyを書いてます。rails難しいです。 それはさておき、railsコマンドの実行が遅いのがつらいので、色々探していたら、jugyoさんのrails-shを見つけました。 rails-shはscalaのsbtとかみたいに、railsを読みこみ済みの環境を起動しっぱなしにしておき、既にライブラリ読みこみ状態からコンソールからコマンドを実行することで、ライブラリ読みこみにかかる時間を短縮する、というツールで、非常に実行を高速化することができます。 しばらく使っていたのですが、 raills-shのコンソールへ移動して打つのを忘れる zshじゃない RAILS_ENVがtestなコマンドも欲しいと2つのscreenのwindowを消費する rake -Tが動かない などがあったので、TCPでコマンドを送り、それ経由でrails/rakeコマンドを実行させるrrai

    railsコマンドの実行を超早くするrrails - walf443's blog
  • memcachedのように使えるBloomFilter - walf443's blog

    YAPCでmalaさんの話を聞いていて、memcachedのようにお手軽に使えるbloom filterがあるとひょっとすると便利かもしれない、とふと思ったのでAnyEventつかって、Bloom::Fasterのwrapperを書いてみました。 https://github.com/walf443/p5-bloomd-server 以下のようなプログラムを書いてサーバーを起動します use strict; use warnings; use EV; use AnyEvent; use Bloomd::Server my $cv = AnyEvent->condvar; my $server = Bloomd::Server->new( capacity => 100_000_000, backupdir => '.', ulog => 'ulog', ); $server->run $c

    memcachedのように使えるBloomFilter - walf443's blog
  • gitのリポジトリを立てる(SSH経由) - walf443's blog

    そういえば、githubに頼りっぱなしで、共有リポジトリを作ってどうのこうのというのは試してなかったなと思いこんな感じでやってみた。 $ sudo useradd -d /home/git -s /bin/rbash -c "" -m -k '' git $ cd /home/git/ $ sudo cat > .bash_profile export PATH=/home/git/bin ^C $ sudo mkdir bin $ sudo ln -s /usr/bin/git /home/git/bin して、gitコマンドしか使えない制限のかかったgitユーザーを作る レポジトリを作るときは、 $ cd /home/git $ sudo -u git mkdir repos $ sudo -u git mkdir repos/project.git $ cd repos/projec

    gitのリポジトリを立てる(SSH経由) - walf443's blog
  • Debianのrubyだとmkmfとか標準で入ってないらしい - walf443's blog

    Hpricotを試してみようと思ってインストールしていたらmkmfがないと言われた。 ruby1.8-devパッケージをインストールして解決できました。 Cの拡張ライブラリを入れる際にはmkmfがないとインストールできないので注意されたし。

    Debianのrubyだとmkmfとか標準で入ってないらしい - walf443's blog
  • コマンドラインからjsのリファレンスを引く - walf443's blog

    昨日cpprefを久々に使ったりしていて改めてコマンドラインからリファレンスを(オフラインで)引けるのは便利だなぁと思ったので、ぱっとみないっぽかったので、jsrefというツールを作ってみた。 基的にはcpprefと同様にサイトのpathを書きかえつつ、scrapingしてきてツールから引けるようにしただけです。ふだん案外jsは書く機会がなかったりしてあまり詳しくないですが、評判は聞くのでMozillaのサイトがよいらしいので、https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference からscrapingしてきています。 実行すると、20-30分くらいはかかってしまうので、orig/以下の入れてしまっています。日語のマニュアルが欲しい人は、BASE_URLをhttps://developer.mozilla.org/j

    コマンドラインからjsのリファレンスを引く - walf443's blog
  • 彼氏がtmt.vimを使ってなかった。別れたい - walf443's blog

    Text::MicroTemplateで書かれているHTMLのテンプレを素のvimのシンタックスハイライトを有効にした状態で開いていると、ひどい状態になってしまいます。 というわけで、eruby.vimを参考にしつつid:mikihoshiが書いていたのを、色々細々調整してみてだいたい変な挙動をしてたところは直せたかなといった感じです。 スクリーンショットは自分のvimだとこんな感じ。 家にいれてもらえるとのことなので、contrib/vim以下にいれてあります。 http://github.com/kazuho/p5-text-microtemplate インストールは、contribのvim以下のところから、ディレクトリ構造を~/.vim/以下に丸っとコピーすればよいです。 今のところ*.mtの場合に、tmt2htmlモードに自動判定される設定と、*.htmlの場合にtmt2html

    彼氏がtmt.vimを使ってなかった。別れたい - walf443's blog
  • 複数のgitのレポジトリを巡回するスクリプト - walf443's blog

    ここ最近perl界隈の人たちもgithubに移行してきてて、watchしてるプロジェクトが大幅に増えてくると、githubのtimelineを全部みることもできないし、リポジトリの更新をサボりがちだったのですが、各プロジェクトを巡回してupdateだけ取ってくるスクリプトを書いてみてここ数日試してる感じだとなかなか快適なので、久しぶりにBlogのネタにでもしてみる。 あるディレクトリ以下に、gitのレポジトリを集めまくっている状況で、 ruby git-update.rbとかいうように実行すると、各リポジトリに対して、git remote update(あるいはgit svn fetch)してくれるというだけのスクリプトです。 git pullとかしないのは、自分の変更とかが途中になってたとか、トピックブランチをチェックアウトしてあった状態でうっかりmergeされるのが嫌なためです。変更が

    複数のgitのレポジトリを巡回するスクリプト - walf443's blog
  • 1