ARPUS/ce, Version 2.6.2 (03/10/05)    (SCCS 1.6)
_______________________________________________________________________________
 alias <name> [ [<alias_definition>] ke ]
 "alias definition"
 
 DESCRIPTION:
    'alias'  is used to set, display, or erase an alias definition for
    a pseudo command name.  The three forms of the 'alias' command are
    as follows:
     
       alias <name>            Display in  ce's  output   window   the
                               definition  currently  assigned  to the
                               specified alias. 
                                     
       alias <name> <def> ke   Alias name to be <def>.  <def> can be a
                               list of commands, may contain  prompts,
                               and  may  contain positional parameters
                               to be substituted in later.   <def>  is
                               parsed when the alias is executed.

       alias <name> ke         Erase any  definition  associated  with
                               name.
     
    <name> is a 1 to 8 character alias name composed of all alphabetic
    characters.   It  must not be the same as any builtin Ce  command.

    <def>  is a string of Ce commands separated by semicolons.  It  is
    parsed  in exactly the same way as a kd (key definition)  command.
    It may contain prompts just like key definitions.  In addition, it
    may  contain  positional symbolic parameters ($1, $2, etc.)  which
    will  be  substituted  in when the alias is invoked.  That  is  $1
    refers to the first word following the alias command, $2 refers to
    the second word, and so forth.

    In  addition,  the  constructs  $* and $@ are  supported.   The  $*
    construct  resolves  during  alias expansion to all  the  supplied
    arguments  with  a space between each argument.  The $@  construct
    resolves to all the supplied arguments with a set of double quotes
    (") around each argument and a space between each argument.

    Alias'ed names may be used in key definitions.  However, the alias
    must  already  be  defined and the alias is  expanded  during  the
    processing of the key definition. Thus, aliases which use symbolic
    substitution  need  to have their parameters specified within  the
    key definition.

 EXAMPLES:
     alias  help  cv $HELPDIR/$1.hlp ke
            The above alias creates a command named help which opens a
            cv  window  on the help file named as the first  and  only
            argument to the command.

     alias  quit  wc -q ke
            The  above alias creates a command named quit which closes
            the a ce session without saving any changes.

     alias  esif  es 'if ()';tr;en;tl;[-1,];tr;[+1,-5]; es 'else';tr;en;tl;[-2,];tr;en;tl;[+1,];tr;[-1,-1];  es '{';tr;en;tl;tr;en;tl;[-2,];tr;[+2,-1];      es '}';tr;[+2,-1];      es '{';tr;en;tl;tr;en;tl;[-2,];tr;[+2,-1];      es '}';[-7,];     ke
            The  above alias creates an alias named esif which creates
            a  skeleton  "if then else" sequence in the C  programming
            language.

     kd ^3 help commands ke
            The above key definition sets the <ctrl>-3 key combination
            to  run  the  help alias on the help for the  list  of  Ce
            commands.   Note that the help alias is converted to  it's
            list  of  Ce  commands at the time the key  definition  is
            parsed.   If  it is necessary to delay evaluation  of  the
            alias, you could code:
               kd ^3 xl -l tmp "help commands";cmdf -p tmp ke
            This  example  puts  the   text  "help  commands"  into  a
            temporary paste buffer and then uses cmdf to run the paste
            buffer.   As  you can see, you can use aliases in  command
            files.   Using  a prompt in the key definition  will  also
            delay  expansion of the alias to its Ce commands until the
            key definition is executed.
               kd ^3 help &'CMD? ' ke
            The  above key definition keeps behaves in this way.   You
            can  check  whether the alias has been expanded using  the
            'kd'  command with just the key specification as the  only
            argument.   This  displays the definition in the  message
            window.

     alias ispell  ro -off;pw;pn;tdmo;tl;dr;tr;xc -l file;tdm;tl;xd -l junk;icon -i;es'cpo -w "ceterm -geo c80x24 -autoclose y -vt on -w  \\\'ispell ';xp file;tr;es'\\\'"';en;tmw;1,$xd -l junk;xd -l junk;tdm;es'xp -f ';xp file;tr;en;icon -w ke
            The  above  alias  runs   the  ispell  command  (which  is
            available  on  the  Internet) over the data  in  a  ceterm
            window  and replaces the file being edited with the  spell
            checked data. In English this alias reads:

            ro -off;        Make sure we are in read/write mode
            pw;             Write the file to disk
            pn;             Put the filename in the message window
            tdmo;           Move cursor to message window
            tl;             Move cursor to col 1 in message window
            dr;             Set a mark
            tr;             Move cursor to end of line
            xc -l file;     copy file name to local paste buffer
            tdm;            Move cursor to "Command:" input window
            tl;             Move cursor to col 1 in "Command:" window
            xd -l junk;     Delete anything currently there.
            icon -i;        Icon the ce window
            es'cpo -w "ceterm -geo c80x24 -autoclose y -vt on -w  \\\'ispell ';
                            Logically  enter  the above string in  the
                            "Command:" window. Note the extra '\'s are
                            eaten  during keydef processing.  In Aegis
                            regular expression mode use '@'.
            xp file;        Paste the file name into the line
            tr;             Move cursor past the file name
            es'\\\'"';      Put in the closing quote for the 'cpo' command.
            en;             Press enter.
            tmw;            Logically move the cursor to the edit window.
            1,$xd -l junk;  Throw away the contents of the file
            xd -l junk;     Empty the paste buffer to save memory.
            tdm;            Logically move cursor to the "Command:" window
            es'xp -f ';     Logically type a paste file command 
            xp file;        Put in the file name.
            tr;             Move past the file name.
            en;             Press enter
            icon -w         Un-icon the edit window.

            In  the  above case, the icon'ing of the file is for  more
            than  aesthetic  purposes.   Since the  'cpo'  command  is
            running in wait mode (-w), the window will be frozen while
            the ispell is running and not accepting X events.  On many
            machines,  if  enough  X events pile up in the  X  servers
            queue  for  a  window without any being read,  the  server
            decides the application is hung and kills it. Icon'ing the
            window avoids this.


 
 RELATED HELP FILES:
     kd            (Key Definition)                      
                   (Prompt)                              
     cpo           (Create Process Only)                 
     commands      (List of Commands)                    
     Cekeys        (Key definition file)                 
     mi            (Menu Item)                           
     
     keyCon        (Key Concepts)                        

     support       (customer support)                    


_______________________________________________________________________________
  Copyright (c) 2005, Robert Styma Consulting.  All rights reserved.