Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (NetBSD-2.0)
Apropos / Subsearch:
optional field

MAP3270(5)                    File Formats Manual                   MAP3270(5)

       map3270 - database for mapping ascii keystrokes into IBM 3270 keys


       When  emulating  IBM-style 3270 terminals under UNIX (see tn3270(1)), a
       mapping must be performed between sequences of keys  hit  on  a  user's
       (ascii) keyboard, and the keys that are available on a 3270.  For exam-
       ple, a 3270 has a key labeled EEOF which erases  the  contents  of  the
       current  field from the location of the cursor to the end.  In order to
       accomplish this function, the terminal user and a program  emulating  a
       3270 must agree on what keys will be typed to invoke the EEOF function.

       The requirements for these sequences are:

           1)   that the first character of the sequence be outside of the
                standard ascii printable characters;

           2)   that no sequence be an initial part of another (although
                sequences may share initial parts).

       The  file consists of entries for various keyboards.  The first part of
       an entry lists the names of the keyboards which use that entry.   These
       names  will  often be the same as in /usr/share/misc/termcap (see term-
       cap(5)); however, note that often the terminals  from  various  termcap
       entries  will all use the same map3270 entry; for example, both 925 and
       925vb (for 925 with visual bells) would probably use the  same  map3270
       entry.   Additionally,  there  are  occasions  when  the  terminal type
       defines a window manager, and it will then be necessary  to  specify  a
       keyboard  name  (via the KEYBD environment variable) as the name of the
       entry.  After the names, separated by vertical bars (`|'), comes a left
       brace (`{'); the definitions; and, finally, a right brace (`}').

       Each  definition  consists of a reserved keyword (see list below) which
       identifies the 3270 function (extended as defined below),  followed  by
       an equal sign (`='), followed by the various ways to generate this par-
       ticular function, followed by  a  semi-colon  (`;').   Each  way  is  a
       sequence  of strings of printable ascii characters enclosed inside sin-
       gle quotes (`''); various ways (alternatives) are separated by vertical
       bars (`|').

       Inside  the single quotes, a few characters are special.  A caret (`^')
       specifies that the next character is the ``control'' character of what-
       ever  the character is.  So, `^a' represents control-a, ie: hexadecimal
       1 (note that `^A' would generate the same code).   To  generate  rubout
       (DEL), one enters `^?'.  To represent a control character inside a file
       requires using the caret to represent a control sequence; simply typing
       control-A  will not work.  Note: the ctrl-caret sequence (to generate a
       hexadecimal 1E) is represented as `^^' (not `^\^').

       In addition to the caret, a letter  may  be  preceded  by  a  backslash
       (`\').   Since  this  has little effect for most characters, its use is
       usually not recommended.  For the case of a  single  quote  (`''),  the
       backslash  prevents that single quote from terminating the string.  For
       the case of a caret (`^'), the backslash prevents the caret from having
       its  special  meaning.  To have the backslash be part of the string, it
       is necessary to place two backslashes ('\\') in the file.

       In addition, the following characters are special:

            `\E'  means an escape character;
            `\n'  means newline;
            `\t'  means tab;
            `\r'  means carriage return.

       It is not necessary for each character  in  a  string  to  be  enclosed
       within single quotes.  `\E\E\E' means three escape characters.

       Comments,  which  may appear anywhere on a line, begin with a hash mark
       (`#'), and terminate at the end of that line.  However, comments cannot
       begin inside a quoted string; a hash mark inside a quoted string has no
       special meaning.

       The following is the list of 3270 key names that are supported in  this
       file.   Note  that  some  of the keys don't really exist on a 3270.  In
       particular, the developers of this file have relied extensively on  the
       work  at  the  Yale University Computer Center with their 3270 emulator
       which runs in an IBM Series/1 front end.   The  following  list  corre-
       sponds  closely  to  the functions that the developers of the Yale code
       offer in their product.

       In the following list, the starred ("*") functions are not supported by
       tn3270(1).   An  unsupported  function  will  cause tn3270(1) to send a
       (possibly visual) bell sequence to the user's terminal.

               3270 Key Name   Functional description

            (*)LPRT            local print
               DP              dup character
               FM              field mark character
               CURSEL          cursor select
               CENTSIGN        EBCDIC cent sign
               RESHOW          redisplay the screen
               EINP            erase input
               EEOF            erase end of field
               DELETE          delete character
               INSRT           toggle insert mode
               TAB             field tab
               BTAB            field back tab
               COLTAB          column tab
               COLBAK          column back tab
               INDENT          indent one tab stop
               UNDENT          undent one tab stop
               NL              new line
               HOME            home the cursor
               UP              up cursor
               DOWN            down cursor
               RIGHT           right cursor
               LEFT            left cursor
               SETTAB          set a column tab
               DELTAB          delete a columntab
               SETMRG          set left margin
               SETHOM          set home position
               CLRTAB          clear all column tabs
            (*)APLON           apl on
            (*)APLOFF          apl off
            (*)APLEND          treat input as ascii
            (*)PCON            xon/xoff on
            (*)PCOFF           xon/xoff off
               DISC            disconnect (suspend)
            (*)INIT            new terminal type
            (*)ALTK            alternative keyboard dvorak
               FLINP           flush input
               ERASE           erase last character
               WERASE          erase last word
               FERASE          erase field
               SYNCH           we are in synch with the user
               RESET           reset key-unlock keyboard
               MASTER_RESET    reset, unlock and redisplay
            (*)XOFF            please hold output
            (*)XON             please give me output
               ESCAPE          enter telnet command mode
               WORDTAB         tab to beginning of next word
               WORDBACKTAB     tab to beginning of current/last word
               WORDEND         tab to end of current/next word
               FIELDEND        tab to last non-blank of current/next
                               unprotected (writable) field.

               PA1             program attention 1
               PA2             program attention 2
               PA3             program attention 3

               CLEAR           local clear of the 3270 screen
               TREQ            test request
               ENTER           enter key

               PFK1            program function key 1
               PFK2            program function key 2
               etc.            etc.
               PFK36           program function key 36

       The following entry is used by tn3270(1) when unable to locate  a  rea-
       sonable     version     in    the    user's    environment    and    in

               name {          # actual name comes from TERM variable
               clear = '^z';
               flinp = '^x';
               enter = '^m';
               delete = '^d' | '^?';   # note that '^?' is delete (rubout)
               synch = '^r';
               reshow = '^v';
               eeof = '^e';
               tab = '^i';
               btab = '^b';
               nl = '^n';
               left = '^h';
               right = '^l';
               up = '^k';
               down = '^j';
               einp = '^w';
               reset = '^t';
               xoff = '^s';
               xon = '^q';
               escape = '^c';
               ferase = '^u';
               insrt = ' ';
               # program attention keys
               pa1 = '^p1'; pa2 = '^p2'; pa3 = '^p3';
               # program function keys
               pfk1 = '\E1'; pfk2 = '\E2'; pfk3 = '\E3'; pfk4 = '\E4';
               pfk5 = '\E5'; pfk6 = '\E6'; pfk7 = '\E7'; pfk8 = '\E8';
               pfk9 = '\E9'; pfk10 = '\E0'; pfk11 = '\E-'; pfk12 = '\E=';
               pfk13 = '\E!'; pfk14 = '\E@'; pfk15 = '\E#'; pfk16 = '\E$';
               pfk17 = '\E%'; pfk18 = '\E'; pfk19 = '\E'; pfk20 = '\E*';
               pfk21 = '\E('; pfk22 = '\E)'; pfk23 = '\E_'; pfk24 = '\E+';

       The charts below show the proper keys to  emulate  each  3270  function
       when using the default key mapping supplied with tn3270(1) and mset(1).

            Command Keys             IBM 3270 Key                  Default Key(s)
                                     Enter                         RETURN
                                     Clear                         control-z
            Cursor Movement Keys
                                     New Line                      control-n or
                                     Tab                           control-i
                                     Back Tab                      control-b
                                     Cursor Left                   control-h
                                     Cursor Right                  control-l
                                     Cursor Up                     control-k
                                     Cursor Down                   control-j or
                                                                   LINE FEED
            Edit Control Keys
                                     Delete Char                   control-d or
                                     Erase EOF                     control-e
                                     Erase Input                   control-w
                                     Insert Mode                   ESC Space
                                     End Insert                    ESC Space
            Program Function Keys
                                     PF1                           ESC 1
                                     PF2                           ESC 2
                                     ...                           ...
                                     PF10                          ESC 0
                                     PF11                          ESC -
                                     PF12                          ESC =
                                     PF13                          ESC !
                                     PF14                          ESC @
                                     ...                           ...
                                     PF24                          ESC +
            Program Attention Keys
                                     PA1                           control-p 1
                                     PA2                           control-p 2
                                     PA3                           control-p 3
            Local Control Keys
                                     Reset After Error             control-r
                                     Purge Input Buffer            control-x
                                     Keyboard Unlock               control-t
                                     Redisplay Screen              control-v
            Other Keys
                                     Erase current field           control-u


       tn3270(1), mset(1), Yale ASCII Terminal Communication System II Program
       Description/Operator's Manual (IBM SB30-1911)

       Greg Minshall

       Tn3270 doesn't yet understand how to process all the  functions  avail-
       able  in map3270; when such a function is requested tn3270 will beep at

       The definition of "word" (for "word erase", "word  tab")  should  be  a
       run-time  option.   Currently  it  is  defined as the kernel tty driver
       defines it (strings of non-whitespace);  more  than  one  person  would
       rather  use  the  "vi"  definition  (strings  of  specials,  strings of

4.3 Berkeley Distribution        July 31, 1991                      MAP3270(5)