Role of the Termcap File (UNIX and VMS)
Fundamental changes to the FRS's interpretation of keystrokes for a particular terminal require modification of that terminal's termcap description. For example, if you want the FRS to permanently interpret a Down Arrow key as nextfield for the VT100i, you must change the termcap description for VT100i. Key map files cannot accomplish such changes directly.
Certain termcap files allow you to define the terminal to recognize function keys. For example, to use function keys with a VT100 or VT100-like terminal, the terminal must be defined as vt100i.
The vt100i definition turns the terminal's keypad into a set of 18 function keys, as shown in the following figure.
In the figure, the numbers correspond to the numbers that appear on the keys, while those in parentheses correspond to which function key that key is (for example, key #7 is the fifth function key (PF5).
VMS: Function keys do not work as expected if the user has issued the following VMS command:
set term/uppercase
This is because this VMS set term command translates all characters received from the terminal into uppercase characters. The escape sequences for function keys are defined with lowercase characters in the termcap description. To correct this situation, create a new termcap description to define function key escape sequences with uppercase characters.
By default, a VT220 terminal uses function keys; therefore this terminal must be defined as vt220i. A VT220 can also emulate a VT100 terminal. If the terminal itself is set this way, it is appropriately defined to Ingres as vt100i. Other types of terminals with function keys can be defined to accept function key mappings by editing the termcap file descriptions for the terminal types. For more information, see the appendix "Writing Termcap Descriptions."
Users of terminals defined as vt100i or vt220i can also use arrow keys to move the cursor. For these terminals, the arrow keys are defined by default in the Ingres code to perform standard arrow key actions; for example, uparrow = upline and downarrow = downline. The use of arrow keys on any other terminal type can require the editing of its termcap file description.
No special terminal definition is required for control keys. Certain control keys, however, are reserved by the operating system for its own use and must not be mapped to any operations. These can include, but are not limited to:
• Control‑C
• Control‑O
• Control‑Q
• Control‑S
• Control‑T
• Control‑X
• Control‑Y
Also, if your terminal uses escape sequences to define function keys (the case for terminals defined as vt100i and vt220i and most other terminals), you must also consider Escape as reserved.