Re: Looking for Jaws script writing user group
Mario
Paul, to add to your reply, and not to discourage anyone from tackling
toggle quoted message
Show quoted text
the task of scripting for JAWS, but I would like to know your thoughts if you agree (or disagree, and why) with the below note I saved from someone who is knowledgeable about this stuff... "... requirements for scripting. The consensus was that screen reader scripting requires some knowledge of programming that goes beyond conditionals, such as variables, and in some cases, loops and functions. In the case of JAWS scripting, you don't need to know about what classes and objects are. To clarify a few things: * The language used to script JAWS is technically called an "imperative" language. That is, you would give JAWS things to do, and if things go well, it'll do what you've requested. * The language is also "procedural', meaning you'd write procedures (code contained in functions) to let JAWS perform certain things. Not to be confused with "functional programming" where you treat functions as variables and objects. * Most of the building blocks of scripting is contained in a few global files, the best known being default.jsb which defines default scripts for commands. A script for a program or for a certain situation builds on top of default commands and behaviors. There is a disadvantage to this model: if a script needs to modify default behaviors or commands and the modification must apply everywhere, one must modify default files. Imagine if multiple scripts are trying to do that, and the result is a mess of code blocks (groups of code) that can sometimes conflict. This may have been resolved to some extent in newer versions. * Scripting for JAWS requires that you know a few terms, namely handle, script, function and so on. A handle is an opaque reference to an object, such as a window, a thread, a file and so on. For script writers: a handle is a reference to an element on screen, and this is extensively used to query information about a control and manipulate it. A function is a code block that performs some things when it receives zero or more parameters or input data (sometimes called arguments), optionally returning something so other code blocks can use whatever it says. A script is a function that is attached to a command such as pressing certain keys on a keyboard, manipulating controls on a braille display, finger flicks on touchscreens and so on. * A script must be compiled before use. Going through scripts one line at a time without being compiled (called "interpreting") is slow; on the other hand, compiling source code to a format that the target machine understands (the computer or software that'll eventually run your code) results in superior performance (well, not really unless you tweak it to run better and faster, and no compiler (or for that matter, interpreters and script engines) can produce very optimized code at this time; doing so would require long compilation time, human input and so on)." -------- Original Message --------
From: Paul Martz [mailto:skewmatrix@...] Sent: Monday, Aug 14, 2017 10:45 AM EST To: main@jfw.groups.io Subject: Looking for Jaws script writing user group I looked into learning this a while back. I'm a former professional software developer, so I figured it would be a cinch. Unfortunately, I discovered that in order to do anything of substance with JSL (JAWS scripting language), you needed a degree of proficiency in programming Windows user interfaces - windows and classes and things like that. That is a proficiency I never developed. As a result, I never pursued JSL beyond the "tinkering" stage. Best of luck to you with this. -Paul . |
|