タグ

ブックマーク / blog.livedoor.jp/xaicron (8)

  • にひりずむ::しんぷる - homebrew で最低限これだけはいれておけってやつ

    新卒向けなんたらカレンダーの X日目です。 そもそも homebrew 使ってない まず Xcode を入れる必要がある。Xcode は App Store からインストールして、 Preference → Downloads → Components → Command Line Tools をインストール。 そしたらおもむろに以下のコマンドを打つ $ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)" おしまい。 sl $ brew install sl 必須コマンド。 zsh $ brew install --disable-etcdir zsh OS X は PATH をゴニョゴニョやられてむかつくので /etc/zshenv を読まないように --disable-etcdir 付きでインス

  • にひりずむ::しんぷる - IO::Prompt::Simple 書いた

    リリースしました にひりずむ::しんぷる - IO::Prompt::Simple 0.01 リリース あらすじ xaicron:> ExtUtils::MakeMaker はロードに1秒ぐらいかかるから遅延ロードにしたた。prompt 使いたいだけなんだけど。IO::Prompt はなんかごついし、今後はコピペでいい気がしてきた。 tokuhir○m:> @xaicron IO::Prompt::Simpleの予感 xaicron:> @t○kuhirom srd! というわけで適当にでっち上げた。 xaicron/p5-IO-Prompt-Simple - GitHub的には ExUtils::MakeMaker の prompt() と同じだけど、第三引数で指定した文字じゃないとダメとか、この正規表現にマッチしたやつじゃないとだめとかを設定できる感じ。 あとは、terminal

  • にひりずむ::しんぷる - HTML::Filter::Callbacks の紹介

    追記あり Yuji Shimada / HTML-Filter-Callbacks - search.cpan.org charsbar さんにパッチを送ったら、「commit bit 付けたから自分でリリースしてちょ」って言われたので、先ほど 0.07 をリリースしました。 それはさておき、このモジュールについての情報があんまり世の中に無いようなので、いい機会なので紹介しようかと思います。 このモジュールを使えば 不要なタグの除去 url の変換 属性の追加、削除 text の置き換え などなどが簡単にできます。 似たようなモジュールとして、HTML::Scrubber というのが昔からあって、よく使われてますが、長年メンテされていなかったり*1、インターフェースがとてもわかりにくかったり*2して、今から使うのは気が引けますが、HTML::Filter::Callbacks は大変直感的

  • にひりずむ::しんぷる - 初めての Furl

    巷でとっても速くて便利だねこれってなってる HTTP Client であるところの Furl の簡単なつかい方を紹介します。 そもそも Furl は何かっていうと、perl には LWP っていう超高機能な HTTP Client があって、これがデファクトになってるんですね。 でも、それって結構昔からあって、かつ重厚長大なモジュール群なので結構遅いわけです。とくに CPU 使用率が高い。 そんなわけで、libcurl ぐらい速くて軽い HTTP Client があるといいよねってことで開発されたのが Furl です。 読み方は ふぁーる。 use strict; use warnings; use 5.0100; use Furl; my $furl = Furl->new(agent => 'Madoka-Magica/chu-2'); my $res = $furl->get('ht

  • にひりずむ::しんぷる - make test で Test::mysqld を永続化させる方法

    実際にどうやってんのかなーって話をあんまりしてなかったので。 まず、こんな感じのモジュールを t/lib/Test/MyApp/mysqld.pm とかで作って M::I::TestTarget の default_test_target() で `make test` を書き換えてやり、t/script/setup_mysqld.pl に とか書いてあげます。 それぞれのテストでは、Test::MyApp::mysqld->setup で mysqld を立ち上げるようにして置けば、 prove で個別にやった時は、それぞれ立ち上がる make test したときは、最初に立ち上げて、あとは使いまわす という感じになります。 ポイントとしては、 $ENV{TEST_MYSQLD} に Test::mysqld のデータ構造をそのまま JSON にして突っ込む Test::MyApp::m

  • にひりずむ::しんぷる - .tpagerc が何気に便利

    TT をインストールすると、tpage というコマンドラインツールが付いてきます。こいつを使うと、コマンドから template を扱うことができて、あら便利ですね。 モジュールの雛形とかは下記のような感じで、 $ cat hoge.tt package [% module %]; use stict; use warnings; use 5.008001; our $VERSION = '0.01'; 1; __END__ =head1 NAME [% module %] - =head1 SYNOPSIS use [% module %]; =head1 DESCRIPTION [% module %] is =head1 AUTHOR [% author %] E<lt>[% email %]E<gt> =head1 SEE ALSO =head1 LICENSE This libr

  • にひりずむ::しんぷる - ReverseProxy + Worker で NicoCache っぽく YouTube の動画を見ながら保存する

    まぁタイトルのまんまですが。 Plack::App::Proxy とか使えばいいのかもわかりませんが、試してません(というか Win32 で AnyEvent::HTTP が セグるっぽい)のであしからず。 ブラウザで、YouTube ダラ見しといたら、いつの間にか観た video が HDD に保存されてるといいよねって思って、まぁ普通にそんくらいやってくれるソフトはあるだろうけど、探す前に作ってみました。 Browser <-> ReverseProxy -> DB Worker <- DB Proxy は psgi ファイルにまるっと書いてみた。アクセスがあったら、sqlite に queue を追加して、定期的に Worker が sqlite の中を見て、動画をダウンロードする感じです。あほっぽいけど実装は簡単。

  • にひりずむ::しんぷる - yokohama.pm #5 で、cpanm について話してきました

    yokoahama.pm はYAPC2009前夜祭が初参加だったので、今回が2回目の参加になりました。 トップバッターだったのですが、電車が止まったり、道に迷ったりして、たどり着ける気が全くしなかったのですが、なんとかGPSを駆使して発表までには間に合いました。 今回は、Modern Commandline Tools と題して、昨今のコマンドラインツールについて話そうとおもってたんですが、なんか、いろいろと時間がなかったので、cpanm についてだけ話しました。 Demo が動かなかったのは、僕が exeport PERL_CPANM_DEV=1 していなかっただけなので、cpanm 悪くないよ!って言うことだけ言っておきます。

  • 1