| 1 | |
| 2 | |
| 3 | |
| 4 | MAP3270(5) 1991 MAP3270(5) |
| 5 | |
| 6 | |
| 7 | N\bNA\bAM\bME\bE |
| 8 | map3270 - database for mapping ascii keystrokes into IBM |
| 9 | 3270 keys |
| 10 | |
| 11 | S\bSY\bYN\bNO\bOP\bPS\bSI\bIS\bS |
| 12 | m\bma\bap\bp3\b32\b27\b70\b0 |
| 13 | |
| 14 | D\bDE\bES\bSC\bCR\bRI\bIP\bPT\bTI\bIO\bON\bN |
| 15 | When emulating IBM-syle 3270 terminals under UNIX (see |
| 16 | _\bt_\bn_\b3_\b2_\b7_\b0(1)), a mapping must be performed between sequences |
| 17 | of keys hit on a user's (ascii) keyboard, and the keys |
| 18 | that are available on a 3270. For example, a 3270 has a |
| 19 | key labeled E\bEE\bEO\bOF\bF which erases the contents of the current |
| 20 | field from the location of the cursor to the end. In |
| 21 | order to accomplish this function, the terminal user and a |
| 22 | program emulating a 3270 must agree on what keys will be |
| 23 | typed to invoke the E\bEE\bEO\bOF\bF function. |
| 24 | |
| 25 | The requirements for these sequences are: |
| 26 | |
| 27 | 1) that the first character of the sequence be outside of the |
| 28 | standard ascii printable characters; |
| 29 | |
| 30 | 2) that no sequence _\bb_\be an initial part of another (although |
| 31 | sequences may _\bs_\bh_\ba_\br_\be initial parts). |
| 32 | |
| 33 | |
| 34 | F\bFO\bOR\bRM\bMA\bAT\bT |
| 35 | The file consists of entries for various keyboards. The |
| 36 | first part of an entry lists the names of the keyboards |
| 37 | which use that entry. These names will often be the same |
| 38 | as in /_\be_\bt_\bc/_\bt_\be_\br_\bm_\bc_\ba_\bp (see _\bt_\be_\br_\bm_\bc_\ba_\bp(5)); however, note that |
| 39 | often the terminals from various termcap entries will all |
| 40 | use the same _\bm_\ba_\bp_\b3_\b2_\b7_\b0 entry; for example, both 925 and |
| 41 | 925vb (for 925 with visual bells) would probably use the |
| 42 | same _\bm_\ba_\bp_\b3_\b2_\b7_\b0 entry. Additionally, there are occasions |
| 43 | when the terminal type defines a window manager, and it |
| 44 | will then be necessary to specify a keyboard name (via the |
| 45 | K\bKE\bEY\bYB\bBD\bD environment variable) as the name of the entry. |
| 46 | After the names, separated by vertical bars (`|'), comes a |
| 47 | left brace (`{'); the definitions; and, finally, a right |
| 48 | brace (`}'). |
| 49 | |
| 50 | Each definition consists of a reserved keyword (see list |
| 51 | below) which identifies the 3270 function (extended as |
| 52 | defined below), followed by an equal sign (`='), followed |
| 53 | by the various ways to generate this particular function, |
| 54 | followed by a semi-colon (`;'). Each way is a sequence of |
| 55 | strings of _\bp_\br_\bi_\bn_\bt_\ba_\bb_\bl_\be ascii characters enclosed inside sin- |
| 56 | gle quotes (`''); various ways (alternatives) are sepa- |
| 57 | rated by vertical bars (`|'). |
| 58 | |
| 59 | Inside the single quotes, a few characters are special. A |
| 60 | caret (`^') specifies that the next character is the |
| 61 | |
| 62 | |
| 63 | |
| 64 | 31, July 1 |
| 65 | |
| 66 | |
| 67 | |
| 68 | |
| 69 | |
| 70 | MAP3270(5) 1991 MAP3270(5) |
| 71 | |
| 72 | |
| 73 | ``control'' character of whatever the character is. So, |
| 74 | `^a' represents control-a, ie: hexadecimal 1 (note that |
| 75 | `^A' would generate the same code). To generate r\bru\bub\bbo\bou\but\bt |
| 76 | (DEL), one enters `^?'. To represent a control character |
| 77 | inside a file requires using the caret to represent a con- |
| 78 | trol sequence; simply typing control-A will not work. |
| 79 | Note: the ctrl-caret sequence (to generate a hexadecimal |
| 80 | 1E) is represented as `^^' (not `^\^'). |
| 81 | |
| 82 | In addition to the caret, a letter may be preceeded by a |
| 83 | backslash (`\'). Since this has little effect for most |
| 84 | characters, its use is usually not recommended. For the |
| 85 | case of a single quote (`''), the backslash prevents that |
| 86 | single quote from terminating the string. For the case of |
| 87 | a caret (`^'), the backslash prevents the caret from hav- |
| 88 | ing its special meaning. To have the backslash be part of |
| 89 | the string, it is necessary to place two backslashes |
| 90 | ('\\') in the file. |
| 91 | |
| 92 | In addition, the following characters are special: |
| 93 | |
| 94 | `\E' means an escape character; |
| 95 | `\n' means newline; |
| 96 | `\t' means tab; |
| 97 | `\r' means carriage return. |
| 98 | |
| 99 | It is not necessary for each character in a string to be |
| 100 | enclosed within single quotes. `\E\E\E' means three |
| 101 | escape characters. |
| 102 | |
| 103 | Comments, which may appear anywhere on a line, begin with |
| 104 | a hash mark (`#'), and terminate at the end of that line. |
| 105 | However, comments cannot begin inside a quoted string; a |
| 106 | hash mark inside a quoted string has no special meaning. |
| 107 | |
| 108 | |
| 109 | 3\b32\b27\b70\b0 K\bKE\bEY\bYS\bS S\bSU\bUP\bPP\bPO\bOR\bRT\bTE\bED\bD |
| 110 | The following is the list of 3270 key names that are sup- |
| 111 | ported in this file. Note that some of the keys don't |
| 112 | really exist on a 3270. In particular, the developers of |
| 113 | this file have relied extensively on the work at the Yale |
| 114 | University Computer Center with their 3270 emulator which |
| 115 | runs in an IBM Series/1 front end. The following list |
| 116 | corresponds closely to the functions that the developers |
| 117 | of the Yale code offer in their product. |
| 118 | |
| 119 | I\bIn\bn t\bth\bhe\be f\bfo\bol\bll\blo\bow\bwi\bin\bng\bg l\bli\bis\bst\bt,\b, t\bth\bhe\be s\bst\bta\bar\brr\bre\bed\bd (\b("\b"*\b*"\b")\b) f\bfu\bun\bnc\bct\bti\bio\bon\bns\bs a\bar\bre\be n\bno\bot\bt |
| 120 | s\bsu\bup\bpp\bpo\bor\brt\bte\bed\bd b\bby\by _\bt_\bn_\b3_\b2_\b7_\b0(1). An unsupported function will |
| 121 | cause _\bt_\bn_\b3_\b2_\b7_\b0(_\b1) to send a (possibly visual) bell sequence |
| 122 | to the user's terminal. |
| 123 | |
| 124 | 3270 Key Name Functional description |
| 125 | |
| 126 | (*)LPRT local print |
| 127 | |
| 128 | |
| 129 | |
| 130 | 31, July 2 |
| 131 | |
| 132 | |
| 133 | |
| 134 | |
| 135 | |
| 136 | MAP3270(5) 1991 MAP3270(5) |
| 137 | |
| 138 | |
| 139 | DP dup character |
| 140 | FM field mark character |
| 141 | CURSEL cursor select |
| 142 | CENTSIGN EBCDIC cent sign |
| 143 | RESHOW redisplay the screen |
| 144 | EINP erase input |
| 145 | EEOF erase end of field |
| 146 | DELETE delete character |
| 147 | INSRT toggle insert mode |
| 148 | TAB field tab |
| 149 | BTAB field back tab |
| 150 | COLTAB column tab |
| 151 | COLBAK column back tab |
| 152 | INDENT indent one tab stop |
| 153 | UNDENT undent one tab stop |
| 154 | NL new line |
| 155 | HOME home the cursor |
| 156 | UP up cursor |
| 157 | DOWN down cursor |
| 158 | RIGHT right cursor |
| 159 | LEFT left cursor |
| 160 | SETTAB set a column tab |
| 161 | DELTAB delete a columntab |
| 162 | SETMRG set left margin |
| 163 | SETHOM set home position |
| 164 | CLRTAB clear all column tabs |
| 165 | (*)APLON apl on |
| 166 | (*)APLOFF apl off |
| 167 | (*)APLEND treat input as ascii |
| 168 | (*)PCON xon/xoff on |
| 169 | (*)PCOFF xon/xoff off |
| 170 | DISC disconnect (suspend) |
| 171 | (*)INIT new terminal type |
| 172 | (*)ALTK alternate keyboard dvorak |
| 173 | FLINP flush input |
| 174 | ERASE erase last character |
| 175 | WERASE erase last word |
| 176 | FERASE erase field |
| 177 | SYNCH we are in synch with the user |
| 178 | RESET reset key-unlock keyboard |
| 179 | MASTER_RESET reset, unlock and redisplay |
| 180 | (*)XOFF please hold output |
| 181 | (*)XON please give me output |
| 182 | ESCAPE enter telnet command mode |
| 183 | WORDTAB tab to beginning of next word |
| 184 | WORDBACKTAB tab to beginning of current/last word |
| 185 | WORDEND tab to end of current/next word |
| 186 | FIELDEND tab to last non-blank of current/next |
| 187 | unprotected (writable) field. |
| 188 | |
| 189 | PA1 program attention 1 |
| 190 | PA2 program attention 2 |
| 191 | PA3 program attention 3 |
| 192 | |
| 193 | |
| 194 | |
| 195 | |
| 196 | 31, July 3 |
| 197 | |
| 198 | |
| 199 | |
| 200 | |
| 201 | |
| 202 | MAP3270(5) 1991 MAP3270(5) |
| 203 | |
| 204 | |
| 205 | CLEAR local clear of the 3270 screen |
| 206 | TREQ test request |
| 207 | ENTER enter key |
| 208 | |
| 209 | PFK1 program function key 1 |
| 210 | PFK2 program function key 2 |
| 211 | etc. etc. |
| 212 | PFK36 program function key 36 |
| 213 | |
| 214 | A\bA S\bSA\bAM\bMP\bPL\bLE\bE E\bEN\bNT\bTR\bRY\bY |
| 215 | The following entry is used by |
| 216 | tn3270(1) when unable to locate a reasonable version in the |
| 217 | user's environment and in /etc/map3270: |
| 218 | |
| 219 | name { # actual name comes from TERM variable |
| 220 | clear = '^z'; |
| 221 | flinp = '^x'; |
| 222 | enter = '^m'; |
| 223 | delete = '^d' | '^?'; # note that '^?' is delete (rubout) |
| 224 | synch = '^r'; |
| 225 | reshow = '^v'; |
| 226 | eeof = '^e'; |
| 227 | tab = '^i'; |
| 228 | btab = '^b'; |
| 229 | nl = '^n'; |
| 230 | left = '^h'; |
| 231 | right = '^l'; |
| 232 | up = '^k'; |
| 233 | down = '^j'; |
| 234 | einp = '^w'; |
| 235 | reset = '^t'; |
| 236 | xoff = '^s'; |
| 237 | xon = '^q'; |
| 238 | escape = '^c'; |
| 239 | ferase = '^u'; |
| 240 | insrt = ' '; |
| 241 | # program attention keys |
| 242 | pa1 = '^p1'; pa2 = '^p2'; pa3 = '^p3'; |
| 243 | # program function keys |
| 244 | pfk1 = '\E1'; pfk2 = '\E2'; pfk3 = '\E3'; pfk4 = '\E4'; |
| 245 | pfk5 = '\E5'; pfk6 = '\E6'; pfk7 = '\E7'; pfk8 = '\E8'; |
| 246 | pfk9 = '\E9'; pfk10 = '\E0'; pfk11 = '\E-'; pfk12 = '\E='; |
| 247 | pfk13 = '\E!'; pfk14 = '\E@'; pfk15 = '\E#'; pfk16 = '\E$'; |
| 248 | pfk17 = '\E%'; pfk18 = '\E'; pfk19 = '\E&'; pfk20 = '\E*'; |
| 249 | pfk21 = '\E('; pfk22 = '\E)'; pfk23 = '\E_'; pfk24 = '\E+'; |
| 250 | } |
| 251 | |
| 252 | I\bIB\bBM\bM 3\b32\b27\b70\b0 K\bKE\bEY\bY D\bDE\bEF\bFI\bIN\bNI\bIT\bTO\bON\bNS\bS F\bFO\bOR\bR A\bAN\bN A\bAB\bBO\bOV\bVE\bE D\bDE\bEF\bFI\bIN\bNI\bIT\bTI\bIO\bON\bN |
| 253 | The charts below show the proper keys to emulate each 3270 |
| 254 | function when using the default key mapping supplied with |
| 255 | _\bt_\bn_\b3_\b2_\b7_\b0(1) and _\bm_\bs_\be_\bt(1). |
| 256 | |
| 257 | Command Keys IBM 3270 Key Default Key(s) |
| 258 | Enter RETURN |
| 259 | |
| 260 | |
| 261 | |
| 262 | 31, July 4 |
| 263 | |
| 264 | |
| 265 | |
| 266 | |
| 267 | |
| 268 | MAP3270(5) 1991 MAP3270(5) |
| 269 | |
| 270 | |
| 271 | Clear control-z |
| 272 | Cursor Movement Keys |
| 273 | New Line control-n or |
| 274 | Home |
| 275 | Tab control-i |
| 276 | Back Tab control-b |
| 277 | Cursor Left control-h |
| 278 | Cursor Right control-l |
| 279 | Cursor Up control-k |
| 280 | Cursor Down control-j or |
| 281 | LINE FEED |
| 282 | Edit Control Keys |
| 283 | Delete Char control-d or |
| 284 | RUB |
| 285 | Erase EOF control-e |
| 286 | Erase Input control-w |
| 287 | Insert Mode ESC Space |
| 288 | End Insert ESC Space |
| 289 | Program Function Keys |
| 290 | PF1 ESC 1 |
| 291 | PF2 ESC 2 |
| 292 | ... ... |
| 293 | PF10 ESC 0 |
| 294 | PF11 ESC - |
| 295 | PF12 ESC = |
| 296 | PF13 ESC ! |
| 297 | PF14 ESC @ |
| 298 | ... ... |
| 299 | PF24 ESC + |
| 300 | Program Attention Keys |
| 301 | PA1 control-p 1 |
| 302 | PA2 control-p 2 |
| 303 | PA3 control-p 3 |
| 304 | Local Control Keys |
| 305 | Reset After Error control-r |
| 306 | Purge Input Buffer control-x |
| 307 | Keyboard Unlock control-t |
| 308 | Redisplay Screen control-v |
| 309 | Other Keys |
| 310 | Erase current field control-u |
| 311 | |
| 312 | F\bFI\bIL\bLE\bES\bS |
| 313 | /etc/map3270 |
| 314 | |
| 315 | S\bSE\bEE\bE A\bAL\bLS\bSO\bO |
| 316 | tn3270(1), mset(1), _\bY_\ba_\bl_\be _\bA_\bS_\bC_\bI_\bI _\bT_\be_\br_\bm_\bi_\bn_\ba_\bl _\bC_\bo_\bm_\bm_\bu_\bn_\bi_\bc_\ba_\bt_\bi_\bo_\bn _\bS_\by_\bs- |
| 317 | _\bt_\be_\bm _\bI_\bI _\bP_\br_\bo_\bg_\br_\ba_\bm _\bD_\be_\bs_\bc_\br_\bi_\bp_\bt_\bi_\bo_\bn/_\bO_\bp_\be_\br_\ba_\bt_\bo_\br'_\bs _\bM_\ba_\bn_\bu_\ba_\bl (IBM |
| 318 | SB30-1911) |
| 319 | |
| 320 | A\bAU\bUT\bTH\bHO\bOR\bR |
| 321 | Greg Minshall |
| 322 | |
| 323 | B\bBU\bUG\bGS\bS |
| 324 | _\bT_\bn_\b3_\b2_\b7_\b0 doesn't yet understand how to process all the |
| 325 | |
| 326 | |
| 327 | |
| 328 | 31, July 5 |
| 329 | |
| 330 | |
| 331 | |
| 332 | |
| 333 | |
| 334 | MAP3270(5) 1991 MAP3270(5) |
| 335 | |
| 336 | |
| 337 | functions available in _\bm_\ba_\bp_\b3_\b2_\b7_\b0; when such a function is |
| 338 | requested _\bt_\bn_\b3_\b2_\b7_\b0 will beep at you. |
| 339 | |
| 340 | The definition of "word" (for "word erase", "word tab") |
| 341 | should be a run-time option. Currently it is defined as |
| 342 | the kernel tty driver defines it (strings of non- |
| 343 | whitespace); more than one person would rather use the |
| 344 | "vi" definition (strings of specials, strings of alphanu- |
| 345 | meric). |
| 346 | |
| 347 | |
| 348 | |
| 349 | |
| 350 | |
| 351 | |
| 352 | |
| 353 | |
| 354 | |
| 355 | |
| 356 | |
| 357 | |
| 358 | |
| 359 | |
| 360 | |
| 361 | |
| 362 | |
| 363 | |
| 364 | |
| 365 | |
| 366 | |
| 367 | |
| 368 | |
| 369 | |
| 370 | |
| 371 | |
| 372 | |
| 373 | |
| 374 | |
| 375 | |
| 376 | |
| 377 | |
| 378 | |
| 379 | |
| 380 | |
| 381 | |
| 382 | |
| 383 | |
| 384 | |
| 385 | |
| 386 | |
| 387 | |
| 388 | |
| 389 | |
| 390 | |
| 391 | |
| 392 | |
| 393 | |
| 394 | 31, July 6 |
| 395 | |
| 396 | |