re 6 x 3: 「神(示申)」と「神」
rok さんありがとうございます。
Firefox は Pasteboard Manager じゃなくて旧式の Scrap Manager を使っています。で、Firefox のソースコードを眺めていると、nsClipboard::SetNativeClipboardData 関数内で、
- PutScrapFlavor(..., 'utxt', ...);
- PutScrapFlavor(..., 'TEXT', ...);
- PutScrapFlavor(..., 'styl', ...);
と、順に UTF8, Shift_JIS (OS の言語設定が日本語の場合) の順でクリップボードにデータを積んでいる。じゃあこのデータを取る場合どう書くか、という話ですが、古いアプリケーションだと、普通は、
GetScrapFlavor(..., 'TEXT', ...);
で Shift_JIS として読み込むと思います。これはしょうがない。一方、Pasteboard を使う新しいアプリケーションの場合も、(rok さんと異なり) 手元の環境では 'TEXT' が参照されるのか、「ネ申」が返ってきます。
$ ./pbdutil -lvv Available type(s): text (NSStringPboardType) (size: 3 bytes) $ ./pbdutil -r text | od -t x1 0000000 e7 a5 9e 0000003
問題がどこにあるかは、デバッガで追っていないので把握できていないのですが、こちらで観測している現象としては以上のとおりです。