@if-using (doc)
@reference-begin
                              ***********
                              * ModeOri *
                              ***********

Global Informations
*******************

   This is the reference-file for `ModeOri', a binding for the folding-editor
   Origami. This version works with xterm-, vt100-, mgr-,  PC-  and  sun-key-
   boards. Some bindings are based on Parytec's Multitool-System running with
   hosts Sun-workstation. Others are inspired  by  wordstar. This binding can
   also be used for Atari-versions of Origami.

   Commands can be reached with:

      escape-key followed by two letters
         The letters are a short-representation of the command, eg:
            escape a t -> attach-file-to-fold
            escape + v -> add view-mode
            escape - v -> delete view-mode

      cursor-keypad
         Using on a PC or a sun-workstation, the  keypad  is  used  for  many
         commands, not only the cursor-movement. The keys R13 on sun-keyboard
         and ins on PC-keyboard are used as meta-keys.
         On other terminals the normal cursormovements are supported.

      function-keys
         The function-keys f1..f4 are used for some commands as a replacement
         for the SUN-/PC-like usage of the cursorblock.
         All function-keys can be simulated by typing:
           escap F <keynumber>
         So 'escape F 2'  is  the  same  as  typing  function-key  f2.  These
         simulations are marked as 'EFx' in the bindings.

      ctrl-characters
         Some wordstar bindings for control and movement are supported too.


   If Origami supports the mouse (xterm,...), the mouse-buttons are used:

      button1 - move to point and maybe open the fold
      button2 - move to point and close fold
      button3 - move to point and show fold informations

   In addition to standard Origami-features, ModeOri supports:

      You can switch from editing-environment (Edit-Mode) to Move-mode, which
      is used to define regions of text. The normal  editing-functions  (like
      delete-line) work on a  regions  instead  of  the current line in this
      mode  and  return  to  editing afterwards. In this mode there are  some
      `vi'-based keysequences used, so that you can  use  this  binding  as a
      kind of vi, coming up in insert mode too.

      In Edit-Mode you can choose an Extended-Mode.  This  mode  changes  the
      meaning of {,(,[,;,",' and space. Instead of the normal text-character,
      complexer structures are put into  the  text,  depending on the current
      folding-language.

      Line-movements are handled in two different ways, depending on  set  or
      unset  mode  ``filebased-cursor-motion'',  marked  with  ``%''  in  the
      statusline:

         screen-based:
            Moving up/down displayed lines, closed folds are handled  as  one
            line.

         file-based:
            Moving up/down opens closed folds and moves to the  previous/next
            line in the file.


      The commandline option `-Ox' is passed to the OCL-code.  Modeori  reads
      it the following way:

           Bit    0                1
            1   statusline off    statusline on
            2   extend on         extend off
            4   Buffer-save off   Buffer-save off


      Some of the commands need a correct initialised environment. The needed
      resources are:

         environment-variable: ORIAREA

            It  contains  the  name   for   the   file   displayed   in   the
            display-window. Use for example:
               $HOME/.oa.$HOSTNAME.`basename $TTY`

         command: orimake
            Call make in the current directory and put the output  into  file
            $ORIAREA. Use for example:
               make >& $ORIAREA &

         environment-variable: ERRORFORMAT
            Contains the formatname for errors of the used compiler in  make.
            If no one is given, the Oripager uses its  default  or  the  one,
            given in the outputfile (lines ORIPAGERERRORFORMATNAME..).

         environment-variable: GETSELECTION
            Calling  $GETSELECTION  must  write   the   selection   of   your
            window-system to the standard-output.


Additional mark-types
*********************

   To provide problems with pascal ( (* } at end of fold! ), you  can  choose
   an additional mark-type with `-mpascal' on  commandline.  Folds are marked
   with:

     start of fold:            <<<
     closed fold:              ...
     end of fold:              >>>

   Shellscripts can be handled with language NONE using `-mscript'. Folds are
   marked with:

     start of fold:            ##@
     closed fold:              ...
     filename of a filed fold: ##:
     end of fold:              ##$



Description of all known commands
*********************************

   The format for this help is:

      name: keysequence [ | keysequence .. ]
            additional keysequences R-keys/f-keys
        short comment to the command

   The command name can be reached by pressing one of the  keysequences  (Rxx
   keys on the sun-keyboard and dos-xx keys on  the  pc-keyboard). Its action
   is  explained  in  the  comment.  The  sun-keyboard is activated,  if  the
   environment variables TERM or ORITERM are set  to  SUN.  The  dos-keys are
   avtivated by PC.


Buffers
*******

   There are three buffers, which can be used for editing:

     kill-buffer
     move-buffer
     delete-buffer

   All these buffers are used by different commands.  The  contents  of  this
   buffers  will  not  be  saved  when  leaving  Origami  but  will  stay  on
   filechanges  (read-file  or  enter-filed-fold).  A  non-empty  kill-buffer
   (move-buffer) is marked with '+' ('*') in the statusline.


Aborting
********

         abort:                        C-C
            Pressing C-C will abort most commands in a save  way  and  brings
            you back to edit-mode.


@reference-end
{{{F edit-mode
:::F modeori-fun/edtref
}}}
{{{F move-mode
:::F modeori-fun/mvref
}}}
@reference-begin
                                *******
                                * END *
                                *******
@reference-end
@fi
