Ticket #26926

詳細読み辞書の再検討とカスタマイズ機能

Open Date: 2011-12-12 15:01 Last Update: 2012-06-17 19:07

Reporter:
Owner:
(None)
Status:
Closed
Component:
MileStone:
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
1

Details

日本語の詳細読み辞書は source/nvdajp_dic.py に埋め込まれたテーブルになっており、また nvdajp 2011.2j 以降は本家の国際化の一部として source/locale/ja/characterDescriptions.dic が導入されています。

これらの情報が重複している現状は、日本語入力サポートの実装見直しの際に検討する必要があります。

また、最近「日本の主要なスクリーンリーダーで提供されている詳細読み辞書のカスタマイズ機能を nvdajp にも導入して欲しい」というご意見を伺うようになりました。 可能であれば本家にフィードバック可能な方法で「詳細読み辞書のカスタマイズ機能」を検討したいと思います。

コンポーネントはIMEにしておきますが、本項目は本家の実装とも関連しています。

Ticket History (3/16 Histories)

2011-12-12 15:01 Updated by: nishimoto
  • New Ticket "詳細読み辞書の再検討とカスタマイズ機能" created
2011-12-29 16:06 Updated by: nishimoto
Comment

Locale\ja の中のテーブルですが、

(1) 日本語の詳細読みに必要なフィールドを追加した「拡張書式」を定義する

(2) ロケールごとに拡張書式と従来書式を使い分けられるようにする

(3) 拡張書式テーブルを「ユーザー設定ディレクトリ」でカスタマイズ対応

(4) 詳細読みカスタマイズのためのGUIを検討する

といった方針を考えています。

標準でどの詳細読みを採用するか、という問題は、実装方法とは切り離して、いろいろな方のご意見を伺いたいと思います。

2012-01-08 23:24 Updated by: nishimoto
Comment

2011年1月8日の開発者Skype会議で以下のことが話し合われました。

現在の nvdajp_dic.py の実装について:

文字ごとのディクショナリの値が配列になっていて、その先頭要素が 0, 1, 2, 3 の値を取ります。

3 が「記号・単漢字」を表していて、詳細読みで文字列を音声エンジンに送るときに、現状は3であるかどうかの判定が行われています。

例えば小文字であるかどうかを表すために「小文字の」をつける処理は、現在は詳細読みの文字列に埋め込むことで実現しています。

しかし、音声エンジンがピッチの変更を許す場合は「小文字のア」ではなく(ピッチを高くして)「ア」のように呈示する、という手法も考えられます。

データ構造を再検討することでこのような処理が拡張しやすくなる可能性があります。

あわせて、音声設定の「大文字の前に大文字と読む」「大文字の前にビープ音をつける」についても確認する必要がありそうです。

2012-02-23 17:56 Updated by: nishimoto
Comment

このチケットに関する作業ブランチを作りました:

lp:~nishimotz/nvdajp/chardesc

2012-02-23 18:47 Updated by: nishimoto
Comment

以下の変更を行いました。

lp:~nishimotz/nvdajp/chardesc 4222

ユーザーの設定フォルダに characterDescription-ja.dic ファイルがあれば、 システムの characterDescription.dic テーブルよりも優先して使用されます。

ユーザーの設定フォルダが不明な場合はログの先頭を見てください。

例えば scons dist で作った dist\nvda.exe の場合は、

dist\userConfig\characterDescriptions-ja.dic

が読み込まれます。

現在は IME の詳細読みにはこの情報は反映されていません。

デスクトップ配列「テンキー2の2回押し」などでこの情報が反映されます。

この処理はロケールに依存せず動作するはずです。

2012-02-23 20:05 Updated by: nishimoto
Comment

betterInput ブランチを更新しました:

lp:~nishimotz/nvdajp/betterInput 4288

nvdajp_dic に関するリファクタリングを行い、get_long_desc() メソッド(これまでの実装でdic1の要素2を使っていた部分)が本家の詳細読み情報を使うように変更しました。

あわせて、先ほどの chardesc 4222 をチェリーピック (merge -c) でマージしました。

これにより、IME の候補読み上げにユーザー設定ファイルの characterDescriptions-ja.dic が反映されるようになりました。

なお chardesc ブランチには日本語に依存する処理を追加しないことにしました。

2012-02-29 12:38 Updated by: nishimoto
Comment

jpdev1202216 にてデスクトップ配列「テンキー2の2回押し」で読み上げるときに、 例えば全角アルファベット A a をいずれも「全角小文字アルファ」と読み上げる現象を確認しました。

2012-03-21 22:49 Updated by: nishimoto
Comment

2月29日コメントの不具合は jpdev120311 でも起きています。 音声エンジンが JTalk, ProTALKER の両方で確認されています。

元の報告は nvda-japanese-users 618 です。

2011.3j でもこの現象が起きているようです。

2012-04-13 21:11 Updated by: nishimoto
Comment

統合システム研究所の藤沼様からご提供いただいた詳細読み辞書を西本が変換して、このチケットの添付ファイルとしてアップロードしました。

2011.3j には詳細読みカスタマイズ機能がありませんので、2012.1jのベータ版でご確認ください。

添付ファイルを展開して中身の dic ファイルを、「ユーザー設定ディレクトリ」においていただくと、NVDA 日本語版の起動時に読み込まれます。

Windows 7 の場合は C:\Users\(ユーザー名)\AppData\Roaming\nvda です。

2012.1j ではこのファイルを NVDA 本体と分けて公開したいと思います。

2012-04-18 10:49 Updated by: nishimoto
  • Component Update from IME to 本家
Comment

詳細読み辞書に関して開発者MLでの発言を要約します:

  • 子どもたちに使える実用的なものに仕上げていきたい。言葉は教育の基本。わかり易く子どもたちにも使ってもらえる良質のスクリーンリーダーを。
  • 現在の NVDA 日本語版ではフォネティック読みの「たばこのた」を「たんぼのた」に変えている。

藤沼氏の辞書について:

  • 学習漢字(1006文字)の詳細読みはその漢字が初めて教科書で取り上げられる学年の子供にも理解できる説明、つまり、その漢字が取り上げられる学年以前の教科書に出ているキーワードを使う
  • フォネティックコードは無線局運用規則第14条別表に従う。フォネティックコードはそれ自体意味を持つ物ではない。一定の了解の元に統一されていることが望ましい。英語版のスクリーンリーダーにおいても、フォネティックは通信で使用されている(ITU)で決められた英文フォネティックコード)が使用されている。

2001年に感覚代行シンポジウムで発表された漢字詳細読み作成基準(レベルの高い項目が優先):

  • level 10 日本国内で使用されている読みや説明を用いる。説明読みに固有名詞を使用する際は人名は使用しない。
  • level 9 できるだけ音節数が少なく且つ易しい語を用いる。
  • level 8 数に関する文字では日本語の標準的な語彙の中に含まれている読みを用いる。
  • level 7 生物に関する漢字【例】鯵 = サカナノアジ 虻 = ムシのアブ
  • level 6 学習漢字(常用漢字の内、義務教育期間中に修得する漢字)に関しては、小学校学習指導要領にある「学年別漢字配当表」に掲げられている当該学年でも理解できる読みを用いる。
  • level 5 旧字や異体字・俗字等に関してはそれを明記する。
  • level 4 十二支の動物名は、十二支だけで使用されるものだけを「エトノ??」と表し、「子(ネ)」や「午(ウマ)」等一般的に日本語の平易な文では別の読みとして使用されているのでそれを優先する。
  • level 3 音読みでは基本的に「漢音」を用いるが、仏教用語や一般的に使用されている音が「呉音」の場合はそれを用いる。
  • level 2 文字の形も類似していて同音訓の文字に関してはその文字の片や作りから使用されている例を挙げて説明する
  • level 1 漢字には存在するが、説明や例語を挙げにくい文字に関しては作りや基になった文字の組み合わせを説明する。
2012-04-24 22:32 Updated by: nishimoto
Comment

カスタマイズ機能は 2012.1j に導入されました。

詳細読み辞書の更新は引き続き検討します。

2012-05-28 15:45 Updated by: nishimoto
Comment

本件については、誤りの修正 28244 「詳細読み辞書のロシア文字などに誤りがある」は本家の翻訳にもコミットを済ませており、2012.2jp にも反映されます。

2012.1j ではオプションであった CharDesc を、(すべてとは限りませんが)さらに 2012.2jp で取り入れることを検討します。

28254「記号読み辞書の改良提案」(括弧、読点などを読み上げレベル「ほとんど」に登録し、もともと「ほとんど」に登録されている記号を「すべて」に登録)も検討します。

平仮名のフォネティック読みは「ひらがな あさひのあ」ではなく単に「あさひのあ」と短縮したほうがよい、というご提案もあります。

2012-06-04 23:09 Updated by: nishimoto
Comment

NVDA開発者Skype会議で以下の方針を決めました。

  • 藤沼氏の辞書に基づいてデフォルト辞書を変更する
  • 「ひらがな あさひのあ」は「あさひのあ」と短縮する。カタカナは短縮しない。

なお、音声と点字で別々の内容を出力できるようにしてはどうか、という提案もありましたが、技術的な検討が必要なので、今後の課題とします。

2012-06-12 12:19 Updated by: nishimoto
Comment

チケット 26926 と 28254 に関する更新をコミットしました。

チェンジセット jp2012.2 rev 5224

2012-06-17 19:07 Updated by: nishimoto
  • Ticket Close date is changed to 2012-06-17 19:07
  • Status Update from Open to Closed
  • Resolution Update from None to Fixed

Attachment File List

Edit

Please login to add comment to this ticket » Login