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

no title

某P2Pの初期パケットの RC4 key は null 文字(\x00)以降は使ってはいけない件。最初からトラックバックにしておけば良かったわけですが、こんな感じで確認できます。 #!/usr/bin/perl use warnings; use strict; use IO::Socket::INET; use Crypt::RC4; use …

Ubuntu Edgy で LAN経由で Brother MFC-425CN を使う

前作業 前提条件として、以下の作業をしておいてください。 % sudo apt-get install csh % sudo mkdir /var/spool/lpd % sudo ln -s /etc/init.d/cupsys /etc/init.d/lpd % sudo ln -s /etc/init.d/cupsys /etc/init.d/cups参考 http://solutions.brother.co…

dual monitor for Ubuntu

ちょっとわけあって自宅の PC のモニタを 2 台使えるようになったのでさっそく Ubuntu Linux で使えるようにセットアップ。基本的に Xorg の設定を追加するだけでいけるようだ。nvidia のドライバのセクション Section "Device" Identifier "NVIDIA GeForce …

mount iso image file on Unix

Linux (少なくても Ubuntu)だと iso イメージファイルの mount は % sudo mount -o loop /tmp/image.iso /media/hogeで出来るけど、FreeBSD の場合 mdconfig と mount の合わせ技でやるようだ。mount は # mdconfig -a -t vnode -f /var/tmp/image.iso -u 0 …

livedoor テクノロジーセミナー

僕も昨日 livedoor テクノロジーセミナー に出席してました。六本木ヒルズのエレベータは静かでいいですね。上のリンクのメモが素晴らしくて特に僕が書くこともないのですが、まあちょっと自分でも感想を書いてみます。はてブのスクリーンショットが dRuby …

Switching to Ubuntu Linux

FreeBSD + Xorg + fluxbox + mlterm + uim + zsh な環境から Ubuntu Linux + Gnome + mlterm + scim + zsh な環境への移行メモ。 installing nvidia binary driver xorg.conf が間違っていて、X が起動しなくなっても、grub から "recovery mode" で起動すれ…

2ch_1.pl

2NN 2ちゃんねるニュース速報+ナビのニュース速報+のRSSはタイトルしか配信してくれません。というわけで Plagger で EFT。 2ch_1.pl # only fetchs 1st entry sub handle { my($self, $args) = @_; $args->{entry}->link =~ qr!^http://\w+\.2ch\.net/.*?…

それmmv でもできるよ

技術メモ帳 - 複数のファイルの名前をまとめて変更する これって Unix Shell って使いにくいね。って話するときに良く出る話題で、いろんな解があるんだけど、mmv というコマンドでもできます。 % mmv '*.html' '=1.htm'mmv って FreeBSD はいまだに ports …

Youtube 動画を iPodLinux で観る

詳しい方法は Video Player - wikiPodLinux に書いてあるのでちゃんと知りたい人はそっちを見てください。 まず、youtube の動画をダウンロードしてきます。どんな方法でも良いのですが、僕は youtube-dl (Python スクリプト) を使って今注目の動画になって…

installing iPodLinux and iDoom

iPod 4G 60G(photo iPod) に iPodLinux, iDoom を install してみた。installer は Windows 用 Installer_2 のnetless installer を使用。最初に普通の installer を使ったら dependency error がたくさん出力されて install が途中終了し、さらに何か中途半…

FreeBSD panic: sleeping thread

自宅の FreeBSD マシンが朝の 3 時にこんな message を出して reboot した。 Nov 3 03:00:55 hogehoge kernel: Sleeping thread (tid 100094, pid 36580) owns a non-sleepable lock Nov 3 03:00:55 hogehoge kernel: panic: sleeping thread Nov 3 03:00:55…

defined-or(//)

ブログが続かないわけ | perl の作法 #2 「||=」の使い方 より引用 perl の作法 #2 「||=」の使い方 さらに、これは $value ||= $default_value; と書けます。 ※注意 $value に「0」をセットする可能性がある場合はこの書き方はできません。「0」が偽と評価…

FreeBSD 6.1 on VMware Player に minicpan を install する

CPAN::Mini で CPAN のミラーをローカルに を参考にしてみました。install とか cpan shell からの使い方は上のページに書いてあるので割愛して、cpanmini の mirror を ports から使う設定をします。/etc/make.conf に FETCH_CMD?= fetch -l MASTER_SITE_PE…

Data::Dumper & bytes;

printf "Contents are %vd\n", $x; # "Contents are 400" { use bytes; # or "require bytes; bytes::length()" print "Length is ", length $x, "\n"; # "Length is 2" printf "Contents are %vd\n", $x; # "Contents are 198.144" }perldoc bytes にも上記…

youtube-dl インスパイヤ

youtube-dl という Python script がありまして、firefox に flash player をインストールするのが面倒な僕にはぴったりのツールで、重宝して使わせていただいています。で、Python の勉強の為に source を眺めていたのですが、それだけでは寂しいので、Perl…

それは「真珠」です

なんていうか最初に断っておきますが、このエントリはリンク先にアダルトコンテンツを含んでいるので見たくない人はリンク先には行かないでください。僕は Yahoo の Blog Search で Perl というキーワードの Blog を検索することが良くあるんだけど、ほぼ間…

economist.com を Plagger で読む

英紙エコノミストのウェブサイトは RSS を提供してるんだけど、description 内の本文が一行だったりして悲しいので Plagger でごにょごにょする config を書いてみた。Filter::EntryFullText の config economist.yaml author: Masanori Hara handle: http:/…

Perl本 x 3

先週の木曜くらいの話になるけど、朝 Perl の本が 3 冊同時に届いた。まるごとPerl! Vol.1作者: 小飼弾,宮川達彦,伊藤直也,川合孝典,水野貴明出版社/メーカー: インプレス発売日: 2006/08/24メディア: 大型本購入: 7人 クリック: 123回この商品を含むブログ …

Windows2000 on FreeBSD 6.1

基本的な設定は FreeBSDでQEMUを使ってWindowsを動かす を参考にした。起動時に各種設定を有効にする&ネットワーク機能を使うためには、 /boot/loader.conf に kqemu_load="YES" bridge_load="YES"を追加、/etc/sysctl.conf に net.link.ether.bridge_cfg=d…

10年前(1996)の Perl

bakelattaの日記 - KENT本(2) を読んで、10年前(1996年)ってまだ Perl4 なんじゃないかと思って PerlTimeline をチェックしてみたけど、既に Perl5 はリリースされていた。( Perl 5.002 が 1996-02-29 にアナウンスされている。) ちゃんと Perl5 の本ってこ…

日本語(EUC-JP)の substr の続き

正直なところ、僕はあんまり日本語処理に詳しいわけではないので話を続けるのもどうかと思ったけど、もうちょっと書いてみます。この前のエントリ 日本語(EUC-JP)の substr でなんで Encode.pm を使わないで実装したかったかというと、 my $new_str = encode…

日本語(EUC-JP)の substr

今の Perl(5.8 以降)は文字列が utf8 だったら標準添付の substr() を使って終了なネタなわけだが、わけあって EUC-JP な文字列で日本語も 1 文字と数えて substr をするサブルーチンを考えてみた。今さら。かの有名な Perlメモに日本語(EUC-JP)を含む文字列…

undef をデリファレンス再び

http://unknownplace.org/memo/2006/06/20#e001 普通といわれると普通なのかなあ。僕には予想外の動作 *だった* んだけど。いろんな呼び出しで試してみた。やたらとスクリプトが長くなってしまったが、たいしたことはやっていない。 #!/usr/local/bin/perl u…

perlcritic と Module::Starter::PBP

Module::Starter::PBP で module を作ると、perlcritic でのテストをするためのテストファイル perlcritic.t を t/ ディレクトリに置いてくれるみたいなんだけど、MakeFile.PL の PREREQ_PM と Build.PL の requires に Test::Perl::Critic を書いてくれない…

Net::IPMessenger and Plagger Plugin

Perl で IP Messenger プロトコル通信をするための module Net::IPMessenger を書いて CPAN に登録しました。実は Perl で IP Messenger プロトコルを話すものは既に色々あって、僕が敢えて書く必要もなかったんだけど、他の source は CPAN には登録されて…

undef な SCALAR を ARRAY でデリファレンスすると、値が変わる

こんなテストスクリプトを作ってみる。 #!/usr/local/bin/perl use strict; use warnings; use Data::Dumper; my $hoge = undef; printf "%s\n", Dumper $hoge; for my $hogehoge ( @{ $hoge } ) { } printf "%s\n", Dumper $hoge;% ./test.pl $VAR1 = undef…

Half-Life 2: Episode One

夢中でやってたらあっという間に終わったのでちょっと物足りなかった感じもしたけど、面白かったです。なんだか、最初やったときに画面がワイヤーフレームバリバリになってて、これは何かの間違いだろうと思ってインターネットで調べてみたんだけど、どうも …

IO::File::new_tmpfile()

Perl-5.8.8 の source をしばらく見てたんだけど、File::Temp 以外にも一時ファイルを作る module があるようだなあ。その一つがこれまた Perl-5.8.8 標準添付の IO::File で、 my $fh = IO::File->new_tmpfile();でファイルハンドルを取得できる。 こいつは…

Perl での secure な一時ファイルの取り扱い

Perl で (というか Unix で) ファイルを open した後に unlink しても write, read は出来る。というテスト。 #!/usr/local/bin/perl use strict; use warnings; use IO::File; my $file = "/var/tmp/test.$$"; print "file = $file\n"; die "$file is symli…

Vim 7 is ready !

Vim 7 is ready ! ということで、compile してみた。 % fetch ftp://ftp.vim.org/pub/vim/unix/vim-7.0.tar.bz2 % tar zvxf vim-7.0.tar.bz2 (bsdtar は .bz2 も z オプションでいける( gnutar は j )ということを知った。) % cd vim70 (GUI なしの configur…