Man Linux: Main Page and Category List

NAME

       Xjove - run JOVE under X-windows with function-key and mouse support.

SYNOPSIS

       xjove  [ window_args ] [ -f | -nf ] [ -rc run_command_path ]...  [ args
       ... ]

DESCRIPTION

       Xjove creates an XView frame and a tty  subwindow  within  which  mouse
       events  and  function keys are translated to ASCII sequences which JOVE
       can parse.  The translated input events are sent to the process running
       in  the  tty  subwindow, which is typically JOVE.  Xjove thereby allows
       JOVE users to make full use of the mouse and function keys.   JOVE  has
       functions  to  interpret  the  mouse  and function-key events to make a
       truly fine screen oriented editor for any workstation supporting  XView
       or SunView.

OPTIONS

       Xjove  supports  all  the standard window arguments, including font and
       icon specifiers.

       Xjove has the ability to fork off a separate process to run the  window
       that  is  created,  leaving  the shell from which the Xjove command was
       issued free to accept other commands.  This feature is enabled  by  the
       -f  (for  fork)  flag  and  disabled by the -nf (for no fork) flag. The
       default is set by the xjove.forking resource which can be set  to  True
       or False in your .Xdefaults file (default False).

       By  default, Xjove runs the program jove in the created subwindow.  The
       value of the environment variable JOVETOOL can be used to override this
       if  your  version  of JOVE is not accessible on your search path by the
       name jove.  In addition, the run command can be  set  by  the  pathname
       following  the last occurrence of the -rc flag.  This is convenient for
       using Xjove to run on remote machines.

       All other command line arguments not used  by  the  window  system  are
       passed as arguments to the program that runs in the Xjove window.

       For example:

       local% xjove -rc rlogin remote

       will create an Xjove window logged in to a machine named remote.  Xjove
       will encode mouse and function keys, and send them to rlogin.  If  JOVE
       is run from this shell on the remote machine, it will see the mouse and
       function keys properly.

USING XJOVE

       The following assumes the use of  the  recommended  bindings  from  the
       mouse operations to the Jove mouse-commands. Note how, in general, LEFT
       does things involving the point, whereas MIDDLE does  things  involving
       the mark.

       Use of mouse buttons

       LEFT Sets  the  cursor at the character pointed to. Actually, it is the
            place you are pointing at when you release the button that counts.

       MIDDLE
            Sets  the  mark at the character pointed to when you press it. You
            may  then  move  to  another  point  before  releasing  it,   thus
            delineating  the  region  from  where  you  pressed  to  where you
            released. The position of the mark always remains underlined  (not
            easy to see if the cursor is at the same place).

       MIDDLE + CTRL
            Sets the region as before, but then does a COPY (copy-region).

       MIDDLE + CTRL + SHIFT
            Sets the region as before, but then does a CUT (kill-region).

       LEFT + CTRL
            Sets  the cursor as before, but then does a PASTE (yank). This can
            be used in conjunction with the previous two  commands  so  as  to
            copy  or  move  text  from  one  place  to  another.  However, the
            following two commands do this job better.

       MIDDLE + PASTE
            Remembers the current position of the cursor,  then  does  a  COPY
            (copy-region)  on  the  region  you  select  (possibly  in another
            window), and finally PASTEs (yanks) it at the remembered position.

       MIDDLE + CUT
            Remembers  the  current  position  of  the cursor, then does a CUT
            (kill-region) on  the  region  you  select  (possibly  in  another
            window), and finally PASTEs (yanks) it at the remembered position.

       Multiple clicks on MIDDLE
                 In all the above usages of MIDDLE, a double  click  will  set
                 the  mark at the start of the word pointed into and the point
                 at the end of that word. Likewise, a triple click selects the
                 whole  of the current line. This is similar to the effects of
                 multiple clicks in Open-Look windows and Sunview.

       Note that the above commands only work if you point within the  current
       window.  Except  when in conjunction with PASTE or CUT, the first click
       into a different window simply selects that other window.  Click  twice
       if you want to set the cursor or the mark in the other window.

       LEFT when in the Modeline
            Assuming the variable scroll-bar is ON, the position of the window
            within  the  overall  buffer  is  shown  by   unhighlighting   the
            corresponding  part  of  the  Modeline. Pointing at a place in the
            Modeline and pressing either of LEFT or MIDDLE causes the text  to
            scroll  to  that  place. You may hold the button down and move the
            mouse left or right until you see what you want in the window.

       RIGHT
            Brings up a menu with pull-right options enabling you to obey  any
            JOVE  command, or set any JOVE variable. If the command requires a
            parameter (or the variable requires a value  other  than  ON/OFF),
            you still have to type it in as usual.

       SHIFT
            Holding  SHIFT  down  at  the  same time as any other key or mouse
            operation (except with CTRL — see above)  reverts  to  the  normal
            behaviour of Shelltool(1).  Thus you can make selections, and copy
            and paste them to/from the clipboard using L6, L8 and L10.

OPERATION

       JOVE will automatically load the file jove.rc.$TERM.  It  is  therefore
       necessary  that  this  file  understands  the  code  sequences that are
       produced when function  keys  are  pressed  in  Xjove  (these  are  not
       necessarily  the  same  as  might  normally be produced by that $TERM).
       These follow, more or less, the practice of Sun Workstations (with  the
       addition, except when SHIFT is down, of some keys such as L-1,6,8,9 and
       10 which Shelltool usually reserves for its own purposes,  and  of  the
       KP-*  keys around the outside of the numeric keypad, such as KP_Add and
       KP_Enter).

       In addition, Xjove sets the environment variable IN_JOVETOOL =t, so
       that  applications running in an Xjove window can be aware of the fact.

       Mouse buttons are encoded as ‘^Xm[0-9](c x y t)\n’.  ^Xm  is  the  JOVE
       mouse-command prefix, [0-9] indicate which key was pressed, and whether
       it was a down, up, drag or multi-click event. These are followed  by  a
       list  indicating the state of CTRL, SHIFT, PASTE and CUT, the character
       row and column of the point in the window where the  mouse  cursor  is,
       and  the  number of pixels in the width of a character.  In JOVE, these
       ^Xm* dispatch to appropriate mouse-command handlers which then read the
       following list.

BUGS

       The  normal  Sunview  "selection" facilities that enable text to be Cut
       and Pasted between windows (as provided by Shelltool and Cmdtool)  only
       work when SHIFT is pressed.
       Because  SHIFT  and  CTRL  together  have  a special meaning, it is not
       possible under SunView to make a selection "Pending Delete".
       Due to a bug in some versions of XView, the underlining of the mark may
       not occur (but emboldening may be used as an alternative).
       Under  SunView,  the  initial  terminal settings for the tty window are
       apparently taken from the controling tty.  This can lead to  surprises.

ENVIRONMENT VARIABLES

       JOVETOOL IN_JOVETOOL TERM
       For  Xjove,  the XView shared library must be visible. It may therefore
       be necessary to arrange for the Environment Variable LD_LIBRARY_PATH to
       include   $OPENWINHOME/lib,   where   $OPENWINHOME   would  usually  be
       /usr/openwin.

SEE ALSO

       jove(1)

                                  8 July 1993