首輪はイヤ。

昨夜帰宅後のこまめは、遊び相手がいなかったので鼠のおもちゃで一匹で遊んでいた。食事中に遊びをせがむので食べ終わるまで待たせてから紐遊びをしても夢中になる時間が昨日までよりも短い。鼠のおもちゃの方がお気に入りになってしまったようだ。ちょっと悲しい。昨日の朝のコードをかじる対策にコード整頓用のカバーを買ってきてテレビの後ろをせっせと整頓。終わった、こまめがいないなと思ったら、何とテリトリーを寝室とサーバルームにまで拡大していた。特にサーバルームは大好きな狭いところがいっぱいなので、目を離すとすぐに駆け込んでしまう。こちらまでは手が回らないのでサーバルームは日中は扉を閉めておかないと駄目ですな。

狭いところといえば、こんな狭い箱に入って愛くるしい姿を披露してくれた。可愛すぎるよ、こまめ姫。

../../../_images/20090804012408.png

ちなみに、箱はこまめ姫を日中見守るために買ってきた、Logicool QCAM-130E。UVC対応なのでLinuxでも使えるだろうと淡い期待を抱き購入。Armadillo-9 か Chumby で使えるようにしてみようと画策中。使えるようになったら日中こまめちゃんを見守るんだ。

閑話休題。22時~24時の大運動会の時間になると、もう動きを捉えられないほど猛スピードで動き回り、遊びまくる。サーバルームは電源コードでいっぱいで危険なので 1 、鈴付きの首輪をしたら、もうこれがイヤでイヤで仕方ないみたいで、後肢で取ろうと徒労している駒っ目をみると可愛そうになってくる。仕方ないので本日は取ってあげることにした。毎日少しずつ馴らしていくしかないなぁ。

1

さっきは、OpenBlockSのACアダプタ群の上に乗っかってたし。

やんちゃ盛り。

こまめもだいぶ我が家に馴れてきたようで、ご飯やトイレは我慢しないでちゃんと行くようになってきた。22時~24時の大運動会も、初日はずっと遊び相手をせがまれていたが、昨夜は自分でテリトリーを広めるべく、リビングとダイニング以外の場所へ探検を始めた。それじゃと、こまめの視線を保ったまま、寝室へ連れて行ってみたが、数歩歩を進めたが、すぐに自分の縄張りのリビングに戻ってしまった。まだ早いか。

今朝から変化がまた2つ。1つは「こまめ」と呼び掛けると振り返るようになってきた。これはとても嬉しい反応。もう一つはちょっと困ったこと。朝飯食べている時に、こまめはお気に入りのテレビ台にいたのだか、なんか様子が違うなと思ったら、なんと電源コードなど、紐状のものを手当たり次第噛んでいる!慌てて「こまめ、ダメッ!」としかってみたものの、言った瞬間はこっちをつぶらな瞳で見て噛むのを停めるのだが、すぐにまた別のコードを噛み始める。何度言ってもなかなか分からない。とりあえず、今朝はこまめが活動できる範囲の電源コードは全て引っこ抜き、まだ活動範囲ではない部屋は扉を閉めることで対応したが…。そういや遊び相手ををしている時に紐のおもちゃが好きでビニル紐にも結構噛みついていたなぁ。何か根本解決できる方法はないかな…。回避策については帰りにコードの保護用品を探してくるか。

こまめ姫の2日目。

心配していたウンチも、本日2回もモリモリとしてくれたので一安心。ウンチした後、チップでウンチを隠さず、グルーミングもしないでそのまま飛び出す豪快さ。すごい臭いなのですぐに処分した後、ペット用のウェットティッシュでオシリ拭きふき。ちょっとは自分でやることを覚えてほしい…。(わら 今日は朝から遊んで攻撃で2時間ぶっ続けで相手をし、お昼過ぎにペット保険加入のために連れ出し 1 、帰宅後、一時的にリセットされてしまったのでまた遊んで思い出させてあげた。

おかげで、こまめちゃんは、お疲れでお気に入りのソファの下で、ぐっすりお昼寝。寝相がコロコロ変わるのが可愛い。

../../../_images/20090802181042.png ../../../_images/20090802181043.png ../../../_images/20090802181044.png ../../../_images/20090802181045.png ../../../_images/20090802181046.png

ヨメもワシも一緒にリビングで昼寝してましたとさ。

1

写真撮影のため。

新しい家族が増えました。

7/31にスペインから帰国した初日、丸一日新しい家族を受け入れるための準備と、受け入れをしました。お昼過ぎ、引き取りに行ってきました。シャルトリューの♀、生後3ヶ月弱(2009年5月20日生まれ)、名前は”こまめ”。体重は約600g、おとなしいコです。血統書付きで、曾祖父母、お父さんは何やらコンクールで受賞もしている、かなりのお姫様のようですが、まぁ、ウチら夫婦にとってはそんなのはよく分からないので、まさに猫に小判 1 。元気に育ってくれればそれが一番。昨日は来てしばらくは落ち着かない様子でテーブルの下をうろうろ。

../../../_images/20090802105020.png

なかなか餌も水も口にせず、トイレもしなかったのですが、緊張でなかなか眠れなかったのか、22時近くに餌場に連れていったら餌を口にするようになりました。トイレも、最初のおしっこをして一安心。

../../../_images/20090802105019.png

一番のお気に入りは、テレビ台の下。Wiiの近くで温かいのが良いのかな。朝起きたらどこにもいなくて探しまくっていたら、テレビ台の下で置物のように静かにじっとしてました。

../../../_images/20090802105018.png

ソファの下は2番目にお気に入り。捕まるまではちょろちょろ逃げるのだけど、一度抱いてしまうとおとなしい。

昨晩は23時過ぎから1時すぎまで、こまめの遊び相手を。紐に紙をまるめたのを結びつけただけの簡単なおもちゃを作り左右に振ると、一所懸命狩りのまねごとをする姿がめっちゃかわいい。興奮しすぎて足音がうるさくなってきたので、紐を上から吊るしたら、ワシの膝の上で捕まえようとぴょんぴょん跳ねる。跳ねる跳ねる。こまめちゃんは普段はおとなしいが、遊びに夢中になると、おてんばな遊び盛りのお姫様のようです。

今日中にウンチをしてくれると一安心なんだけどな。”こまめ”という名前にいつ反応してくれるようになるのかも楽しみ。

1

ちょっと文脈的に意味が変わりそうな使い方だな。

DDEで遊んでみる。

Debian Data Export というのがあるようだ。 配布資料は無いし、スライドは小っちゃくて見えない ので、とりあえず勝手に遊んでみる。取り合えず、apt-fileの情報を取るというURIで、dashを引数で渡してみる。

$ curl http://dde.debian.net/dde/q/aptfile/byfile/sid-amd64/dash
<html><body>
<h1>Packages containing dash</h1>

<p>Value:</p>
<pre>
['dash', 'debian-edu-config', 'sauerbraten-data']

</pre>
<ol>
</ol>
<p><a href='http://dde.debian.net/dde/q/aptfile/byfile/sid-amd64'>Go up one level</a></p>
</body></html>

デフォルトではHTML形式のようだ。apt-file show dashやapt-file search dashで得られる情報とも違う。

出力形式はいくつかあるのでいろいろ試してみる。

JSON

$ curl http://dde.debian.net/dde/q/aptfile/byfile/sid-amd64/dash?t=json
{"r":["dash","debian-edu-config","sauerbraten-data"]}

YAML

$ curl http://dde.debian.net/dde/q/aptfile/byfile/sid-amd64/dash?t=yaml
---
- dash
- debian-edu-config
- sauerbraten-data

CSV

$ curl http://dde.debian.net/dde/q/aptfile/byfile/sid-amd64/dash?t=csv
dash
debian-edu-config
sauerbraten-data

text

$ curl http://dde.debian.net/dde/q/aptfile/byfile/sid-amd64/dash?t=text
['dash', 'debian-edu-config', 'sauerbraten-data']

debug

$ curl http://dde.debian.net/dde/q/aptfile/byfile/sid-amd64/dash?t=debug
<body bgcolor="#f0f0f8">
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading">
<tr bgcolor="#6622aa">
<td valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial">&nbsp;<br><big><big><strong>&lt;type 'exceptions.TypeError'&gt;</strong></big></big></font></td
><td align=right valign=bottom
><font color="#ffffff" face="helvetica, arial">Python 2.5.2: /usr/bin/python<br>Sun Jul 26 11:53:12 2009</font></td></tr></table>

<p>A problem occurred in a Python script.  Here is the sequence of
function calls leading up to the error, in the order they occurred.</p>
<table width="100%" cellspacing=0 cellpadding=0 border=0>
<tr><td bgcolor="#d8bbff"><big>&nbsp;</big><a href="file:///var/lib/python-support/python2.5/flup/server/fcgi_base.py">/var/lib/python-support/python2.5/flup/server/fcgi_base.py</a> in <strong>run</strong>(self=&lt;flup.server.fcgi_base.Request object at 0x6000000000b2c390&gt;)</td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;&nbsp;556</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"""Runs&nbsp;the&nbsp;handler,&nbsp;flushes&nbsp;the&nbsp;streams,&nbsp;and&nbsp;ends&nbsp;the&nbsp;request."""<br>
</tt></font></td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;&nbsp;557</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try:<br>
</tt></font></td></tr>
<tr><td bgcolor="#ffccee"><tt><small>&nbsp;&nbsp;558</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;protocolStatus,&nbsp;appStatus&nbsp;=&nbsp;self.server.handler(self)<br>
</tt></td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;&nbsp;559</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;except:<br>
</tt></font></td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;&nbsp;560</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;traceback.print_exc(file=self.stderr)<br>
</tt></font></td></tr>
<tr><td><small><font color="#909090">protocolStatus <em>undefined</em>, appStatus <em>undefined</em>, <strong>self</strong>&nbsp;= &lt;flup.server.fcgi_base.Request object at 0x6000000000b2c390&gt;, self.<strong>server</strong>&nbsp;= &lt;flup.server.fcgi.WSGIServer object at 0x600000000086a6d0&gt;, self.server.<strong>handler</strong>&nbsp;= &lt;bound method WSGIServer.handler of &lt;flup.server.fcgi.WSGIServer object at 0x600000000086a6d0&gt;&gt;</font></small></td></tr></table>
<table width="100%" cellspacing=0 cellpadding=0 border=0>
<tr><td bgcolor="#d8bbff"><big>&nbsp;</big><a href="file:///var/lib/python-support/python2.5/flup/server/fcgi_base.py">/var/lib/python-support/python2.5/flup/server/fcgi_base.py</a> in <strong>handler</strong>(self=&lt;flup.server.fcgi.WSGIServer object at 0x600000000086a6d0&gt;, req=&lt;flup.server.fcgi_base.Request object at 0x6000000000b2c390&gt;)</td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;1116</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result&nbsp;=&nbsp;self.application(environ,&nbsp;start_response)<br>
</tt></font></td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;1117</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try:<br>
</tt></font></td></tr>
<tr><td bgcolor="#ffccee"><tt><small>&nbsp;1118</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;data&nbsp;in&nbsp;result:<br>
</tt></td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;1119</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;data:<br>
</tt></font></td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;1120</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;write(data)<br>
</tt></font></td></tr>
<tr><td><small><font color="#909090">data <em>undefined</em>, <strong>result</strong>&nbsp;= &lt;generator object at 0x600000000086bb00&gt;</font></small></td></tr></table>
<table width="100%" cellspacing=0 cellpadding=0 border=0>
<tr><td bgcolor="#d8bbff"><big>&nbsp;</big><a href="file:///org/dde.debian.net/home/dde/dde/wsgi.py">/org/dde.debian.net/home/dde/dde/wsgi.py</a> in <strong>handle_debug</strong>(self=&lt;dde.wsgi.DDE object at 0x6000000000536310&gt;, res=&lt;dde.wsgi.Result instance at 0x6000000000993b48&gt;, args=('aptfile', 'byfile', 'sid-amd64', 'dash'), kw={'t': 'debug'})</td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;&nbsp;405</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;def&nbsp;handle_debug(self,&nbsp;res,&nbsp;args,&nbsp;kw):<br>
</tt></font></td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;&nbsp;406</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;body&nbsp;=&nbsp;"Args:&nbsp;"&nbsp;+&nbsp;repr(args)&nbsp;+&nbsp;"&nbsp;kw:&nbsp;"&nbsp;+&nbsp;repr(kw)<br>
</tt></font></td></tr>
<tr><td bgcolor="#ffccee"><tt><small>&nbsp;&nbsp;407</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;res.start_response(type&nbsp;=&nbsp;"text/plain",&nbsp;len&nbsp;=&nbsp;len(body))<br>
</tt></td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;&nbsp;408</small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;yield&nbsp;res<br>
</tt></font></td></tr>
<tr><td><font color="#909090"><tt><small>&nbsp;&nbsp;409</small>&nbsp;<br>
</tt></font></td></tr>
<tr><td><small><font color="#909090"><strong>res</strong>&nbsp;= &lt;dde.wsgi.Result instance at 0x6000000000993b48&gt;, res.<strong>start_response</strong>&nbsp;= &lt;bound method Result.start_response of &lt;dde.wsgi.Result instance at 0x6000000000993b48&gt;&gt;, <em>builtin</em> <strong>type</strong>&nbsp;= &lt;type 'type'&gt;, <em>builtin</em> <strong>len</strong>&nbsp;= &lt;built-in function len&gt;, <strong>body</strong>&nbsp;= "Args: ('aptfile', 'byfile', 'sid-amd64', 'dash') kw: {'t': 'debug'}"</font></small></td></tr></table><p><strong>&lt;type 'exceptions.TypeError'&gt;</strong>: start_response() got an unexpected keyword argument 'len'
<br><tt><small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</small>&nbsp;</tt>args&nbsp;=
("start_response() got an unexpected keyword argument 'len'",)
<br><tt><small>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</small>&nbsp;</tt>message&nbsp;=
"start_response() got an unexpected keyword argument 'len'"

pickleとかいうのもあるらしいが、文字化けしたので省略。何の情報をとっているのかよく分からんな。もうちょい遊んで調べてみるか。