home *** CD-ROM | disk | FTP | other *** search
/ Micro R&D 1 / MicroRD-CD-ROM-Vol1-1994.iso / os20 / cli / getstring100.lha / GetString / GetString.txt < prev   
Text File  |  1993-01-19  |  6KB  |  164 lines

  1.  
  2.  
  3.                               GetString
  4.                               ~~~~~~~~~
  5.                     A small utility  for the Shell
  6.                           By Diego Caravana
  7.  
  8.  
  9.  
  10.                             1. Legal Stuff
  11.                             ==============
  12.  
  13.  GetString  is  placed  in  the Public Domain for the Amiga.
  14.  No  fee  is  requested  to  use it, nor anyone can ask anything for it
  15.  (except for the media).  Feel free to use it, but AT YOUR OWN RISK, as
  16.  I  cannot  be  considered  responsible  for  any damage caused to your
  17.  system.  Have Fun!
  18.  
  19.  
  20.                              2. What is ?
  21.                              ============
  22.  
  23.  GetString  is a small utility that I have written mainly for me, but I
  24.  think  it can be very useful also for you.  It is a Shell-only program
  25.  and  its  work should be clear:  it opens a string requester and store
  26.  the  result  in an environment variable (either local or global), that
  27.  can be used in Shell scripts in a very simple way.
  28.  
  29.  
  30.                             3. How to use
  31.                             =============
  32.  
  33.  It requires OS 2.04+ and the fabulous ReqTools.library (hi Nico!).
  34.  As said above, GetString is a Shell-only program, so do not try to use
  35.  from  Workbench.   It  uses  the  standard  parser  of OS 2.x.  Try to
  36.  execute  GetString  with  a `?' as argument and you will get something
  37.  like this:
  38.  
  39.     TITLE/A,STRING,VAR=VARIABLE/K,GLOBAL/S
  40.  
  41.  Now, a little explanations of arguments:
  42.  
  43.     TITLE/A         you MUST supply a string that will be the title of
  44.                     the requester; if you do not do, there will be an
  45.                     error.
  46.  
  47.     STRING/K        is a string that will appear in the string gadget
  48.                     inside the requester and then will be the default
  49.                     string returned.
  50.  
  51.     VAR=VARIABLE/K  is the name of the environment variable that will
  52.                     contain the input of the user; it must obey to the
  53.                     rules of DOS; the default is `GetStringResult'.
  54.  
  55.     GLOBAL/S        if present (/S determines this behaviour), the
  56.                     variable will be global; the default is local.
  57.  
  58.  
  59.  The keywords above followed by `/K' MUST appear in the command line
  60.  followed by their argument. Remember to use apices when necessary!
  61.  
  62.  A simple example of how to use GetString is given below:
  63.  
  64.     ; stuff...
  65.  
  66.     GetString "Insert Date:" STRING "24-02-1972 4:00" VAR tmpDate
  67.     date $tmpDate
  68.     unset tmpDate
  69.  
  70.     ; even more stuff...
  71.  
  72.  Note that in the GetString line, you must NOT include the $ sign before
  73.  the variable name!
  74.  Again, note that the title MUST ALWAYS be supplied; this is a feature,
  75.  because  it is fundamental when the requester appears.  Try to imagine
  76.  a requester without a title appearing in front of you...  :)
  77.  
  78.  
  79.                            4. The Language
  80.                            ===============
  81.  
  82.  I have used E language to write GetString.  What?  E ?!  Yea!
  83.  But why?  Because it is a very powerful simple-to-use language dedicated
  84.  explicitly to our Amiga. It offers an incredibly vast number of features,
  85.  some of which follows directly from the `mouth' of the author:
  86.  
  87.   "E is a procedural higher programming language, mainly influenced by
  88.   languages such as C and Modula2. It is an all-purpose programming language,
  89.   and the Amiga implementation is specifically targeted at programming
  90.   system applications. The major features of the language/this implementation
  91.   include:
  92.  
  93.   - Compilation speed of 10.000 to 35.000 lines/minute on a 7mhz Amiga 500,
  94.     25.000 to 85.000 l/m on a 14mhz Amiga 1200 (both _without_ fastram)
  95.   - Produces small and fast executables from sourcecode in one go: linker,
  96.     assembler and other program modules integrated into the compiler
  97.   - True Inline Assembly with identifier sharing
  98.   - Module system for import of library definitions/constants/functions
  99.     (much like TurboPascals UNITs)
  100.   - Large amount of integrated system functions: OpenW(), OpenS(),
  101.     Gadget(), WriteF(), TextF(), and numerous string/list/IO functions.
  102.   - All librarycalls of Exec, Dos, Intuition and Graphics of 2.04
  103.     integrated as system functions into the compiler: call them without
  104.     opening the library or including files. All other libraries accessible too.
  105.   - All commodore's 2.04 includes available as E modules
  106.   - Flexible and powerfull "type" system: one basic non-complex 32bit
  107.     LONG variable, and datatypes ARRAY, STRING, LIST and OBJECT,
  108.     code-security and generallity through low-level polymorphism.
  109.   - LISP functionality: quoted expressions, functions like
  110.     Eval(), ForAll(), Exists()
  111.   - immediate lists, typed lists
  112.   - exception handling a la ADA
  113.   - compiles compact small programs with SMALL code/data model and large
  114.     applications with LARGE model in seconds
  115.   - Managable development system: one executable (the compiler/assembler/
  116.     linker) and optionally a set of Module files is all you will need."
  117.  
  118.  Cool, eh?  Try it, if you do not believe to your eyes ! :-)
  119.  How to contact the author:
  120.  
  121.       Wouter van Oortmerssen ($#%!)
  122.       Levendaal 87
  123.       2311 JG  Leiden
  124.       HOLLAND
  125.   
  126.   or if you have access to Email:
  127.  
  128.       Wouter@alf.let.uva.nl    (E-programming support)
  129.   or: Wouter@mars.let.uva.nl   (personal)
  130.   or: Oortmers@gene.fwi.uva.nl (other)
  131.  
  132.  
  133.                             5. The Author
  134.                             =============
  135.  
  136.  If you want to send me bug-reports or a time-bomb *:-(, I can be
  137.  contacted in the following manners:
  138.  
  139.     by snail-mail
  140.  
  141.         Diego Caravana
  142.         V. Liguria, 24
  143.         10071 Borgaro (TO)
  144.         Italy
  145.  
  146.     by e-mail
  147.  
  148.         FIDO       2:334/308
  149.                    2:334/308.9
  150.         AMIGANET   39:101/3
  151.         Internet   <soon>
  152.  
  153.  To  find  me and the E language stuff, you can call the BBS on which I
  154.  am CoSysOp:
  155.  
  156.     The New ATH
  157.     ~~~~~~~~~~~
  158.         TEL       +39-11-5629284
  159.                   +39-11-5629290
  160.         FIDO      2:334/308
  161.         AMIGANET  39:101/3
  162.         Internet  <soon>
  163.  
  164.