文章読み上げ中にエラー発生?
ご報告ありがとうございます。現象を再現できました。
この現象が発生するとプログラムの終了がうまくできなくなるようなので、修正版のリリースを検討します。
テストケース:
「ふぅー」 「うわぁー」
2012.3jp-beta1 でのログ:
INFO - nvda (00:21:08): Starting NVDA INFO - core.main (00:21:09): Config dir: C:\Users\nishimotz\AppData\Roaming\nvda INFO - core.main (00:21:09): NVDA version 2012.3jp-beta1 INFO - core.main (00:21:09): Using Windows version sys.getwindowsversion(major=6, minor=1, build=7601, platform=2, service_pack='Service Pack 1') INFO - core.main (00:21:09): Using Python version 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] INFO - core.main (00:21:09): Using comtypes version 0.6.2 INFO - synthDrivers.espeak.SynthDriver.__init__ (00:21:09): Using eSpeak version 1.46.17 05.May.12 INFO - synthDriverHandler.setSynth (00:21:09): Loaded synthDriver espeak INFO - core.main (00:21:09): Using wx version 2.8.12.0 (msw-unicode) INFO - braille.initialize (00:21:09): Using liblouis version 2.5.1 INFO - braille.BrailleHandler.setDisplayByName (00:21:09): Loaded braille display driver noBraille, current display has 0 cells. INFO - core.main (00:21:10): NVDA initialized INFO - config.save (00:21:24): Configuration saved INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:21:31): jtalk using eSpeak version 1.46.17 05.May.12 INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:21:31): jt_dll C:\Users\NISHIM~1\AppData\Local\Temp\nsg55EE.tmp\app\synthDrivers\jtalk\libopenjtalk.dll INFO - synthDrivers.jtalk.mecab.Mecab_initialize (00:21:31): INFO - synthDrivers.jtalk.mecab.Mecab_initialize (00:21:31): mecab:0.993 nvdajp-jtalk-dic (utf-8) 20121014-134920 INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:21:31): libopenjtalk 20120714-120831 INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:21:31): jt_dll C:\Users\NISHIM~1\AppData\Local\Temp\nsg55EE.tmp\app\synthDrivers\jtalk\libopenjtalk.dll INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:21:31): libopenjtalk 20120714-120831 INFO - synthDriverHandler.setSynth (00:21:31): Loaded synthDriver nvdajp_jtalk2 ERROR - synthDrivers.jtalk._bgthread.BgThread.run (00:21:33): Error running function from queue Traceback (most recent call last): File "synthDrivers\jtalk\_bgthread.pyo", line 31, in run File "synthDrivers\jtalk\_nvdajp_jtalk.pyo", line 152, in _speak File "synthDrivers\jtalk\_nvdajp_jtalk.pyo", line 103, in _jtalk_speak File "synthDrivers\jtalk\mecab.pyo", line 369, in Mecab_correctFeatures IndexError: list index out of range
jp2012.3-5608 でのログ:
INFO - nvda (00:23:10):
Starting NVDA
INFO - core.main (00:23:11):
Config dir: C:\work\nvda\jp2012.3\source\userConfig
INFO - core.main (00:23:11):
NVDA version bzr-jp2012.3-5608
INFO - core.main (00:23:11):
Using Windows version sys.getwindowsversion(major=6, minor=1, build=7601, platform=2, service_pack='Service Pack 1')
INFO - core.main (00:23:11):
Using Python version 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)]
INFO - core.main (00:23:11):
Using comtypes version 0.6.2
INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:23:13):
jtalk using eSpeak version 1.46.17 05.May.12
INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:23:13):
jt_dll C:\work\nvda\jp2012.3\source\synthDrivers\jtalk\libopenjtalk.dll
INFO - synthDrivers.jtalk.mecab.Mecab_initialize (00:23:13):
INFO - synthDrivers.jtalk.mecab.Mecab_initialize (00:23:13):
mecab:0.993 nvdajp-jtalk-dic (utf-8) 20121025-015219
INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:23:13):
libopenjtalk 20120714-120831
INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:23:13):
jt_dll C:\work\nvda\jp2012.3\source\synthDrivers\jtalk\libopenjtalk.dll
INFO - synthDrivers.jtalk._nvdajp_jtalk.initialize (00:23:14):
libopenjtalk 20120714-120831
INFO - synthDriverHandler.setSynth (00:23:14):
Loaded synthDriver nvdajp_jtalk2
INFO - core.main (00:23:14):
Using wx version 2.8.12.0 (msw-unicode)
INFO - braille.initialize (00:23:14):
Using liblouis version 2.5.1
INFO - braille.BrailleHandler.setDisplayByName (00:23:14):
Loaded braille display driver noBraille, current display has 0 cells.
INFO - core.main (00:23:14):
NVDA initialized
INFO - config.save (00:23:16):
Configuration saved
ERROR - synthDrivers.jtalk._bgthread.BgThread.run (00:23:29):
Error running function from queue
Traceback (most recent call last):
File "synthDrivers\jtalk\_bgthread.py", line 31, in run
func(*args, **kwargs)
File "synthDrivers\jtalk\_nvdajp_jtalk.py", line 152, in _speak
_jtalk_speak(msg, index, prop)
File "synthDrivers\jtalk\_nvdajp_jtalk.py", line 103, in _jtalk_speak
_jtalk_core.Mecab_correctFeatures(mf, CODE_='utf-8')
File "synthDrivers\jtalk\mecab.py", line 390, in Mecab_correctFeatures
yomi = ar2[8] + u'繝シ'
IndexError: list index out of range
Windows7の64BIT版でNVDAを使用しています。NVDA最新版(2012.3jp-beta1)で、音声エンジンを「Jトーク」、「Jトーク2」にしているとき、文章中に「ふぅー」「うわぁー」というような、平仮名の「あ」行の小文字と長音が入った文章を読み上げさせようとするとエラーが出て(NVDAのエラーサウンドが流れて)そのまま音声が出なくなるという現象が起きています。 ご修正よろしくお願いします。