home *** CD-ROM | disk | FTP | other *** search
/ MACD 4 / MACD4.iso / cdity / WizKey.readme < prev    next >
Encoding:
Text File  |  1978-03-06  |  12.5 KB  |  316 lines

  1. ***************************************************************************
  2.  
  3.                                   WizKey
  4.  
  5.                    Copyright 1992 by Jörg von Frantzius
  6.  
  7. ***************************************************************************
  8.  
  9.         WizKey is SHAREWARE, see end of this document for details.
  10.  
  11. ***************************************************************************
  12.  
  13. AGREEMENT: By using WizKey you agree that the author will not be
  14. responsible for any damages resulting from malfunction or wrong
  15. documentation of WizKey.
  16.  
  17.  
  18. What is WizKey?
  19. ---------------
  20.  
  21. WizKey is just another commodity, intended to speed up working with windows
  22. and screens. This is accomplished by letting the user manipulate that stuff
  23. via the keyboard instead of having to:
  24. 1. grab your mouse (i.e. get your fingers off the keyboard...)
  25. 2. look for gadgets
  26. 3. aim at these gadgets and click
  27. 4. search for windows in huge window-piles etc.
  28.  
  29.  Anything you can do with system gadgets becomes accessible via keyboard
  30. using WizKey, plus some additional comfort (it's a commodity!).
  31.  A windowlist pops up on hotkey invocation, showing a list of all windows
  32. available on the active screen and letting you pick a window with the mouse
  33. or the keyboard (available on public screens only).
  34.  The hotkey definitions are free configurable (using any text editor),
  35. allowing you to extend WizKey's functionality to your special needs in
  36. combination with its complete AREXX port. Any Arexx-script may be mapped
  37. to any key combination using normal commodities conventions (those
  38. provided by commodities.library).
  39.  You may for example map a script to the hotkey "lcommand e", which will pop
  40. up your editor's window and screen and activate it, no matter on which
  41. screen you have been working on.
  42.  
  43.  
  44. Installation
  45. ------------
  46.  
  47. As it is a commodity, WizKey needs at least OS 2.0.
  48. Workbench: place WizKey into your Wbstartup drawer to start WizKey with
  49. every boot-up, or double-click on it everytime you want to use it.
  50. If you have installed WizKey in your WBstartup-drawer, I suggest you
  51. install its Preference file in your environment, so that WizKey will
  52. find it on boot-up:
  53. Double-click on "InstallPrefs" to copy WizKey's preference file to
  54. "env:WizKey/WizKey.prefs"
  55. and
  56. "envarc:WizKey/WizKey.prefs"
  57. The preference file contains some hotkey definitions that can't be used
  58. if WizKey can't find its preference file.
  59.  
  60. Shell: put something like "run >NIL: WizKey" into your user-startup script,
  61. if you really don't like the wbstartup drawer.
  62. See "The preference file" for some locations where WizKey can find its
  63. preference file.
  64. I'm not sure how much stack exactly WizKey needs, but 4096 is definitely
  65. not enough. I suggest about 10000 bytes, if you encounter problems (Wizkey
  66. should report that) raise the stack.
  67.  
  68.  
  69. The preference file + Arexx Port
  70. --------------------------------
  71.  
  72. WizKey's Arexx host port is named "WizKey" (case sensitive).
  73. WizKey tries to locate a preference file following the rules given in the
  74. user interface style guide, or at least my interpretation of these. Using
  75. tooltypes or commandline parameters you may specify a certain preference
  76. file to be used by WizKey, or a directory containing the file
  77. "WizKey.prefs".
  78.  
  79. Tooltype example:    "SETTINGS=Work:stuff/WizKey.prefs"
  80. commandline example: "run WizKey settings=Work:stuff/WizKey.prefs"
  81.  
  82. If no preference file is specified, WizKey will look for it in its program
  83. directory, if it can't be found there it will look for
  84. "ENV:WizKey/WizKey.prefs" in the last place. If no preference file at all
  85. could be found, WizKey uses its built-in defaults.
  86.  
  87. The preference file is a plain ascii file editable with any ascii-editor.
  88. It consists of hotkey-definitions using the template:
  89.  
  90. commandName = hokey definition
  91. e.g.: WindowList = lcommand help
  92.  
  93. The example given will open the windowlist by pressing the keys left amiga +
  94. help key (which is the built-in default for this command, btw).
  95. Hotkey definitions using plain command names like the example above will
  96. override WizKey's built-in hotkey defaults. Anything else WizKey does not 
  97. "know" will be considered being some kind of arexx script, i.e. string file 
  98. or physical file.
  99. If a line does not contain a "=" or no valid Input Description String, it
  100. will be completely ignored.
  101.  
  102. Small Arexx-Scripts may be put into the preference file using so-called
  103. string files, e.g.:
  104.  
  105. "ActivateWindow 'Shell'; WinToFront; ScrToFront" = lcommand s
  106.  
  107. Pressing left amiga+"s", this example  will activate the first window
  108. containing the string "Shell", pop it to front and pop its screen to front.
  109. Note that in string files you do not need to say "Address 'WizKey'" to have
  110. access to WizKey's arexx-commands, since these string files will be
  111. executed from within Wizkey. String files are always surrounded by
  112. quotemarks.
  113. As well a filename may be specified, which WizKey will try to execute as an
  114. Arexx-script., e.g:
  115.  
  116. rexx:doSomeThing.wiz = lalt s
  117.  
  118. WizKey will try to execute the file "rexx:doSomeThing.wiz" as an
  119. Arexx-Script. Filenames do not need to be surrounded by quotemarks.
  120.  
  121. WizKey's built-in hotkey defaults use some combinations of keys that are
  122. not accessible through input description strings, e.g. WinToFront's hotkey
  123. would be something like "lcommand lshift", which is not a valid input
  124. description string. I'm sorry about that, but commodities.library does not
  125. support that (yet?); if somebody needs to define hotkeys like that himself,
  126. I might add something non-standard to accomplish that.
  127.  
  128.  
  129. WizKey's commands in detail
  130. ---------------------------
  131.  
  132. Following is a list of WizKey's functions, including their arexx command
  133. names and default hotkeys.
  134.  
  135.  
  136. NAME: Quit,             lcommand x
  137.   WizKey removes itself from memory. You'll never use this one, anyway ;-)
  138.  
  139.  
  140. Windowlist stuff:
  141.  
  142. NAME: WindowList,       lcommand help
  143.   If the active screen is a public screen, a window is opened containing the
  144.   titles of every window on the screen. Click on a title to pop a window to
  145.   the front and activate it; the active window is marked with a "*". 
  146.   To activate the windowlist, which is not activated when opened, press the 
  147.   hotkey again, then cursor up and down to scroll through the windowlist.
  148.   The default preference file conains some little arexx-scripts enabling
  149.   you to pick windows with the keys lcommand + F1-F10 and "1"-"0", according 
  150.   to the numbers displayed in the windowlist.
  151.  
  152. NAME: ToggleTitles,     lcommand t
  153.   By default the windowlist displays the windows' titles, with this command
  154.   the display can be switched to the windows's screentitles and back. Very
  155.   useful for my texteditor :-)
  156.  
  157. NAME: CloseList,        lcommand delete
  158.   Closes the windowlist.
  159.  
  160.  
  161. Activation stuff + shuffling::
  162.  
  163. NAME: NextWin,          lcommand tab
  164.   Activates the next window in the windowlist, allowing you to activate any
  165.   window on screen.
  166.  
  167. NAME: PrecedingWin,     lcommand `  (the key above tab)
  168.   Activates the window preceding the active window in the windowlist.
  169.  
  170. NAME: TopWinToBottom,   lcommand up (i.e. cursor up)
  171.   The window on top of the active screen's window pile is dropped to the
  172.   bottom, the window now on top is activated.
  173.   Handy to shuffle through the window pile.
  174.  
  175. NAME: BottomWinToFront, lcommand down (i.e. cursor down)
  176.   The bottom window of the window pile is brought to the top and is
  177.   activated.
  178.  
  179. NAME: WinToFront,       lcommand lshift 
  180.   The active window is brought to the front.
  181.  
  182. NAME: WinToBack,        lcommand rshift
  183.   The active window is dropped to the bottom.
  184.  
  185. NAME: CloseWindow,      lcommand q
  186.   If the active window contains a close gadget, WizKey tries to close the
  187.   window (of course I don't just call Intuition's CloseWindow...)
  188.  
  189.  
  190. Window sizin'n'movin':
  191. (any change of size and position performed through WizKey may be taken back
  192. one time for each window, see "RestoreWindow")
  193.  
  194. NAME: ReduceWindow,     lcommand r
  195.   The active window is sized to its minimum.
  196.  
  197. NAME: FullSize,         lcommand f
  198.   The active window is sized to its maximum.
  199.  
  200. NAME: Zip,              lcommand z
  201.   Just like clicking on the active window's zip gadget.
  202.  
  203. NAME: MoveTop,          rcommand numpad 8
  204.       MoveBottom,       rcommand numpad 2
  205.       MoveRight,        rcommand numpad 6
  206.       MoveLeft,         rcommand numpad 4
  207.       MoveXCenter,      lcommand numpad 5
  208.       MoveYCenter,      rcommand numpad 5
  209.   The active window is moved to different positions relative to its
  210.   screen's borders..
  211.  
  212. NAME: ExpandTop,        lcommand numpad 8
  213.       ExpandBottom,     lcommand numpad 2
  214.       ExpandRight,      lcommand numpad 6
  215.       ExpandLeft,       lcommand numpad 4
  216.       ExpandLeftTop,    lcommand numpad 7
  217.       ExpandRightTop,   lcommand numpad 9
  218.       ExpandLeftBottom, lcommand numpad 1
  219.       ExpandRightBottom,lcommand numpad 3
  220.   The active window's borders are expanded to its screen's borders.
  221.  
  222. NAME: RestoreWindow,    lcommand backspace
  223.   The window's last change of position and/or size done with WizKey is
  224.   taken back. Even "RestoreWindow" itself can be taken back.
  225.  
  226.  
  227. Screen shuffling:
  228.  
  229. NAME: ScreenToBack,     rcommand up
  230.   The active screen is dropped behind any other screen, the screen's active
  231.   window is remembered. If WizKey can remember an active window on the next
  232.   screen, the window is activated, else the window covering the screen's
  233.   centre is activated or the screen's first window is activated.
  234.  
  235. NAME: BackScreenToFront,rcommand down
  236.   The bottom screen is popped to the front, activation of its window is the
  237.   same as in "ScreenToBack".
  238.  
  239.  
  240. Arexx only commands:
  241. Instead of programming some stub procedures and mapping them to default
  242. hotkeys, I implemented a few commands as Arexx only commands that accept
  243. some input. These commands can be found in the preference file, where they
  244. are used in some Arexx-stringfiles that are mapped to hotkeys.
  245.  
  246. NAME: ActivateWindow <windowtitle>
  247.   WizKey searches through every window on any screen for a window title
  248.   that contains (!) the title given as an argument, and activates it if it
  249.   finds one. "ActivateWindow 'rkben'" for example will activate the window
  250.   'Workbench', if there is one. The search is case sensitive.
  251.  
  252. NAME: GetWinTitle
  253.   Requiring "options result" before invocation, this function returns the 
  254.   title of the active window. Example (to type in the shell):
  255.   rx "address 'WizKey'; options results; GetWinTitle; say result"
  256.   this will print the name of the shell window in the shell.
  257.  
  258. NAME: PickWindow <number>
  259.   The window at the position <number> in the windowlist will be activated
  260.   and popped to the front. See preference file for examples.
  261.     
  262. NAME: ScrToFront <screentitle> (optional)
  263.   If provided with a screentitle argument, this command will pop the first
  264.   screen containing <screentitle> in its title to the front. Without any
  265.   argument, this will bring the active window's screen to front.
  266.  
  267. NAME: Shrink <numerator> <denominator> <boolX> <boolY>
  268.   The active window is shrinked (or maybe even grown) in size to a fraction
  269.   of its screen size. <boolX> and <boolY> determine whether this affects
  270.   only the window's width, only the window's height, or both. Example:
  271.   "Shrink 5 7 1 1" will size the active window both in width and height to 
  272.   5/7 of its screen's size.
  273.   "Shrink 1 2 0 1" will size the active window only in height to 1/2 (one
  274.   half) of its screen's height.
  275.   Oops, I just notice that "FullSize" is almost obsolete...
  276.  
  277.  
  278. Future Enhancements
  279. -------------------
  280.  
  281. WizKey will take care of the window's screen display clip (the position and
  282. size of the screen's visible portion - autoscroll screens) if it is told to
  283. do so. I didn't yet find the time to do that, I could work on WizKey for
  284. all of my life without one single public release ;-)
  285. If you have some ideas of new features or corrections then please tell me
  286. about it, maybe I will implement it.
  287. There might especially be some useful Arexx-commands I did not think of.
  288. Of course I'd appreciate any bug report very much, too, the more detailed 
  289. the better.
  290.  
  291.  
  292. SHAREWARE
  293. ---------
  294.  
  295. If you use WizKey frequently then feel free to send me a donation of 20$ or
  296. 20 DM. If you can't afford that much money or if you think that WizKey is
  297. worth less, feel free to send less money, that's ok.
  298. If you think that WizKey is worth much more than 20$, don't hesitate to send 
  299. much more than 20$. 
  300. If you do not like WizKey or do not have any computer at all, and you don't 
  301. know how to get rid off your money, this might be a reason to send some
  302. money to me, too, you are welcome.
  303. My address is:
  304.                      Jörg von Frantzius
  305.                      Neue Königstr 61
  306.                      5040 Brühl
  307.                      Germany
  308.  
  309. My bank account is:  BLZ 37010050, number 04199 53-507
  310.                      Postgiroamt Köln
  311.  
  312. Email:               NOVALIS@DARKNESS.ZER - this will change soon
  313.  
  314.  
  315.  
  316.