sja@sjami.UUCP (Steve Ahlstrom) (08/17/89)
A while back there was discussion on a scripting language for Amiga. Now there is a very powerful script language called Scripit from Khalid Aldoseri. Khalid was looking for something to do and I mentioned the need for a scripting program. Here's a bit more info about it .... ____________________________________ You've been asking for a scripting language for the Amiga, eh? Well, you're in luck! Khalid Aldoseri has been working on just such a beast for quite a while now, and it's finally ready! It's called 'Scripit', and it can do almost anything you would normally do with the mouse and keyboard, but through a script. It can control any program by triggering its menus and gadgets (as well as clicking anywhere) just like ARexx does, but without the need for any special ports in the program being controlled. Scripit comes as several programs, a Script Player, a Recorder, a Lister a WB Interfacer, and a few more programming aids. It has an ARexx port and can be totally driven from ARexx if you need to do that. In essence, giving ARexx control over programs that don't have ARexx ports. Also, the WB Interfacer hooks into WorkBench and allows Scripit to drive WB as it likes: selecting icons, opening and closing drawers, loading programs, moving icons, snapshots .. etc. All via a text script! And you only have to specify icons by name, no need for coordinates! Plus, Scripit has extensive window/screen control commands allowing you to move, resize, close, front/back windows as well as move and front/back screens. And, a full set of console commands that provide means to open and close consoles, and virtually send any ANSI command to consoles in a format readily understandable by most human beings. Other commands include a set of graphics commands that allow you to draw on any program's window or type any text on it! Plus all sorts of strange and wonderful commands. :-) Scripit can be run either from CLI as a single task or as a resident module (for ARexx support) or from WorkBench via icons and a file requester. It also has an interactive mode that allows you to issue commands to Scripit 'live' via the keyboard. There is a lot more to Scripit than this, but it would take a few more pages to describe. (grin) Khalid Aldoseri. ____________________________________ That was info from the initial release version -- a third release is due within the next week or so. Here is a message that outlines some of the most current additions. ____________________________________ #: 62160 S13/Tool Box 17-Aug-89 06:03:40 Sb: #62059-#Scripit Fm: Khalid Aldoseri 75166,2531 To: Roy S. Laufer 72435,1025 (X) Roy, thanks. (grin) I have thought a lot about selecting screen or window by its address and decided against it. It is just way too dangerous. Anyway, I currently check whether the selected window is still in the system _everytime_ I do a command that affects it. I'll think about the address idea.. Thanks. (scratching head) Version 1.02 is moving along pretty fast.. (I should call it 1.10 :-) Among the new things added to it are: String and integer variables! (yeah, finally ;-) Those are free-form and do not need to be defined before they are used. (like Basic variables.) String variables start with $ .. e.g. $name and integer variables start with % .. e.g. %width. If fact, the variable %test and $test is the same variable, except it controls how it is treated, as an integer or as a string. i.e. you can set $test = "123" and read it as %test, which is 123. Makes sense?? Also, some more flow control commands like IF/ELSE/ENDIF and GOSUB/RETURN as well. I had a hard time implementing the IF commands but now they work very well (with unlimited recursiveness :-) Another important thing is a full-fledged expression parser which allows it to handle stuff like: %length = %arg1 * 3 if %length >= (%arg2 / 2) ^ (2 & 3) echo "Length too much.. readjusting" length = 640 else echo "Length is ok." endif It can handle the following operators.. + - / * ^ | & ( ). It's very similar to BASIC. Oh, and the %arg1 to %arg9 are arguments entered directly from the CLI when running: i.e. Scripit test arg1 arg2 .. etc. (and, of course, $arg1 to $arg9) It'll probably be another week before all those new facilities are working smoothly. (ironing out some problems right now) Khalid. (hey, the weekend's almost here!) ____________________________________ -- ---------------------------------------------------------------------- | // Ooooooommmmmmmm | | \X/ | | Steven Ahlstrom | | CompuServe: 76703,2006 ...boulder!tcr!sjami!sja | | or | | 76703.2006@compuserve.com | ----------------------------------------------------------------------