Short: Much better editing features in string gadgets Author: thor@math.tu-berlin.de (Thomas Richter) Uploader: thor math tu-berlin de Type: util/sys Version: 2.05 Requires: Os 2.05, optionally ViNCEd. Architecture: m68k-amigaos _____________________________________________________________________________ New in release 2.05: - The possible TAB expansions are now sorted alphabetically. - Note that in case you want both the functions "Insert Clipboard" and "Replace by Clipboard", the keyboard strings PASTE=RAmiga v and PASTE=RAmiga V must be defined *both* and must be defined to both the same ViNCEd function. New in release 2.04: - Due to some unfortune, an internal structure appeared on an odd address which caused a crash on 68000 and 68010 based systems. Nothing else changed. New in release 2.03: - Fixed a possible incompatibility of Amiga-V that could have resulted in inserting a string twice if the application edit hook is able to parse this key as well. New in release 2.02: - The NumLock function was erraneously bound to Alt-Ü on german keyboards. Never thrust a Data-Becker book, especially when looking up key-codes. New in release 2.01.1: - Included a sample preferences file for those people that don't read ReadMes. (-; New in release 2.01: - Almost a complete rewrite, fully configurable with ViNCEd style preferences (vnc.library required). - Includes now TAB expansions and much more editor commands. _____________________________________________________________________________ The following table shows the default configuration for string gadget hooks: Alt+Cursor keys: Move to beginning of next/previous word Alt+Ctrl+Cursor keys: Move to beginning of next/previous path component Shift+Cursor keys: Move to start/end of the contents. Alt+Cursor keys: ditto. Alt+Del: Clear the contents. Shift+Del: ditto. ALT+Backspace: Erase to the beginning of the word under the cursor Shift+Alt+Del: Erase text behind the cursor Shift+Alt+BS: Erase text before the cursor position Amiga+X: Cut the contents of the gadget to the clipboard Amiga+C: Copy the contents to the clipboard Amiga+V: Insert the clipboard contents into the gadget Shift+Amiga+V: Replace the string gadget contents by the clipboard Aniga+Q: Undo-operation Ctrl+Tab: TAB expansion Ctrl+Shift+Tab: TAB expansion backwards Commodore-key: Turn off the extended editing features temporary The configuration is, however, fully adjustable with the SetVNC program of the "ViNCEd" package, see below for details. The TAB expansion is a "cut down" version of the ViNCEd style expansion mechanism without a double-TAB requester, without the complete command path search and without a TAB expansion cache. Please note that string gadget does not come with a "natural" directory the TAB expansion should search in, hence the path to be expanded must be either absolute or relative to the boot volume, i.e. SYS: (This file is actually a part of the ViNCEd distribution. See util/shell/ViNCEd.lha for the complete archive). Installation: Copy to your C: drawer. StringSnip install To install the extended editing features StringSnip remove To remove it again. Additionally: Copy the demo prefs file below to ENVARC:StringSnip.prefs and add the line StringSnip PREFS ENV:StringSnip.prefs INSTALL _____________________________________________________________________________ Extended options, full synopsis: StringSnip INSTALL/S,REMOVE/S,PREFS/K,HELP/S INSTALL/S Installs the enhanced string edit hook or replaces a previously installed "StringSnip" copy. This is the default operation. REMOVE/S Remove the StringSnip hook. PREFS/K Specifies a file name where the preferences should be taken from. This is a text based ViNCEd-compatible preferences file. It should be created by the "SetVNC" program and should be placed somehwere in the ENV: drawer. THIS OPTION REQUIRES the vnc.library, i.e. ViNCEd must have been installed. HELP/S Prints a tiny overview about the command line options. _____________________________________________________________________________ The preferences file: It is recommended that you use the "SetVNC" program of the ViNCEd package to generate this file, as the vnc.library is required anyways to read it. As last resort, an ASCII editor is enough to edit this file, though. The file is a listing of options, followed by an "=" ("equals") sign, followed by the value you want to set the option to. This must be "on" or "off" for boolean options, a number for numerical or a key specification for the keyboard configuration options. Commands must be introduced by a semicolon. Here's a list of the options that are meaningfull to StringSnip. The lines below could be cut out and written directly to a file, for example to ENVARC:StringSnip.prefs. ___________cut here__________________________________________________________ WRAP=off ;whether the TAB expansion wraps around or not. ;TAB expansion settings: ;These are priorities how the list of found nodes are sorted and in ;which order they appear. The list of found matches can be cycled thru ;with the TAB expansion keys, as in ViNCEd. TAB_FILE_PRI=0 ;priority of non-executable non-script files TAB_EXEC_PRI=2 ;priority of executables. TAB_SCRIPT_PRI=1 ;priority of script files. TAB_INFO_PRI=-10 ;priority of icons TAB_DEVICE_PRI=-2 ;of devices TAB_ASSIGN_PRI=-2 ;of assigns (logical devices) TAB_VOLUME_PRI=-2 ;of volume names TAB_DIRECTORY_PRI=3 ;of directories TAB_FULLEXPAND=off ;should the first TAB expand the file completely? ;Keyboard: ;These are one or more qualifiers, i.e. ; Alt, Shift for either shift or alt key, RAmiga, LAmiga, RShift, LShift, ; RAlt, RAlt for the right/left modifier keys, "Num" if numlock is "on". ; The numlock is a special modifier that is toggled by an additional key ; to be set up here, it is completely unrelated to the "numeric keypad" ;and a key name, as "Left" "Right" for the cursor keys or ;a keyboard code, or an ASCII value enclosed in single quotes if the ;key should be matched on an ASCII string and not on a physical key. ;Details about this again in the ViNCEd guide. ; CURSOR_LEFT=Left CURSOR_RIGHT=Right ;guess what... HALF_SCREEN_LEFT=Shift Left ;moves one string gadget width HALF_SCREEN_RIGHT=Shift Right ;to the left/right (not used by default) TO_LEFT_BORDER=Ctrl Left TO_RIGHT_BORDER=Ctrl Right ;moves to the boundary PREV_WORD=Alt Left NEXT_WORD=Alt Right ;moves word-wise PREV_COMPONENT=Ctrl Alt Left NEXT_COMPONENT=Ctrl Alt Right ;moves path-component-wise CURSOR_LEFT=Num Num4 CURSOR_RIGHT=Num Num6 ;more than one definition is allowed! TO_LEFT_BORDER=Ctrl Left TO_RIGHT_BORDER=Ctrl Right SEND_INPUTS=Return ;completes the input INSERT_^J=Shift Alt Return ;inserts a Ctrl-J. TAB_FORWARDS=Tab TAB_BACKWARDS=Shift Tab ;TAB cycling EXPAND_PATH=Ctrl Tab EXPAND_BACKWARDS=Ctrl Shift Tab ;TAB expansion DELETE_FORWARDS=Del ;the "Delete" function DELETE_BACKWARDS=Backspace ;the "Backspace" function DELETE_FULL_LINE=Shift Del ;delete all DELETE_WORD_FWDS=Shift Backspace DELETE_WORD_BKWDS=Alt Backspace ;one word, backwards DELETE_COMPONENT_FWDS=Ctrl Alt Del DELETE_COMPONENT_BKWDS=Ctrl Alt Backspace DELETE_END_OF_LINE=Shift Alt Del DELETE_START_OF_LINE=Shift Alt Backspace ;the next are the standard clipboard functions CUT=RAmiga x COPY=RAmiga c PASTE=RAmiga v TOGGLE_NUMLOCK=Alt Num[ ;Num[ is the '[' key on the numpad, this toggles the NumLock qualifier. YANK=RAmiga q ;this is the intuition style "undo" HELP=Help ;the HELP function, if used by the program INSERT_CSI=Alt Esc ;inserts 0x9B INSERT_ESC=Shift Esc ;inserts 0x1B _____________________________________________________________________________ The THOR-Software Licence (v2, 24th June 1998) This License applies to the computer program known as "StringSnip". The "Program", below, refers to such program. The "Archive" refers to the package of distribution, as prepared by the author of the Program, Thomas Richter. Each licensee is addressed as "you". The Program and the data in the archive are freely distributable under the restrictions stated below, but are also Copyright (c) Thomas Richter. Distribution of the Program, the Archive and the data in the Archive by a commercial organization without written permission from the author to any third party is prohibited if any payment is made in connection with such distribution, whether directly (as in payment for a copy of the Program) or indirectly (as in payment for some service related to the Program, or payment for some product or service that includes a copy of the Program "without charge"; these are only examples, and not an exhaustive enumeration of prohibited activities). However, the following methods of distribution involving payment shall not in and of themselves be a violation of this restriction: (i) Posting the Program on a public access information storage and retrieval service for which a fee is received for retrieving information (such as an on-line service), provided that the fee is not content-dependent (i.e., the fee would be the same for retrieving the same volume of information consisting of random data). (ii) Distributing the Program on a CD-ROM, provided that a) the Archive is reproduced entirely and verbatim on such CD-ROM, including especially this licence agreement; b) the CD-ROM is made available to the public for a nominal fee only, c) a copy of the CD is made available to the author for free except for shipment costs, and d) provided further that all information on such CD-ROM is redistributable for non-commercial purposes without charge. Redistribution of a modified version of the Archive, the Program or the contents of the Archive is prohibited in any way, by any organization, regardless whether commercial or non-commercial. Everything must be kept together, in original and unmodified form. Limitations. THE PROGRAM IS PROVIDED TO YOU "AS IS", WITHOUT WARRANTY. THERE IS NO WARRANTY FOR THE PROGRAM, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. IF YOU DO NOT ACCEPT THIS LICENCE, YOU MUST DELETE THE PROGRAM, THE ARCHIVE AND ALL DATA OF THIS ARCHIVE FROM YOUR STORAGE SYSTEM. YOU ACCEPT THIS LICENCE BY USING OR REDISTRIBUTING THE PROGRAM. Thomas Richter _____________________________________________________________________________ Thomas, September 2000