2003年02月10日(Mon) ドイツ中晴れの予報。ミュンヘンを除く
● いろいろ発送
郵便局に行ってきました。それにしてもドイツは郵便料金が高い。時間さえあれば、ザルツブルグまで電車で行って、オーストリア料金で出した方が安いのです。モノによっては3月から安くなるのだそうですが、どうなることやら。
● 駐車場が無い
そういうわけでちょっと遅く職場に着くと全然駐車場が無い。地下鉄の駅を作る工事をしてるのが原因なのですが、駅ができあがるまでこのままなのだろうか?工科大学の新しい学科ができたのでバスもぎゅうづめだし、こまったものです。
● セクション毎のインデックス
ブタもおだてりゃなんとやら…。
tdiarysplit.plというのを作ってfilter/html.plに通してみている。
例えば、2002/0722#p01で、
Use of uninitialized value in substitution (s///) at /.../filter/html.pl line 309. Use of uninitialized value in substitution (s///) at /.../filter/html.pl line 313.
と怒られる。あと、20020422のセクション分けが何か変。 時間ができたら見てみよう。
● サーボモーターの調整中にこういうシゴトは捗るんだよなあ
モーターの方はボタンを押して待ってるだけなのだ。
自動的に日誌をカテゴライズするtDiaryに向けて、 まずはインデックスのセクション別化を実行。 本当はtDiary側で対応したいんだけれど、 いろいろと手を入れなくちゃいけないので、 squeezeされたhtmlファイルから切り出しました。 <div class="section">〜</div>を一つのセクションにしてます。 そんなわけで、フットノートとかツッコミは対象外。
今のところ2003年分でしか試していないけれどうまくいってる様子。 htmlsplit.plの代わりにtdiarysplit.plを、 filter/html.plもこういう風に変更してあります。
2005年02月10日(Thu) 今日も朝からお山が見える
● ビルドマシンの電源が切れなくなりました
いつの日からかsudo haltするとhaltしたところで止まってしまって電源が切れなくなってしまいました。どうしたものかと思っていると、usermode-1.70-2mの/usr/bin/poweroffというコマンドを発見。一般ユーザーでも電源が切れるところまでいくではないですか。usermodeには/usr/bin/rebootというコマンドもあります。きっとリブートもしてくれるのだろう。これでいいか。(いいのか?)
● 時差を忘れていた
カリフォルニアに電話をかけたらもう夜でした…
● 今度はC++
久しく触ってなかった。手元にあるのはドイツ語の小冊子だけだし。error: `self' undeclared (first use this function)
とか言われて悩んでたら、インスタンス変数を見るのはthis->
でした。なさけなー。
2006年02月10日(Fri) 寒いっすね
● 仕事場に着いたらみんな(というのは言いすぎだけど)上着を着てたよ。
● 今日のニホンゴ
- 仕事場に着くのも上着を着るのも同じ漢字。
- 「杜撰」は「ずさん」と読む。
● サーバーを増やせばいいんじゃない、サーバーを増やすだけで解決できるように努力するのだ
naoyaのはてなダイアリーより。
サーバに対する負荷が高くなった時に『いかに「サーバーを増やすだけで問題を解決できる」状況を作るか" という所に労力を使う』べきだし、それには技術がいる、という話。
こういうデザインの仕方ってWWWサービスに限らずいろいろな場面で要求されるような気がする。ラジコン飛行機を落として壊した時にいかに修理しやすいように組み立てておくか、とか…結局そっちの話かい。
● Google が Web ページのキャッシュを保持し公開しているのは合法
HsbtDiaryより、「2006年1月の小ネタ」。原文はEEFの記事。下記の4つの理由(和訳は「2006年1月の小ネタ」より)から著作権の侵害はしていないということになったようです。
- キャッシュの提供による直接の権利侵害はない。自動化された、意識的に操作されていない処理によるものだから。
- 収集対象となるページで明示的に収集行為を拒否しない限りは、暗黙的に収集を了解したものと見做される。
- Google キャッシュは "fair use" だ。
- Google キャッシュは DMCA の 512条(b) で規定されるキャッシュ保持の免責条項に沿っている。
2番目の理由を見ると、僕の、ロボットからのアクセスを拒否する方法を明らかにすることで、逆に、ロボットを拒否していない場合には著作権者がこのようなサイトに複製を許諾した、とみなしているのだろうという想像が合ってたことになりますね。うしし。
そういうわけでGoogleにキャッシュを公開してほしくない人は、HTMLヘッダに、
などと書いておきましょう。
2009年02月10日(Tue) 今日もいろいろあった
● [Ruby] ruby-1.8.7-p72を作ってみた
hsbtさんがやってくれたtDiary-pluginの ruby-1.9.1p0 動作チェックを見て、wether.rbが「動かないので修正が必要」と知って、どこまでできるか試してみることにした。
えーと、Ruby 1.9.1の歩き方を見ると、まずは1.8.7を使えと書いてある。(役にたつね。てへへ。)
というわけで、ftp://ftp.ruby-lang.org/pub/ruby/1.8/からruby-1.8.7-p72.tar.bz2をいただいてきて作ってみた。make test-allは0F0E。さすが。
…って、p72はREXMLのDoS脆弱性があるの?今回はローカルにtDiaryを動かすだけだからいいけど、えーと、ruby-1.8.7-p73以降はどこで入手するべきなのでしょう?Subversionレポジトリからcheckoutするのかな?
● [tDiary] 久しぶりにtDiaryをいじろうとしてみる。
えーと。まずはcheckoutかな。
さくっとtdiary/plugin/に移動して、 weather.rbとかja/weather.rbにテストケースが無いのをみてへこむ。 Legacy code。
どうしようかな。 まずは1.8.7-p72と1.9.1-p0で閲覧できるようにするか。
先は長いぞ…。/usr/sbin/vigrしてapacheグループを追加してみた。 今度は成功。
次はsymbolic linkで設置する方法を思いだす。 公開サーバで下記のような荒っぽいことをやらないようにね。 この環境ではDocumentRootが/var/www/htmlなので、
えーい、もう一度checkoutしちゃえ。
http://localhost/tdiary/trunk/ を見ると、 coreのディレクトリのアイコンが爆弾のマークなのが笑えますが。
あとはtDairy用のディレクトリなど。
tdiary.confはtdiary.conf.sampleからコピーして、 @data_path = '/var/www/html/tdiary/data' にしておいた。
/etc/httpd/conf/httpd.confでAllowOverrideをallにして、.htaccessは下記。
これでhttp://localhost/tdiary/trunk/core/index.rbが ruby-1.8.6-p111 (Momonga 4)で動くようになった。
index.rbとupdate.rbはどうしようかな。
tdiary.confで下記のようにしてみよう。
例えばindex-1.8.7.rbは下記。chmod a+x しておく。
この段階で./index-1.8.7.rbすると Permission denied - /var/www/html/tdiary/data//log/debug.log (Errno::EACCES) と言われた。
これで端末からは起動できるようになったけれど、 ApacheからはPermission deneied。はっ、やつか。
これでもだめ。あー、わかりました。 常用ユーザーのホームディレクトリにapacheさんが行けなかったんだ。 chmod o+x $HOME。
これで、やっと、下記のURLが使えるようになりました。
- http://localhost/tdiary/trunk/core/index-1.8.7.rb
- http://localhost/tdiary/trunk/core/index-1.9.1.rb
- http://localhost/tdiary/trunk/core/update-1.8.7.rb
- http://localhost/tdiary/trunk/core/update-1.9.1.rb
環境をつくるだけで時間切れが近いのう… T_T
● [Ruby][tDiary] お天気プラグインをruby-1.9.1で使えるようにする 成功したかな?編
たぶんnet/http.rbの微妙なAPIの変化にはまった模様。
まず1.8.7側からお天気プラグインの設定と利用。 「選択可能なプラグインはありません。あう。えーと、tdiary.confに下記を追加。
これでプラグイン選択からweather.rbを選び、 お天気プラグインを設定。これで本文を追記したらちゃんと天気が記録されました。 えらい。
さーて。1.9.1からこの日記を表示してみますよ。
ふむ。追うのは大変だけどきっと記録したファイルをASCII-8BITで読んでるんだね。 …これはdata/cache/*.parserが1.8.7と1.9.1とで互換じゃないからか。 これらのファイルを消すと、1.8.7が記録した天気を1.9.1で表示することができた。
しかし、1.9.1で天気を記録すると記録ファイルのerrorの項が 「undefined method `keys' for nil:NilClass」なんてなってる。 weather.rbの282-283行目をコメントアウトしてみると、 下記のようなバックトレースが得られた。
getの第二引数が今まではnilを許していたのが、 今後は{}にしなくちゃいけないのかしらん。 というわけでできたのが下記のパッチ。
(追記) makerss.rbを単体で有効にしてみたらちゃんと動いているように見えた。 他のプラグインとの組合せで不具合が発現するのかな。 cgi.newしてやつとかありそうだ。
2011年02月10日(Thu) いそがしいいそがしい
● Dropboxを64 bitのMomonga 7で動かす
あんまり問題無く動くようです。
64bit Fedora用のパッケージをいただいてきて、インストール。
/etc/yum.repos.d/dropbox.repoにenabled=0を追加して、Dropboxのレポジトリを参照しないようにした。後は、32 bit版でやったのと同様に、
で同期されるようになりました。xfce4のパネルにドロップボックスのアイコンが表示されないんだけど、まあいい w
> zunda [<テスト>ですと]