[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bep] Not Read Prompt charactar (was: Emacspeak14リリース!)



井上です。

昨夜ちょっとこの件について調べていて、分かったことがあります。

mew-summary-goto-folder を実行したときに呼ばれる補完のための関数は
read-from-minibuffer
です。
Emacspeak-13.0ではread-from-mminibufferに対するadviceが変更されています。
この変更は、この場合だけ一時的にpunctuationをallにして、ピリオド等も読む
ようにするものです。
このため、実際に読み上げられる文字列の前後に大量のスピーチサーバ用コマン
ドが送出されます。
おそらく、find-fileで用いているファイル名補完関数にはこの変更が入ってい
ないのではないでしょうか。

しかし、この変更を一時的に元に戻してみても、読まないことは変わりませんで
した。
# 関係がないとは言い切れないと思いますが。

もう一つ、Linux用のss1のデバッグログを使って、読む場合と読まない場合の
q{}及びdコマンドの送出状況を見てみました。
すると、同じ1回のdtk-speakなのに、実際にスピーチサーバに送られるコマン
ドの順序が違っています。
以下に、きちんと最初から読むfind-fileと、デフォルトの値しか読まない
dired-do-copyのプロンプトの様子をのせておきます。

結局、結論はまだでていません。
なああんか、Emacspeakのバグっぽい気もします。でも、すごく下のレイヤーを
触らないといけないのかも・・・

find-fileの場合
tts_set_punctuations all  
 tts_capitalize 0 
 tts_allcaps_beep 0 
 tts_split_caps  1 
 tts_set_speech_rate 330 
tts_set_character_scale 1.25 
 q { Find file:   }
d
d
tts_set_punctuations all  
 tts_capitalize 0 
 tts_allcaps_beep 0 
 tts_split_caps  1 
 tts_set_speech_rate 330 
tts_set_character_scale 1.25 
 d
tts_set_punctuations all  
 tts_capitalize 0 
 tts_allcaps_beep 0 
 tts_split_caps  1 
 tts_set_speech_rate 330 
tts_set_character_scale 1.25 
 q {~/ }
d
d

dired-do-copyの場合
tts_set_punctuations all  
 tts_capitalize 0 
 tts_allcaps_beep 0 
 tts_split_caps  1 
 tts_set_speech_rate 330 
tts_set_character_scale 1.25 
 s
q {Copy  left bracket -p right bracket  .BWap to: }
q {  /usr/home/inoue/ Default /usr/home/inoue/.BWap }
d
tts_set_punctuations all  
 tts_capitalize 0 
 tts_allcaps_beep 0 
 tts_split_caps  1 
 tts_set_speech_rate 330 
tts_set_character_scale 1.25 
 s
q {~/ }
d
d
tts_set_punctuations all  
 tts_capitalize 0 
 tts_allcaps_beep 0 
 tts_split_caps  1 
 tts_set_speech_rate 330 
tts_set_character_scale 1.25 
 d



-- 
                    Koichi Inoue, ARGV
                    E-Mail: inoue@...
                    ICQ UIN: 74900690