Ticket #36052

Open Date: 2016-02-24 08:41

Last Update: 2016-05-21 10:30

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

Reporter:nishimotoOwner:nishimoto
Priority:5 - MediumMileStone:2016.2jp (closed)
Type:BugsSeverity:5 - Medium
Component:点訳エンジンStatus:Closed
ResolutionFixed

Details

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

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

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

Attachment File

Attachment File ListNo attachments
Add New attachment
Add attachment filesPlease login to add new attachment

Ticket History - 3/9 Histories [Show all old Histories]

2016-02-24 08:41 Updated by: nishimoto

  • New Ticket "日本語点訳における数字と記号の問題" created

2016-03-24 10:58 Updated by: nishimoto

Comment

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

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

2016-03-24 11:24 Updated by: nishimoto

Comment

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

  • Resolution Update from None to Accepted

Comment

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

2016-04-25 18:52 Updated by: nishimoto

  • Ticket Close date is changed to 2016-04-25 18:52
  • Status Update from Open to Closed
  • Resolution Update from Accepted to Fixed

Comment

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

2016-05-19 22:56 Updated by: nishimoto

Comment

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

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

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

	{
		'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 Updated by: nishimoto

Comment

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

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

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

(引用ここから)

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

(引用ここまで)

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

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

2016-05-20 23:18 Updated by: nishimoto

Comment

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 Updated by: nishimoto

Comment

jpbeta160521 で確認している問題:

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

Add Comment/Update #36052 (日本語点訳における数字と記号の問題)

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Login