Forums: 公開討議 (Thread #33975)

相談にのってください (2013-05-06 19:32 by kumbhila #68628)

先日はありがとうございました。

いま、インターネットのオンライン辞書からテキスト抽出して辞書を製作しています。Ohkuboさんが作られたのに次いで有名なサンスクリットの辞書です。

そこで、最終的にはOhuboさんの作られたplistを流用できるように、外字コードを割り振り置換しました。

しかし、部分的にデーナバガリーになるのですが、半分ぐらいはクエスチョンの青箱が返ってきます。調べてみると、置換に成功した文字が、ある部分ではクエスチョンになるという現象がみられ困惑しています。ばらばらに置換に失敗(成功)するのではなく、うまくいくところも、ダメなところもある程度連続して、「島状」の状態となっています。

なにか&#X ;がなんらかのデコードエラーのようなことを起こしているのではうたがってみます。たしかにasciiの範疇から外字に移るときに効率に置換ミスが起こっているような気もしますが、そのあたりに怪しいものはみつかりません。

経験上、なにか参考になることがあればご教示いただければ幸いです。

Répondre à 68628×

You can not use Wiki syntax
Vous n'êtes pas connecté. Pour distinguer vos messages en provenance du reste, vous devez choisir un surnom. (L'unicité du surnom est pas réservé. Il est possible que quelqu'un d'autre pourrait utiliser exactement le même surnom. Si vous voulez l'assurance de votre identité, nous vous recommandons de vous connecter avant de poster.) Connexion

RE: 相談にのってください (2013-05-07 22:18 by ohkubo-k #68648)

> うまくいくところも、ダメなところもある程度連続して、「島状」の状態となっています。

これは私も経験がありません。
外字設定にミスがあれば、当然その外字を使う箇所は全てダメか、問題なければ全て表示されるかのどちらかしかないと思っていました。
表示される箇所もある、と言うことは表示フォントの問題ではないと言うことですよね。

EBSutdioに処理させるHTMLファイル(の一部分)をブラウザで表示しても文字化けしないのであれば、外字設定の問題だと思います(ブラウザでも化けるなら&#x...;の指定ミスでしょう)。

私は自作プログラムで非ShitJIS文字を &#x...; に変換していますが、それは同時に GaijiMap.xml に登録されていない文字が出てきていないかもチェックするようにしてます。
(が、一部は表示できているとのことですので、あまり関係なさそうです)

サンスクリット辞書の外字設定に使ったファイルは以下にあります。
http://sourceforge.jp/projects/classicalepwing/scm/svn/blobs/99/ebwin/SanskritGaiji.xml
http://sourceforge.jp/projects/classicalepwing/scm/svn/blobs/99/ebwin/SanskritGaijiMap.xml
http://sourceforge.jp/projects/classicalepwing/scm/svn/blobs/99/ebwin/CLSSKT.plist


関係あるかは分かりませんが、EPWINGの外字文字番号(半角Axxx, 全角Bxxx)は、先頭から順に隙間無く使わなければなりません。ただし、EPWINGの仕様だと思いますが、使用する外字番号は実は所々使わない部分があります。
上のSanskritGaiji.xmlを見ていただくと分かると思いますが、A121...A17Eまで来た後、A17FではなくA221になっています。その後も、A27Eの次はA321になるなどしています。
始めて自分でギリシャ文字の外字を沢山作ったときは、この辺りにはまりました。
Répondre à #68628

Répondre à 68648×

You can not use Wiki syntax
Vous n'êtes pas connecté. Pour distinguer vos messages en provenance du reste, vous devez choisir un surnom. (L'unicité du surnom est pas réservé. Il est possible que quelqu'un d'autre pourrait utiliser exactement le même surnom. Si vous voulez l'assurance de votre identité, nous vous recommandons de vous connecter avant de poster.) Connexion

RE: 相談にのってください (2013-05-08 21:38 by Anonyme #68669)

早々のお返事ありがとうござました。

さらに詳しくみると以下のことがわかりました。

1.置換後のSJISベースのHTMLはブラウザで問題なくデーバナーガリとして復元される。
2. 置換に成功するのは<p>&#X0956と続くような文頭のパターンで、失敗するのはほかのASCII文字に続いて>&#X0956が始まる場合。
3.たまちま失敗文字列の中に一文字だけ成功している部分を見つけ出し読み取ると、 >&#X0956>&#X0956 と前後に半角巣スペースがあったところで、たの失敗文字列と切り離されていた。
4.そこで、空にそのあとにもう一か所切れ目をつくると、そこから今まだ青箱であったところが連続して正しく文字に置換された。
5.置換されないときになぜか、?と返ってくるものと青箱の二種類がある。

たぶん、読み取りのプロセスに問題があるのだとおもいます。ただ、外字すべてがダメなわけではなくāなどは正しく置き換わっていて、なせデーバナーガリ(とnbsp)がダメなのか困惑するとこです。

ただ、ご指摘いただいことは再確認してみようとおもいます。ありがとうございました。
Répondre à #68628

Répondre à 68669×

You can not use Wiki syntax
Vous n'êtes pas connecté. Pour distinguer vos messages en provenance du reste, vous devez choisir un surnom. (L'unicité du surnom est pas réservé. Il est possible que quelqu'un d'autre pourrait utiliser exactement le même surnom. Si vous voulez l'assurance de votre identité, nous vous recommandons de vous connecter avant de poster.) Connexion

RE: 相談にのってください (2013-05-08 22:08 by kumbhila #68673)

Ohkuboさん、ありがとうございました。解決しました。

Ohkuboさんの外字マップと外字ファイル,plistをそのまま使わせていただいところ、何の支障もなく置換されました。

自分のファイルはやはり欠番がありました。失敗の理由はわかりませんが、ファイルが不完全であったのは間違いありません。

本当にありがとうございました。古典言語を習得するものの知名度はかなりのものですが、宣伝に努めてまいります。ありがとうございました。
Répondre à #68628

Répondre à 68673×

You can not use Wiki syntax
Vous n'êtes pas connecté. Pour distinguer vos messages en provenance du reste, vous devez choisir un surnom. (L'unicité du surnom est pas réservé. Il est possible que quelqu'un d'autre pourrait utiliser exactement le même surnom. Si vous voulez l'assurance de votre identité, nous vous recommandons de vous connecter avant de poster.) Connexion