NVDA日本語チーム nvdajp における作業。
since 2012-07-15
NVDAユーザ会広島 における議論。
日本語に依存する部分は (2)(3)(4) の部分。(1) で除外した部分は liblouis に投げるか、同じような処理をする。
(2) の処理は libopenjtalk 音声合成エンジンと辞書を共通化する。
なぜ liblouis で日本語点訳が難しいか。。
2012.2jp-beta1 までは Python コンソールで以下のような実験ができる
from nvdajptext import * print Wakach.Mecab_wakach(u"形態素解析")
2012.2jp-beta2 以降では以下のとおり(予定):
from synthDrivers.jtalk import * print Wakach.Mecab_wakach(u"形態素解析")
since 2010-12-30
nvdajp を点字ディスプレイに対応させる作業。
@hoozukiyama さんの報告に基づくメモ。
KGS の DirectBM.dll を使用している。
成果 1.点字変換辞書の作成(カナ、数符、アルファベット大文字、アルファベット小文字) 2.数符、外字符、外字符内大文字と小文字の状態遷移の処理実装 3.ピンディスプレイキー入力コールバック処理への機能追加(ファンクションキー、タッチカーソル、矢印、6点字などの入力) 4.ピンディスプレイへの文字列パターン出力処理の実装(全角文字列→出力パターン) 5.上記4点の機能を実験レベルでNVDA実装 課題 1.半角文字の処理。 2.漢字、平仮名を含む文字列を分かちされたカタカナ文字列に変換。(mecabの使用を検討) 3.Windows側のUI通知のピンディスプレイ出力処理。 3.ピンディスプレイ側の入力通知をWindows側の処理に反映(sendkeyの発行) 4.初期化、終了処理の実装 5.ユーザーインターフェイスの作成
since 2011-06-13
Wakach.py の Mecab_split
要検討事項
mecab 処理のリソース重複を避けてメモリを節約する必要も?
since 2011-07-08
下記のような nvdajp_dummy.py を作ってみた。
import braille import ui import queueHandler from logHandler import log from ctypes import * from ctypes.wintypes import * class BrailleDisplayDriver(braille.BrailleDisplayDriver): """ nvdajp dummy braille in NVDA. """ name = "nvdajp_dummy" description = _(u"nvdajp dummy braille") @classmethod def check(cls): return True def __init__(self): log.info("initializing nvdajp_dummy_braille") super(BrailleDisplayDriver, self).__init__() def terminate(self): log.info("terminating nvdajp_dummy_braille") super(BrailleDisplayDriver, self).terminate() def _get_numCells(self): log.info("_get_numCells") return 40 def display(self, cells): log.info("display %d" % len(cells)) s = " ".join("%d" % cell for cell in cells) log.info(s)
下記のようなログが得られることを確認した。
INFO - brailleDisplayDrivers.nvdajp_dummy.BrailleDisplayDriver.display (11:24:34): display 40 INFO - brailleDisplayDrivers.nvdajp_dummy.BrailleDisplayDriver.display (11:24:34): 93 103 89 65 4 115 45 18 52 17 25 4 4 115 45 18 52 3 52 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
brltty と BrlAPI : http://brl.thefreecat.org/
nvda ページにて本家の実装の調査。
チケット1863で点字ディスプレイのドライバが本家にマージされる過程がよくわかる