Category : UNIX Files
Archive   : MGR_LNX2.ZIP
Filename : MGR.1

Output of file : MGR.1 contained in archive : MGR_LNX2.ZIP

MGR (1L) April 30, 1985 MGR (1L)

mgr - manage windows on a SUN Workstation

mgr [ -f font_dir ] [ -i icon_dir ] [ -s startup_file ] [ -n ]
[ -x ] [ -v ] [ -V ] [ -F default_font ]
{ [ -d list ] [ -m mouse_device ] [ -B window_buff ]
[ -b shell_buff ] [ -P poll_interval ] [ -S screen ] }

Mgr is a window manager for the SUN workstation. It permits
the creation and manipulation of overlapping windows, with
different processes running in each window. The user
controls the function and layout of the display with a
mouse. Windows are updated asynchronously even if they are
partially (or completely) obscured by other windows,
although obscured windows may arrange to have their output
suspended until the window is uncovered.

Each window runs a terminal emulator which, in addition to
the functions normally required to run screen oriented
programs, such as _vi_, provides primitives for drawing lines,
doing _bit-blts_, and performing administrative functions such
as _reshaping_ the window, changing _fonts,_ or starting a new
window. Details of of the terminal emulator operation are
described in the _MGR_

The useful command line options are:

-f font_dir
Use font_dir as the directory to find the fonts,
instead of /usr/mgr/font.

-i icon_dir
Use icon_dir as the directory to find the icons,
instead of /usr/mgr/icon.

-s startup_file
Use startup instead of $HOME/.mgrc to obtain initial
configuration information. See the description of
startup commands below.

Bitmap files are created using the new, portable bitmap
format. The portable format has an 8 byte header, and each
row is padded to a byte boundary. Ordinarily the old
(6 byte) bitmap header is produced, followed by the bitmap
data with each line padded to an 16 bit boundary. Eventually,
the sense of -n will change, when all of the programs that
were written in the old format are changed.
Don't use a startup file upon execution.

Don't run MGR at all. Print the current version number and
creation date instead.
Just like -v above only prints the compile flags used to make MGR.

-F default_font
Use default_font as the pathname of a MGR builtin default

The rest of the options are:

-d list
Print debugging information on stderr. list is one or more of
the characters:
each of which turns on debugging output for some aspect of MGR

-m mouse_device
Use mouse_device instead of /dev/mouse to obtain mouse coordinates.

-S screen
Use screen instead of /dev/bwtwo0 as the display device.

-B win_buff
Process characters to a window in up to win_buff byte chunks
(the default is 40).

-b shell_buff
Buffer up to shell_buff bytes of output from a program before
writing it on a window (the default is 256).

-P poll_interval
When output is pending in a


MGR (1L) April 30, 1985 MGR (1L)

window, wait poll_interval micro-seconds on every polling loop
to give more process time to the processes running in the
windows. The default is zero.

Startup File Format
Upon invocation MGR reads commands from the "startup
file", $HOME/.mgrc (see -s flag above) to initialize the
display. Commands are placed one per line with the command
arguments separated by spaces or tabs. The following
commands are supported:

initcmd command [ args... ]
This command line is handed to the shell and executed at the
time the startup file is read.

suspendcmd command [ args... ]
This command line is handed to the shell and executed each
time MGR either due to a main menu selection or the Left-z key.

resumecmd command [ args... ]
This command line is handed to the shell and executed each time MGR

quitcmd command [ args... ]
This command line is handed to the shell and executed
just before MGR either due to a main menu selection or the
Left-Q key.

map n0 n1 n2 n3 n4 n5 n6 n7
This changes the meaning of the mouse buttons. Each
n[0-7] represents one of the 8 states of the three mouse. The
default mapping is: 0 1 2 3 4 5 6 7. To change the meaning
of the left and right buttons, 0 2 4 6 1 3 5 7 would be used.
It is possible to map a button out of existence, which may
have grave consequences.

font font_number font_name
The default font may be overridden by specifying the font
font which is to be substituted for the font at position
font_number. Font numbers are small integers, in the
range of 0-99. The font_names are found in the font
directory, by default /usr/mgr/font. See the -f flag above.

window x y wide high [ font_number ]
A window is created whose corner is at the coordinates
(x, and whose size is (wide, Units are in pixels,
with x and y increasing to the right and down respectively.
Wide and high can be set in terms of characters in the current font
by appending the letter "c" to the value. If x and y are -1, then
they are replaced by values that causes new windows to
"tile" across the screen. Setting wide and high to -1 is
identical to setting them to "80c" and "24c" respectively.
The scope of the command continues until either another
command or is reached. The rest of the options, shell,
start, init, flags, and newwindow apply only to the current
window command.

shell command [ args... ]
Command is the name of the command or shell to be started in
the window. If command is not specified, then the environment
variable $SHELL, or /bin/csh is used.

start command
The command is sent to the shell upon startup, as if it had
been typed at the keyboard.

init initial_string
The initial string is sent to the window upon startup. The string
is terminated by white space, the remainder of the line may be used
as a comment. The codes: \, or  may be
used to represent , or space

flags flag...
Normally a window self destructs when the original
process running in it dies. if _ nokill, _ currently the only
flag, is specified, the window hangs around until specifically
snuffed by the user.

The current window specification is not to be used to
initialize the display, but instead


MGR (1L) April 30, 1985 MGR (1L)

will be used when Left n or Right n to create a new

done must be the last line in the startup file if any window
commands are specified, or the last window command will not
take affect.

Using The Mouse

User interaction with MGR is with the mouse. Moving the
mouse causes a corresponding movement of the mouse usually an
arrow pointing to the upper left. The left or command of mouse
activates a menu whose options depend upon the current mouse
position. An option is chosen by moving the mouse
vertically while the command button is depressed, releasing
the button when the appropriate selection is highlighted.

When the mouse is over the background pattern, or at the
extreme left edge of the screen, the command is activated by
the mouse. The command menu options are:

A new window is created by moving the the mouse cursor
(now a box) to the upper left corner of the window,
depressing the command sweeping out the window, then
releasing the command The new window, if it is big enough, is
started with a shell running in it.
The background and windows are redrawn. This is useful
if a process unknown to MGR scribbles on the display.
It is left to the processing running in a window to fix
the contents of its window.
MGR is terminated, after the quit is confirmed. Alternately,
MGR may be suspended (ala ^Z in csh ).

When the mouse is over the active window, the fat bordered
window the keyboard is connected to, the window is activated
by depressing the command. The window menu options are:

Reshape reshapes the active window, using a procedure similar
to new above.
An outline of the current window is moved
along with the mouse until the command is depressed and
released. The current window is then moved to the new

The current window is made inactive. Another
window (if any) becomes the active window.

The mouse may be
used to sweep out and save text from the current window
into a global buffer. A small scissors appears as the mouse
cursor. Position the upper left corner of the scissors with
the upper left corner of the first character to be saved,
then push one of the mouse buttons, moving the mouse to
sweep out the desired text. Releasing the button causes the
outlined text to be saved. Using the command with cut causes
the current contents of the global buffer (if any) to be
replaced by the indicated text. Either of the other two
buttons causes the indicated text to be appended to the
global buffer.

The cut facility currently works only for windows
containing a single font, aligned on the default
character boundaries. Applications which use only the
terminal emulator sub-set of MGR capabilities, such as
the shell, mail, and editors automatically meet this
restriction. Cuttability may be restored by issuing a
clear (i.e. form feed) to the window. The window flashes


MGR (1L) April 30, 1985 MGR (1L)

and beeps if the cut operation could not be completed,
usually the result of corrupted data in the window. In
such cases, no text is saved. See MGR for a
detailed description of the various cut option
paste The contents of the global buffer (if
any) are inserted into the input stream of the current
window. The global buffer is filled using cut above, or
under program control.
destroy All processes associated
with the current window are sent a hangup signal, and the
window is destroyed.

When the mouse is clicked on any window except the active
window, that window moves to the front and becomes the active

Using The Left and Right Keys
When MGR is invoked from the console keyboard, many of the
system menu functions have keyboard equivalents. Some of
the more interesting ones are activated by holding down the
Left or Right ^ keys, and then pressing:
space bar
to activate the previous window Back Space to activate
the bottom window
c to initiate a cut-text operation

p to initiate a paste operation

h hide the top window on the bottom

l to clear the active window

m initiate a cut-text operation which will
automatically cause a paste operation when completed n to
start a new window, 80 x 24 characters (if it will fit),
placed in the "tile" position of its window-set ID N start a
new window by sweeping with the mouse

Q to exit MGR
quickly 1-9 to activate the window with window-set ID 1
through 9 0 activates the window with window-set ID 10, a
synonym for w10 w number activate the window
with window-set ID numbeR r to redraw the windows R to redraw
the windows z to suspend MGR

There are other characters that cause MGR which may
disrupt the screen; they are i, I, M, +, -, #, and ?. Use
"redraw", either from the command menu on the mouse or
"right r" to restore the screen display.

The environment variable DEFAULT_FONT may be assigned the
full path name of a MGR font, which will then replace
MGR built in default font.

/dev/mouse place to obtain mouse coordinates. /dev/bwtwo0 name
of the display. /usr/mgr/icon place to find MGR icons.
/usr/mgr/font place to find MGR fonts. /usr/mgr/font/.mgrc
the global default startup file; delivered with 15 fonts
specified. $HOME/.mgrc place to find startup commands.
/dev/bell For ringing the bell. /dev/[pt]ty[pq]? Name of the

bounce(1L) browse(1L) bury(1L) clock(1L) clock2(1L)
close(1L) dmgr(1L) ether(1L) font(1L) iconmail(1L)
iconmsgs(1L) loadfont(1L) maze(1L) menu(1L) mgr(1L)
mgrmail(1L) mgrmsgs(1L) oclose(1L) omgrmail(1L) rotate(1L)
set_console(1L) set_termcap(1L) shape(1L) show(1L)


MGR (1L) April 30, 1985 MGR (1L)

showfont(1L) snap(1L) startup(1L) stat(1L) stringart(1L)
tjfilter(1L) window_print(1L) zoom(1L) bitmap(5L) font(5L)

Can't find a frame buffer No display device available. Make
sure /dev/bwtwo0 exists in /dev. Can't find a mouse, or it is
already in use MGR must have exclusive control of the
mouse. Internal MGR everything else.

* A separate application program, set_console(1L) is
required to prevent others from scribbling on /dev/console
and messing up the display. * As MGR requires exclusive
control of the mouse, it may not be invoked from within
itself. * Only fixed-width fonts are supported.

Stephen A. Uhler