[macvoiceover] Re: Scripting

  • From: Bryan Smart <bryansmart@xxxxxxxxxxxxxx>
  • To: "macvoiceover@xxxxxxxxxxxxx" <macvoiceover@xxxxxxxxxxxxx>
  • Date: Tue, 10 Nov 2009 12:51:37 -0500

Hey, great, you know something on this subject. Since I can't find hardly 
anyone talking about the details of this on any forum, I'd really appreciate 
hearing your informed opinion, not to mention any technical details that you 
can provide.

I'm particularly interested in how using AppleScript to script VoiceOver is 
very restrictive. Since AppleScripts are able to raise and receive events, they 
should be able to respond to UI changes signaled by VO events, query UI states 
through raising VO events (that is, if there isn't a more direct way through a 
lower level object framework for obtaining UI status), and raise combinations 
of VO events in order to behave as macros. Further, since they can raise events 
on any scriptable application, they should be able to provide access to app 
features that are available through scripting, but which might not be available 
through the portions of the app's UI that VO can see.

To me, this seems to be almost identical to the model that has worked out so 
well for Window Eyes. Window Eyes uses the Microsoft script host as an engine 
to run scripts, and the scripts access all Window eyes features through an 
application object. It looks to me that, on the Mac, the AppleScript 
interpreter is the script host and VoiceOver is operated just how WE scripts 
operate WE through the app object. This is very different from the natively 
hosted scripting engine approach of Jaws, for example. This leads me to believe 
that the AppleScript method on Mac should be just as flexible.

Looking forward to any details that you can provide.

Bryan




-----Original Message-----
From: macvoiceover-bounce@xxxxxxxxxxxxx 
[mailto:macvoiceover-bounce@xxxxxxxxxxxxx] On Behalf Of David Poehlman
Sent: Tuesday, November 10, 2009 12:30 PM
To: macvoiceover@xxxxxxxxxxxxx
Subject: [macvoiceover] Re: Scripting

apple script do carry out vo instructions is far different than vo scripting 
and is fairly restrictive.

On Nov 10, 2009, at 12:21 PM, Bryan Smart wrote:

Sure there is. You use AppleScript to control VoiceOver, therefore you're 
scripting VoiceOver. I very clearly understand that VO does not contain its own 
scripting engine.

Bryan

-----Original Message-----
From: macvoiceover-bounce@xxxxxxxxxxxxx 
[mailto:macvoiceover-bounce@xxxxxxxxxxxxx] On Behalf Of David Poehlman
Sent: Tuesday, November 10, 2009 12:08 PM
To: macvoiceover@xxxxxxxxxxxxx
Subject: [macvoiceover] Re: Scripting

there is no such thing as vo scripting.

On Nov 10, 2009, at 11:44 AM, Bryan Smart wrote:

I'm trying to get started with VO scripting, but information is very thin. My 
short-term goal while learning VO scripting is to speed up operations in Garage 
Band by making macros for lengthy VO procedures and directly controlling Garage 
Band from script when VO UI processes can't accomplish a task.

For starters, I tried to track down the pre-installed VO scripts to use for 
study, but can't find them on the hard drive. I can see the Time of Day script 
listed in the Keyboard Commander table of the VO Utility, but it doesn't show 
the path, and selecting to add a new script starts out in my home folder, so 
this way of tracking them down was a bust. I checked the VO manual, but it 
doesn't say anything about where default scripts are or should be stored.

Since I couldn't study any examples, I tried to just have a look at what VO 
commands are available from scripts. To do that, I went to the AppleScript 
editor and attempted to use Open Dictionary from the File menu to have a look 
at what methods/properties are exposed from VO. When I open VO's dictionary, 
though, the window seems mostly blank. I see a search box, a few unlabeled 
check boxes, and some dimmed unlabeled buttons. Is this part of script editor 
broken? Perhaps I'm doing something incorrectly?

Finally, I tried Googling for VO scripting info or examples, but came up dry. 
It doesn't seem like many people are experimenting with this VO feature yet.

It has been over 10 years since I last did anything with AppleScript, and that 
was on OS9. I catch on to new languages quickly, but it just seems that there 
isn't much available for study as relates to VO scripting. Can anyone assist 
with a link to some info?

Bryan
> 
> Click on the link below to go to our homepage.
> http://www.icanworkthisthing.com
> 
> Manage your subscription by using the web interface on the link below.
> //www.freelists.org/list/macvoiceover
> 
> Users can subscribe to this list by sending email to 
> macvoiceover-request@xxxxxxxxxxxxx
> with 'subscribe' in the Subject field OR by logging into the Web 
> interface at //www.freelists.org/list/macvoiceover
> 


> 
> Click on the link below to go to our homepage.
> http://www.icanworkthisthing.com
> 
> Manage your subscription by using the web interface on the link below.
> //www.freelists.org/list/macvoiceover
> 
> Users can subscribe to this list by sending email to 
> macvoiceover-request@xxxxxxxxxxxxx
> with 'subscribe' in the Subject field OR by logging into the Web 
> interface at //www.freelists.org/list/macvoiceover
> 
> 
> Click on the link below to go to our homepage.
> http://www.icanworkthisthing.com
> 
> Manage your subscription by using the web interface on the link below.
> //www.freelists.org/list/macvoiceover
> 
> Users can subscribe to this list by sending email to 
> macvoiceover-request@xxxxxxxxxxxxx
> with 'subscribe' in the Subject field OR by logging into the Web 
> interface at //www.freelists.org/list/macvoiceover
> 


>
> Click on the link below to go to our homepage.
> http://www.icanworkthisthing.com
>
> Manage your subscription by using the web interface on the link below.
> //www.freelists.org/list/macvoiceover
>
> Users can subscribe to this list by sending email to  
> macvoiceover-request@xxxxxxxxxxxxx
> with 'subscribe' in the Subject field OR by logging into the Web 
> interface at //www.freelists.org/list/macvoiceover
>
>
> Click on the link below to go to our homepage.
> http://www.icanworkthisthing.com
>
> Manage your subscription by using the web interface on the link below.
> //www.freelists.org/list/macvoiceover
>
> Users can subscribe to this list by sending email to
>  macvoiceover-request@xxxxxxxxxxxxx
> with 'subscribe' in the Subject field OR by logging into the Web
> interface at //www.freelists.org/list/macvoiceover
>

Other related posts: