私はこの Windows 音声認識 (WSRMacro) スクリプトを持っています。これは、複数の単語を 1 つの単語に合成します。
"Happy children"
-> "Happychildren"
しかし、特定の状況下でスクリプトのバグが発生し、問題の原因を推測する方法がわかりません。上記の例は機能しますが、次の例は機能しません。
"Happy children bake a cake"
上記のように単語を合成する代わりに、Alternates パネルに次のプロンプトが表示されます。
-> Alternates Panel (Say the number next to the item you want followed by OK):
(1) Replace that withhappychildrenbakeacake
(2) replace that withhappychildrenbakeacake
(3) replace that with no space happy no space
children no space bake no space a no space cake
上記の代替パネルの出力から、以下のスクリプトの特定のバグを推測できますか?
または、バグの性質についてより有用なフィードバックを得るためにスクリプトに追加できるものはありますか?
<command priority="5">
<listenFor>compound that</listenFor>
<emulateRecognition>select that</emulateRecognition>
<sendKeys>{250 WAIT}{{CTRL}}c{250 WAIT}</sendKeys>
<script language="VBScript">
<![CDATA[
that = Application.clipboardData.GetData("text")
Set regEx = New RegExp
regEx.Pattern = "[^\s\w,;:]"
If regEx.Test(that) Then
Application.SetTextFeedback("Try again without any punctuation selected")
Else
regEx.Pattern = "(\s) *(\S)"
regEx.Global = True
that = regEx.Replace(" " & that, "$1no space $2")
On Error Resume Next
Application.EmulateRecognition("replace that with" & that)
If 0 <> Err.Number Then
Application.SetTextFeedback("Try again with only the digits selected")
End If
End If
]]>
</script>
</command>