Excel の見出し自動通知が点字ディスプレイ出力で有効にならない
チケット #32007 を「重複」扱いでクローズしたので、本チケットの優先度・重要度を上げて検討してみます。
まず本家 next に対するパッチを作ってみました。本家にチケットを立てました。
http://community.nvda-project.org/ticket/4195
なんとなく本家の実装の不備だったような気がします。
--- a/source/braille.py +++ b/source/braille.py @@ -492,15 +492,18 @@ def getBrailleTextForProperties(**propertyValues): # Translators: Displayed in braille when an object (e.g. a tree view item) has a hierarchical level. # %s is replaced with the level. textList.append(_('lv %s')%positionInfo['level']) + rowHeaderText = propertyValues.get("rowHeaderText") + if rowHeaderText: + textList.append(rowHeaderText) + columnHeaderText = propertyValues.get("columnHeaderText") + if columnHeaderText: + textList.append(columnHeaderText) if rowNumber: if includeTableCellCoords and not cellCoordsText: # Translators: Displayed in braille for a table cell row number. # %s is replaced with the row number. textList.append(_("r%s") % rowNumber) if columnNumber: - columnHeaderText = propertyValues.get("columnHeaderText") - if columnHeaderText: - textList.append(columnHeaderText) if includeTableCellCoords and not cellCoordsText: # Translators: Displayed in braille for a table cell column number. # %s is replaced with the column number. @@ -536,6 +539,8 @@ class NVDAObjectRegion(Region): keyboardShortcut=obj.keyboardShortcut if presConfig["reportKeyboardShortcuts"] else None, positionInfo=obj.positionInfo if presConfig["reportObjectPositionInformation"] else None, cellCoordsText=obj.cellCoordsText if config.conf["documentFormatting"]["reportTableCellCoords"] else None, + columnHeaderText=obj.columnHeaderText if hasattr(obj, "columnHeaderText") and config.conf["documentFormatting"]["reportTableHeaders"] else None, + rowHeaderText=obj.rowHeaderText if hasattr(obj, "rowHeaderText") and config.conf["documentFormatting"]["reportTableHeaders"] else None, ) self.rawText = text + self.appendText super(NVDAObjectRegion, self).update()
日本語テスト版 jpbeta140613
https://dl.dropboxusercontent.com/u/62564469/nvda_jpbeta140613.exe
Excel 2010 で NVDA+shift+c, NVDA+shift+r を使って列見出し・行見出しを設定して、 書式情報「テーブルの行/列見出しの通知」を有効にした場合に、 点字ディスプレイにも見出しを通知する修正を取り込みました。
音声では行または列は変化したときだけ通知しますが、点字出力は毎回通知に含むようにしています。
NVDA+ctrl+t で点字表示モードをレビューにして動作確認しています。
本家がマージしてくれるかどうかわからないので、 まず日本語版 2014.3jp をマイルストーンとして設定しておきます。
本家の t4195 ブランチが next に入ったので、提案が本家版に受理されたものと判断します。
このチケットはターゲットを本家版 2014.3 に変更します。
本家チケット 4195 にコメントがついて 2014.3 への採用が見送られそうです。
点字ディスプレイに常に見出しが表示されるのは冗長すぎるので、 行や列を移動したときだけ通知するように実装をやりなおすべき、 という話です。
http://community.nvda-project.org/ticket/4195#comment:3
なにかご意見があれば伝えるので、お知らせください。
本件は 2014.3 本家版ではなく日本語版 2014.3jp の独自仕様ということになりそうなので、マイルストーンと状態を更新しました。
本家 2012.3 で導入された Microsoft Excel の見出し自動通知機能を使ったときに、2012.3.1jp で見出しの情報が点字ディスプレイに出力されておらず、"内容" "セル番地" だけが表示される、というご報告をいただきました。
ドキュメントとソースをみた限りでは、点字ディスプレイにも出力されるように実装されています。
音声で出力されているのなら、書式情報「テーブルの行/列見出しを通知」は有効になっていると思われます。
入出力レベルのログを見ればなにか分かるかも知れません。
本家ブランチ nvda/main Rev 5535
本家チケット 1519