1
.TH SPLITVT 1 "1/5/95" "SPLITVT" "NONESSENTIAL UTILITIES"
4
splitvt - run two shells in a split window
8
splitvt [options] [shell]
15
Runs 'command' in the upper window
19
Runs 'command' in the lower window
23
Stats with the focus in the bottom window
27
Sets 'numlines' to the number of lines in the top window. This number
28
will be modified if the screen isn't big enough to handle the full
33
Sets an xterm title bar to 'title'
37
Runs the programs under each window as though they were login shells.
38
This is useful to have csh source it's .login file, bash source .profile,
43
Ovverrides any "set login on" statement in the startup file.
47
Loads 'file' as the startup file instead of ~/.splitvtrc.
51
Suppresses loading your ~/.splitvtrc
55
Print out the version number of splitvt
59
This program splits the screen into two windows, one above the other,
60
and runs a shell in each one. The default shell is taken from the
61
SHELL environment variable, or /bin/csh if SHELL isn't in the
62
environment, but another shell can be specified on the command line.
64
The top window is the default current window, but you can change to
65
the other by pressing ^W. Pressing ^V will quote the next character
66
to the current shell. Pressing ^O will put splitvt into command mode.
68
These special characters (command mode, switch window, and quote next
69
character) can be modified from within the .splitvtrc file.
71
When in command mode, splitvt will read one non-numeric character,
72
perform the requested command, and then revert to normal operations.
73
Numeric characters are interpreted as a parameter for the specified
74
command. The currently supported commands are:
79
Print a help window for the escape commands
84
Shrink the current window
89
Expand the current window
94
Select a block of text in the current window
99
Paste the selected text to the current window
104
Kill the current window (hangup signal)
109
Lock the screen, after prompting for password
114
Repaint the screen (clearing screen garbage)
119
Quickly quit splitvt, killing the running shells
121
More functions may be added in the future.
123
If the -s command line option is used, the upper window will be bound
124
to the user defined number of lines even if the screen is resized.
125
Otherwise, the screen will be split into two equal parts based on
126
the new size of the screen.
128
The environment variable SPLITVT is set in the shells forked by splitvt.
129
In the shell running in the upper window, this variable is set to the
130
value "upper", while the shell running in the lower window has this
131
variable set to the value "lower". This is useful in shell scripts to
132
provide different behavior depending on which window the script is
133
running in. An example of this is shown in the file "menu" in the examples
134
directory in the splitvt distribution.
136
When splitvt starts up, it looks in your home directory for a file named
139
You can set a number of parameters from within this file, including
140
all of the special characters, the default number of lines in the upper
141
window, whether or not to run the commands as login shells, and even
142
default commands to run in each window.
144
Here is an example of a .splitvtrc file:
149
# This is an example .splitvtrc file.
157
# This next line would override the above run statements
163
If programs like vi are doing strange things to the window while in
164
splitvt, you probably need to set the LINES environment variable to a
165
correct value, or set the terminal's window sizing correctly. This
166
should be done automatically, but may need to be corrected.
168
If you are running under an xterm window, the title bar will probably
169
be updated to show the version of splitvt that you are running.
170
Under a true xterm window, you can also switch which half of the window
171
you are typing into by clicking the mouse in the half of the window
172
in which you want to type. You can also drag and drop the separator
173
bar by pressing down on the mouse button over the separator bar,
174
holding it down, moving the mouse to where you want the bar to end up,
175
and then releasing the button.
177
splitvt will attempt to erase the current utmp entry, and replace it
178
with entries for the two windows. This allows you to use programs
179
such as 'talk' within the splitvt windows. If you do not have write
180
permission to the /etc/utmp file, you will not be able to modify the
183
splitvt can be made set-uid root. splitvt will reset its user id to
184
that of the person running it, just before it exec()'s the shell under
185
the window. The splitvt process remains with root permissions, and
186
will change ownership of the pseudo terminals to that of the person
187
running splitvt, and then reset it to root when the window is closed.
189
SPLITVT IS NOT GUARANTEED TO BE A SAFE SET-UID PROGRAM!
191
I have done all I know to keep splitvt a safely usable set-uid program,
192
but I do not know everything, and am not responsible for any security
193
weaknesses splitvt might posess.
195
When used with a certain public domain version of ksh, you have to
196
manually kill -9 on the shell processes after you quit splitvt. This
197
has to do with a bug in that version of ksh (Version 06/03/86a and
200
If splitvt is compiled with xterm support, when run under an xterm,
201
the cut and paste feature is semi-disabled. The title bar may also
202
be reset to the string "xterm" after splitvt quits. See the comments
203
at the top of splitvt.c for how to disable xterm support.
205
Ansi colors are not repainted on screen refresh.
207
There may be conflicts between splitvt's characters and other
208
programs. You can either change splitvt's default characters with
209
command line options, or you can type Ctrl-V (the quote character)
210
within splitvt, and the next character typed will be sent to the
211
current window, no matter what it is.
213
splitvt can only be used by terminals using vt100 emulation, due to
214
the use of specific vt100 escape codes. (vt300, xterm, Linux console,
215
etc, emulation also works)
217
When running in an xterm, if you press the escape key, you will have
218
to type another character in order for the escape to be seen by the
222
Sam Lantinga slouken@cs.ucdavis.edu