まさおのポエムを読むのと、Composerのちょっとした話
パーフェクトRubyの著者の一人である、スーパーハッカーすがまさおがpplogにポエムをかきはじめた。
https://www.pplog.net/u/sugamasao
まさおフリークとしては全力で読みたいのだが、いかんせんpplogはウェブサイトだし、おちこんだときにぱっと読むためにはコマンド化したい。
ということで
SugaPoemをつくりました
https://github.com/uzulla/SugaPoem
インストールと使い方
$ mkdir ~/sugapoem $ cd ~/sugapoem
して、中にcomposer.jsonとして以下を作成し
{ "repositories": [ { "url": "https://github.com/uzulla/SugaPoem.git", "type": "git" } ], "require":{ "uzulla/sugapoem": "dev-master" } }
みなさんが手持ちのPHP5.4以降で、Composerをinstall実行して
$ php composer.phar install
$ vendor/bin/sugapoem
と実行するだけです。簡単です。
みんなすがさんのポエムをよもう!!!
$ vendor/bin/sugapoem 2014/02/05 02:04:00 sugamasao > インターネットの世界に逃げ場など無い。あるのは開き直りだけだ +>Unknown>逃げるな
ついでの話
PHPでコマンドをつくったりとかするときに、Composerでvendor/bin以下に実行ファイルを置くには
"bin": [ "sugapoem" ]
とかかいておくと、いれてくれるわけです。(具体的は、Githubのコード見たりやってみてください)
で、そういうの開発するときに試行錯誤しますけど、毎回Githubにpushするのはかったるいので、手元の(ローカルの)ファイルをcomposer.jsonから指定できるようにしたいですよね。
そういう時は
"repositories": [ { "url": "/path/to/pplog_crawl/", "type": "vcs" } ],
とか、urlにPATHをかいて、TypeにVCSを指定すると、そのディレクトリの中にあるgitレポジトリを読みにいってくれるので、いちいちGitにあげなくてもつかえます。
tagを切っていない場合はdev-masterをバージョン番号に指定しましょう。
Githubに公開してない(けどローカルにある)ライブラリをComposerでインストールするにはこの方法をつかうとよいでしょう。
ということで Enjoy!
追記 Packagistに公開しないのか?
すがさんのポエムは残念ながらジャパニーズオンリーっぽかったので。
追記2 同梱されているPplogCrawlについて
pplogをクロールするクラスライブラリですが、pplogをクロールするとか悪趣味なのでつかわないほうがよいでしょう。