秀丸リーダーについてNo.36148
さん 17/11/21 17:08
 
 こんにちは。
 こちらには初めて投稿するものです。
 よろしくお願いします。

 さて、最近秀丸エディタの利用を検討しています。
 ですが、私は視覚に障害があり、画面を目視で確認できないため、スクリーンリー
ダーを利用しており、秀丸リーダーの利用を検討しています。
 ただ、現在の秀丸リーダーは、私が使っているNVDAというスクリーンリーダーに対
応していないため、少し困っています。
 もし可能でしたら、NVDAに対応していただけないでしょうか。

 下記からは少し技術的な話題となりますが、ご了承ください。
 外部のソフトからNVDAに音声を喋らせたり、音声のパラメーターを変更したり、読
み上げ状態を取得するには、「nvdaControllerClient.dll」というDLLを利用する必
要があります。
 なお、このDLLは、DLLを利用するプログラム自身と一緒に配布する必要があり、PC
-Talkerや95ReaderのようにNVDAをインストールしたときに、Windowsフォルダにコ
ピーされたりするものではありません。
 上記のDLLの詳しいAPIリファレンスについては、下記ページをご覧いただければと
思います。

https://ja.osdn.net/projects/nvdajp/wiki/ControllerClient

 また、DLLのダウンロードは、上記ページの「nvdajp-client-140119a.zip」という
リンクから行うことができます。

 可能な限りで結構ですので、検討いただけると幸いです。

 以上、長文となり失礼しました。
 よろしくお願いいたします。

[ ]
RE:36148 秀丸リーダーについてNo.36149
秀まるお2 さん 17/11/21 17:52
 
 実は、秀丸メール用ではあるんですが、TkSpeech Version1.8っていうソフトウェ
アをうちのライブラリにアップロードしていただいてまして、それを使うと秀丸エデ
ィタでもうまく音声化されると書いてあります。

 それを使っていただく作戦を1回試してみてほしいです。

 (秀丸メールがインストールされてないとインストールできないのかもしれません
が、その場合、すみませんがダミーとして秀丸メールインストールしてほしい)

TkSpeechのURL:
http://hide.maruo.co.jp/lib/tkmacro/TkSpeech108.html

 ちなみにこのソフトウェアの作者さんは視覚障害者総合支援センターの研究者との
ことらしいです。

https://research-er.jp/researchers/view/785106

 もし上記のソフトウェアでダメそうでしたら、こちらでテストなどしてみたいと思
います。

[ ]
RE:36149 秀丸リーダーについてNo.36150
秀まるお2 さん 17/11/21 18:19
 
 自分のパソコンにTkSpeech108をインストールしようとしたら、インストール画面
の「次へ」が押せませんでした。

 タブキーを何回か押せば「次へ」ボタンが見えるようです。

 インストーラーがおかしいような気がしますが、とりあえずTabキーを押してなん
とかインストールしてみて欲しいです。

[ ]
RE:36150 秀丸リーダーについてNo.36151
さん 17/11/21 19:16
 
 こんにちは、お世話になります。

 そのソフトも存じており、しばらく使ったことがあるのですが、下記の点から秀丸
リーダーで実装していただけたらと考えています。

 1.カスタマイズが難しい
 提示していただいたソフト内のマクロを少しカスタマイズしようとしたんですが、
マクロがかなり長い点やカスタマイズをすると、動作がおかしくなるかなどの点が心
配です。
 その点、秀丸リーダーであれば、DDE経由で自分が読み上げさせたい文字を読み上
げさせることができます。
 2.要望やバグ報告、質問等がしやすい
 以前は提示していただいたソフトは、御園さんのホームページで公開されており、
そこから連絡を取ることも可能でしたが、現在、ホームページは閉鎖されており、ま
た個人的な連絡先を知らないため、要望やバグ報告、質問等ができない状況になって
います。
 ですが、秀丸リーダーに対応していただければ、こちらで要望やバグ報告、質問等
もできると思い、NVDA対応を要望した次第です。

 以上、よろしくお願いいたします。

[ ]
RE:36151 秀丸リーダーについてNo.36152
秀まるお2 さん 17/11/22 10:37
 
 秀丸リーダーで対応してダメなことも無いので対応しようかなぁと思って、とりあ
えずAPIのドキュメントやヘッダファイル、nvdaControllerClient32.dll ってファイ
ルをダウンロードしようとしたんですが、そもそもそこでつまずいてしまいました。

 GitHubとかいう仕組みが全然分かってないせいなんだと思いますが・・・

 とりあえず、

    https://github.com/nvaccess/nvda#NVDAAPIforexternalapplicationsNVDAControllerClient

 の所にある「Clone or download」ってボタンを押して「nvda-master.zip」ってフ
ァイルをダウンロード&解凍したんですが、そこにはヘッダファイル(nvdaControll
er.hファイル)もdllも入ってないようでした。

 https://ja.osdn.net/projects/nvdajp/wiki/ControllerClient

 には、「クライアントDLL nvdajp-client-140119a.zip は上記チケットの添付ファ
イルをご利用ください」とあるのですが、そもそも「チケット」って何なのやらと思
いつつ、「チケット32444...」の所をクリックしても、それらしいダウンロード用リ
ンクが無さそうな気がするし・・・。

 ダウンロードできるそものもずばりのURL教えていただけないでしょうか。

 あと、そもそも的にNVDAのテスト環境を作らないといけないので、それもぼちぼち
やってみます。

[ ]
RE:36152 秀丸リーダーについてNo.36153
秀まるお2 さん 17/11/22 11:30
 
 nvdajp-client-140119a.zipはダウンロードできました。失礼しました。

https://ja.osdn.net/projects/nvdajp/ticket/32444

 の中に

   [+]添付ファイルリスト

 ってあって、そこの[+]部分をクリックしたらリンクが見えました。

 なんともややこしい。

[ ]
RE:36152 秀丸リーダーについてNo.36154
K'zawa さん 17/11/22 11:50
 
秀まるおさん、こんにちは。
K'zawaです。

本体は

NVDA日本語版 ダウンロードと説明
https://www.nvda.jp/

からダウンロードできます。こちらはすぐわかると思います。

DLLは、

チケット #32444: スリープモードAPI - スクリーンリーダーNVDA日本語版 - OSDN
https://ja.osdn.net/projects/nvdajp/ticket/32444

からダウンロードできます。

直リンク
https://ja.osdn.net/ticket/download.php?group_id=4221&tid=32444&file_id=5115

[ ]
RE:36152 秀丸リーダーについてNo.36155
K'zawa さん 17/11/22 11:59
 
秀まるおさん、こんにちは。
K'zawaです。

書き忘れましたが、NVDA本体はポータブルインストールしたほうがいいと思いますよ。
ログイン画面とか読んでも今回の件には関係ないので。
起動はショートカットアイコン作って行い、終了は無変換+QまたはInsert+Qでできま
す。

[ ]
RE:36155 秀丸リーダーについてNo.36157
秀まるお2 さん 17/11/22 13:26
 
 情報どうもです。API用のdllとヘッダファイルはおかげさまでダウンロードできま
した。

 NVDAもテスト用のマシンにインストールして、うまく動いてるみたいです。

 あと分からないのが・・・

   nvdaController_brailleMessage

 とかのAPIの説明というか、APIのドキュメントが無いような・・・。サンプルをビ
ルドして実際の動作を確認すればいいのだろうと思いますけども。

 とりあえず、音声化させるだけなら極めて簡単なことだけ分かったので、秀丸リー
ダーにオプション追加などして直していってみます。

[ ]
RE:36157 秀丸リーダーについてNo.36159
さん 17/11/22 15:13
 
 こんにちは、お世話になります。

 こちらの説明が不十分で、大変ご迷惑をおかけしたようで、申し訳ありません。

 さて、APIリファレンスについてですが、現在のところ、詳しく書かれたページが
ない状況ですので、簡単に説明させていただきます。
 上記の理由により、この投稿は長文となることをお許しください。
 興味のない方は読み飛ばしていただければと思います。

 1.NVDAの起動状態を取得
 関数名:nvdaController_testIfRunning
 引数:なし
 戻り値:NVDAが起動している場合は0、起動していない場合は0以外の値が返却され
ます。

 2.NVDAで文字列を喋らせる
 関数名:nvdaController_speakText
 引数:しゃべらせたい文字列(Unicodeで渡す必要があります)
 戻り値:なし

 3.点字ディスプレイにメッセージを出力
 関数名:nvdaController_brailleMessage
 引数:しゃべらせたい文字列(Unicodeで渡す必要があります)
 戻り値:なし
 備考:渡された文字列がNVDA側で自動的に変換され、点字ディスプレイに表示され
ます。

 4.NVDAが読み上げ中かどうか調べる
 関数名:nvdaController_isSpeaking
 引数:なし
 戻り値:NVDAが読み上げ中の場合Trueが、何も発生していない場合はFalseが返却
されます。
 備考:NVDAで何か文字列を喋らせた後に、即この関数を呼び出すと、たまに読み上
げ中にもかかわらず、Falseが返却されることがあります。
 そのため、NVDAにメッセージを渡した後、すぐにこの関数を呼び出す場合は、呼び
出し前に100ms程度の時間を置くことを推奨します。

 5.NVDAで詳細読み
 関数名:nvdaController_speakSpelling
 引数:詳細読みさせたい文字列(Unicodeで渡す必要があります)
 戻り値:なし

 6.NVDAの読み上げを停止
 関数名:nvdaController_cancelSpeech
 引数:なし
 戻り値:なし

 7.NVDAのピッチ(声の高さ)を取得
 関数名:nvdaController_getPitch
 引数:なし
 戻り値:NVDAのピッチが数値で返却されます。

 8.NVDAのピッチ(声の高さ)を変更
 関数名:nvdaController_setPitch
 引数:指定したいピッチを数値で指定します。
 戻り値:なし
 備考:ピッチは0から100までの範囲で指定できますが、範囲を超えていてもエラー
にはなりません。
 ただし、ピッチは元のままですので、ご注意ください。

 9.NVDAの読み上げ速度を取得
 関数名:nvdaController_getRate
 引数:なし
 戻り値:NVDAの読み上げ速度が数値で返却されます。

 10.NVDAの読み上げ速度を変更
 関数名:nvdaController_setRate
 引数:指定したい読み上げ速度を数値で指定します。
 戻り値:なし
 備考:読み上げ速度は0から100までの範囲で指定できますが、範囲を超えていても
エラーにはなりません。
 ただし、読み上げ速度は元のままですので、ご注意ください。

 APIは以上となります。
 なお、何かわからない点等があれば、ご連絡いただければ、お応え可能なものであ
れば、お応えします。
 また、動作テスト等が必要であれば、協力しますので、その際もご連絡いただけれ
ばと思います。

 以上、かなりの長文となり、失礼しました。
 それでは、よろしくお願いいたします。

[ ]
RE:36159 秀丸リーダーについてNo.36162
秀まるお2 さん 17/11/22 17:46
 
 詳しい説明ありがとうございます。おかげさまで簡単に対応できました。

 とりあえず、PC-Talker/95Readerでのなめらか読み/詳細読み相当の2種類の音声
化が出来るということで、それだけ対応して、Version 3.00ってことで、ファイルの
アップロードだけしてみました。

 テストお願いできますでしょうか。

  http://hide.maruo.co.jp/software/bin3/hmread300_signed.exe

 設定でNVDAを選択しないとダメですけども。(自動設定だとダメ)

 ならめか読みの方がnvdaController_speakText()呼び出しで、詳細読みの方が、nv
daController_speakSpellingの方を呼び出してます。

 僕の所で、とりあえずHmRead1.mac、HmRead2.macをキー割り当てして実行した限り
はうまくいってるようなんですが、カーソル移動した時の読み上げがうまくいかない
です。というか、2重に音声化されてしまいます。

 というか、そもそも秀丸リーダーをインストールしてなくても勝手に読み上げてく
れてしまいます。なので、秀丸リーダーがインストールされてると2重になります。

 NVDAの設定で、秀丸エディタ上での自動での音声化をOFFにすることが出来るのや
ら?。

[ ]
RE:36162 秀丸リーダーについてNo.36163
さん 17/11/22 18:17
 
 こんにちは、お世話になります。

 おおおおおおお、早速対応していただきありがとうございます!!
 NVDAで秀丸を読んでしまう問題は、下記のアドオンをインストールすることで解決
します。
 ダウンロードしたら、NVDAを起動した状態で、ファイルを実行すると、アドオンの
インストールが始まりますので、指示に従ってインストールしてください。

https://riku22.net/hidemaru.nvda-addon

 それから、1つバグ報告です。
 秀丸や秀丸リーダー側で対応可能かわからないんですが、Ctrl+左右矢印で単語を
移動したときの読み上げがおかしいですね。
 例えば、簡単な例でいうと、

This is test.

という文章があったとします。
 それで、カーソルを先頭の「T」に合わせた状態で、Ctrl+右矢印を押すと、正常な
場合は、「i」と読み上げられるはずですが、「T」と読み上げされています。
 もし可能でしたら、修正いただけないでしょうか。

 よろしくお願いいたします。

[ ]
RE:36163 秀丸リーダーについてNo.36164
さん 17/11/22 18:22
 
 すみません。
 連投になりますが、1つ要望をさせてください。

 現在のところ、HomeやEndを押したときは、1行読みをしていますが、これを1文字
読みにさせることはできますでしょうか。

 よろしくお願いいたします。

[ ]
RE:36164 秀丸リーダーについてNo.36165
秀まるお2 さん 17/11/22 23:33
 
 Home/Endキーでの読み上げは変更できると思いますが、オプション追加が必要なの
で、そうすると、現状の設定ダイアログを複数ページにするか何か工夫が必要かもし
れません。その辺トライしてみます。

 あと、Ctrl+左右矢印キーの件もぼちぼちテストしてみます。(アドインをインス
トールして)

[ ]
RE:36165 _RE_36164_秀丸リーダーについてNo.36168
さん 17/11/24 12:52
 
こんにちは、お世話になります。

ありがとうございます。
修正版を楽しみにしております。

よろしくお願いいたします。


[ ]
RE:36168 _RE_36164_秀丸リーダーについてNo.36169
秀まるお2 さん 17/11/24 15:30
 
 Ctrl+カーソル移動キーで発音位置がおかしいバグ修正と、あと、Home/Endキーで
の音声化について、1行音声化するのか1文字音声化するのかのオプション追加をし
て、今アップロードしました。

  秀丸リーダー Version 3.01:
  http://hide.maruo.co.jp/software/bin3/hmread301_signed.exe

 これでどうでしょうか。

 NVDA用の秀丸エディタの2重音声化を止めるアドインは、たぶん必須の物になると
思うので、付属の説明ファイルにリンク先など記述させていただくか、または添付さ
せていただくかの必要があるような気がします。その辺も検討お願いしたいです。

[ ]
RE:36169 秀丸リーダーについてNo.36170
さん 17/11/24 18:25
 
 こんにちは、お世話になります。

 早速の修正ありがとうございます。
 正常に動作することを確認しました。
 それで、画面表示関連で2つほど。

 1.インストーラーの誤字(?)
 インストーラーのショートカット作成先選択画面の「デスクトップにショットカッ
トを作成」は、「デスクトップにショートカットを作成」ではないでしょうか。
 2.秀丸リーダーの設定画面について
 「Home/Endキーでの音声化」の部分がフレームになっていないため、一瞬、なんの
設定かわかりませんでした。
 ここもBackspace/Deleteキーの音声化と同様にフレーム化するとよいと思います。

 さて、NVDAのアドオンの件ですが、添付していただいても結構です。

 それと、こちらで書くのはちょっと違うかもしれないんですが、秀丸メールの音声
化可能なバージョンもNVDAに対応していただけないでしょうか。
 こちらについては、まだインストールしていないため、どの程度読み上げられるか
今のところ分かっていませんが、検討していただけると幸いです。

 以上、よろしくお願いいたします。

[ ]
RE:36170 秀丸リーダーについてNo.36171
さん 17/11/27 07:47
 
 お世話になります。

 すみません、1つ質問です。
 Delキーで文字が削除された際に、音声ファイルを鳴らしたいと思い、「HmRead1.m
ac」に下記のように記述したんですが、少し問題が発生しました。
 とりあえず、マクロのサンプルです。

----------

 if( #code != eof && iskeydown(0x2E) ){
  play currentmacrodirectory + "\\sounds\\delete.wav";
 }

----------

 これを実行すると、ほぼほぼ思った通りになるんですが、Deleteキーを押したとき
は、消された後の文字にしているためか、EOFの1文字前の文字を消すと、何も音声が
鳴らないという事象が発生します。
 ちなみに、Backspace/Deleteキーの音声化の設定で、消される文字を音声化するよ
うに設定したところ、上記の事象は発生しませんが、できればDelキーを押したとき
は、消された後の文字を音声化したいため、何か良い方法はないでしょうか。


 以上、少しわかりにくい説明となってしまったかもしれませんが、よろしくお願い
いたします。

[ ]
RE:36171 秀丸リーダーについてNo.36172
秀まるお2 さん 17/11/27 09:12
 
 とりあえず、今の段階でできる範囲でコメントさせていただきます。

>  1.インストーラーの誤字(?)

 誤字のご指摘ありがとうございます。修正してまたアップロードさせていただきま
す。

>  2.秀丸リーダーの設定画面について

 設定画面のスペース的に苦しいのでこういうスタイルにしたのですが、こういうス
タイルにすることは、少なくとも僕の場合は多々あります。これをうまく音声化しな
いということでしたら、それはNVDAさんの方でなんとかして欲しいというか、そっち
の問題じゃないかと思います。

 とりあえず、うまく音声化しないのをNVDAさんがすぐに直してくれることは無いで
しょうから、ここに限っては秀丸リーダーの方を直そうと思います。ただ、秀丸エデ
ィタや秀丸メールその他でこういうスタイルが多々あるので、それについて指摘され
ても直すのは難しいので、その点ご了承ください。


>  さて、NVDAのアドオンの件ですが、添付していただいても結構です。

 添付するとしたら、とりあえずcopyright表示とか、作者の連絡先とかを書かない
いけないので、その辺、適当に陸さんのホームページを見て書いてみようと思います。
何かこうして欲しい的な内容があったら連絡いただくなり、または僕がアップロード
した内容を見て修正点を指摘していただければと思います。

>  それと、こちらで書くのはちょっと違うかもしれないんですが、秀丸メールの音
>声化可能なバージョンもNVDAに対応していただけないでしょうか。

 こちらでちょっと試した限り、うまく音声化してくれないです。例えばメール一覧
でカーソル上下移動キーを押して他のメールを選択しても全然音声化しないです。

 これを僕の力でどうにかすることは出来ないと思います。NVDAさんがなんとかして
くれるか、またはそれ用のプラグインとかが必要なんじゃないかと思います。

 秀丸メールの音声化バージョンがやってることは、とにかく「オーナードロー」と
いうか、リストボックスやメニューとかの内容を自前で描画しないで、Windowsの標
準的な文字列データを持たせるやり方を徹底するって方式にしてるだけです。実際に
音を鳴らす処理はしてないし、それをアプリケーションソフト側でやるのは無理があ
ります。

 NVDAさんに言ってなんとかしてもらうしか無いと思います。

>  Delキーで文字が削除された際に、音声ファイルを鳴らしたいと思い、「HmRead1.
>mac」に下記のように記述したんですが、少し問題が発生しました。

 DeleteキーやBackspaceキーの音声化を「後の文字」とした場合、キーを押した瞬
間じゃなくて、離したタイミングでマクロ実行されます。なので、

    iskeydown(0x2E)

 は必ずfalseになってしまいます。

 とりあえずの修正として、離したタイミングにマクロ実行するんじゃなくて、押し
て少し遅延してからマクロ実行するようにしてみます。それで直ると思いますが・・・

 キーを押してすぐに離した場合は、やはりiskeydownはfalseになるかもしれません。
それは防ぎようが無いです。

 他の回避策として、一番最後に押したキーのコードを取得する何らかの仕組みを用
意する手があります。

    $s = dderequest("LastKeyCode");
    #code = val($s);

 みたいな形で一番最後に押したキーのキーコード(仮想キーコード、VK_xxxxの
値)を取得できるようにしたらいいかなぁと思うので、それの対応をトライしてみま
す。

 また近いうちに次のバージョンをアップロードさせていただきます。

[ ]
RE:36172 秀丸リーダーについてNo.36173
さん 17/11/27 09:34
 
 こんにちは、お世話になります。

 1.と2.の件は、了解です。

>>  さて、NVDAのアドオンの件ですが、添付していただいても結構です。
>
> 添付するとしたら、とりあえずcopyright表示とか、作者の連絡先とかを書かない
>いけないので、その辺、適当に陸さんのホームページを見て書いてみようと思いま
>す。何かこうして欲しい的な内容があったら連絡いただくなり、または僕がアップ
>ロードした内容を見て修正点を指摘していただければと思います。

 はい、とりあえず、アップロードされたファイルを見てから、お返事したいと思い
ます。

>>  それと、こちらで書くのはちょっと違うかもしれないんですが、秀丸メールの
>音声化可能なバージョンもNVDAに対応していただけないでしょうか。
>
> こちらでちょっと試した限り、うまく音声化してくれないです。例えばメール一
>覧でカーソル上下移動キーを押して他のメールを選択しても全然音声化しないです。
> これを僕の力でどうにかすることは出来ないと思います。NVDAさんがなんとかし
>てくれるか、またはそれ用のプラグインとかが必要なんじゃないかと思います。
> 秀丸メールの音声化バージョンがやってることは、とにかく「オーナードロー」
>というか、リストボックスやメニューとかの内容を自前で描画しないで、Windowsの
>標準的な文字列データを持たせるやり方を徹底するって方式にしてるだけです。実
>際に音を鳴らす処理はしてないし、それをアプリケーションソフト側でやるのは無
>理があります。
> NVDAさんに言ってなんとかしてもらうしか無いと思います。

 やはりそうですよねえ。
 とりあえず、リスト部分はTKSpeechに丸投げして、本文表示部分だけ秀丸リーダー
に任せようとして、

else if ( #pane == 2 ) goto EditView;

の部分をコメントアウトしたんですが、どうもちゃんと読み取れないようです。
 こちらでもう少し頑張ってみようと思います。

>>  Delキーで文字が削除された際に、音声ファイルを鳴らしたいと思い、「HmRead
>1.mac」に下記のように記述したんですが、少し問題が発生しました。
>
> DeleteキーやBackspaceキーの音声化を「後の文字」とした場合、キーを押した瞬
>間じゃなくて、離したタイミングでマクロ実行されます。なので、
>
>    iskeydown(0x2E)
>
> は必ずfalseになってしまいます。

 そうなんですね。
 デバッグでメッセージを表示させるなりすれば気づいたんでしょうが、全然気づき
ませんでした(苦笑)

> とりあえずの修正として、離したタイミングにマクロ実行するんじゃなくて、押
>して少し遅延してからマクロ実行するようにしてみます。それで直ると思います
>が・・・
> キーを押してすぐに離した場合は、やはりiskeydownはfalseになるかもしれませ
>ん。それは防ぎようが無いです。
> 他の回避策として、一番最後に押したキーのコードを取得する何らかの仕組みを
>用意する手があります。
>    $s = dderequest("LastKeyCode");
>    #code = val($s);
> みたいな形で一番最後に押したキーのキーコード(仮想キーコード、VK_xxxxの
>値)を取得できるようにしたらいいかなぁと思うので、それの対応をトライしてみ
>ます。

 最後に押されたキーを取得するほうが良いかもしれませんね。

 いろいろとありがとうございます。
 よろしくお願いいたします。

[ ]
RE:36173 秀丸リーダーについてNo.36174
秀まるお2 さん 17/11/27 14:07
 
 いろいろ直してまたアップロードしました。

http://hide.maruo.co.jp/software/bin3/hmread302_signed.exe

    ddeinitiate "HidemaruReader", "Read";
    $s = dderequest("LastKeyCode");

 ってな具合でキーコードも取得できます。マクロのカスタマイズに使えると思いま
す。

 よろしくお願いします。

[ ]
RE:36174 秀丸リーダーについてNo.36175
さん 17/11/27 23:22
 
 こんにちは、お世話になります。

 早速の修正ありがとうございます。
 一通り確認しました。

 それで、取扱説明書のテキストファイルを見たところ、NVDA用のアドオンが入って
いる旨の記述がありますが、p秀丸リーダーのインストール先にそれらしきファイル
が見つかりませんでした。
 もしかしたら、今回私がマクロの自動設定を行わない設定でインストールしたため
かもしれませんが、ご確認いただければと思います。
 なお、アドオンに関する情報は、あれで大丈夫です。

 それから、1つ質問です。
 Delキーが押された時に、テキストが選択状態だったかどうかを取得しようとしま
したが、うまくいきません。
 これは、何か対処法がありますでしょうか。

 以上、よろしくお願いいたします。

[ ]
RE:36175 秀丸リーダーについてNo.36178
さん 17/11/28 08:45
 
 こんにちは、お世話になります。

 すみません、もう1つ質問というか、お聞きしたいことがあります。
 マニュアルに

ddeexecute "+!あああ";

と記述するとピッチが変わると書いてありますが、どうもうまく機能していないよう
です。
 これって、まだ搭載されてないということなんでしょうか。
 また、もしこれから搭載するのであれば、ピッチを数値で指定できるようになると
助かります。

 以上、何度もすみませんが、よろしくお願いいたします。

[ ]
RE:36178 秀丸リーダーについてNo.36179
秀まるお2 さん 17/11/28 10:19
 
 まいどどうもです。

> 秀丸リーダーのインストール先にそれらしきファイルが見つかりませんでした。

 すみません。インストーラーの設定ファイルのミスで、うまくコピーされてません
でした。失礼しました。

 次また直します。

>  Delキーが押された時に、テキストが選択状態だったかどうかを取得しようとし
>ましたが、うまくいきません。

 音声化のタイミングが削除後になってる場合だと、Deleteキーを押された後の削除
の処理が終わった後にマクロ実行されるので、そのタイミングでは果たして何が削除
されたのか、知る手段が無いです。

 なんとかするとしたら・・・、削除後のマクロ起動とは別に、Deleteの処理の開始
前に、別のマクロ、例えばマクロ77がもし何か割り当ててあったらそれを起動すると
かって風にした上で、マクロ77に何かマクロを割り当てて、それで、例えば

    #selecting = selecting;
    openreg "CURRENTUSER", "Software\\Riku\\RikuMacro";
    writeregnum "Selecting", #selecting;
    closereg;

 みたいに選択してるかどうかの状態をレジストリかどうかに保存して、後で起動さ
れるHmRead1.macの方で、そこの値を見るなどしてなんとかしてもらう作戦はあるか
なぁと思います。

 とりあえず思いつくのはそういう作戦になりますが・・・そういう作戦で良ければ
対応してもいいです。

 それか、Deleteキーに対して何か別のマクロを割り当てておいて、そこで独自に処
理してもらうとか。(テストしてないので実際うまくいくかどかは分かりませんが)

> ddeexecute "+!あああ";
>
> と記述するとピッチが変わると書いてありますが、どうもうまく機能していないよう
> です。

 NVDAについては対応してないです。

 音程を変更するAPIはあるようですが、果たしてそのAPIの影響範囲がどこまでなの
か分からなくて、その辺、実際にテストして確認するのが面倒だったので対応してま
せんでした。

 一回調べてみて、対応できそうなら対応してみます。

[ ]
RE:36179 _RE_36178_秀丸リーダーについてNo.36181
さん 17/11/28 12:43
 
こんにちは、お世話になります。

デリートキーの件ですが、個人的にはバックスペースのような感じで、別のマクロに
なると助かります。

以上、よろしくお願いいたします。

[ ]
RE:36181 _RE_36178_秀丸リーダーについてNo.36182
秀まるお2 さん 17/11/28 13:57
 
 音の高さを変える件は、とりあえず「+」と「-」が指定されたら、+-30の分だけ高
さを変更するようにしてみました。

 標準の高さが50なら、+指定で80、-指定で20になります。

 それとは別に「+数字」で高さの値を個別指定できるようにしました。例えば

   ddeexecute "+10!あいう";

 だと、音の高さ指定=10(=かなり低い)で「あいう」を発音します。

 あと、Deleteキーの件ですが、現状のHmReadBack.macのようにするとしたら、それ
はそれで、果たしてどういうマクロにしたらいいのやらというのがありまし
て・・・・、とりあえずHmRead1.macと同じ内容で、HmReadDel.macってのを用意して
それをマクロ77に割り当てるようにしてみたらいいのかなぁと思いますが、ただ、そ
うしたとしても、削除後に実行する指定にしたら、どっちにしても範囲選択してるか
どうかはマクロからは知り得ることは不可なのは変わりありません。

 それでいいのやら?

 というか、もうこれで要望終わりって訳じゃなくて、これからどんどん出てくるの
やら?

[ ]
RE:36182 _RE_36181_秀丸リーダーについてNo.36183
さん 17/11/28 14:47
 
こんにちは、お世話になります。

ピッチの変更の件、ありがとうございます。

デリートキーの件は、やはり難しいですよねえ。
いろいろ検討していただいたのに申し訳ありませんが、とりあえず、現状のままで結
構です。

いろいろありがとうございました。
今後ともよろしくお願いいたします。

[ ]
RE:36183 秀丸リーダーについてNo.36184
K'zawa さん 17/11/28 16:57
 
陸さん、こんにちは。
K'zawaです。

>デリートキーの件は、やはり難しいですよねえ。

こんな方法もあります。

HmRead1.macの代わりに、

・削除&読み上げ
・右移動&読み上げ
・左移動&読み上げ
・(その他のコマンド)&読み上げ

なマクロを作り、マクロ78〜80以外に登録する。
(工夫しだいでマクロの数を減らすことは可能です)
秀丸エディタのキー割り当てで、それぞれのキーに上記マクロを割り当てる。
マクロ80には中身が空のマクロを登録する。

このようにすればコマンド別にマクロを分けることができ、さらにコマンドと読み上
げが同じマクロになることで、例えば削除マクロなら、削除前/後それぞれの情報収
集がひとつのマクロ内でできます。

なお、各キーに割り当てるマクロの冒頭には、

// 編集エリア以外のとき終了
if ( getfocus != 1 && event == 0 ) {
  seteventnotify 1;
  endmacro;
    }

を付けておいてください。編集エリア以外でマクロ実行されたときに通常のキー操作
にすり替えるため。

[ ]
RE:36183 _RE_36181_秀丸リーダーについてNo.36185
秀まるお2 さん 17/11/28 18:13
 
 とりあえず秀丸リーダーのVersion 3.03をアップロードしました。

http://hide.maruo.co.jp/software/bin3/hmread303_signed.exe

 NVDA用のアドインがインストールされないバグ修正と、あと、NVDAの場合でも「+/
-」の音程変更が効くようにしたのと、さらに「+数値」にて音程高さ指定できるよう
にしました。

 Deleteキーのカスタマイズその他については、K'zawaさんの話にある話(と同じか
どうか自信ないけど)の通り、そもそも的に秀丸エディタに備わってるマクロの自動
起動の機能を使う作戦で出来そうな気がしました。

 秀丸エディタ側にマクロ自動実行の機能があることをすっかり忘れていました。

[ ]
RE:36185 RE 秀丸リーダーについてNo.36187
K'zawa さん 17/11/28 20:20
 
秀まるおさん、こんにちは。
K'zawaです。

> Deleteキーのカスタマイズその他については、K'zawaさんの話にある話(と同じか
>どうか自信ないけど)の通り、そもそも的に秀丸エディタに備わってるマクロの自動
>起動の機能を使う作戦で出来そうな気がしました。

私の話とは違うと思います。
カーソル移動後タイマーと編集後タイマーで読み上げマクロを実行することはできま
す。
ただ、マクロはコマンドの後にしか実行されないので、削除前の様子などはわかりま
せん。
カーソル移動後タイマーは、カーソル移動できなかったとき、編集後タイマーは編集
できなかったときには反応しないので、その旨お知らせする機会がありません。
あと、秀丸メールとしくみが違うので、異なる対応しないといけないです。

[ ]
RE:36185 秀丸リーダーについてNo.36188
さん 17/11/28 20:34
 
 こんにちは、お世話になります。

 とりあえず、NVDAのアドオンが入っていない件と、ピッチがうまく変更されない件
の修正は確認しました。
 マクロの件は、もう少し時間がかかりそうなので、またご報告します。

 それで、1つ気づいたことがあります。
 コマンドプロンプトを管理者で起動して、そこから

C:\test.txt

というようにファイルを指定して秀丸エディタを開くと、読み上げがされないようで
す。
 また、秀丸リーダーを管理者で起動してみてはどうかと思い、管理者で起動した後、
同じく管理者でコマンドプロンプトを開き、上記のような操作をしてみたところ、今
度は正常に読み上げられました。
 ただ、こうすると、管理者権限で起動していない秀丸エディタや秀丸メールがうま
く読めなくなるようです。
 ということで、確認ですが、これは、Windowsの仕様上どうしようもないですよね?

 以上、よろしくお願いいたします。

[ ]
RE:36188 秀丸リーダーについてNo.36190
秀まるお2 さん 17/11/29 09:13
 
 管理者権限で起動されたアプリケーションソフトと管理者権限じゃない状態で起動
されたアプリケーションソフトとの間での各種の連携はいろいろ制限されてしまいま
して、例えばドラックアンドドロップが出来ないとかがあるんですが、DDE(Dynamic
 Data Exchange)も効かないんだと思います。

 秀丸リーダーは秀丸エディタとの間でのやりとりをDDEでやってるので、それが出
来ないとどうしようも無いです。あと、秀丸エディタ上でキー操作したのを監視して
マクロ自動実行させるのも、いわゆる「フック」って仕組みを使ってるんですが、こ
れも効かないです。

>  ということで、確認ですが、これは、Windowsの仕様上どうしようもないですよね?

 現状のDDE&フックを使う仕組みを変えない限りは仕方が無いと思います。

[ ]
RE:36190 秀丸リーダーについてNo.36192
さん 17/11/29 10:10
 
 こんにちは、お世話になります。

 了解しました。
 ありがとうございました。

[ ]
RE:36192 秀丸リーダーについてNo.36193
秀まるお2 さん 17/11/30 14:58
 
 報告ですが、一応Version 3.03で大丈夫そうなので、正式にうちのホームページに
公開とさせていただきました。

[ ]
RE:36193 秀丸リーダーについてNo.36194
さん 17/11/30 15:57
 
 こんにちは。

 個人的なわがままな要望にもかかわらず、いろいろ対応していただき、大変ありが
とうございました。

 今後とも何かあるかもしれませんが、その際はよろしくお願いいたします。

 それでは。

[ ]