Entries from 2007-04-01 to 1 month

gnome-panel のアプリケーションメニューに自分専用のメニュー項目を追加する

これまでずっと ~/.gnome/applications を見に行くものだと思っていたけど、いつのまにか ~/.local/share/applications になっていたのか。

eelを改造してNautilusデスクトップを見やすくする

libeel:eel-gdk-extensions.c の eel_gdk_draw_layout_with_drop_shadow() がデスクトップアイコンのラベル描画に使われている。 void eel_gdk_draw_layout_with_drop_shadow (GdkDrawable *drawable, GdkGC *gc, GdkColor *text_color, GdkColor *shadow_co…

「<% %>」をCで使う

C C99

C99のCommittee Draft(N1124)を読んでいて、また目から鱗。以下のスクリプトがコンパイルできるという話。 #include <stdio.h> main() { <% puts("Hello world!"); %> } なんと、JSPスクリプトが記述できる…のではなく、これは次の仕様によるものでした。P64、PDF 上</stdio.h>…

「!strcmp」

リンク元をみたら「!strcmp」というクエリでここにたどり着いた方がいました。残念ながらその方の期待には応えられなかったのですが、「!strcmp」については一言言っておこうかなと。strcmp() は 3 つの状態を表す結果を返すので、プレディケイトではないの…

Seaside ライクな PHP5 用 Webアプリフレームワーク「Phaux」

(via 「HREF Considered Harmful」) ステートフルなやつですね。ステートフルといえば、国産のだと「Piece Framework」がありますけども。むしろPradoの近縁とも言えるでしょうか。追記: リンク書き忘れてました。 http://code.google.com/p/phaux/

Django+OpenID

仕様 (via Simon Willison’s Weblog)。Simple Registration (参考) に対応しているというのがいい。従来のモデルとの互換を保ちつつ、プロフィールのデータを抽象化する専用のモジュールがあってもいいはずと思うんだけど、どうでしょう?プロフィールデータ…

SkypeのムードメッセージをTwitterに投稿するAppleScript

探しても見つからなかったのでリハビリを兼ねて自分で書いてしまった。ま、書き終わってから見つかるというオチな気が。 http://www.latenightsw.com/freeware/XMLTools2/ を入れないと動きません。あしからず。 -- Skype to Twitter status exporter -- You…

gnome-pty-helperを読んでみた

GNOME端末を使っていると、gnome-pty-helperという謎のプロセスが立ち上がっているのに気づく。このプロセスは一体何をやっているのだろうか。 gnome-pty-helper は次の処理を行うヘルパープログラムだ。 擬似端末を確保する。 擬似端末の権限を適切に設定す…

retrocomputing

Digg: 「Hello dear, I found this diskette that you were so frantically looking for」より。これのどこが面白いのか分からない世代もいるなと思うと感傷的になってきた。というわけで職場にApple II GSがあったので遊んでみた。

SUBDIRS で親ディレクトリから処理させたいときにどうするか

By default, Automake generates `Makefiles' that work depth-first in postfix order: the subdirectories are built before the current directory. However, it is possible to change this ordering. You can do this by putting `.' into `SUBDIRS'. F…

sendmsg() で送られた fd の持つロックの所有権は保持されるのか

いくつかの *nix では sendmsg() / recvmsg() システムコールで他プロセスに fd を送信できたりします。送信元のプロセスでファイルロックを行った場合、送信先で同じ fd にファイルロックを行うとブロックするのでしょうか。出勤途中に猛烈気になったので確…

日記改題

旧題の「Webサービス日記」のWebサービスは *1「Webで展開されるサービス」という意味で使っていたんですが、リンク元の検索クエリを見ると「PHP REST Webサービス」とか日記の内容と無関係なキーワードで来られている方が多かったので、ちょっと申し訳ない…

Magic Multi-Connectionsをチラ見

RoRタグは以前やらかしたときにつけたので再度ここで使うとは思いもせず。懲りずに「 Magic Multi-Connections: A "facility in Rails to talk to more than one database at a time"」を読んでみた。 これで「Twitter問題は解決だね」のように自信満々なの…

iter v.s. ite / buff v.s. buf

イテレータを表わす変数名として適当なのはなんだろうか。iter だろうか ite だろうか。はたまた en (enum) だろうか。 初めは iter を使っていた私は、いつからか i をよく使うようになりました。CodeSearchしてみた結果。 \Wite\W: 約10,100件 \Witer\W: …

bugs.php.netのフィード

とある出来事がきっかけで人間不信になりPHP developerとしての活動を休止してからしばらく経つけど、ふと気になったので2006年の夏ごろからメールを見直していたところ、掘り出し物を発見。Andiのこの投稿で始まるスレッド「RSS feed for bugs.php.net」。…

OCRopus を試してみた

OCR

「OCRopus」はその名の通り OCR を行うソフトウェアだ。曰く、 OCRopus is a state-of-the-art document analysis and OCR system, featuring pluggable layout analysis, pluggable character recognition, statistical natural language modeling, and mul…

Simon Willisonのプレゼン

OS X ハッキング第1XX回のような記事をうっかり書いてしまったので、さらに悪乗りしてPEARから始まって今ではDjangoやOpenID界隈で有名なSimon Willisonのプレゼンを貼り付けておこうと思う。「What the heck is HTML 5?」 http://simonwillison.net/static/…

James Clarkがブログ書いてる

JC

「ものがたり」より。「XML and JSON」とか読むと、結局JSONをダシにXMLの「今日この頃」へと小言を散りばめているような。XML datamodelとXML infosetは違うんだからね。そこんとこ要注意と思った。追記: も、もしかして「メディアはメッセージ」とかってオ…

evilwm

某ブクマコメントに反応していただけたようなので。evilwmはjetさんが使っている(追記: evilwmではなく、ionの方でした。) のを見て、screen使いとしてはこれはよいと思っていたけど「gimpとかだとアレ」な感をどう解消するか思い悩んでいるうちにcompizなぞ…

もしswitch()がλになれたら

var f = switch (a) { case 0: return 0; case 1: return 1; default: return f(a - 2) + f(a - 1); }; 関数の結果にもマッチできるわけで。 var f = switch (a) { case f(a + 1) % 8 + 1: return a + 1; default: return a * 4 + 3; }; しかも yield (コル…

Sun JVM の MappedByteBuffer は、途中でデバイスにアクセスできなくなると落ちるらしい。

という記事がikvmブログの記事にあった。 Running this on JDK 1.6 (x64) and removing the network cable during the sleep will result in an Internal Error in the VM. Not exactly what I had hoped for.Interestingly, on IKVM doing the same results…

ffmpeg-devel のアーカイブの URL が変わっていたので再掲

ffmpegのQCELP対応 に書いた URL がもはや有効ではなくなっていたので再掲。http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-December/020223.htmlパッチもダウンロードできます。もう今更な感じだけど、AMC に対応するには、libavformat の mov.c …

昔作ったソフトがいつのまにかFreeBSDのPortsに入ってた

pamtesterというのを昔作っていたわけですが、先日 FreeBSD を VMWare 上で試す際にふと一覧にあるのを発見。ちょっとうれしいような。

Close() vs Dispose()

ここで Java の話を書いていたけど、.NET 界隈でも「SYSK 53: To Close() or to Dispose()? That is the question…」のような議論が昔からあったらしいということをさっき知った。GotDotNetの掲示板にも関連トピあり。つまりここで問題となっているのは、 メ…

Compiz と Beryl の合併

こういう情報の横流し的な記事は書くのを避けていたんだけど…。Compiz Blog: Official Announcement of Mergeこれによると、次の経過措置が図られるそうだ (主に上のブログからの翻訳)。 Compiz プロジェクトは Compiz Core (旧 Compiz) と Compiz-Extra (旧…

『JNIはジャワの原住民のインターフェイス』

http://www.tech-faq.com/lang/ja/jni.shtml より引用: JNIはジャワの原住民インターフェイスである。JNIはジャワと適用間のインターフェイスと他の言語で書かれる図書館である。例として、JNIはジャワプログラムがCライブラリを使用することを可能にし、ま…

filetype:php で Google 検索すると楽しい

ことに気づいた。もう皆さんご存知ですよね。すみません。site:go.jp とかつけないようにお願いしますね。いや、PHP が悪いんじゃないよ!!!!!!!!

本気でJavaScriptによる端末エミュレーションを考えてみよう (1)

昔、某天才Yさんの紹介してくれたJS/UIXに本気で釣られて、JavaScriptで端末エミュレータを書き始めたことがあった。結局まごまごしているうちにAjaxTermが出てしまったのだが、こちらはすべてサーバサイドでエスケープシーケンスを解釈してHTMLにレンダリン…

JNI、その前に

SennaのJavaバインディングがリリースされたらしい。素晴らしい。で、ソースコードを見てみた。JNI だ。懐かしい。 JNI のよくある間違い メソッドを呼び出すたびに FindClass() や GetMethodID() している。もしくはフィールド値を取り出すたびに GetFieldI…

C#の好きでない命名規則

GetEnumerator()の話が出てきたついでに、C#の好きでない命名規則について書いておこうと思います。これもすごく好き嫌いの問題とは思いますが、ファクトリクラスにおいて、Java などである 常に同じインスタンスを返すようなパターンでは getInstance() (専…