1 VERB
     VERB is a program to extract verb  definitions  from  either
     your  process  space  or  a  command  table  file  (such  as
     SYS$SHARE:DCLTABLES.EXE).  These verb definitions  can  then
     be changed and recompiled via the command definition utility
     ($SET COMMAND).  This program is similar to the  OpenVMS  V3
     program CLEXTRACT, though this version works with OpenVMS V4
     and later command tables.  This program is centrally  useful
     if  you need to change verb definitions, or if you just hate
     the HP OpenVMS defaults (getting tired of HELP/PAGE, or LINK
     creating maps when executed from a batch job?).

     To use VERB, either type $ SET COMMAND  VERB,  or  define  a
     foreign command such as:

               $ VERB :== $dev:<dir>VERB_UTILITY
2 Parameter
     VERB takes  one  parameter,  a  (comma  separated)  list  of
     commands.   The  commands  may be wildcarded, as in VERB A*.
     All matching commands will be displayed (either in  full  or
     in brief format if /LIST is specified).
2 Qualifiers
/ALL
     VERB/ALL will cause ALL commands to be displayed.   /ALL  is
     the default if no commands are passed.
/LIST
     VERB/LIST  will  simply  list  the  name  of  all   matching
     commands, rather than the complete command definition.
/OUTPUT
     VERB/OUTPUT=file-spec will route the output to the specified
     file.  A default file type of ".CLD" is used.
/PROCESS
     VERB/PROCESS  causes  VERB  to  use  your  process  specific
     command    tables.    Normally   this   is   the   same   as
     SYS$SHARE:DCLTABLES.EXE,  however,  if  you  have  different
     tables set up as your default command tables, or if you have
     added commands to your process by using  SET  COMMAND,  then
     they may be different.  This is the default action.
/TABLE
     VERB/TABLE=table-name causes VERB to  search  the  specified
     command  tables.   If  you specify /TABLE without giving any
     name it will default to using SYS$SHARE:DCLTABLES.EXE.  Note
     that  /TABLE  is  exactly  equivalent  to  using  the /IMAGE
     qualifier in conjunction with /SYMBOL=DCL$AL_TAB_VEC.
/IMAGE
     /IMAGE=image-name causes VERB to load the  specified  image.
     You  must  also pass /SYMBOL=symbol-name to specify the name
     of a universal symbol which points to the command tables.
/SYMBOL
     /SYMBOL=symbol-name, in conjunction  with  /IMAGE=image-name
     enables  VERB  to  use LIB$FIND_IMAGE_SYMBOL to find command
     tables within a shareable image.  An example using  a  basic
     program follows:
             10      external long constant smg$$ab_defkey_cld
                     ! This simply defines the symbol smg$$ab_defkey_cld
                     ! which is used internally, if you had your own
                     ! command tables internal to the program, you
                     ! could use it here.. But then, you probably wouldn't
                     ! need to. This feature obviously has limited use...
                     end
     to be compiled like:
             $ basic test
             $ link/share sys$input/opt
                     test.obj
                     UNIVERSAL=SMG$$AB_DEFKEY_CLD
             $ verb/image=sys$disk:[]test$image/symbol=smg$$ab_defkey_cld *
/FILE
     VERB/FILE=file-spec This allows  you  to  read  the  command
     tables  from  any image, such as SYS$SYSTEM:AUTHORIZE.  This
     loads the specified file, and searches  for  command  tables
     within  them.   It  only searches for a specific sequence of
     characters, and may  get  confused  by  matching  characters
     within  a file.  To get around this problem, you may use the
     /COUNT qualifier to specify which  occurrence  to  use.   By
     default,  it  uses  the first occurrence.  There may also be
     more than one set of command tables within an image, in this
     case,  you  must use /COUNT to find the other(s).  A default
     file spec of ".EXE" is applied to the specified file.
/COUNT
     VERB/COUNT=n This is used in conjunction with /FILE,  please
     see /FILE for more info.
2 restrictions
     This tool will not function with  MCR  (the  RSX-11  Monitor
     Console  Routine)  command  tables.  It is unlikely that you
     even have the RSX-11  environment  installed.   If  you  are
     unfamiliar  with MCR command processing and/or if you do not
     have the RSX-11  compatibility-mode  environment  installed,
     you can safely ignore this note.

     When extracting several  verbs  at  a  time  the  verbs  may
     reference  common  TYPE definitions, in these cases only one
     is output, this only becomes a problem if  you  cut  up  the
     output file into several smaller files.

     When extracting several verbs  (such  as  BASIC,  MACRO,  or
     FORTRAN)  together  you  can encounter cases where there are
     similarly-named TYPE definitions.   Cases  where  each  verb
     references  a  local and differing TYPE definition, but with
     the same name.  If you then attempt to reload the  aggregate
     CLD  back  into  OpenVMS,  CDU  will balk.  You will want to
     extract these verbs separately,  or  otherwise  segment  the
     aggregate module into separate CLD files.
2 author
     The original author of this  utility,  and  various  of  the
     contributors:

          Joe Meadows Jr.
          Hunter Goatley
          Luke Brennan
          Stephen Hoffman
