This is the nmh-1.0.3 version from 2000-01-18 (1.0.2 had no changes).
[mmh] / man / vmh.man
1 .\"
2 .\" %nmhwarning%
3 .\" $Id$
4 .\"
5 .\" include the -mh macro file
6 .so %etcdir%/tmac.h
7 .\"
8 .TH VMH %manext1% MH.6.8 [%nmhversion%]
9 .SH NAME
10 vmh \- visual front-end to nmh
11 .SH SYNOPSIS
12 .in +.5i
13 .ti -.5i
14 vmh
15 \%[\-prompt\ string]
16 \%[\-vmhproc\ program] \%[\-novmhproc]
17 .br
18 \%[switches\ for\ \fIvmhproc\fR]
19 \%[\-version]
20 \%[\-help]
21 .in -.5i
22 .SH DESCRIPTION
23 \fIvmh\fR is a program which implements the server side of the \fInmh\fR
24 window management protocol and uses \fIcurses\fR\0(3) routines to maintain
25 a split\-screen interface to any program which implements the client
26 side of the protocol.  This latter program, called the \fIvmhproc\fR,
27 is specified using the `\-vmhproc\ program' switch.
28
29 The upshot of all this is that one can run \fImsh\fR on a display terminal
30 and get a nice visual interface.  To do this, for example, just add
31 the line
32
33 .ti +.5i
34 mshproc: vmh
35
36 to your \&.mh\(ruprofile.  (This takes advantage of the fact that
37 \fImsh\fR is the default \fIvmhproc\fR for \fIvmh\fR.)
38
39 In order to facilitate things, if the `\-novmhproc' switch is given,
40 and \fIvmh\fR can't run on the user's terminal, the \fIvmhproc\fR is
41 run directly without the window management protocol.
42
43 After initializing the protocol, \fIvmh\fR prompts the user for a command
44 to be given to the client.  Usually, this results in output being sent to
45 one or more windows.  If a output to a window would cause it to scroll,
46 \fIvmh\fR prompts the user for instructions, roughly permitting the
47 capabilities of \fIless\fR or \fImore\fR (e.g., the ability to scroll
48 backwards and forwards):
49
50 .nf
51 .in +.5i
52 .ta \w'RETURN  'u +\w'*  'u
53 SPACE           advance to the next windowful
54 RETURN  *       advance to the next line
55 y       *       retreat to the previous line
56 d       *       advance to the next ten lines
57 u       *       retreat to the previous ten lines
58 g       *       go to an arbitrary line
59                 (preceed g with the line number)
60 G       *       go to the end of the window
61                 (if a line number is given, this acts like `g')
62 CTRL\-L         refresh the entire screen
63 h               print a help message
64 q               abort the window
65 .re
66 .in -.5i
67 .fi
68
69 (A `*' indicates that a numeric prefix is meaningful for this command.)
70
71 Note that if a command resulted in more than one window's worth of
72 information being displayed, and you allow the command which is generating
73 information for the window to gracefully finish (i.e., you don't use
74 the `q' command to abort information being sent to the window), then
75 \fIvmh\fR will give you one last change to peruse the window.  This is
76 useful for scrolling back and forth.  Just type `q' when you're done.
77
78 To abnormally terminate \fIvmh\fR (without core dump), use <QUIT>
79 (usually CTRL\-\\).  For instance, this does the \*(lqright\*(rq thing
80 with \fIbbc\fR and \fImsh\fR.
81
82 .Fi
83 ^$HOME/\&.mh\(ruprofile~^The user profile
84 .Pr
85 ^Path:~^To determine the user's nmh directory
86 .Sa
87 msh(1)
88 .De
89 `\-prompt\ (vmh)\ '
90 .Ds
91 `\-vmhproc\ msh'
92 .Co
93 None
94 .Bu
95 The argument to the `\-prompt' switch must be interpreted as a single
96 token by the shell that invokes \fIvmh\fR.  Therefore, one must usually
97 place the argument to this switch inside double\-quotes.
98
99 At present, there is no way to pass signals (e.g., interrupt, quit) to
100 the client.  However, generating QUIT when \fIvmh\fR is reading a command
101 from the terminal is sufficient to tell the client to go away quickly.
102
103 Acts strangely (loses peer or botches window management protocol with
104 peer) on random occasions.
105 .En