Skip to content

Vocalizer for NVDA レビューカーソル移動の読み上げ #73

Closed

Description

@nishimotz

問題の再現手順:

  1. https://vocalizer-nvda.com/ ライセンスを購入し、セットアップを行う
  2. 後述のアドオンを導入、アクティベーション、利用可能な状態にする
  3. メモ帳に「日本語」と入力し、左端にキャレットを戻す
  4. NVDA+右矢印を押して右端まで移動
  • vocalizer_expressive_driver-3.0.12.nvda-addon
  • vocalizer-voice-kyoko-Plus.nvda-addon

期待されること:

順番に「本箱の本、言語の語、復帰、改行、右の端・改行」と読み上げる

実際に起きること:

無言で文字説明を行わず、「右の端」まで到達した場合のみ読み上げる

下記のエラーがログに残っている。

ERROR - scriptHandler.executeScript (14:48:04.066):
error executing script: <bound method GlobalCommands.script_review_nextCharacter of <globalCommands.GlobalCommands object at 0x071208B0>> with gesture u'NVDA+右矢印'
Traceback (most recent call last):
  File "scriptHandler.pyo", line 187, in executeScript
  File "globalCommands.pyo", line 1222, in script_review_nextCharacter
  File "speech.pyo", line 147, in spellTextInfo
TypeError: patchedSpeakSpelling() got an unexpected keyword argument 'useDetails'

システム構成:

  • NVDA 2018.2jp-beta-180318p
  • インストール環境
  • Windows 10 バージョン 1709

その他の質問:

メーリングリストでの報告 nvda-japanese-users:2366 によると、2016.2jp でも起きているとのこと。

考察

  • Vocalizer が NVDA の内部メソッドに動的にパッチを当てており、それが日本語版の独自変更と互換性を持たないことが原因と考えられる

Activity

  1. added this to the 2018.2jp milestone on Mar 19, 2018
  2. added a commit that references this issue on Mar 19, 2018
  3. nishimotz commented on Mar 19, 2018

    @nishimotz
    MemberAuthor

    JTalk と同じ挙動にならないかも知れないですが、
    speech.speakSpelling がモンキーパッチされてもエラーが出ないようにしました。

    以下、日本語ベータ版で配信する最新版と同じものです。

    http://s.nvda.jp/nvda_2018.2jp-beta-180319q.exe

  4. riku22 commented on Mar 19, 2018

    @riku22
    Contributor

     修正ありがとうございます。
     先ほどベータ版を更新して試してみました。
     一応動作はするようですが、音声設定で「サポートされている場合自動的に言語を切り換える」にチェックをつけると、やはり同じ現象が起きるようです。

  5. nishimotz commented on Mar 19, 2018

    @nishimotz
    MemberAuthor

    確認しました。直っていないケースのエラーメッセージ

    ERROR - scriptHandler.executeScript (18:29:36.351):
    error executing script: <bound method GlobalCommands.script_review_nextCharacter of <globalCommands.GlobalCommands object at 0x06EB8290>> with gesture u'NVDA+右矢印'
    Traceback (most recent call last):
      File "scriptHandler.pyo", line 187, in executeScript
      File "globalCommands.pyo", line 1233, in script_review_nextCharacter
      File "speech.pyo", line 152, in spellTextInfo
    TypeError: callSpeakSpelling() takes exactly 2 arguments (5 given)
    
  6. added a commit that references this issue on Mar 19, 2018
  7. nishimotz commented on Mar 19, 2018

    @nishimotz
    MemberAuthor

    2018.2jp-beta-180319s に更新しました。

    http://s.nvda.jp/nvda_2018.2jp-beta-180319s.exe

  8. riku22 commented on Mar 19, 2018

    @riku22
    Contributor

     ありがとうございました。
     無事に動くようになりました。
     別件でもう1つ困った現象があるため、後程報告させていただきます。

  9. nishimotz commented on Mar 20, 2018

    @nishimotz
    MemberAuthor

    残った課題は作業に時間がかかりそうなので、エラーを回避する修正をしたということで本件クローズします。

  10. modified the milestones: 2018.2jp, 2018.1.1jp on Mar 28, 2018
  11. added 3 commits that reference this issue on Mar 28, 2018
  12. nishimotz commented on Mar 28, 2018

    @nishimotz
    MemberAuthor

    ターゲットを 2018.1.1jp に変更しました。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions