チケット #31343

Windows 8 で読み上げ辞書などの日本語文字が入力できない

登録: 2013-05-12 14:18 最終更新: 2013-06-21 11:33

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

詳細

Windows 8 で NVDA 本家版または日本語版を使うと、読み上げ辞書などの日本語文字が入力できず、エンターキーを押すと B0B など無意味な文字列に化けてしまう現象を確認しています。

これは wx.TextCtrl で文字列を入力している箇所で全般的に起きるようです。さらに、日本語入力をしたあとで NVDA のプロセスが正常に終了しないこともあります。

Microsoft IME, ATOK, Google 日本語入力のいずれでも起こります。

wxPython 2.8 そのものは Windows 8 での IME 入力に対応できていることを、wxPython のサンプルプログラムで確認しています。

実験のために「ようこそ画面」に下記のように無意味なテキストエディットを一つ追加してみると、やはり同じ状況が起こります。

diff --git a/source/gui/__init__.py b/source/gui/__init__.py
index dd81b29..48a1399 100644
--- a/source/gui/__init__.py
+++ b/source/gui/__init__.py
@@ -523,6 +523,8 @@ class WelcomeDialog(wx.Dialog):
 		mainSizer.Add(welcomeText,border=20,flag=wx.LEFT|wx.RIGHT|wx.TOP)
 		optionsSizer = wx.StaticBoxSizer(wx.StaticBox(self, wx.ID_ANY, _("Options")), wx.VERTICAL) # HORIZONTAL
 		#nvdajp
+		self.jpTestEdit=wx.TextCtrl(self,wx.NewId())
+		optionsSizer.Add(self.jpTestEdit,flag=wx.TOP|wx.RIGHT,border=10)
 		self.nconvAsNVDAModifierCheckBox = wx.CheckBox(self, wx.ID_ANY, _("Use NonConvert as an NVDA modifier key"))
 		self.nconvAsNVDAModifierCheckBox.SetValue(config.conf["keyboard"]["useNonConvertAsNVDAModifierKey"])
 		optionsSizer.Add(self.nconvAsNVDAModifierCheckBox,flag=wx.TOP|wx.RIGHT,border=10)

もしかすると環境に固有の現象かもしれないので、もし Windows 8 で問題なく使えているなら、お知らせいただけるとありがたいです。

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

2013-05-12 14:18 更新者: nishimoto
  • 新しいチケット "Windows 8 で読み上げ辞書などの日本語文字が入力できない" が作成されました
2013-05-14 22:38 更新者: nishimoto
コメント

本家のチケットに登録しました。

3233 Japanese character cannot input correctly to TextCtrl on Windows 8 http://community.nvda-project.org/ticket/3233

2013-05-15 10:45 更新者: nishimoto
コメント

下記のチケットの重複ではないかという指摘がありました。 韓国語IMEを追加して確認してみます。

2909 In web browsers such as Internet Explorer, when trying to find text in languages other than English, NVDA inserts odd things in Find dialog http://community.nvda-project.org/ticket/2909

2013-05-15 14:08 更新者: nishimoto
コメント

本家 2909 で報告されている、この問題の回避方法について有効性を確認しました。下記の通りです。

  • Windows 8 のコントロールパネル「言語の追加」で「英語(米国)」を追加する。Shift+Alt で日本語と英語のレイアウトが切り替えできるようになる。
  • NVDA のテキスト入力で(Firefox で Ctrl+NVDA+F を押したとき、あるいは辞書登録でパターンや読みの入力になったとき)Shift+Alt を押していったん英語に切り替えて、もう一度日本語に戻す。
  • その後、半角全角キーを押して日本語入力をすると、文字化けしないで入力できる。
2013-05-28 19:34 更新者: nishimoto
コメント

さきほどの本家のコミットによると、この問題を修正して 2013.1.1 をリリースするらしいです。

以下、changes からの引用です:

= 2013.1.1 =

== Bug Fixes ==
- Correct characters are produced when typing in NVDA's own user
interface while using a Korean or Japanese input method while it
is the default method. (#2909)
2013-05-28 21:09 更新者: nishimoto
コメント

本家スナップショットで確認して、「文字入力は直ったが、NVDA が正常に終了できなくなる」ことを報告しました。

http://community.nvda-project.org/ticket/2909#comment:9

2013-05-30 10:34 更新者: nishimoto
コメント

本件の影響で NVDA が正常に終了できなくなる問題について、下記の回避策があることを見つけたので報告しました。

  • あらかじめ Windows 8 のコントロールパネルで日本語と英語の両方を有効にしておく
  • NVDA の終了ダイアログで Shift+Alt を押してキーボードを「英語」に戻し、それから「はい(Y)」を押す

また、プロセス終了の問題は Windows 8 と NVDA 本家版 2012.2 および 2012.3.1 でも起きることを確認しました。

http://community.nvda-project.org/ticket/3244#comment:4

2013-06-21 11:33 更新者: nishimoto
  • 解決法なし から 修正済み に更新されました
  • 状況オープン から 完了 に更新されました
  • チケット完了時刻2013-06-21 11:33 に更新されました
コメント

残った不具合について新しいチケットを作ったので、このチケットはクローズします。

http://sourceforge.jp/ticket/browse.php?group_id=4221&tid=31592

なお、一つ上のコメントで、間違えて本家チケット 3244 へのリンクを張ってしまいましたが、本件に関する本家チケットは 2909 です。

添付ファイルリスト

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

編集

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