@kyanny's blog

My thoughts, my life. Views/opinions are my own.

2009-02-01から1ヶ月間の記事一覧

svn merge で古いリビジョンに戻す (バックマージ)

$ svn merge http://svn.example.com/repos/proj/path/to/file.txt@revN http://svn.example.com/proj/repos/path/to/file.txt@revM ./path/to/file.txt自分は proj ディレクトリにいるとする。

.emacs.el に outline-minor-mode を有効化する設定を追加した

.emacs.el を小分けにして load で個別に読み込むのが最近の?トレンドのようだけど、管理すべきファイルが増えてしまって自分にはかえって難しいと思ったので、徐々に .emacs.el に設定をまとめなおしている。でも .emacs.el が長くなると読みづらいのは確…

「海猿」「ブラックジャックによろしく」の著者、佐藤秀峰先生のホームページが超ハイクオリティなので絶対見るべき

http://blog.livedoor.jp/toki5555/archives/51159959.html 経由で => http://satoshuho.com/「プロフィール」読んで、一度は読むのをやめた「ブラックジャックによろしく」をまた全巻買い直そうと思った。あんだけモメてりゃあ、サイトウもウジウジするよな…

DBI.pm や DBD::*.pm あたりのコードを少し読んだ

疲れた。結局、読んでみても悩んでることは解決しなかった。でもデバッガ使って追ってみたりソース読んでみたりして少し理解が深まったのでメモしておく。DBI->connect() が返す $dbh (DataBaseHandle) は DBI::db に bless されていて、 DBI::db は DBI::co…

Test::More の SKIP ってどうやってるんだろ、と少し気になったのでチラ見した

テストじゃないけどあるコードの一部分をスキップしたいなーとおもって(コメントアウトすりゃいいんだけど)、 Test::More の SKIP はどうやっているんだろうなー、 goto とかかな、でも SKIP: { BLOCK } で BLOCK の中にテストコードを書くのに goto した…

MobileMe について

すこし感想を。ろくに使ってないけど。iCal を同期してくれるのはとても良い。 SpanningSync で Google Calendar と iCal を同期してるので勝手にいろいろ同期されてさらに便利に(これは人による)。 me.com でオンラインから操作できる機能は使う機会がな…

Perl のデバッガを使う (perl -d)

DBIx::ContextualFetch の空ハッシュ $dbh がどうしてもわかりたいので、はじめてまともに Perl のデバッガを使ってみた。http://d.hatena.ne.jp/perlcodesample/20080109/1199880506 にまとまっているのでこれをお手本にする。 s 一歩進む感じ (同時に一階…

DBIx::ContextualFetch のかえす $dbh の接続情報を読んでデバッグ

なんかしょうもないことでハマって・・・というかハメられている。以下のような環境で、 Class::DBI::db_Main() を上書きして DBIx::ContextualFetch のインスタンスを返してるところがあり、その $dbh が実際にどういう接続情報をもっているのか?を知りた…

誰か背中を押してください

もうすぐ誕生日なのだけど、プレゼントに眼鏡をもらうか、 iPod touch をもらうかで迷っている。iPod touch は借りてる 1G の 8GB モデルをしばらく使っていて、使っていて楽しいし気分がいい、素敵なおもちゃだと思っているのだけど、一番使いたい電車の中…

FreeBSD なんて嫌いだ

削除したファイルをlsofで復元する | OSDN Magazine のようなことをしたくて、しかし FreeBSD では同じやり方ができず、じゃあ別の似た方法がないかと思って小一時間調べてみたけどわからず。なんで FreeBSD のサーバなんて使ってるんだ。やりづらくてかなわ…

予備知識だけがありすぎるとかえって手が動かなくなる

Catalyst で何かのウェブインターフェースを作ってみよう、と思って雛形を作ってみるのだけど、もともと Catalyst をほとんど使ってこなかったのでヘルパーの使い方などの勝手がよくわからない上に、「Catalyst の Model は云々」のような記述をここそこで見…

Git わけわからん。。

Git

コマンドがたくさんあって覚えがいがあるんだけど、 Subversion と同じくらい慣れるにはまだまだ相当時間がかかりそうだ。 Subversion は人並みには使えるようになってきた、と思う(仕事でも使ってるし)。 Git は、何かちょっとしたスクリプトを書いたりす…

HHKB と Macbook のキーボードを併用するとバックスラッシュとパイプの打ち間違いで苦労する

Macbook では delete (backspace) キーの下に \ などがあり、 HHKB だと delete の上に \ などがある。指がまだ Macbook の \ キーの位置を覚えてしまっているので、 HHKB で \ とか | を押そうとするとかなり頻繁に delete キーを押してしまって backspace …

暗号化 ZIP ファイルの作り方

http://p-lost.hp.infoseek.co.jp/mac/zip.html#terminal に書いてあるとおりに、 ZIP Tool をインストールしてから、 $ zipclock zipfileとすればいい。

はてなダイアリーの「下書き」で保存した記事が消える

いままで二度消えた。その場編集モードをオフにしていて、記事をかいて「下書き保存」しておいて、下書き一覧に出ていることを確認して、ブラウザ閉じたりして何時間後かにみると保存しておいた記事が消えている。

ISO8601 の Time Intervals を DateTime モジュールで扱うには・・・

DateTime::Format::ISO8601 - metacpan.org というモジュールがあって、それを使えばよさそうだが、 Time Intervals についてはまだ未実装らしい。で、 TODO に Roadmap:0.05 - more tests - complete 5.4.2 support (recursive DT::F::Builder) 0.06 - star…

DateTime::Duration について少し理解を深めた

DateTime::Duration - daily dayflower に書いてあることが、以前読んだときはわからなかったけど読み直したらわかった。 # DateTime::Duration はわりと人間的に情報を持ってる * たとえば DateTime(2006/08/18 12:34:56) - DateTime(2004/03/02 09:08:07) …

ISO8601 について学ぶ (日付の範囲を表すには YYYY-MM-DD/YYYY-MM-DD のように slash で区切るのが正しいらしい)

いままで、日付を引数にとるちょっとしたスクリプトを書くときは、なんとなく YYYY-MM-DD:YYYY-MM-DD のように colon で二つの日付を区切るようにしていた。でも、標準的な書式があるんじゃないのかな?と思って調べてみたら、あった。ISO 8601 - WikipediaT…

netstat コマンドに似た ss コマンドというものがあるらしい

DSAS開発者の部屋:ss コマンド -- netstat と IPv6 アドレスIPv6 アドレスを省略せずに表示できる点で netstat よりも良いコマンドらしい。 IPv6 が好きな人は使ったらいいんじゃないかな。僕はたまたま、ターミナルでタイプミスして ss と打ったらエラーに…

セマフォってなんだ? => 調べたけど結局よくわからず

一度に 50 プロセスくらい起動して、各々の子プロセスがどこかからデータをかき集めてきて、 IPC::Shareable で作ったプロセス間で共有できる変数に集めてきたデータを突っ込んで、親プロセスが最後にデータを再集計する、というスクリプトを書いて走らせて…

rubygems のバージョンをあげたりしたら net-irc 付属の lig.rb が動かなくなった

ふと rails コマンドを叩いてみる => エラーが出て動かない => sudo gem install rails とかしてみる => なんかいろいろエラーが出る => update_rubygems とかなんとかやればいいそうなのでそうする => rails 2.2.2 とかがインストールできて動くようになる …

上から目線と昭和の風習の話を読んだ感想

まず最初に、僕は「昭和の風習」側の人間です。 「昭和の風習」側の意見は、つまるところ「バカなんて言うのはひどい」という感情論に行き着くと思う。人間なんだから意見に感情が影響するのは仕方ない。理論武装していかにも感情論ではないかのように発言す…

STDIN を二度にわけて取得することってできないだろうか

#!/usr/local/bin/perl use strict; use warnings; print q[ echo hoge echo moe ]; #!/usr/local/bin/perl -l use strict; use warnings; my @line = <STDIN>; print @line; warn "OK? [y/N]"; my $ret = <STDIN>; unless ($ret =~ m/^y/i) { die; } print $ret;こういう</stdin></stdin>…

シェルのクォートは本当に嫌なものだ

syntax error near unexpected token `)' ばっかり。。げんなりするなぁ。特に、リモートのサーバで mysql コマンドを使って SQL を発行する場合に、どう組み合わせてもクォートが通らない。これ無理なんじゃなかろうか。

AeroReader のほうが LDR touch より好みのデザイン

だなぁ。 LDR touch はオフラインモードで読んだフィードを既読にしてくれたり、 pin を打ったらオンラインになったとき反映してくれたりして機能豊富で良いんだけど、俺は AeroReader のほうがソフトウェアのデザインとして好きだなぁ。アイテムのリスト表…

git help を eshell からうつとページャで開いてしまってうざいのを解決したい

Git

git.core.pager = cat にしてあるのだけど。制御するパラメータが違うんだろうか。 GIT_PAGER="" という方法もあるらしい。けどこれもダメだった。なんか違う仕組みっぽいな。 ちょっと微妙な気もするけど man git-log とかしてバックグラウンドで man を開…

1234567890 の記念撮影に失敗した・・・

Grab.app め・・・俺はちょうどぴったりときにシャッターを押したのになんで一秒ずれるかなぁ。二度とないチャンスのためにこんな時間まで起きていたってのに。ああどっと疲れが出てきた。寝よう。 追記 失敗したスクリーンショットをアップしました

1234567890 秒を待ちながらモダンな Catalyst での開発スタイルについて調べたり考えたりした

Plugin はなるべく使わない Controller にロジックをかかない $c に依存しないモデル (API, Logic, etc.) を作ってロジックはそこに書く Catalyst::Model::Adaptor で Catalyst とロジックが書いてあるモデルをつなぐ イマドキの Catalyst の使い方の基本は…

svn log --stop-on-copy とか何度も打つのが面倒になったのでワンライナーを書いた

gist:63836 · GitHub #!/bin/sh # $Id$ svn log --stop-on-copy -q | perl -anle 'next if /^\-+$/; unshift @rows, $F[0]; END { $rev = sprintf(q/%s:%s/, $rows[0], $rows[-1]); $rev =~ s/r//g; print $rev }'もう少し真面目に作って、 svn merge のコマ…

EXIF 情報を扱うには Image::ExifTool を使う

そういうものらしい。ので入れた。あと、付属の exiftool はファイル名を引数にとるが、 ImageInfo() にスカラーリファレンスを渡すとメモリ上の画像データも ok っぽいのでリモートの画像 URL を渡してそれの EXIF を表示するスクリプトを作った。perl/lwp-…