|
|
1.1 ! root 1: .\" Copyright (c) 1986 Regents of the University of California. ! 2: .\" All rights reserved. The Berkeley software License Agreement ! 3: .\" specifies the terms and conditions for redistribution. ! 4: .\" ! 5: .\" @(#)map3270.5 1.3 (Berkeley) 1/11/86 ! 6: .\" ! 7: .TH MAP3270 5 "January 11, 1986" ! 8: .UC 6 ! 9: .SH NAME ! 10: map3270 \- database for mapping ascii keystrokes into IBM 3270 keys ! 11: .SH SYNOPSIS ! 12: .B /etc/map3270 ! 13: .SH DESCRIPTION ! 14: When emulating IBM-syle 3270 terminals under UNIX (see \fItn3270\fR(1)), ! 15: a mapping must be performed between sequences of keys hit on ! 16: a user's (ascii) keyboard, and the keys that are ! 17: available on a 3270. For example, a 3270 has a key labeled ! 18: .B EEOF ! 19: which erases the contents of the current field from the ! 20: location of the cursor to the end. ! 21: In order to accomplish this function, ! 22: the terminal user and a program emulating a 3270 must ! 23: agree on what keys will be typed ! 24: to invoke the ! 25: .B EEOF ! 26: function. ! 27: .PP ! 28: The requirements for these sequences are: ! 29: .nf ! 30: .ta 4n 9n ! 31: .sp ! 32: 1.) that the first character of the sequence be outside of the ! 33: standard ascii printable characters; ! 34: .sp ! 35: 2.) that no one sequence \fIbe\fR an initial part of another (although ! 36: sequences may \fIshare\fR initial parts). ! 37: .sp ! 38: .fi ! 39: .SH FORMAT ! 40: The file consists of entries for various terminals. The first part ! 41: of an entry lists the names of the terminals which use that entry. ! 42: These names should be the same as in ! 43: .I /etc/termcap ! 44: (see \fItermcap\fR(5)); ! 45: note that often the terminals from various termcap entries will all ! 46: use the same ! 47: .I map3270 ! 48: entry; for example, both 925 and 925vb (for ! 49: 925 with visual bells) would probably use the same ! 50: .I map3270 ! 51: entry. ! 52: After the names, separated by vertical bars (`|'), comes a left ! 53: brace (`{'); the definitions; and, finally, a right brace ! 54: (`}'). ! 55: .PP ! 56: The definitions consist of a reserved keyword (see list below) which ! 57: identifies the 3270 function (extended as defined below), followed ! 58: by an equal sign (`='), followed by the various ways to generate ! 59: this particular function, followed by a semi-colon (`;'). ! 60: Each way is a sequence of strings of ! 61: .I printable ! 62: ascii characters enclosed inside single quotes (`\(aa'); ! 63: various ways (options) are separated by vertical bars (`|'). ! 64: .PP ! 65: Inside the single quotes, a few characters are special. ! 66: A caret ! 67: (`^') specifies that the next character is ! 68: the ``control'' character of whatever the character is. ! 69: So, `^a' ! 70: represents control-a, ie: hexadecimal 1 ! 71: (note that `^A' would generate the same code). ! 72: To generate ! 73: .B rubout, ! 74: one enters `^?'. ! 75: To represent a control character inside a file ! 76: requires using the caret to represent a control sequence; ! 77: simply typing control-A will not work. ! 78: Note: the ctrl-caret sequence ! 79: (to generate a hexadecimal 1E) ! 80: is represented as `^^' (not `^\e^'). ! 81: .PP ! 82: In addition to the caret, a letter may be preceeded by a backslash (`\e'). ! 83: Since this has little effect for most characters, ! 84: its use is usually not recommended. ! 85: For the case of a single quote (`\(aa'), the backslash ! 86: prevents that single quote from terminating the string. ! 87: To have the backslash be part of the string, it is necessary to ! 88: place two backslashes ('\e\e') in the file. ! 89: .PP ! 90: In addition, the following characters are special: ! 91: .sp ! 92: .nf ! 93: .in +0.5i ! 94: `\eE' means an escape character; ! 95: `\en' means newline; ! 96: `\et' means tab; ! 97: `\er' means carriage return. ! 98: .in -0.5i ! 99: .fi ! 100: .sp ! 101: It is not necessary for each character in a string ! 102: to be enclosed within single quotes. ! 103: `\eE\eE\eE' means three escape characters. ! 104: .PP ! 105: Comments, which may appear anywhere on a line, ! 106: begin with a hash mark (`#'), and terminate ! 107: at the end of that line. ! 108: However, comments cannot begin inside a quoted string; ! 109: a hash mark inside a quoted string has no special meaning. ! 110: .PP ! 111: .SH 3270 KEYS SUPPORTED ! 112: The following is the list of 3270 key names that are supported in this file. ! 113: Note that some of the keys don't really exist on a 3270. ! 114: In particular, the developers of this file have relied ! 115: extensively on the work at the Yale University Computer Center with ! 116: their 3270 emulator which runs in an IBM Series/1 front end. ! 117: The following list corresponds closely to the functions ! 118: that the developers of the Yale code offer in their product. ! 119: .sp ! 120: .B In the following list, the ! 121: .B starred ("*") ! 122: .B functions are not supported by ! 123: .IR tn3270 (1). ! 124: An unsupported function will cause ! 125: .IR tn3270(1) ! 126: to send a bell sequence to the user's terminal. ! 127: .sp ! 128: .nf ! 129: 3270 Key Name Functional description ! 130: ! 131: (*)LPRT local print ! 132: DP dup character ! 133: FM field mark character ! 134: (*)CURSEL cursor select ! 135: RESHOW redisplay the screen ! 136: EINP erase input ! 137: EEOF erase end of field ! 138: DELETE delete character ! 139: INSRT toggle insert mode ! 140: TAB field tab ! 141: BTAB field back tab ! 142: COLTAB column tab ! 143: COLBAK column back tab ! 144: INDENT indent one tab stop ! 145: UNDENT undent one tab stop ! 146: NL new line ! 147: HOME home the cursor ! 148: UP up cursor ! 149: DOWN down cursor ! 150: RIGHT right cursor ! 151: LEFT left cursor ! 152: SETTAB set a column tab ! 153: DELTAB delete a columntab ! 154: SETMRG set left margin ! 155: SETHOM set home position ! 156: CLRTAB clear all column tabs ! 157: (*)APLON apl on ! 158: (*)APLOFF apl off ! 159: (*)APLEND treat input as ascii ! 160: (*)PCON xon/xoff on ! 161: (*)PCOFF xon/xoff off ! 162: DISC disconnect (suspend) ! 163: (*)INIT new terminal type ! 164: (*)ALTK alternate keyboard dvorak ! 165: FLINP flush input ! 166: ERASE erase last character ! 167: WERASE erase last word ! 168: FERASE erase field ! 169: SYNCH we are in synch with the user ! 170: RESET reset key-unlock keyboard ! 171: MASTER_RESET reset, unlock and redisplay ! 172: (*)XOFF please hold output ! 173: (*)XON please give me output ! 174: ESCAPE enter telnet command mode ! 175: WORDTAB tab to beginning of next word ! 176: WORDBACKTAB tab to beginning of current/last word ! 177: WORDEND tab to end of current/next word ! 178: FIELDEND tab to last non-blank of current/next ! 179: unprotected (writable) field. ! 180: ! 181: PA1 program attention 1 ! 182: PA2 program attention 2 ! 183: PA3 program attention 3 ! 184: ! 185: CLEAR local clear of the 3270 screen ! 186: TREQ test request ! 187: ENTER enter key ! 188: ! 189: PFK1 program function key 1 ! 190: PFK2 program function key 2 ! 191: etc. etc. ! 192: PFK36 program function key 36 ! 193: .SH A SAMPLE ENTRY ! 194: The following entry is used by ! 195: tn3270(1) when unable to locate a reasonable version in the ! 196: user's environment and in /etc/map3270: ! 197: .sp ! 198: .nf ! 199: name { # actual name comes from TERM variable ! 200: clear = '^z'; ! 201: flinp = '^x'; ! 202: enter = '^m'; ! 203: delete = '^d' | '^?'; # note that '^?' is delete (rubout) ! 204: synch = '^r'; ! 205: reshow = '^v'; ! 206: eeof = '^e'; ! 207: tab = '^i'; ! 208: btab = '^b'; ! 209: nl = '^n'; ! 210: left = '^h'; ! 211: right = '^l'; ! 212: up = '^k'; ! 213: down = '^j'; ! 214: einp = '^w'; ! 215: reset = '^t'; ! 216: xoff = '^s'; ! 217: xon = '^q'; ! 218: escape = '^c'; ! 219: ferase = '^u'; ! 220: insrt = '\E '; ! 221: # program attention keys ! 222: pa1 = '^p1'; pa2 = '^p2'; pa3 = '^p3'; ! 223: # program function keys ! 224: pfk1 = '\E1'; pfk2 = '\E2'; pfk3 = '\E3'; pfk4 = '\E4'; ! 225: pfk5 = '\E5'; pfk6 = '\E6'; pfk7 = '\E7'; pfk8 = '\E8'; ! 226: pfk9 = '\E9'; pfk10 = '\E0'; pfk11 = '\E-'; pfk12 = '\E='; ! 227: pfk13 = '\E!'; pfk14 = '\E@'; pfk15 = '\E#'; pfk16 = '\E$'; ! 228: pfk17 = '\E%'; pfk18 = '\E'; pfk19 = '\E&'; pfk20 = '\E*'; ! 229: pfk21 = '\E('; pfk22 = '\E)'; pfk23 = '\E_'; pfk24 = '\E+'; ! 230: } ! 231: .fi ! 232: .SH "IBM 3270 KEY DEFINITONS FOR AN ABOVE DEFINITION" ! 233: The charts below show the proper keys to emulate ! 234: each 3270 function when using the default key mapping supplied ! 235: with ! 236: .IR tn3270 (1) ! 237: and ! 238: .IR mset (1). ! 239: .sp ! 240: .nf ! 241: Command Keys IBM 3270 Key Default Key(s) ! 242: Enter RETURN ! 243: Clear control-z ! 244: Cursor Movement Keys ! 245: New Line control-n or ! 246: Home ! 247: Tab control-i ! 248: Back Tab control-b ! 249: Cursor Left control-h ! 250: Cursor Right control-l ! 251: Cursor Up control-k ! 252: Cursor Down control-j or ! 253: LINE FEED ! 254: Edit Control Keys ! 255: Delete Char control-d or ! 256: RUB ! 257: Erase EOF control-e ! 258: Erase Input control-w ! 259: Insert Mode ESC Space ! 260: End Insert ESC Space ! 261: Program Function Keys ! 262: PF1 ESC 1 ! 263: PF2 ESC 2 ! 264: ... ... ! 265: PF10 ESC 0 ! 266: PF11 ESC - ! 267: PF12 ESC = ! 268: PF13 ESC ! ! 269: PF14 ESC @ ! 270: ... ... ! 271: PF24 ESC + ! 272: Program Attention Keys ! 273: PA1 control-p 1 ! 274: PA2 control-p 2 ! 275: PA3 control-p 3 ! 276: Local Control Keys ! 277: Reset After Error control-r ! 278: Purge Input Buffer control-x ! 279: Keyboard Unlock control-t ! 280: Redisplay Screen control-v ! 281: Other Keys ! 282: Erase current field control-u ! 283: .fi ! 284: .SH FILES ! 285: /etc/map3270 ! 286: .SH SEE ALSO ! 287: tn3270(1), mset(1), \fIYale ASCII Terminal Communication ! 288: System II Program Description/Operator's Manual\fR ! 289: (IBM SB30-1911) ! 290: .SH AUTHOR ! 291: Greg Minshall ! 292: .SH BUGS ! 293: .I Tn3270 ! 294: doesn't yet understand how to process all the functions ! 295: available in ! 296: .I map3270; ! 297: when such a function is requested ! 298: .I tn3270 ! 299: will beep at you. ! 300: .PP ! 301: The definition of "word" (for "word delete", "word tab") should be a run-time ! 302: option. Currently it is defined as the kernel tty driver defines it (strings ! 303: of non-blanks); more than one person would rather use the "vi" definition ! 304: (strings of specials, strings of alphanumeric).
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.