Prepending a p: onto hostname causes the connection to go through the telnet-passthru service rather than directly to the host. See PASSTHRU below.
Prepending an s: onto hostname removes the "extended data stream" option reported to the host. See -tn for further information.
The port to connect to defaults to telnet. This can be overridden with the -port option, or by specifying a port on the command line.
The first part is the base model, which is either 3278 or 3279. 3278 specifies a monochrome 3270 display; 3279 specifies a color 3270 display. When 3278 emulation is specified for a color X display, fields are displayed using pseudo-colors; see PSEUDO-COLOR below.
The second part is the model number, which specifies the number of rows and columns. Model 4 is the default.
Model Number Columns Rows
----------------------------
2 80 24
3 80 30
4 80 43
5 132 27
Note: Technically, there is no such 3270 display as a 3279-4
or 3279-5, but most hosts seem to work with them anyway.
The third part specifies the Extended 3270 Data Stream, and is given as -E. It signals the host that the 3270 display is capable of displaying extended field attributes, and supports structured fields and query replies. A 3279 always uses the Extended Data Stream (whether or not -E is specified); for a 3278 it is optional.
The default model for a color X display is 3279-4-E. For a monochrome X display, it is 3278-4-E. (The behavior of previous versions of x3270 on color X displays can be specified as 3278-4).
Some hosts are confused by the -E suffix on the terminal name, and will ignore the extra screen area on models 3, 4 and 5. Prepending an :s on the hostname removes the -E from the terminal name when connecting to such hosts.
The name can also be specified with the "x3270.termName" resource.
The font may be specified with the -efont option or the "x3270.emulatorFont" resource.
x3270 can also use any constant-spaced X font, but unless the font implements the entire ISO 8859-1 (Latin-1) character set, x3270 may not properly display several EBCDIC graphics that do not have ASCII equivalents.
One additional font, 3270d, is supplied. This font is identical to the default 3270 font, except that it has bitmaps defined for field attribute characters. This means that field attributes, which are normally displayed as blanks, are now visible on the screen. The characters displayed are hexadecimal codes, which can be translated using a document provided with the x3270 sources.
The font can be changed at any time through a menu option. It can also be implicitly changed by changing the size of the x3270 window with the mouse: if the window is made larger, x3270 will try to change to a larger font, and vice-versa.
Charset Name Q121 Code
-------------------------
bracket -
us-intl 01
german 03
finnish 09
uk 22
norwegian 23
french 30
hebrew* -
(*) requires a special font, 3270h
The default character set is bracket, which useful for common
IBM hosts which use EBCDIC
codes 0xAD and 0xBD for the `[' and `]' characters, respectively.
You can also specify national-language translations for your keyboard; see KEYMAPS.
33-127:48,161-255:48
See xterm(1) for further syntax details.
left in a separate window, to the left of the screen
right in a separate window, to the right of the screen
bottom in a separate window, below the screen
integral in the same window as the screen, below it
The default is right.
If the "x3270.keypadOn" resource is set to true, the keypad will be displayed at startup.
You may specify a different ibm_hosts database with the "x3270.hostsFile" resource.
The color scheme may also be changed while x3270 is running with a selection from the Options menu.
x3270.normalColor: green
x3270.boldColor: cyan
x3270.inputColor: orange
x3270.colorBackground: black
x3270.selectBackground: dim gray
If the host later negotiates to stop functioning in 3270 mode, x3270 will return to ANSI emulation.
When emulating an ANSI terminal, x3270 supports both character-at-a-time mode and line mode operation. You may select the mode with a menu option. When in line mode, the special characters and operational characteristics are defined by resources:
Mode/Character Resource Default
-------------------------------------------------
Translate CR to NL x3270.icrnl true
Translate NL to CR x3270.inlcr false
Erase previous character x3270.erase ^?
Erase entire line x3270.kill ^U
Erase previous word x3270.werase ^W
Redisplay line x3270.rprnt ^R
Ignore special meaning of
next character x3270.lnext ^V
Interrupt x3270.intr ^C
Quit x3270.quit ^\
End of file x3270.eof ^D
The menu bar can be turned off by setting the "x3270.menuBar" resource to false.
The top sections of the File and Options menus are a series of toggles, options that may be either on or off. The toggles under the File menu are as follows:
Menu Option Name
------------------------------------
Monocase monoCase
Blinking Cursor cursorBlink
Blank Fill blankFill
Show Timing showTiming
Track Cursor cursorPos
Trace Data Stream dsTrace
Trace X Events eventTrace
Save Screen(s) in File screenTrace
Scrollbar scrollBar
Wraparound lineWrap
Paste with Left Margin marginedPaste
Select by Rectangles rectangleSelect
In addition, the toggle altCursor can be used to select the cursor type.
If set, an underline cursor will be used.
If clear, the normal block cursor will be used.
These names also represent resources that can be set in your .Xdefaults file. For example, if you always want to have the scrollbar on, you can add the following to your .Xdefaults:
x3270.scrollBar: true
However, twm does not put labels on application-supplied icon windows. You can have x3270 add its own label to the icon by setting the "x3270.labelIcon" resource to true. The default font for icon labels is 8x13; you may change it with the "x3270.iconLabelFont" resource.
The keymap may also be specified as a comma-separated list of names. Later definitions override earlier ones. This is used to specify both a primary keyboard type and a set of modifiers. The modifiers defined include:
The temporary keymap hebrew is provided to allow entry of Hebrew characters.
The X Toolkit translation mechanism is used to provide keyboard emulation. It maps events into actions. The best documentation can be found with X toolkit documents, but the following should suffice for simple customization.
An Xt event consists of (at least) four fields. The first is called a modifier. It may be any combination of meta, shift and ctrl. If it is prefaced by !, it means those modifiers only. The second field is the specific event, in x3270 usually just <Key>. The third field is the detail field, which gives the actual key. The name of the key may be determined using the xev program or with the "Trace X Events" menu option. The last field is the action, which is the internal emulator function. A complete list of actions may be found later in the manual.
There are three levels of translation tables in x3270. The first is a default, compiled in table. It defines alphabetic, numeric, function keys, and such basic functions as Enter and Delete. It allows a minimal useful functionality.
The second level is a keyboard specific table, which is found in the application default file, which defines actions for such things as keypad keys, and keys unique to certain keyboards.
The third level is a user customizable table which may be used to augment or override key definitions. This will typically be found in the users .Xdefaults file. The naming for a sun4 keyboard would be:
x3270.keymap.default:
x3270.keymap.sun_k4:
x3270.keymap.sun_k4.user:
The basic default translation table is:
<Key>Multi_key Compose()
Shift<Key>Return Newline()
<Key>Return Enter()
<Key>Linefeed Newline()
Shift<Key>Tab BackTab()
<Key>Tab Tab()
<Key>Home Home()
Meta<Key>Left PreviousWord()
<Key>Left Left()
Meta<Key>Right NextWord()
<Key>Right Right()
<Key>Up Up()
<Key>Down Down()
<Key>Insert Insert()
<Key>Delete Delete()
<Key>BackSpace BackSpace()
Ctrl<Btn1Down> HandleMenu(quitMenu)
Ctrl<Btn2Down> HandleMenu(optionsMenu)
Ctrl<Btn3Down> HandleMenu(hostMenu)
Shift<Btn1Down> MoveCursor()
<Btn1Down> select-start()
<Btn1Motion> select-extend()
<Btn2Down> ignore()
<Btn2Motion> ignore()
<Btn2Up> insert-selection(PRIMARY)
<Btn3Down> start-extend()
<Btn3Motion> select-extend()
<BtnUp> select-end(PRIMARY)
Meta<Key>F1 PF(13)
Meta<Key>F2 PF(14)
Meta<Key>F3 PF(15)
Meta<Key>F4 PF(16)
Meta<Key>F5 PF(17)
Meta<Key>F6 PF(18)
Meta<Key>F7 PF(19)
Meta<Key>F8 PF(20)
Meta<Key>F9 PF(21)
Meta<Key>F10 PF(22)
Meta<Key>F11 PF(23)
Meta<Key>F12 PF(24)
<Key>F1 PF(1)
<Key>F2 PF(2)
<Key>F3 PF(3)
<Key>F4 PF(4)
<Key>F5 PF(5)
<Key>F6 PF(6)
<Key>F7 PF(7)
<Key>F8 PF(8)
<Key>F9 PF(9)
<Key>F10 PF(10)
<Key>F11 PF(11)
<Key>F12 PF(12)
Meta<Key>1 PA(1)
Meta<Key>2 PA(2)
Meta<Key>3 PA(3)
Meta<Key>a Attn()
Meta<Key>b PrintWindow()
Meta<Key>c Clear()
Meta<Key>d Delete()
Meta<Key>h Home()
Meta<Key>i Insert()
Meta<Key>l Redraw()
Meta<Key>p PrintText()
Meta<Key>q Quit()
Meta<Key>r Reset()
Ctrl<Key>u DeleteField()
Ctrl<Key>w DeleteWord()
:<Key>asciicircum CircumNot()
:<Key> Default()
Meta is the diamond shaped key on a sun_k4, "Alt" on an NCD,
"Extend Char" on an HP.
The following xmodmap command must be used on the NCD
to allow use the the "Alt" key:
xmodmap -e "keysym Alt_L = Meta_L"
The left mouse button may be used to make a selection.
Clicking once unselects the current selection.
Clicking twice selects the word under the mouse cursor.
Clicking three times selects the line under the mouse cursor.
Clicking and dragging selects a rectangular area of the display.
The middle mouse button may be used to paste a selection.
The right mouse button may also be used for selections, selecting the rectangular area between the current position and where the left button was last pressed.
On color X displays, the "x3270.selectBackground" resource is used to distinguish the selected text from the rest of the screen. On monochrome X displays, selected text is in reverse video. (It can be distinguished from a block cursor because the block cursor covers slightly less than an entire character position on the screen.)
The left mouse button, when pressed with the "Shift" key held down, moves the 3270 cursor to the where the mouse cursor is pointing.
This is the complete list of keymap-callable actions. Other actions are defined for use by scripts and are documented in x3270-script(1); still others actions are defined for internal use by x3270 and are not documented here.
Attn attention key
AltCursor switch between block and underscore cursor
BackSpace move cursor left (or send ASCII BS)
BackTab tab to start of previous input field
CircumNot input ^ in ANSI mode, or ¬ in 3270 mode
Clear clear screen
Compose next two keys form a special symbol
CursorSelect Cursor Select AID
Cut erase selected text
Default enter key literally
Delete delete character under cursor (or send ASCII DEL)
DeleteField delete the entire field
DeleteWord delete the current or previous word
Down move cursor down
Dup duplicate field
Enter Enter AID (or send ASCII CR)
Erase erase previous character (or send ASCII BS)
EraseEOF erase to end of current field
EraseInput erase all input fields
Execute(cmd) execute a command in a shell
FieldEnd move cursor to end of field
FieldMark mark field
HandleMenu(name) pop up a menu
Home move cursor to first input field
Insert set insert mode
Key(keysym) insert key keysym
Keymap(keymap) toggle alternate keymap (or remove with None)
Left move cursor left
Left2 move cursor left 2 positions
MoveCursor move cursor to mouse position
MonoCase toggle uppercase-only mode
Newline move cursor to first field on next line (or send ASCII LF)
NextWord move cursor to next word
PA(n) Program Attention AID (n from 1 to 3)
PF(n) Program Function AID (n from 1 to 24)
PreviousWord move cursor to previous word
PrintText(command) print screen text on printer
PrintWindow(command) print screen image (bitmap) on printer
Quit exit x3270
Reconnect reconnect to previous host
Redraw redraw window
Reset reset locked keyboard
Right move cursor right
Right2 move cursor right 2 positions
Script(command[,arg...]) run a script
SetFont(font) change emulator font
String(string) insert string (simple macro facility)
SysReq System Request AID
Tab move cursor to next input field
ToggleInsert toggle insert mode
Up move cursor up
the following are similar to xterm
ignore do nothing
insert-selection([atom[,atom...]])
paste selection
move-select a combination of MoveCursor and select-start
select-end([atom[,atom...]])
complete selection and assign to atom(s)
select-extend move the end of a selection
select-start mark the beginning of a selection
set-select([atom[,atom...]])
assign existing selection to atom(s)
start-extend begin marking the end of a selection
\b Left
\f Clear
\n Enter
\pan PA key n
\pfnn PF key nn
\r Newline
\t Tab
An example action would be:
Meta<Key>p: String("probs clearrdr\en")
Note: The strings are in ASCII and converted to EBCDIC,
so beware of inserting control codes.
Also, a backslash before a p
must be doubled so it will not be removed when resource files are read.
x3270.macros: \
log off: String("logout\\n")\\n\\
vtam: String("dial vtam\\n")\\n\\
pa1: PA(1)\\n\\
alt printer: PrintText("lpr -Plw2")
You can also define a different set of macros for each host.
If there is a resource named
"x3270.macros.somehost", it defines the macros menu for when
x3270 is connected to somehost.
The mappings between these pairs of ordinary keys and the symbols they represent is controlled by the "x3270.composeMap" resource; it gives the name of the map to use. The maps themselves are named "x3270.composeMap.name". The default is "latin1", which gives mappings for most of the symbols in the ISO 8859-1 Latin-1 character set that are not in the 7-bit ASCII character set.
Note: The default keymap defines the "Multi_key" keysym as the "Compose" key. If your keyboard lacks such a key, you may set up your own "Compose" key with a keymap that maps some other keysym onto the "Compose" action.
APL characters are supported only in the 3270 font.
Keyboard entry of APL characters is supported through the apl keymap modifier. This modifier defines the "Alt" key as an APL shift key, with a typical APL keyboard layout, e.g., "Alt" pressed with the A key results in the APL `alpha' symbol. Overstruck characters such as `quad-quote' are not defined as single keystrokes; instead they are entered as composites (see COMPOSITE CHARACTERS). A special composite map, apl, is provided for this purpose.
Note: Some keyboards do not define the "Alt" key as a modifier, so keymaps that use the "Alt" key will not function. On a Sun for example, this can be remedied with the command:
xmodmap -e "add mod2 = Alt_L"
For convenience, an -apl
option is defined, which is an abbreviation for the following resource
definitions:
x3270.keymap: your_keymap_name,apl
x3270.charset: apl
x3270.composeMap: apl
There are a number of APL
characters that are similar in appearance to non-APL characters.
In particular, the APL `stile', `slope,' `tilde' and `quotedot'
characters are similar to the EBCDIC `bar', `backslash,' `tilde'
and `exclaim' characters.
The APL characters are entered with the "Alt" key, and have slightly
different appearances.
The complete list of special APL keysyms is as follows:
Keysym EBCDIC Code
-----------------------------
apl_Aunderbar 41
apl_Bunderbar 42
apl_Cunderbar 43
apl_Dunderbar 44
apl_Eunderbar 45
apl_Funderbar 46
apl_Gunderbar 47
apl_Hunderbar 48
apl_Iunderbar 49
apl_Junderbar 51
apl_Kunderbar 52
apl_Lunderbar 53
apl_Munderbar 54
apl_Nunderbar 55
apl_Ounderbar 56
apl_Punderbar 57
apl_Qunderbar 58
apl_Runderbar 59
apl_Sunderbar 62
apl_Tunderbar 63
apl_Uunderbar 64
apl_Vunderbar 65
apl_Wunderbar 66
apl_Xunderbar 67
apl_Yunderbar 68
apl_Zunderbar 69
apl_alpha b0
apl_bracketleft ad
apl_bracketright bd
apl_circle 9d
apl_circlebar cd
apl_circleslope cf
apl_circlestar fd
apl_circlestile cd
apl_del ba
apl_delstile dd
apl_delta bb
apl_deltastile dd
apl_deltaunderbar fc
apl_deltilde fb
apl_diaeresis 72
apl_diaeresisdot ec
apl_diamond 70
apl_divide b8
apl_downarrow 8b
apl_downcaret 78
apl_downcarettilde cb
apl_downshoe ab
apl_downstile 8e
apl_downtack ac
apl_downtackjot fe
apl_downtackup da
apl_epsilon b1
apl_epsilonunderbar 75
apl_iota b2
apl_iotaunderbar 74
apl_jot af
apl_leftarrow 9f
apl_leftshoe 9b
apl_lefttack 76
apl_multiply b6
apl_notequal be
apl_notgreater 8c
apl_notless ae
apl_omega b4
apl_overbar a2
apl_plusminus 9e
apl_quad 90
apl_quaddivide ee
apl_quadjot 73
apl_quadquote de
apl_quotedot db
apl_rho b3
apl_rightarrow 8f
apl_rightshoe 9a
apl_righttack 77
apl_slashbar ea
apl_slope b7
apl_slopebar eb
apl_slopequad ce
apl_splat 9c
apl_squad cc
apl_stile bf
apl_tilde 80
apl_uparrow 8a
apl_upcaret 71
apl_upcarettilde ca
apl_upshoe aa
apl_upshoejot df
apl_upstile 8d
apl_uptack bc
apl_uptackjot ef
The PrintText action (usually assigned to the key <Meta>p) sends the current screen image to the printer as ASCII characters. The default command used to print the data is controlled by the "x3270.printTextCommand" resource; the default is lpr. You may also use a keymap definition to pass a print command the PrintText action itself. The command receives the screen text as its standard input. For example, the following keymap will save the screen text in a file:
Meta<Key>f: PrintText("cat >screen.image")
Note: HardPrint is an alias for PrintText.
The PrintWindow action (usually assigned to the key <Meta>b) sends the current screen image to the printer as a bitmap. The default command used to print the data is controlled by the "x3270.printWindowCommand" resource; the default is:
xwd -id %d | xpr | lpr
You may also use a keymap definition to pass a print command to the
PrintWindow action itself.
If the command contains the text "%d", the window ID of
x3270
will be substituted before it is run.
For example, the following keymap will pop up a duplicate of the current
screen image:
Meta<Key>g: PrintWindow("xwd -id %d | xwud &")
If the command for PrintWindow or PrintText begins with an "@" character,
the initial pop-up menu to confirm the print command is not displayed and
the command cannot be edited.
Pull-down menus may not work properly if the Caps Lock, Num Lock, Shift, Alt or Meta keys are pressed. This is a bug in the Athena menu widget and affects several other X applications as well.
X11 Port Copyright © 1990 by Jeff Sparkes.
Additional X11 Modifications Copyright © 1993, 1994, 1995 by Paul Mattes.
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that
both that copyright notice and this permission notice appear in
supporting documentation.