チケット #36052

日本語点訳における数字と記号の問題

登録: 2016-02-24 08:41 最終更新: 2016-05-21 10:30

報告者:
担当者:
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
なし

詳細

2016.1jp の点字出力について下記のご指摘をいただきました:

例えば「1,500」という場合の,記号
この場合は3の点で表示されます。
しかし「\1,500」となると、,記号が2の点になります。
小数点との区別ができないので不便になりました。
\記号と数字列の並びで小数点はあまりないかもしれませんが、
何かの平均を出したら小数点表記もありえることです。
数学の記号とか、そういうことでの細かいルールがあったりするのかどうかは知りませんが、
位取りと小数点が同じ表示になってしまうのは誤解の原因になると思います。

時間の表記で、
21:46
というような文字列を使うことがよくあると思います。
上記の場合、全バージョンまでは:の後ろにスペースは入りませんでしたが、
今回のバージョンでスペースが入るようになりました。 

チケットの履歴 (9 件中 3 件表示)

2016-02-24 08:41 更新者: nishimoto
  • 新しいチケット "日本語点訳における数字と記号の問題" が作成されました
2016-03-24 10:58 更新者: nishimoto
コメント

github issue を作成 https://github.com/nvdajp/nvdajpmiscdep/issues/22

\1,500.01 のように半角円マーク(バックスラッシュ)、数字、カンマ、ピリオドが混在する場合について、 特に NABCC でないモードにおいて、現状を確認してみます。

2016-03-24 11:24 更新者: nishimoto
コメント

現状の実装では、半角円マーク(文字コードとしては半角バックスラッシュと同じ)を 含む文字列は「情報処理点字」として処理されます。 コマンドプロンプトでファイル名などを扱う場合に都合が良いからです。 ただし NABCC モードではすべて NABCC になります。

具体的には

\1,500.01
半角バックスラッシュ 1 カンマ 500 ピリオド 01
は以下のように変換されています。

情報処理点字開始 
円マーク 
数符 
数字 1 
情報処理記号のカンマ 
数字 500
情報処理記号のピリオド
数符
数字 01
情報処理記号の終了

つまり

6
236
1246
3456
1
5
15
245
245
256
3456
245
1
6
356
という感じです。

この "1,500.01" という数字に半角円マークがくっついていない場合は、 通常の記号の体系になり、カンマは3,ピリオドは2になり、 ピリオドの直後の数符も省略されます。

これについては、こういう仕様だとご理解いただきたいのですが、 なにか間違っていたらご指摘いただければありがたいです。

2016-03-24 11:55 更新者: nishimoto
  • 解決法なし から 受領 に更新されました
コメント

全角または半角のコロンに続く数字をマスあけしないように変更。 https://github.com/nvdajp/nvdajpmiscdep/issues/22

2016-04-25 18:52 更新者: nishimoto
  • 解決法受領 から 修正済み に更新されました
  • 状況オープン から 完了 に更新されました
  • チケット完了時刻2016-04-25 18:52 に更新されました
コメント

議論ができていませんが、対策済みとさせてください。

2016-05-19 22:56 更新者: nishimoto
コメント

シングルクオートを含むアルファベット文字列で、 シングルクオート記号が消えてしまう問題への対応を検討中。

既存のテストケースを変更したくないので、 シングルクオートや疑問符を含む場合だけ外国語引用符を使う、という規則を試している。

外国語引用符の中の疑問符が正しくないという問題も把握しているが、未解決。

	{
		'text': "Hello! It's Patty. Is Kate there",
		'input': "⠦Hello! It's Patty. Is Kate there⠴",
	},
	{
		'text': "Is Kate there?",
		'input': "⠦Is Kate there?⠴",
	},
	{
		'text': "what's new",
		'input': "⠦what's new⠴",
		'inpos2': [0,0,1,2,3,4,5,6,7,8,9,10,11,11],
		'inpos1': [0,1,2,3,4,5,6,7,8,9,10,11],
		'inpos':  [0,0,1,2,3,4,5,6,7,8,9,10],
	},
	{
		'text': "how are you",
		'input': "how are you",
	},
2016-05-20 19:48 更新者: nishimoto
コメント

記号の処理について点訳エンジンの見直しをしているのですが、 いままで保守してきた規則のデバッグが難しくなってきました。

この機会に「日本における英語点字の表記」(2015年9月)の内容を部分的に検討させてください。

具体的には下記の部分です。

(引用ここから)

数符の効力に関しては UEB の規則を準用する。 すなわち、数符の効力は数字及びコンマ・ピリオドが連続する間継続し、 それ以外の記号やマスあけで終わるものとする。 UEB の規則の方が明確で、曖昧さをなくせるからである。 小数点は、 UEB の書き方に従い、ピリオド(256)を用いる。

(引用ここまで)

他の規則を見直すかどうかはまだ決めていませんが、 2016.2jp リリースまであまり時間もないので、 今回は数符の規則だけにしようかと思っています。

ご意見があればお聞かせください。

2016-05-20 23:18 更新者: nishimoto
コメント

jpbeta160520 で確認しているエラー:

ERROR - core.Notify (23:14:26):
errors in this core pump cycle
Traceback (most recent call last):
  File "core.pyo", line 355, in Notify
  File "braille.pyo", line 1838, in pumpAll
  File "braille.pyo", line 1710, in handlePendingCaretUpdate
  File "braille.pyo", line 1716, in _doCursorMove
  File "braille.pyo", line 1055, in update
  File "braille.pyo", line 527, in update
  File "synthDrivers\jtalk\translator2.pyo", line 1356, in translate
  File "synthDrivers\jtalk\translator2.pyo", line 1304, in translateWithInPos2
  File "synthDrivers\jtalk\translator2.pyo", line 1255, in japanese_braille_separate
  File "synthDrivers\jtalk\translator2.pyo", line 497, in should_separate
IndexError: string index out of range

2016-05-21 10:30 更新者: nishimoto
コメント

jpbeta160521 で確認している問題:

  • NABCC を有効にしていてもアルファベット文字列が外国語引用符で処理されてしまう場合がある

添付ファイルリスト

添付ファイルはありません

編集

このチケットにコメントを追加するには、ログインが必要です » ログインする