# $EPIC: bind,v 1.5 2002/08/12 17:29:40 wd Exp $
Synopsis:
   bind <character_sequence> [<action> [<args>]]
   bind -DEFAULTS
   bind -SYMBOLIC <symbolic_name> [<action> [<args>]]]
   bind -RECURSIVE [<character_sequence>]

Description:
   BIND specifies what the client should do when you enter a sequence of one
   or more keys.  By default, EPIC binds most of the common key sequences to
   meaningful values.  There are no artificial limits on what can be bound to 
   a key sequence.

   The client allows you to bind any string of any length to a function of
   your choosing.  Additionally, substrings of any binding may be bound
   separately.  What this means, in practical terms, is that you can bind
   esc-a to one thing and esc to another.

   A key sequence can be comprised of a literal string of keys, or certain
   specially quoted characters.  Specifically, you can quote characters 1-31
   using the sequences ^A - ^_, character 127 (DEL) with ^?, and any
   character you like using an octal sequence of \nnn (where nnn is a
   sequence of one to three octal numbers defining the character).  You can
   also quote the escape character using \e.  To quote the ^ or \
   characters use \^ or \\ respectively.

   If possible, it is recommended you use the symbolic name for the key
   (such as 'key_up').

Examples:
   To bind the QUOTE_CHARACTER function to ^Q (control-Q):
      /bind ^Q quote_character

   To bind the right arrow (ESC-[-C) to FORWARD_CHARACTER:
      /bind ^[[C FORWARD_CHARACTER
   (or better yet)
      /bind -symbolic key_right FORWARD_CHARACTER

See Also:
   Key_Bindings(7); parsekey(5); rbind(4)

Other Notes:
   Case is important with literal characters with BIND.  However, it is
   not important in control characters.  Thus, 'C' and 'c' are treated
   independently, but '^C' and '^c' are the same.

   Be careful when binding literal keys (such as 'c' alone) to functions.
   If the wrong keys get bound, it may be impossible to unbind them
   without restarting the client.

