LSE$CLIHELP.HLB  —  Features  Buffers
  A buffer is a temporary holding area that provides a work  space  for
  editing  text.  You can create a new file or edit an existing file in
  a buffer.  A buffer becomes visible when  it  is  associated  with  a
  window  that  is  mapped  to  the screen.  Buffers exist only for the
  duration of your editing  session.   When  you  exit  from  LSE,  the
  current buffer is discarded and the contents of the buffer are stored
  in a file.

  LSE allows you to  create  multiple  buffers.   Thus,  you  can  edit
  several  different  files  in  one  editing  session.  You can create
  additional buffers to store portions of text that you might  want  to
  look at, but not edit, during your editing session.

  BUFFER ATTRIBUTES

  Buffers have many  attributes.   This  section  provides  details  on
  buffer  attributes  and  properties.   You  can  use  the SHOW BUFFER
  command to display the characteristics of one or more buffers.

    Buffer Names

    A buffer has a name that is displayed in the status line.   Buffers
    are  usually  named  by the name and type of their associated input
    file.  The GOTO FILE or GOTO BUFFER commands can create buffers.

    Insert/Overstrike

    LSE has two text entry modes:  insert and  overstrike.   In  insert
    mode,  text  gets  inserted into the buffer at the cursor position.
    Text to the right of the cursor gets moved.   In  overstrike  mode,
    text  typed at the cursor replaces text that is currently under the
    cursor.   When  you  start  an  editing  session,  the  buffer   is
    automatically  placed  in  insert  mode.   To change the text entry
    modes, you use the CHANGE TEXT_ENTRY_MODE command.

    Forward/Reverse

    LSE maintains a current direction for  each  buffer.   The  current
    direction  is displayed in the status line.  This direction is used
    for SEARCH operations and the GOTO and ERASE  commands.   When  you
    start  an  editing session, the buffer direction is set to forward.
    To set the current direction to forward, you use  the  SET  FORWARD
    command.   To set the current direction to reverse, you use the SET
    REVERSE command.  Alternatively, you can use the  CHANGE  DIRECTION
    command to change the current direction.

    Input/Output

    Buffers may have an associated input or output file.  An input file
    is  a file that is read into a buffer when a buffer is created.  An
    output file indicates where LSE  will  write  a  buffer.   This  is
    usually  a new version of an input file.  You can change the output
    file name with the SET OUTPUT_FILE command.  The GOTO FILE  command
    creates a buffer and reads a file into it.

    Read/Write

    Buffers  have  either  the  read-only  or  write  attribute.    The
    read-only  attribute indicates that the contents of the buffer will
    not be written to a file on exit.  The  write  attribute  indicates
    that the buffer will be written to a file on exit.  Usually, a file
    is associated with a buffer by the GOTO FILE command, which creates
    a buffer and fills it with the contents of a file.  When the buffer
    is written, it is written to a new version of the file.  If no file
    is  associated  with  a  buffer  that  has the write attribute, LSE
    prompts for a file specification on exit.  Note that  a  buffer  is
    written only if its contents have been modified.

    Modifiable/Unmodifiable

    Buffers  are  either  modifiable  or  unmodifiable.    Unmodifiable
    buffers  protect the contents of a given buffer.  You cannot change
    an  unmodifiable  buffer.   The  GOTO   FILE/READ_ONLY   and   GOTO
    SOURCE/READ_ONLY commands create unmodifiable buffers.  If you want
    to modify an unmodifiable buffer, you must issue the SET MODIFY  or
    SET WRITE command.

    There are some relationships  between  the  READ-ONLY/WRITE  buffer
    attributes   and  the  UNMODIFIABLE/MODIFIABLE  buffer  attributes.
    Given these attributes, a buffer may be in  one  of  four  possible
    states.  The following list describes these states and explains how
    to create these states for a buffer.

     o  MODIFIABLE - WRITE

        The GOTO FILE/WRITE, GOTO SOURCE/WRITE, SET WRITE, and  RESERVE
        commands set buffers to this state.  It is also the default for
        the file specified in the LSEDIT command line.  The buffer  may
        be  modified  and  will  be  written  on  exit  if  it has been
        modified.

     o  MODIFIABLE - READ-ONLY

        This is the default for the GOTO BUFFER/CREATE command that  is
        used to create a "scratch" buffer.  The buffer may be modified,
        but it will not be written on exit.

     o  UNMODIFIABLE - READ-ONLY

        The GOTO  FILE/READ_ONLY  and  GOTO  SOURCE/READ_ONLY  commands
        create  buffers  in this state.  The buffer cannot be modified.
        If you issue a SET MODIFY command on this buffer and modify the
        contents,  LSE  will  not write the contents on exit unless you
        also issue the SET WRITE command for the buffer.

     o  UNMODIFIABLE - WRITE

        A buffer can be set to this state by a user who has completed a
        set  of changes to a buffer in the MODIFIABLE - WRITE state and
        then issued a SET NOMODIFY command for the  buffer  to  protect
        the  buffer  from  accidental  change  for the remainder of the
        editing session.  LSE will write the file on  exit  if  it  has
        been changed during the editing session.

    System Buffers

    Some buffers are used by  LSE  for  special  purposes.   These  are
    called  system buffers.  Unlike user buffers, system buffers do not
    correspond to files.  You can edit a system buffer like  any  other
    buffer, but you should avoid changing its contents.  By convention,
    system buffer names  start  with  a  dollar  sign  ($).   The  most
    frequently  used  system buffers are $HELP, $MESSAGES, $REVIEW, and
    $SHOW.  System buffers are not displayed by the SHOW BUFFER command
    unless you use the /SYSTEM_BUFFERS qualifier.

    Languages

    Buffers may have a language associated with them.  This  determines
    which  language  is  used for the language-sensitive features.  The
    file type of your current buffer determines the language LSE  uses.
    Thus,  you  can  move  between  different  languages  in  different
    buffers, and LSE will provide the  interfaces  to  the  appropriate
    compilers.   The  SET LANGUAGE command associates a language with a
    buffer.

    Current Indentation and Tab Settings

    LSE maintains two settings to control the action of  the  tab  key:
    current  indentation  level and tab increment.  When you are at the
    left margin, the tab key indents to the current indentation  level.
    If  you  are  not  at the left margin, the tab key takes you to the
    next tab column based  on  the  tab  increment  setting.   The  SET
    INDENTATION  command  sets  the  current indentation level; the SET
    TAB_INCREMENT command sets the size of the tab increment.

    Key Bindings

    Buffer commands, along with default key bindings are  listed  under
    subtopic "Buffer_Commands".
Additional Information: explode extract
Buffer Commands
Close Help