本家MLでの compound characters の改善の議論に便乗して、以下を報告しました。
Japanese language does not use compound characters, however, there are
some demands of enhancing character description.
This is one of the reason that we are still developing Japanese version of NVDA.
Latest beta of NVDAJP version 2012.3jp
Firstly, separation of word is not trvial in Japanese language.
Its implementation is not consistent. Some applications rely on
Windows API and some applications detect word breaking by themselves.
This is because Numpad-5 (word review) operations are not frequently
used for Japanese language.
Japanese users are not interested in difference of character-level
description and word-level description, so we basically use only one
description for every ideographic character.
The main issue is that character description of Japanese character
should be in different way depending on purposes.
For character review, 'spelling functionality' of TTS is currently
used, however, this function is not supported by popular Japanese TTS,
and also the pronunciations of single Japanese character by TTS is
So we need dictionary for 'spelling reading' of character, in addition
to character descriptions.
Japanese characters includes ideographic (Chinese, or Kanji)
characters and phonetic (syllabic, or Kana) characters.
Description for phonetic character is sometimes too verbose, for
example, as the announcements of input method candidates.
Description for phonetic character is not necessary to identify the
character, if the TTS can pronounce them correctly.
The category of characters should be distinguished and descriptions
should be selected properly.
Description of multiple characters, such as describing characters
within words, we sometimes use another reduction of explanations.
For example, if two ideographic characters of same category (such as
katakana) are included in input composition candidate,
'katakana a, katakana i, katakana u' should be shortened as 'katakana
a, i, u' to avoid verbosity.
Similarly, full shape character and half shape character should be announced.
To identify which character is phonetic and which character belongs to
certain category of characters, we need some algorithm based on
character code, or we should use some dictionary with attributes.