xenial (5) olvwmrc.5.gz

Provided by: olvwm_4.4.3.2p1.4-28.1_amd64 bug

NAME

       olvwmrc - Resource file for the OPEN LOOK Virtual Window Manager

SYNOPSIS

       $HOME/.olvwmrc

DESCRIPTION

        .olvwmrc is a file which controls advanced keybinding and menu features for the OPEN LOOK Window Manager
       olvwm.  Four features of olvwm are controlled by entries in this file:

       Local Variables
              which can be used in key or screen bindings

       Key Bindings
              which can map specific actions to function keys

       Screen Bindings
              which can control where certain applications are started

       WINMENU
              entries which can control the behavior of items selected from the olvwm WINMENU menu.

       The syntax for each of these entries is given below.  Common to all syntax entries is the  notion  of  an
       ``identifier'':   this  is  a  string which somehow specifies which window(s) the given entry applies to.
       When determining if a particular window is affected by a particular rule in .olvwmrc, olvwm first  checks
       a  window's  WM_NAME to see if it matches the identifier listed in the rule.  This match is done only for
       the length of the identifier, so that the identifier Mail will match all windows which begin with  the  4
       letters Mail in their WM_NAME.  If this does not match, olvwm next checks the instance and then the class
       fields of the window's WM_CLASS attribute to check for a possible match.  If a match is found for any  of
       these fields, the window is affected by the given rule.  Case is significant in checking all matches.

       Identifiers may contain any alpha-numeric characters; any other characters must be enclosed within quotes
       (single or double).  Thus, Mail is a  valid  identifier,  as  is  "Mail  Tool"  but  Mail  Tool  is  not.
       Similarly,  strings  which  are  to  be  executed should be enclosed in quotes if they contain non alpha-
       numeric characters.  Quotes may be nested in strings, so that to start a clock with the  label  foo  bar,
       you  would specify  'clock -label "foo bar"'.  Finally, single quotes may be escaped with a backslash, so
       that the full WM_NAME of DevGuide, for example, should appear as "OpenWindows Developer\'s Guide".

       All whitespace in this file is ignored; and lines beginning with a # are considered comments (but only if
       the # is in column 1).

Variables

       The  .olvwmrc  file  may  define local variables by assigning a value to a legal variable name.  Variable
       names must be made up of alphanumeric charcaters or the '_' character.  Variable names may begin  with  a
       number and assignments may contain spaces either before of after the '=' operator.

       Variable  names  are  referenced  by  using  %VariableName  or %{VariableName}; %% will yield a single %.
       Variable references may appear as part of  the  definition  of  any  key  or  screen  binding.   Variable
       references may also appear in assignment statements.

       In addition to olvwm variables, environment variables may be used in the same contexts using the familiar
       $NAME or ${NAME} syntax; again, $$ will yield a single $.

       The following example illustrates the use of variables:

       #
       # Define screen size.
       #
       Xsize = '1136'
       Ysize = '798'

       WholeScreenSize = '%{Xsize}x%{Ysize}+3+3'

       #
       # Define file names.
       #
       FileName = '.olvwmrc'

       PathName = '$HOME/%FileName'

Key/Action Bindings

       olvwm can be made to perform a series of actions when a specific key is pressed.   The  key  can  be  any
       valid  X  keysym  name and may be specified by itself or with any one or more of the following modifiers:
       Shift, Control, Alt, Meta, Hyper, Super, Shift Lock, or Caps Lock, in which case the key must be  pressed
       with the given modifiers.

       The  functionality for a key specified in a binding in .olvwmrc takes precedence over any other functions
       that key might perform. Thus, if you bind the L5 key to an action in .olvwmrc, you will not  be  able  to
       use  the  L5 key to bring windows to the front; if you bind the R8 key, you will not be able to scroll up
       on the desktop using that key.  Since the unmodified versions of 29 of the possible 35 standard  function
       keys  on  a  type-4  keyboard  (L1-L10,  F1-F10,  and  R1-R15) already have a meaning within olvwm, it is
       recommended that at least one modifier be used for keys in this manner so as not to conflict  with  other
       key meanings.

       There are thirteen valid actions which can be associated with a key:

       Warp   This  action  requires  a single identifier.  The youngest window matching this identifier will be
              located, and the view into the desktop will be warped so that the found window is displayed on the
              screen.  The window itself will not change position relative to the other windows; merely the view
              into the desktop will be changed.  If no matching window is found, the  view  is  unchanged.   The
              mouse is moved into the matching window, and that window is given input focus.

       Open   This  action  requires  a  list of identifiers separated by commas.  Each iconified window will be
              matched against this list and those which match any identifier in the list will be opened.

       Close  This action requires a list of identifiers separated by commas.  Each non-iconified window will be
              matched against this list and those which match any identifier in the list will be closed.

       Raise  This  action  requires  a  list  of  identifiers separated by commas.  Each window will be matched
              against this list and those which match any identifier in the list will be raised.   Windows  will
              be raised youngest first, so that the oldest windows in the list will end up on top.

       Lower  This  action  requires  a  list  of  identifiers separated by commas.  Each window will be matched
              against this list and those which match any identifier in the list will be lowered.  Windows  will
              be lowered youngest first, so that the oldest windows in the list will end up on the bottom.

       RaiseLower
              This  action  requires  a  list  of  identifiers separated by commas.  Each window will be matched
              against this list and those which match any identifier in the list will be raised to  the  top  of
              the stack if they are partially obscured or lowered to the bottom of the stack if they are on top.

       Execute
              This  action requires a list of commands separated by commas.  Each command will be executed via a
              Bourne-shell in the same manner as commands given in the olvwm menu  file  [except  that  multiple
              commands may be listed in this case.]

       Goto   This  action requires a single integer parameter, which is the logical screen to which the desktop
              should warp when the given key(s) are pressed.

       Quit   This action requires a list of identifiers separated by  commas.   Each  window  will  be  matched
              against this list and those which match any identifier in the list will be killed.

       Geometry
              This  action  requires  a single identifier.  The identifier must be a valid X geometry string but
              may be partially specified (may only specify position or size).  This geometry will be applied  to
              the current window.  If there is no current window this action will have no effect.

       Rebind This action optionally takes a filename parameter.  If no parameter is specified the normal search
              is performed to find the correct version of the .olvwmrc file (as at startup).  If a parameter  is
              given  it  is  used as the .olvwmrc file.  All current key bindings are discarded and the .olvwmrc
              file is read.  If the .olvwmrc files does not exist the current key bindings are not discarded.

       Stick  This action requires a single parameter which must be one of the  following:  OLVWM_USE_SELECTION,
              on,  off,  toggle,  or  a list of window names.  If the parameter is either OLVWM_USE_SELECTION or
              toggle, the sticky attribute of the current window will be toggled.  Similarly, if  the  parameter
              is  a  list  of window names then those window's sticky attributes will be toggled.  The values on
              and off can be used to explicitly set the current window's sticky attribute.

       SetSize
              This action requires a single parameter which must be one of the  following:  OLVWM_USE_SELECTION,
              full,   save,  store,  restore,  toggle,  or  a  list  of  window  names.   If  the  parameter  is
              OLVWM_USE_SELECTION or toggle, either the window's current geometry will be  saved  and  its  size
              will be set to full size or its saved geometry will be restored, depending on the window's current
              state.  Similarly, if the parameter is a list of  window  names  then  the  same  action  will  be
              performed  for  those  windows.   The  parameter save can be used to preserve the current window's
              geometry such that a restore size (or toggle) will restore the windows position  and  size.   Note
              that  save  will  only store the windows geometry if it has not already been saved.  The parameter
              store will always save a windows geometry (possibly overwriting  the  currently  saved  geometry).
              The restore parameter will simply restore the current window's saved geometry (if it has one).

       Focus  This  action requires a single parameter which must be either save or restore.  The save parameter
              will cause the window with focus to be remembered such that a restore will restore focus  to  that
              window.

       These  actions  may  appear  in  any  order  and will be performed in the reverse of the order specified.
       Commands may be listed multiple times; this is useful in case you want a different  stacking  order  than
       that  obtained by using a single raise command.  To do this, list separate raise commands for each window
       and put the raise command for the window you want to be on top first.

       The full syntax for a Key/Action binding is

              KeyName { Actions }

       A Key Name is a valid key (L1-L10, F1-F10, or R1-R15) followed by plus signs and the modifiers desired.

       For example, given the following entry:

       L2 + Shift {
           Warp: "OpenWindows Developer\'s Guide"
           Execute: '$OPENWINHOME/bin/xview/clock -label "foo bar"',
                 "$OPENWINHOME/bin/xview/iconedit"
           Raise: xterm, shelltool
       }

Then when Shift L2 is pressed, the following will occur:

       1)     The view will shift so that the youngest copy of DevGuide is on the screen.

       2)     A clock will be started; its namestripe will  contain  foo  bar.   The  IconEditor  will  also  be
              started.

       3)     All xterms and shelltools will be raised to the front of the stacking order.

Screen Bindings

       olvwm can arrange to begin any application relative to a particular logical screen.  A ``logical screen''
       is the area on the virtual desktop which maps to the size of your  monitor;  in  the  VDM,  each  logical
       screen  is outlined in dashed lines (unless you've turned this feature off).  Screens are numbered by row
       starting with 1.  Note that the position of a logical screen  will  vary  depending  on  the  size  of  a
       desktop:   in  the default (2x3) configuration, screen 4 is in the bottom left-hand corner of the VDM but
       in a smaller (2x2) configuration, it is in the bottom right-hand corner.

       The syntax for specifying a screen binding is

              Screen # { Identifiers }

       where # is the logical number of  the  screen  and  Identifiers  is  a  list  of  comma-separated  window
       identifiers  for  windows  which  should always start on that screen.  Note that it is always possible to
       move the window to another screen later.

       For example, the following entry will ensure that the windows started by Sun's AnswerBook  (windows  with
       names Navigator and Viewer) will always start on screen 6:

       Screen 6 { Navigator, Viewer }

WINMENU Actions

       When  a window is selected in the WINMENU menu, olvwm will perform certain actions.  The possible actions
       are the same as those listed above for Key Actions, except that the mouse position will not change  on  a
       warp.  By default, windows behave as if a warp, raise, and open were performed on the selected window.

       To effect a different action list for a particular window, you can specify

              Identifier { Actions }

       Each of these is a MenuGroup; one or more of these can appear in the following syntax:

              WINMENU { MenuGroups }

       For example, here is a possible entry:

       WINMENU {
           "File Manager" {
               Warp: "Mail Tool"
               Open: OLVWM_USE_SELECTION
           }
           xterm { }
           "Virtual Desktop" {
               Open: OLVWM_USE_SELECTION
               Execute: "$OPENWINHOME/bin/props"
           }
       }

       If you select the File Manager from your WINMENU, then the view will
       warp  to  your  Mail Tool instead of your file manager, and your file manager, if closed, will be opened.
       [This isn't that contrived an example: pretend your file manager is sticky and your mail tool isn't,  and
       you anticipate that you'll need to drag between the two.]

       If  you  select  an xterm from your WINMENU, absolutely nothing will happen.  This implements a No-Op for
       that window.

       If you select the VDM from your WINMENU, it will  be  opened  and  the  properties  application  will  be
       started.

       Note  that  this  Identifier  list  can contain the special entry OLVWM_USE_SELECTION which, as you might
       expect, operates on the single window corresponding to the one you selected.  A subtle distinction exists
       here:  given the MenuGroup

              xterm { Raise:  xterm }

       then ALL xterms will be raised when any xterm is selected via the WINMENU.  However, the entry

              xterm { Raise:  OLVWM_USE_SELECTION }

       will raise only the xterm corresponding to the one selected via the WINMENU.

RESOURCES AND KEY BINDINGS

       There are a few resources which are particular to the operation of olvwmrc.

       VirtualReRead (boolean)
              When  this  resource is True, olvwm will re-read the .olvwmrc file whenever it receives a Function
              Key event.  This will happen whenever a function key is pressed in the VDM or on the root  window,
              or whenever a function key grabbed by olvwm is pressed.  Default value:  True

       NoVirtualKey (list of windows)
              This  resource  disables the virtual keys set up in .olvwmrc for a particular window.  The list of
              windows follows the same syntax as other resource lists like MinimalDecor and VirtualSticky.  When
              a  window in this list has the input focus and the user executes a key sequence which is mentioned
              in .olvwmrc, that key sequence will be passed  to  the  application  rather  than  initiating  the
              olvwmrc  action.   Note  that  this  disabling applies only to bindings established via entries in
              .olvwmrc; normal olvwm and olwm bindings are not affected.  Default value:  None

       NoVirtualFKey (list of windows)
              This resource is like NoVirtualKey, but only the Function keys F1 to F10 will be disabled for  the
              given window.  Default value:  None

       NoVirtualLKey (list of windows)
              This  resource  is like NoVirtualKey, but only the keys L1 to L10 (which map to F11-F20 on non-Sun
              keyboards) will be disabled for the given window.  Default value:  None

       NoVirtualRKey (list of windows)
              This resource is like NoVirtualKey, but only the keys R1 to R15 will be  disabled  for  the  given
              window.  Default value:  None

SEE ALSO

       olvwm(1), olwm(1)

NOTES

       Please  see  the  LEGAL_NOTICES  file  for  full  disclosure  of  copyright  information and olvwm(1) for
       acknowledgments.

BUGS

       The multiple interfaces for NoVirtualKeys is something only a Wall Street trader could appreciate.

                                                30 November 1992                                      OLVWMRC(5)