パスワードを忘れた? アカウント作成
749860 journal

kubotaの日記: Xのバグといえば

日記 by kubota

こんな単純なバグがいまだに残ってるなんて。

Emacs から他の X クライアントへの日本語のコピー&ペーストが、たまに失敗することがあるのには、まえから気付いていました。問題はその法則性がわからないことでした。以下の条件が必要です。

  • 選択した文字列の最後の文字が ASCII/ISO-8859-1 以外の文字であること。
  • ペースト先の X クライアントが国際化されていること (というか、国際化されてなければそもそも日本語のペーストを受け付けない)。
  • XmbTextPropertyToTextList() の返り値を厳密に評価すること。kterm はこれに該当しないが、rxvt や xedit はこれに該当する。

Emacs→Rxvt の日本語のペーストはしょっちゅう使ってたので、よく失敗することがあったんだけど、じつは最後の文字が分かれ目でした。いや、これも、パッチを作ってから気付いたことで、実際にはlibX11に fprintf() を入れつついろいろ試しているときにバグに気付いたことですが。

で、パッチを作って送ったんだけど、なんでこんなバグが今まで残ってたのか、不思議だな。XFree86 は歴史が長く、広く使われているソフトウェアなのに(というか、このバグは X.org distribution にもあるみたい)。おいらみたいな新参者でも直せたくらいなんだから、このバグに気付いて直せるだけの力量のある人なんてゴマンといるだろうに。

typodupeerror

あと、僕は馬鹿なことをするのは嫌いですよ (わざとやるとき以外は)。-- Larry Wall

読み込み中...