Improve shadow bold mode: set the default shadow bold offset to +1
[sgt/putty] / unix / pterm.1
CommitLineData
d08e9679 1.TH pterm 1
2.UC
3.SH NAME
4pterm \- yet another X terminal emulator
5.SH SYNOPSIS
6\fBpterm\fP [ \fIoptions\fP ]
7.SH DESCRIPTION
8\fIpterm\fP is a terminal emulator for X. It is based on a port of
9the terminal emulation engine in the Windows SSH client PuTTY.
10.SH OPTIONS
11The command-line options supported by \fIpterm\fP are:
12.IP "\fB-e\fP \fIcommand\fP [ \fIarguments\fP ]"
13Specify a command to be executed in the new terminal. Everything on
14the command line after this option will be passed straight to the
15\fIexecvp\fP system call; so if you need the command to redirect its
16input or output, you will have to use \fIsh\fP:
17
18pterm -e sh -c 'mycommand < inputfile'
19.IP "\fB--display\fP \fIdisplay-name\fP"
20Specify the X display on which to open \fIpterm\fP. (Note this
21option has a double minus sign, even though none of the others do.
22This is because this option is supplied automatically by GTK.
23Sorry.)
24.IP "\fB-name\fP \fIfont-name\fP"
25Specify the name under which \fIpterm\fP looks up X resources.
26Normally it will look them up as (for example) \fBpterm.Font\fP. If
27you specify "-name xyz", it will look them up as \fBxyz.Font\fP
28instead. This allows you to set up several different sets of
29defaults and choose between them.
30.IP "\fB-fn\fP \fIfont-name\fP"
31Specify the font to use for normal text displayed in the terminal.
32.IP "\fB-fb\fP \fIfont-name\fP"
33Specify the font to use for bold text displayed in the terminal. If
34the \fIBoldAsColour\fP resource is set to 1 (the default), bold text
35will be displayed in different colours instead of a different font,
36so this option will be ignored. If \fIBoldAsColour\fP is set to 0
37and you do not specify a bold font, \fIpterm\fP will overprint the
38normal font to make it look bolder.
39.IP "\fB-geometry\fP \fIwidth\fPx\fIheight\fP"
40Specify the size of the terminal, in rows and columns of text.
41Unfortunately \fIpterm\fP does not currently support specifying the
42initial position of the window.
43.IP "\fB-sl\fP \fIlines\fP"
44Specify the number of lines of scrollback to save off the top of the
45terminal.
46.IP "\fB-fg\fP \fIcolour\fP"
47Specify the foreground colour to use for normal text.
48.IP "\fB-bg\fP \fIcolour\fP"
49Specify the background colour to use for normal text.
50.IP "\fB-bfg\fP \fIcolour\fP"
51Specify the foreground colour to use for bold text, if the
52\fIBoldAsColour\fP resource is set to 1 (the default).
53.IP "\fB-bbg\fP \fIcolour\fP"
54Specify the foreground colour to use for bold reverse-video text, if
55the \fIBoldAsColour\fP resource is set to 1 (the default). (This
56colour is best thought of as the bold version of the background
57colour; so it only appears when text is displayed \fIin\fP the
58background colour.)
59.IP "\fB-cfg\fP \fIcolour\fP"
60Specify the foreground colour to use for text covered by the cursor.
61.IP "\fB-cbg\fP \fIcolour\fP"
62Specify the background colour to use for text covered by the cursor.
63In other words, this is the main colour of the cursor.
64.IP "\fB-T\fP \fItitle\fP"
65Specify the initial title of the terminal window. (This can be
66changed under control of the server.)
67.IP "\fB-ut-\fP or \fB+ut\fP"
68Tells \fIpterm\fP not to record your login in the \fIutmp\fP,
69\fIwtmp\fP and \fIlastlog\fP system log files; so you will not show
70up on \fIfinger\fP or \fIwho\fP listings, for example.
71.IP "\fB-ut\fP"
72Tells \fIpterm\fP to record your login in \fIutmp\fP, \fIwtmp\fP and
73\fIlastlog\fP: this is the opposite of \fI-ut-\fP. This is the
74default option: you will probably only need to specify it explicitly
75if you have changed the default using the \fIStampUtmp\fP resource.
76.IP "\fB-ls-\fP or \fB+ls\fP"
77Tells \fIpterm\fP not to execute your shell as a login shell.
78.IP "\fB-ls\fP"
79Tells \fIpterm\fP to execute your shell as a login shell: this is
80the opposite of \fI-ls-\fP. This is the default option: you will
81probably only need to specify it explicitly if you have changed the
82default using the \fILoginShell\fP resource.
83.IP "\fB-sb-\fP or \fB+sb\fP"
84Tells \fIpterm\fP not to display a scroll bar.
85.IP "\fB-sb\fP"
86Tells \fIpterm\fP to display a scroll bar: this is the opposite of
86f2f4f8 87\fI-sb-\fP. This is the default option: you will probably only need
d08e9679 88to specify it explicitly if you have changed the default using the
89\fIScrollBar\fP resource.
90.IP "\fB-log\fP \fIfilename\fP"
91This option makes \fIpterm\fP log all the terminal output to a file
92as well as displaying it in the terminal.
93.IP "\fB-nethack\fP"
94Tells \fIpterm\fP to enable NetHack keypad mode, in which the
95numeric keypad generates the NetHack "hjklyubn" direction keys. This
96enables you to play NetHack with the numeric keypad without having
97to use the NetHack "number_pad" option (which requires you to press
98"n" before any repeat count). So you can move with the numeric
99keypad, and enter repeat counts with the normal number keys.
0ac15bdc 100.IP "\fB-xrm\fP \fIresource-string\fP"
101This option specifies an X resource string. Useful for setting
102resources which do not have their own command-line options. For
103example:
104
105pterm -xrm 'ScrollbarOnLeft: 1'
96add444 106.IP "\fB-help\fP, \fB--help\fP"
107Display a message summarizing the available options
d08e9679 108.SH X RESOURCES
109\fIpterm\fP can be more completely configured by means of X
110resources. All of these resources are of the form \fIpterm.FOO\fP
111for some FOO; you can make \fIpterm\fP look them up under another
112name, such as \fIxyz.FOO\fP, by specifying the command-line option
113"-name xyz".
90cfd8f4 114.IP "\fBpterm.CloseOnExit\fP"
461b078e 115This option should be set to 0, 1 or 2; the default is 2. It
90cfd8f4 116controls what \fIpterm\fP does when the process running inside it
461b078e 117terminates. When set to 2 (the default), \fIpterm\fP will close its
118window as soon as the process inside it terminates. When set to 0,
119\fIpterm\fP will print the process's exit status, and the window
120will remain present until a key is pressed (allowing you to inspect
121the scrollback, and copy and paste text out of it).
90cfd8f4 122
461b078e 123When this setting is set to 1, \fIpterm\fP will close
90cfd8f4 124immediately if the process exits cleanly (with an exit status of
125zero), but the window will stay around if the process exits with a
126non-zero code or on a signal. This enables you to see what went
127wrong if the process suffers an error, but not to have to bother
128closing the window in normal circumstances.
d08e9679 129.IP "\fBpterm.TerminalType\fP"
130This controls the value set in the TERM environment variable inside
131the new terminal. The default is "xterm".
132.IP "\fBpterm.BackspaceIsDelete\fP"
133This option should be set to either 0 or 1; the default is 1. When
134set to 0, the ordinary Backspace key generates the Backspace
135character (^H); when set to 1, it generates the Delete character
136(^?). Whichever one you set, the terminal device inside \fIpterm\fP
137will be set up to expect it.
138.IP "\fBpterm.RXVTHomeEnd\fP"
139This option should be set to either 0 or 1; the default is 0. When
140it is set to 1, the Home and End keys generate the control sequences
141they would generate in the \fIrxvt\fP terminal emulator, instead of
142the more usual ones generated by other emulators.
143.IP "\fBpterm.LinuxFunctionKeys\fP"
144This option can be set to any number between 0 and 5 inclusive; the
145default is 0. The modes vary the control sequences sent by the
146function keys; for more complete documentation, it is probably
147simplest to try each option in "pterm -e cat", and press the keys to
148see what they generate.
149.IP "\fBpterm.NoApplicationKeys\fP"
150This option should be set to either 0 or 1; the default is 0. When
151set to 1, it stops the server from ever switching the numeric keypad
152into application mode (where the keys send function-key-like
153sequences instead of numbers or arrow keys). You probably only need
154this if some application is making a nuisance of itself.
155.IP "\fBpterm.NoApplicationCursors\fP"
156This option should be set to either 0 or 1; the default is 0. When
157set to 1, it stops the server from ever switching the cursor keys
158into application mode (where the keys send slightly different
159sequences). You probably only need this if some application is
160making a nuisance of itself.
161.IP "\fBpterm.NoMouseReporting\fP"
162This option should be set to either 0 or 1; the default is 0. When
163set to 1, it stops the server from ever enabling mouse reporting
164mode (where mouse clicks are sent to the application instead of
165controlling cut and paste).
166.IP "\fBpterm.NoRemoteResize\fP"
167This option should be set to either 0 or 1; the default is 0. When
168set to 1, it stops the server from being able to remotely control
169the size of the \fIpterm\fP window.
170.IP "\fBpterm.NoAltScreen\fP"
171This option should be set to either 0 or 1; the default is 0. When
172set to 1, it stops the server from using the "alternate screen"
173terminal feature, which lets full-screen applications leave the
174screen exactly the way they found it.
175.IP "\fBpterm.NoRemoteWinTitle\fP"
176This option should be set to either 0 or 1; the default is 0. When
177set to 1, it stops the server from remotely controlling the title of
178the \fIpterm\fP window.
179.IP "\fBpterm.NoDBackspace\fP"
180This option should be set to either 0 or 1; the default is 0. When
181set to 1, it disables the normal action of the Delete (^?) character
182when sent from the server to the terminal, which is to move the
183cursor left by one space and erase the character now under it.
184.IP "\fBpterm.ApplicationCursorKeys\fP"
185This option should be set to either 0 or 1; the default is 0. When
186set to 1, the default initial state of the cursor keys are
187application mode (where the keys send function-key-like sequences
188instead of numbers or arrow keys). When set to 0, the default state
189is the normal one.
190.IP "\fBpterm.ApplicationKeypad\fP"
191This option should be set to either 0 or 1; the default is 0. When
192set to 1, the default initial state of the numeric keypad is
193application mode (where the keys send function-key-like sequences
194instead of numbers or arrow keys). When set to 0, the default state
195is the normal one.
196.IP "\fBpterm.NetHackKeypad\fP"
197This option should be set to either 0 or 1; the default is 0. When
198set to 1, the numeric keypad operates in NetHack mode. This is
199equivalent to the \fI-nethack\fP command-line option.
200.IP "\fBpterm.Answerback\fP"
201This option controls the string which the terminal sends in response
202to receiving the ^E character ("tell me about yourself"). By default
203this string is "PuTTY".
204.IP "\fBpterm.HideMousePtr\fP"
205This option should be set to either 0 or 1; the default is 0. When
206it is set to 1, the mouse pointer will disappear if it is over the
207\fIpterm\fP window and you press a key. It will reappear as soon as
208you move it.
209.IP "\fBpterm.WindowBorder\fP"
210This option controls the number of pixels of space between the text
211in the \fIpterm\fP window and the window frame. The default is 1.
212You can increase this value, but decreasing it to 0 is not
213recommended because it can cause the window manager's size hints to
214work incorrectly.
215.IP "\fBpterm.CurType\fP"
216This option should be set to either 0, 1 or 2; the default is 0.
217When set to 0, the text cursor displayed in the window is a
218rectangular block. When set to 1, the cursor is an underline; when
219set to 2, it is a vertical line.
220.IP "\fBpterm.BlinkCur\fP"
221This option should be set to either 0 or 1; the default is 0. When
222it is set to 1, the text cursor will blink when the window is active.
223.IP "\fBpterm.Beep\fP"
224This option should be set to either 0 or 2 (yes, 2); the default is
2250. When it is set to 2, \fIpterm\fP will respond to a bell character
226(^G) by flashing the window instead of beeping.
227.IP "\fBpterm.BellOverload\fP"
228This option should be set to either 0 or 1; the default is 0. When
229it is set to 1, \fIpterm\fP will watch out for large numbers of
230bells arriving in a short time and will temporarily disable the bell
231until they stop. The idea is that if you \fIcat\fP a binary file,
232the frantic beeping will mostly be silenced by this feature and will
233not drive you crazy.
234
235The bell overload mode is activated by receiving N bells in time T;
236after a further time S without any bells, overload mode will turn
237itself off again.
2cb50250 238
239Bell overload mode is always deactivated by any keypress in the
240terminal. This means it can respond to large unexpected streams of
241data, but does not interfere with ordinary command-line activities
242that generate beeps (such as filename completion).
d08e9679 243.IP "\fBpterm.BellOverloadN\fP"
244This option counts the number of bell characters which will activate
245bell overload if they are received within a length of time T. The
246default is 5.
247.IP "\fBpterm.BellOverloadT\fP"
248This option specifies the time period in which receiving N or more
249bells will activate bell overload mode. It is measured in
250microseconds, so (for example) set it to 1000000 for one second. The
251default is 2000000 (two seconds).
252.IP "\fBpterm.BellOverloadS\fP"
253This option specifies the time period of silence required to turn
254off bell overload mode. It is measured in microseconds, so (for
255example) set it to 1000000 for one second. The default is 5000000
256(five seconds of silence).
257.IP "\fBpterm.ScrollbackLines\fP"
258This option specifies how many lines of scrollback to save above the
259visible terminal screen. The default is 200. This resource is
260equivalent to the \fI-sl\fP command-line option.
261.IP "\fBpterm.DECOriginMode\fP"
262This option should be set to either 0 or 1; the default is 0. It
263specifies the default state of DEC Origin Mode. (If you don't know
264what that means, you probably don't need to mess with it.)
265.IP "\fBpterm.AutoWrapMode\fP"
266This option should be set to either 0 or 1; the default is 1. It
267specifies the default state of auto wrap mode. When set to 1, very
268long lines will wrap over to the next line on the terminal; when set
269to 0, long lines will be squashed against the right-hand edge of the
270screen.
271.IP "\fBpterm.LFImpliesCR\fP"
272This option should be set to either 0 or 1; the default is 0. When
273set to 1, the terminal will return the cursor to the left side of
274the screen when it receives a line feed character.
275.IP "\fBpterm.WinTitle\fP"
276This resource is the same as the \fI-T\fP command-line option: it
277controls the initial title of the window. The default is "pterm".
278.IP "\fBpterm.TermWidth\fP"
279This resource is the same as the width part of the \fI-geometry\fP
280command-line option: it controls the number of columns of text in
281the window. The default is 80.
282.IP "\fBpterm.TermHeight\fP"
283This resource is the same as the width part of the \fI-geometry\fP
284command-line option: it controls the number of columns of text in
285the window. The defaults is 24.
286.IP "\fBpterm.Font\fP"
287This resource is the same as the \fI-fn\fP command-line option: it
288controls the font used to display normal text. The default is
289"fixed".
290.IP "\fBpterm.BoldFont\fP"
291This resource is the same as the \fI-fb\fP command-line option: it
292controls the font used to display bold text when \fIBoldAsColour\fP
293is turned off. The default is unset (the font will be bolded by
294printing it twice at a one-pixel offset).
12994a99 295.IP "\fBpterm.ShadowBoldOffset\fP"
296This resource can be set to an integer; the default is -1. It
297specifies the offset at which text is overprinted when using "shadow
623f81b7 298bold" mode. The default (1) means that the text will be printed in
299the normal place, and also one character to the right; this seems to
12994a99 300work well for most X bitmap fonts, which have a blank line of pixels
623f81b7 301down the right-hand side. For some fonts, you may need to set this to
302-1, so that the text is overprinted one pixel to the left; for
303really large fonts, you may want to set it higher than 1 (in one
304direction or the other).
d08e9679 305.IP "\fBpterm.BoldAsColour\fP"
306This option should be set to either 0 or 1; the default is 1. It
307specifies the default state of auto wrap mode. When set to 1, bold
308text is shown by displaying it in a brighter colour; when set to 0,
309bold text is shown by displaying it in a heavier font.
310.IP "\fBpterm.Colour0\fP, \fBpterm.Colour1\fP, ..., \fBpterm.Colour21\fP"
311These options control the various colours used to display text in
312the \fIpterm\fP window. Each one should be specified as a triple of
313decimal numbers giving red, green and blue values: so that black is
314"0,0,0", white is "255,255,255", red is "255,0,0" and so on.
315
316Colours 0 and 1 specify the foreground colour and its bold
317equivalent (the \fI-fg\fP and \fI-bfg\fP command-line options).
318Colours 2 and 3 specify the background colour and its bold
319equivalent (the \fI-bg\fP and \fI-bbg\fP command-line options).
320Colours 4 and 5 specify the text and block colours used for the
321cursor (the \fI-cfg\fP and \fI-cbg\fP command-line options). Each
322even number from 6 to 20 inclusive specifies the colour to be used
323for one of the ANSI primary colour specifications (black, red,
324green, yellow, blue, magenta, cyan, white, in that order); the odd
325numbers from 7 to 21 inclusive specify the bold version of each
326colour, in the same order. The defaults are:
327
328.nf
329pterm.Colour0: 187,187,187
330pterm.Colour1: 255,255,255
331pterm.Colour2: 0,0,0
332pterm.Colour3: 85,85,85
333pterm.Colour4: 0,0,0
334pterm.Colour5: 0,255,0
335pterm.Colour6: 0,0,0
336pterm.Colour7: 85,85,85
337pterm.Colour8: 187,0,0
338pterm.Colour9: 255,85,85
339pterm.Colour10: 0,187,0
340pterm.Colour11: 85,255,85
341pterm.Colour12: 187,187,0
342pterm.Colour13: 255,255,85
343pterm.Colour14: 0,0,187
344pterm.Colour15: 85,85,255
345pterm.Colour16: 187,0,187
346pterm.Colour17: 255,85,255
347pterm.Colour18: 0,187,187
348pterm.Colour19: 85,255,255
349pterm.Colour20: 187,187,187
350pterm.Colour21: 255,255,255
351.fi
352.IP "\fBpterm.RectSelect\fP"
353This option should be set to either 0 or 1; the default is 0. When
354set to 0, dragging the mouse over several lines selects to the end
355of each line and from the beginning of the next; when set to 1,
356dragging the mouse over several lines selects a rectangular region.
357In each case, holding down Alt while dragging gives the other
358behaviour.
359.IP "\fBpterm.MouseOverride\fP"
360This option should be set to either 0 or 1; the default is 1. When
361set to 1, if the application requests mouse tracking (so that mouse
362clicks are sent to it instead of doing selection), holding down
363Shift will revert the mouse to normal selection. When set to 0,
364mouse tracking completely disables selection.
365.IP "\fBpterm.Printer\fP"
366This option is unset by default. If you set it, then
367server-controlled printing is enabled: the server can send control
368sequences to request data to be sent to a printer. That data will be
369piped into the command you specify here; so you might want to set it
370to "lpr", for example, or "lpr -Pmyprinter".
371.IP "\fBpterm.ScrollBar\fP"
372This option should be set to either 0 or 1; the default is 1. When
373set to 0, the scrollbar is hidden (although Shift-PageUp and
374Shift-PageDown still work). This is the same as the \fI-sb\fP
375command-line option.
376.IP "\fBpterm.ScrollbarOnLeft\fP"
377This option should be set to either 0 or 1; the default is 0. When
378set to 1, the scrollbar will be displayed on the left of the
379terminal instead of on the right.
380.IP "\fBpterm.ScrollOnKey\fP"
381This option should be set to either 0 or 1; the default is 0. When
382set to 1, any keypress causes the position of the scrollback to be
383reset to the very bottom.
384.IP "\fBpterm.ScrollOnDisp\fP"
385This option should be set to either 0 or 1; the default is 1. When
386set to 1, any activity in the display causes the position of the
387scrollback to be reset to the very bottom.
388.IP "\fBpterm.BCE\fP"
389This option should be set to either 0 or 1; the default is 1. When
390set to 1, the various control sequences that erase parts of the
391terminal display will erase in whatever the current background
392colour is; when set to 0, they will erase in black always.
393.IP "\fBpterm.BlinkText\fP"
394This option should be set to either 0 or 1; the default is 0. When
395set to 1, text specified as blinking by the server will actually
396blink on and off; when set to 0, \fIpterm\fP will use the less
397distracting approach of making the text's background colour bold.
398.IP "\fBpterm.StampUtmp\fP"
399This option should be set to either 0 or 1; the default is 1. When
400set to 1, \fIpterm\fP will log the login in the various system log
401files. This resource is equivalent to the \fI-ut\fP command-line
402option.
403.IP "\fBpterm.LoginShell\fP"
404This option should be set to either 0 or 1; the default is 1. When
405set to 1, \fIpterm\fP will execute your shell as a login shell. This
406resource is equivalent to the \fI-ls\fP command-line option.
407.SH BUGS
408Most of the X resources have silly names. (Historical reasons from
409PuTTY, mostly.)
410
411Character-set switching and Unicode are not yet supported.