Home | History | Annotate | Line # | Download | only in libterminfo
term.h revision 1.16.10.2
      1  1.16.10.2  pgoyette /* $NetBSD: term.h,v 1.16.10.2 2017/04/26 02:52:56 pgoyette Exp $ */
      2        1.1       roy 
      3        1.1       roy /*
      4       1.13       roy  * Copyright (c) 2009, 2010, 2011, 2013 The NetBSD Foundation, Inc.
      5        1.1       roy  *
      6        1.1       roy  * This code is derived from software contributed to The NetBSD Foundation
      7        1.1       roy  * by Roy Marples.
      8        1.1       roy  *
      9        1.1       roy  * Redistribution and use in source and binary forms, with or without
     10        1.1       roy  * modification, are permitted provided that the following conditions
     11        1.1       roy  * are met:
     12        1.1       roy  * 1. Redistributions of source code must retain the above copyright
     13        1.1       roy  *    notice, this list of conditions and the following disclaimer.
     14        1.1       roy  * 2. Redistributions in binary form must reproduce the above copyright
     15        1.1       roy  *    notice, this list of conditions and the following disclaimer in the
     16        1.1       roy  *    documentation and/or other materials provided with the distribution.
     17        1.1       roy  *
     18        1.1       roy  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     19        1.1       roy  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     20        1.1       roy  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     21        1.1       roy  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     22        1.1       roy  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
     23        1.1       roy  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     24        1.1       roy  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     25        1.1       roy  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     26        1.1       roy  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
     27        1.1       roy  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     28        1.1       roy  */
     29        1.1       roy 
     30        1.1       roy #ifndef _TERM_H_
     31        1.1       roy #define	_TERM_H_
     32        1.1       roy 
     33        1.1       roy #ifndef ERR
     34        1.1       roy #define	ERR	(-1)	/* Error return */
     35        1.1       roy #define	OK	(0)	/* Success return */
     36        1.1       roy #endif
     37        1.1       roy 
     38        1.1       roy /* Define available terminfo flags */
     39        1.1       roy enum TIFLAGS {
     40       1.16       roy 	TICODE_bw,
     41        1.1       roy 	TICODE_am,
     42        1.1       roy 	TICODE_bce,
     43        1.1       roy 	TICODE_ccc,
     44        1.1       roy 	TICODE_xhp,
     45        1.1       roy 	TICODE_xhpa,
     46        1.1       roy 	TICODE_cpix,
     47        1.1       roy 	TICODE_crxm,
     48        1.1       roy 	TICODE_xt,
     49        1.1       roy 	TICODE_xenl,
     50        1.1       roy 	TICODE_eo,
     51        1.1       roy 	TICODE_gn,
     52        1.1       roy 	TICODE_hc,
     53        1.1       roy 	TICODE_chts,
     54        1.1       roy 	TICODE_km,
     55        1.1       roy 	TICODE_daisy,
     56        1.1       roy 	TICODE_hs,
     57        1.1       roy 	TICODE_hls,
     58        1.1       roy 	TICODE_in,
     59        1.1       roy 	TICODE_lpix,
     60        1.1       roy 	TICODE_da,
     61        1.1       roy 	TICODE_db,
     62        1.1       roy 	TICODE_mir,
     63        1.1       roy 	TICODE_msgr,
     64        1.1       roy 	TICODE_nxon,
     65        1.1       roy 	TICODE_xsb,
     66        1.1       roy 	TICODE_npc,
     67        1.1       roy 	TICODE_ndscr,
     68        1.1       roy 	TICODE_nrrmc,
     69        1.1       roy 	TICODE_os,
     70        1.1       roy 	TICODE_mc5i,
     71        1.1       roy 	TICODE_xvpa,
     72        1.1       roy 	TICODE_sam,
     73        1.1       roy 	TICODE_eslok,
     74        1.1       roy 	TICODE_hz,
     75        1.1       roy 	TICODE_ul,
     76        1.1       roy 	TICODE_xon
     77        1.1       roy };
     78        1.1       roy #define TIFLAGMAX	TICODE_xon
     79        1.1       roy 
     80        1.1       roy #define t_auto_left_margin(t)		(t)->flags[TICODE_bw]
     81        1.1       roy #define t_auto_right_margin(t)		(t)->flags[TICODE_am]
     82        1.1       roy #define t_back_color_erase(t)		(t)->flags[TICODE_bce]
     83        1.1       roy #define t_can_change(t)			(t)->flags[TICODE_ccc]
     84        1.1       roy #define t_ceol_standout_glitch(t)	(t)->flags[TICODE_xhp]
     85        1.1       roy #define t_col_addr_glitch(t)		(t)->flags[TICODE_xhpa]
     86        1.1       roy #define t_cpi_changes_res(t)		(t)->flags[TICODE_cpix]
     87        1.1       roy #define t_cr_cancels_micro_mode(t)	(t)->flags[TICODE_crxm]
     88        1.1       roy #define t_dest_tabs_magic_smso(t)	(t)->flags[TICODE_xt]
     89        1.1       roy #define t_eat_newline_glitch(t)		(t)->flags[TICODE_xenl]
     90        1.1       roy #define t_erase_overstrike(t)		(t)->flags[TICODE_eo]
     91        1.1       roy #define t_generic_type(t)		(t)->flags[TICODE_gn]
     92        1.1       roy #define t_hard_copy(t)			(t)->flags[TICODE_hc]
     93        1.1       roy #define t_hard_cursor(t)		(t)->flags[TICODE_chts]
     94        1.1       roy #define t_has_meta_key(t)		(t)->flags[TICODE_km]
     95        1.1       roy #define t_has_print_wheel(t)		(t)->flags[TICODE_daisy]
     96        1.1       roy #define t_has_status_line(t)		(t)->flags[TICODE_hs]
     97        1.1       roy #define t_hue_light_saturation(t)	(t)->flags[TICODE_hls]
     98        1.1       roy #define t_insert_null_glitch(t)		(t)->flags[TICODE_in]
     99        1.1       roy #define t_lpi_changes_yes(t)		(t)->flags[TICODE_lpix]
    100        1.1       roy #define t_memory_above(t)		(t)->flags[TICODE_da]
    101        1.1       roy #define t_memory_below(t)		(t)->flags[TICODE_db]
    102        1.1       roy #define t_move_insert_mode(t)		(t)->flags[TICODE_mir]
    103        1.1       roy #define t_move_standout_mode(t)		(t)->flags[TICODE_msgr]
    104        1.1       roy #define t_needs_xon_xoff(t)		(t)->flags[TICODE_nxon]
    105        1.1       roy #define t_no_esc_ctlc(t)		(t)->flags[TICODE_xsb]
    106        1.1       roy #define t_no_pad_char(t)		(t)->flags[TICODE_npc]
    107        1.1       roy #define t_non_dest_scroll_region(t)	(t)->flags[TICODE_ndscr]
    108        1.1       roy #define t_non_rev_rmcup(t)		(t)->flags[TICODE_nrrmc]
    109        1.1       roy #define t_over_strike(t)		(t)->flags[TICODE_os]
    110        1.1       roy #define t_prtr_silent(t)		(t)->flags[TICODE_mc5i]
    111        1.1       roy #define t_row_addr_glitch(t)		(t)->flags[TICODE_xvpa]
    112        1.1       roy #define t_semi_auto_right_margin(t)	(t)->flags[TICODE_sam]
    113        1.1       roy #define t_status_line_esc_ok(t)		(t)->flags[TICODE_eslok]
    114        1.1       roy #define t_tilde_glitch(t)		(t)->flags[TICODE_hz]
    115        1.1       roy #define t_transparent_underline(t)	(t)->flags[TICODE_ul]
    116        1.1       roy #define t_xon_xoff(t)			(t)->flags[TICODE_xon]
    117        1.1       roy 
    118        1.1       roy #define auto_left_margin		t_auto_left_margin(cur_term)
    119        1.1       roy #define auto_right_margin		t_auto_right_margin(cur_term)
    120        1.1       roy #define back_color_erase		t_back_color_erase(cur_term)
    121        1.1       roy #define can_change			t_can_change(cur_term)
    122        1.1       roy #define ceol_standout_glitch		t_ceol_standout_glitch(cur_term)
    123        1.1       roy #define col_addr_glitch			t_col_addr_glitch(cur_term)
    124        1.1       roy #define cpi_changes_res			t_cpi_changes_res(cur_term)
    125        1.1       roy #define cr_cancels_micro_mode		t_cr_cancels_micro_mode(cur_term)
    126        1.1       roy #define dest_tabs_magic_smso		t_dest_tabs_magic_smso(cur_term)
    127        1.1       roy #define eat_newline_glitch		t_eat_newline_glitch(cur_term)
    128        1.1       roy #define erase_overstrike		t_erase_overstrike(cur_term)
    129        1.1       roy #define generic_type			t_generic_type(cur_term)
    130        1.1       roy #define hard_copy			t_hard_copy(cur_term)
    131        1.1       roy #define hard_cursor			t_hard_cursor(cur_term)
    132        1.1       roy #define has_meta_key			t_has_meta_key(cur_term)
    133        1.1       roy #define has_print_wheel			t_has_print_wheel(cur_term)
    134        1.1       roy #define has_status_line			t_has_status_line(cur_term)
    135        1.1       roy #define hue_light_saturation		t_hue_light_saturation(cur_term)
    136        1.1       roy #define insert_null_glitch		t_insert_null_glitch(cur_term)
    137        1.1       roy #define lpi_changes_yes			t_lpi_changes_yes(cur_term)
    138        1.1       roy #define memory_above			t_memory_above(cur_term)
    139        1.1       roy #define memory_below			t_memory_below(cur_term)
    140        1.1       roy #define move_insert_mode		t_move_insert_mode(cur_term)
    141        1.1       roy #define move_standout_mode		t_move_standout_mode(cur_term)
    142        1.1       roy #define needs_xon_xoff			t_needs_xon_xoff(cur_term)
    143        1.1       roy #define no_esc_ctlc			t_no_esc_ctlc(cur_term)
    144        1.1       roy #define no_pad_char			t_no_pad_char(cur_term)
    145        1.1       roy #define non_dest_scroll_region		t_non_dest_scroll_region(cur_term)
    146        1.1       roy #define non_rev_rmcup			t_non_rev_rmcup(cur_term)
    147        1.1       roy #define over_strike			t_over_strike(cur_term)
    148        1.1       roy #define prtr_silent			t_prtr_silent(cur_term)
    149        1.1       roy #define row_addr_glitch			t_row_addr_glitch(cur_term)
    150        1.1       roy #define semi_auto_right_margin		t_semi_auto_right_margin(cur_term)
    151        1.1       roy #define status_line_esc_ok		t_status_line_esc_ok(cur_term)
    152        1.1       roy #define tilde_glitch			t_tilde_glitch(cur_term)
    153        1.1       roy #define transparent_underline		t_transparent_underline(cur_term)
    154        1.1       roy #define xon_xoff			t_xon_xoff(cur_term)
    155        1.1       roy 
    156       1.13       roy /*
    157       1.13       roy  * BOOLEAN DESCRIPTIONS
    158       1.13       roy  *
    159       1.13       roy  * auto_left_margin: cub1 wraps from column 0 to last column
    160       1.13       roy  * auto_right_margin: Terminal has automatic margins
    161       1.13       roy  * back_color_erase: Screen erased with background colour
    162       1.13       roy  * can_change: Terminal can re-define existing colour
    163       1.13       roy  * ceol_standout_glitch: Standout not erased by overwriting (hp)
    164       1.13       roy  * col_addr_glitch: Only positive motion for hpa/mhba caps
    165       1.13       roy  * cpi_changes_res: Changing character pitch changes resolution
    166       1.13       roy  * cr_cancels_micro_mode: Using cr turns off micro mode
    167       1.13       roy  * dest_tabs_magic_smso: Destructive tabs, magic smso char (t1061)
    168       1.13       roy  * eat_newline_glitch: Newline ignored after 80 columns (Concept)
    169       1.13       roy  * erase_overstrike: Can erase overstrikes with a blank line
    170       1.13       roy  * generic_type: Generic line type (e.g. dialup, switch)
    171       1.13       roy  * hard_copy: Hardcopy terminal
    172       1.13       roy  * hard_cursor: Cursor is hard to see
    173       1.13       roy  * has_meta_key: Has a meta key (shift, sets parity bit)
    174       1.13       roy  * has_print_wheel: Printer needs operator to change character set
    175       1.13       roy  * has_status_line: Has extra "status line"
    176       1.13       roy  * hue_light_saturation: Terminal only uses HLS colour notion (Tektronix)
    177       1.13       roy  * insert_null_glitch: Insert mode distinguishes nulls
    178       1.13       roy  * lpi_changes_yes: Changing line pitch changes resolution
    179       1.13       roy  * memory_above: Display may be retained above the screen
    180       1.13       roy  * memory_below: Display may be retained below the screen
    181       1.13       roy  * move_insert_mode: Safe to move while in insert mode
    182       1.13       roy  * move_standout_mode: Safe to move in standout modes
    183       1.13       roy  * needs_xon_xoff: Padding won't work, xon/xoff required
    184       1.13       roy  * no_esc_ctlc: Beehive (f1=escape, f2=ctrl C)
    185       1.13       roy  * no_pad_char: Pad character doesn't exist
    186       1.13       roy  * non_dest_scroll_region: Scrolling region is nondestructive
    187       1.13       roy  * non_rev_rmcup: smcup does not reverse rmcup
    188       1.13       roy  * over_strike: Terminal overstrikes on hard-copy terminal
    189       1.13       roy  * prtr_silent: Printer won't echo on screen
    190       1.13       roy  * row_addr_glitch: Only positive motion for vpa/mvpa caps
    191       1.13       roy  * semi_auto_right_margin: Printing in last column causes cr
    192       1.13       roy  * status_line_esc_ok: Escape can be used on the status line
    193       1.13       roy  * tilde_glitch: Hazeltine; can't print tilde (~)
    194       1.13       roy  * transparent_underline: Underline character overstrikes
    195       1.13       roy  * xon_xoff: Terminal uses xon/xoff handshaking
    196       1.13       roy */
    197       1.13       roy 
    198        1.1       roy /* Define available terminfo numbers */
    199        1.1       roy enum TINUMS {
    200        1.1       roy 	TICODE_bitwin,
    201        1.1       roy 	TICODE_bitype,
    202        1.1       roy 	TICODE_bufsz,
    203        1.1       roy 	TICODE_btns,
    204        1.1       roy 	TICODE_cols,
    205        1.1       roy 	TICODE_spinh,
    206        1.1       roy 	TICODE_spinv,
    207        1.1       roy 	TICODE_it,
    208        1.1       roy 	TICODE_lh,
    209        1.1       roy 	TICODE_lw,
    210        1.1       roy 	TICODE_lines,
    211        1.1       roy 	TICODE_lm,
    212        1.1       roy 	TICODE_ma,
    213        1.1       roy 	TICODE_xmc,
    214        1.1       roy 	TICODE_colors,
    215        1.1       roy 	TICODE_maddr,
    216        1.1       roy 	TICODE_mjump,
    217        1.1       roy 	TICODE_pairs,
    218        1.1       roy 	TICODE_wnum,
    219        1.1       roy 	TICODE_mcs,
    220        1.1       roy 	TICODE_mls,
    221        1.1       roy 	TICODE_ncv,
    222        1.1       roy 	TICODE_nlab,
    223        1.1       roy 	TICODE_npins,
    224        1.1       roy 	TICODE_orc,
    225        1.1       roy 	TICODE_orl,
    226        1.1       roy 	TICODE_orhi,
    227        1.1       roy 	TICODE_orvi,
    228        1.1       roy 	TICODE_pb,
    229        1.1       roy 	TICODE_cps,
    230        1.1       roy 	TICODE_vt,
    231        1.1       roy 	TICODE_widcs,
    232        1.1       roy 	TICODE_wsl
    233        1.1       roy };
    234        1.1       roy #define TINUMMAX			TICODE_wsl
    235        1.1       roy 
    236        1.1       roy #define t_bit_image_entwining(t)	(t)->nums[TICODE_bitwin]
    237        1.1       roy #define t_bit_image_type(t)		(t)->nums[TICODE_bitype]
    238        1.1       roy #define t_buffer_capacity(t)		(t)->nums[TICODE_bufsz]
    239        1.1       roy #define t_buttons(t)			(t)->nums[TICODE_btns]
    240        1.1       roy #define t_columns(t)			(t)->nums[TICODE_cols]
    241        1.1       roy #define t_dot_horz_spacing(t)		(t)->nums[TICODE_spinh]
    242        1.1       roy #define t_dot_vert_spacing(t)		(t)->nums[TICODE_spinv]
    243        1.1       roy #define t_init_tabs(t)			(t)->nums[TICODE_it]
    244        1.1       roy #define t_label_height(t)		(t)->nums[TICODE_lh]
    245        1.1       roy #define t_label_width(t)		(t)->nums[TICODE_lw]
    246        1.1       roy #define t_lines(t)			(t)->nums[TICODE_lines]
    247        1.1       roy #define t_lines_of_memory(t)		(t)->nums[TICODE_lm]
    248        1.1       roy #define t_max_attributes(t)		(t)->nums[TICODE_ma]
    249        1.1       roy #define t_magic_cookie_glitch(t)	(t)->nums[TICODE_xmc]
    250        1.1       roy #define t_max_colors(t)			(t)->nums[TICODE_colors]
    251        1.1       roy #define t_max_micro_address(t)		(t)->nums[TICODE_maddr]
    252        1.1       roy #define t_max_micro_jump(t)		(t)->nums[TICODE_mjump]
    253        1.1       roy #define t_max_pairs(t)			(t)->nums[TICODE_pairs]
    254        1.1       roy #define t_maximum_windows(t)		(t)->nums[TICODE_wnum]
    255        1.1       roy #define t_micro_col_size(t)		(t)->nums[TICODE_mcs]
    256        1.1       roy #define t_micro_line_size(t)		(t)->nums[TICODE_mls]
    257        1.1       roy #define t_no_color_video(t)		(t)->nums[TICODE_ncv]
    258        1.1       roy #define t_num_labels(t)			(t)->nums[TICODE_nlab]
    259        1.1       roy #define t_number_of_pins(t)		(t)->nums[TICODE_npins]
    260        1.1       roy #define t_output_res_char(t)		(t)->nums[TICODE_orc]
    261        1.1       roy #define t_output_res_line(t)		(t)->nums[TICODE_orl]
    262        1.1       roy #define t_output_res_horz_inch(t)	(t)->nums[TICODE_orhi]
    263        1.1       roy #define t_output_res_vert_inch(t)	(t)->nums[TICODE_orvi]
    264        1.1       roy #define t_padding_baud_rate(t)		(t)->nums[TICODE_pb]
    265        1.1       roy #define t_print_rate(t)			(t)->nums[TICODE_cps]
    266        1.1       roy #define t_virtual_terminal(t)		(t)->nums[TICODE_vt]
    267        1.1       roy #define t_wide_char_size(t)		(t)->nums[TICODE_widcs]
    268        1.1       roy #define t_width_status_line(t)		(t)->nums[TICODE_wsl]
    269        1.1       roy 
    270        1.1       roy #define bit_image_entwining		 t_bit_image_entwining(cur_term)
    271        1.1       roy #define bit_image_type			 t_bit_image_type(cur_term)
    272        1.1       roy #define buffer_capacity			 t_buffer_capacity(cur_term)
    273        1.1       roy #define buttons				 t_buttons(cur_term)
    274        1.1       roy #define columns				 t_columns(cur_term)
    275        1.1       roy #define dot_horz_spacing		 t_dot_horz_spacing(cur_term)
    276        1.1       roy #define dot_vert_spacing		 t_dot_vert_spacing(cur_term)
    277        1.1       roy #define init_tabs			 t_init_tabs(cur_term)
    278        1.1       roy #define label_height			 t_label_height(cur_term)
    279        1.1       roy #define label_width			 t_label_width(cur_term)
    280        1.1       roy #define lines				 t_lines(cur_term)
    281        1.1       roy #define lines_of_memory			 t_lines_of_memory(cur_term)
    282        1.1       roy #define max_attributes			 t_max_attributes(cur_term)
    283        1.1       roy #define magic_cookie_glitch		 t_magic_cookie_glitch(cur_term)
    284        1.1       roy #define max_colors			 t_max_colors(cur_term)
    285        1.1       roy #define max_micro_address		 t_max_micro_address(cur_term)
    286        1.1       roy #define max_micro_jump			 t_max_micro_jump(cur_term)
    287        1.1       roy #define max_pairs			 t_max_pairs(cur_term)
    288        1.1       roy #define maximum_windows			 t_maximum_windows(cur_term)
    289        1.1       roy #define micro_col_size			 t_micro_col_size(cur_term)
    290        1.1       roy #define micro_line_size			 t_micro_line_size(cur_term)
    291        1.1       roy #define no_color_video			 t_no_color_video(cur_term)
    292        1.1       roy #define num_labels			 t_num_labels(cur_term)
    293        1.1       roy #define number_of_pins			 t_number_of_pins(cur_term)
    294        1.1       roy #define output_res_char			 t_output_res_char(cur_term)
    295        1.1       roy #define output_res_line			 t_output_res_line(cur_term)
    296        1.1       roy #define output_res_horz_inch		 t_output_res_horz_inch(cur_term)
    297        1.1       roy #define output_res_vert_inch		 t_output_res_vert_inch(cur_term)
    298        1.1       roy #define padding_baud_rate		 t_padding_baud_rate(cur_term)
    299        1.1       roy #define print_rate			 t_print_rate(cur_term)
    300        1.1       roy #define virtual_terminal		 t_virtual_terminal(cur_term)
    301        1.1       roy #define wide_char_size			 t_wide_char_size(cur_term)
    302        1.1       roy #define width_status_line		 t_width_status_line(cur_term)
    303        1.1       roy 
    304       1.13       roy /*
    305       1.13       roy  * NUMBER DESCRIPTIONS
    306       1.13       roy  *
    307       1.13       roy  * bit_image_entwining: Number of passes for each bit-map row
    308       1.13       roy  * bit_image_type: Type of bit image device
    309       1.13       roy  * buffer_capacity: Number of bytes buffered before printing
    310       1.13       roy  * buttons: Number of buttons on the mouse
    311       1.13       roy  * columns: Number of columns in a line
    312       1.13       roy  * dot_horz_spacing: Spacing of dots horizontally in dots per inch
    313       1.13       roy  * dot_vert_spacing: Spacing of pins vertically in pins per inch
    314       1.13       roy  * init_tabs: Tabs initially every #1 spaces
    315       1.13       roy  * label_height: Number of rows in each label
    316       1.13       roy  * label_width: Numbre of columns in each label
    317       1.13       roy  * lines: Number of lines on a screen or a page
    318       1.13       roy  * lines_of_memory: Lines of memory of > lines; 0 means varies
    319       1.13       roy  * max_attributes: Maximum combined video attributes terminal can display
    320       1.13       roy  * magic_cookie_glitch: Number of blank characters left by smso or rmso
    321       1.13       roy  * max_colors: Maximum number of colours on the screen
    322       1.13       roy  * max_micro_address: Maximum value in micro_..._addresss
    323       1.13       roy  * max_micro_jump: Maximum value in parm_..._micro
    324       1.13       roy  * max_pairs: Maximum number of colour-pairs on the screen
    325       1.13       roy  * maximum_windows: Maximum number of definable windows
    326       1.13       roy  * micro_col_size: Character step size when in micro mode
    327       1.13       roy  * micro_line_size: Line step size when in micro mode
    328       1.13       roy  * no_color_video: Video attributes that can't be used with colours
    329       1.13       roy  * num_labels: Number of labels on screen (start at 1)
    330       1.13       roy  * number_of_pins: Number of pins in print-head
    331       1.13       roy  * output_res_char: Horizontal resolution in units per character
    332       1.13       roy  * output_res_line: Vertical resolution in units per line
    333       1.13       roy  * output_res_horz_inch: Horizontal resolution in units per inch
    334       1.13       roy  * output_res_vert_inch: Vertical resolution in units per inch
    335       1.13       roy  * padding_baud_rate: Lowest baud rate where padding needed
    336       1.13       roy  * print_rate: Print rate in characters per second
    337       1.13       roy  * virtual_terminal: Virtual terminal number
    338       1.13       roy  * wide_char_size: Character step size when in double-wide mode
    339       1.13       roy  * width_status_line: Number of columns in status line
    340       1.13       roy  */
    341       1.13       roy 
    342        1.1       roy /* Define available terminfo strings */
    343        1.1       roy enum TISTRS{
    344        1.1       roy 	TICODE_acsc,
    345        1.1       roy 	TICODE_scesa,
    346        1.1       roy 	TICODE_cbt,
    347        1.1       roy 	TICODE_bel,
    348        1.1       roy 	TICODE_bicr,
    349        1.1       roy 	TICODE_binel,
    350        1.1       roy 	TICODE_birep,
    351        1.1       roy 	TICODE_cr,
    352        1.1       roy 	TICODE_cpi,
    353        1.1       roy 	TICODE_lpi,
    354        1.1       roy 	TICODE_chr,
    355        1.1       roy 	TICODE_cvr,
    356        1.1       roy 	TICODE_csr,
    357        1.1       roy 	TICODE_rmp,
    358        1.1       roy 	TICODE_csnm,
    359        1.1       roy 	TICODE_tbc,
    360        1.1       roy 	TICODE_mgc,
    361        1.1       roy 	TICODE_clear,
    362        1.1       roy 	TICODE_el1,
    363        1.1       roy 	TICODE_el,
    364        1.1       roy 	TICODE_ed,
    365        1.1       roy 	TICODE_csin,
    366        1.1       roy 	TICODE_colornm,
    367        1.1       roy 	TICODE_hpa,
    368        1.1       roy 	TICODE_cmdch,
    369        1.1       roy 	TICODE_cwin,
    370        1.1       roy 	TICODE_cup,
    371        1.1       roy 	TICODE_cud1,
    372        1.1       roy 	TICODE_home,
    373        1.1       roy 	TICODE_civis,
    374        1.1       roy 	TICODE_cub1,
    375        1.1       roy 	TICODE_mrcup,
    376        1.1       roy 	TICODE_cnorm,
    377        1.1       roy 	TICODE_cuf1,
    378        1.1       roy 	TICODE_ll,
    379        1.1       roy 	TICODE_cuu1,
    380        1.1       roy 	TICODE_cvvis,
    381        1.1       roy 	TICODE_defbi,
    382        1.1       roy 	TICODE_defc,
    383        1.1       roy 	TICODE_dch1,
    384        1.1       roy 	TICODE_dl1,
    385        1.1       roy 	TICODE_devt,
    386        1.1       roy 	TICODE_dial,
    387        1.1       roy 	TICODE_dsl,
    388        1.1       roy 	TICODE_dclk,
    389        1.1       roy 	TICODE_dispc,
    390        1.1       roy 	TICODE_hd,
    391        1.1       roy 	TICODE_enacs,
    392        1.1       roy 	TICODE_endbi,
    393        1.1       roy 	TICODE_smacs,
    394        1.1       roy 	TICODE_smam,
    395        1.1       roy 	TICODE_blink,
    396        1.1       roy 	TICODE_bold,
    397        1.1       roy 	TICODE_smcup,
    398        1.1       roy 	TICODE_smdc,
    399        1.1       roy 	TICODE_dim,
    400        1.1       roy 	TICODE_swidm,
    401        1.1       roy 	TICODE_sdrfq,
    402        1.1       roy 	TICODE_ehhlm,
    403        1.1       roy 	TICODE_smir,
    404        1.1       roy 	TICODE_sitm,
    405        1.1       roy 	TICODE_elhlm,
    406        1.1       roy 	TICODE_slm,
    407        1.1       roy 	TICODE_elohlm,
    408        1.1       roy 	TICODE_smicm,
    409        1.1       roy 	TICODE_snlq,
    410        1.1       roy 	TICODE_snrmq,
    411        1.1       roy 	TICODE_smpch,
    412        1.1       roy 	TICODE_prot,
    413        1.1       roy 	TICODE_rev,
    414        1.1       roy 	TICODE_erhlm,
    415        1.1       roy 	TICODE_smsc,
    416        1.1       roy 	TICODE_invis,
    417        1.1       roy 	TICODE_sshm,
    418        1.1       roy 	TICODE_smso,
    419        1.1       roy 	TICODE_ssubm,
    420        1.1       roy 	TICODE_ssupm,
    421        1.1       roy 	TICODE_ethlm,
    422        1.1       roy 	TICODE_smul,
    423        1.1       roy 	TICODE_sum,
    424        1.1       roy 	TICODE_evhlm,
    425        1.1       roy 	TICODE_smxon,
    426        1.1       roy 	TICODE_ech,
    427        1.1       roy 	TICODE_rmacs,
    428        1.1       roy 	TICODE_rmam,
    429        1.1       roy 	TICODE_sgr0,
    430        1.1       roy 	TICODE_rmcup,
    431        1.1       roy 	TICODE_rmdc,
    432        1.1       roy 	TICODE_rwidm,
    433        1.1       roy 	TICODE_rmir,
    434        1.1       roy 	TICODE_ritm,
    435        1.1       roy 	TICODE_rlm,
    436        1.1       roy 	TICODE_rmicm,
    437        1.1       roy 	TICODE_rmpch,
    438        1.1       roy 	TICODE_rmsc,
    439        1.1       roy 	TICODE_rshm,
    440        1.1       roy 	TICODE_rmso,
    441        1.1       roy 	TICODE_rsubm,
    442        1.1       roy 	TICODE_rsupm,
    443        1.1       roy 	TICODE_rmul,
    444        1.1       roy 	TICODE_rum,
    445        1.1       roy 	TICODE_rmxon,
    446        1.1       roy 	TICODE_pause,
    447        1.1       roy 	TICODE_hook,
    448        1.1       roy 	TICODE_flash,
    449        1.1       roy 	TICODE_ff,
    450        1.1       roy 	TICODE_fsl,
    451        1.1       roy 	TICODE_getm,
    452        1.1       roy 	TICODE_wingo,
    453        1.1       roy 	TICODE_hup,
    454        1.1       roy 	TICODE_is1,
    455        1.1       roy 	TICODE_is2,
    456        1.1       roy 	TICODE_is3,
    457        1.1       roy 	TICODE_if,
    458        1.1       roy 	TICODE_iprog,
    459        1.1       roy 	TICODE_initc,
    460        1.1       roy 	TICODE_initp,
    461        1.1       roy 	TICODE_ich1,
    462        1.1       roy 	TICODE_il1,
    463        1.1       roy 	TICODE_ip,
    464        1.1       roy 	TICODE_ka1,
    465        1.1       roy 	TICODE_ka3,
    466        1.1       roy 	TICODE_kb2,
    467        1.1       roy 	TICODE_kbs,
    468        1.1       roy 	TICODE_kbeg,
    469        1.1       roy 	TICODE_kcbt,
    470        1.1       roy 	TICODE_kc1,
    471        1.1       roy 	TICODE_kc3,
    472        1.1       roy 	TICODE_kcan,
    473        1.1       roy 	TICODE_ktbc,
    474        1.1       roy 	TICODE_kclr,
    475        1.1       roy 	TICODE_kclo,
    476        1.1       roy 	TICODE_kcmd,
    477        1.1       roy 	TICODE_kcpy,
    478        1.1       roy 	TICODE_kcrt,
    479        1.1       roy 	TICODE_kctab,
    480        1.1       roy 	TICODE_kdch1,
    481        1.1       roy 	TICODE_kdl1,
    482        1.1       roy 	TICODE_kcud1,
    483        1.1       roy 	TICODE_krmir,
    484        1.1       roy 	TICODE_kend,
    485        1.1       roy 	TICODE_kent,
    486        1.1       roy 	TICODE_kel,
    487        1.1       roy 	TICODE_ked,
    488        1.1       roy 	TICODE_kext,
    489        1.1       roy 	TICODE_kf0,
    490        1.1       roy 	TICODE_kf1,
    491        1.1       roy 	TICODE_kf2,
    492        1.1       roy 	TICODE_kf3,
    493        1.1       roy 	TICODE_kf4,
    494        1.1       roy 	TICODE_kf5,
    495        1.1       roy 	TICODE_kf6,
    496        1.1       roy 	TICODE_kf7,
    497        1.1       roy 	TICODE_kf8,
    498        1.1       roy 	TICODE_kf9,
    499        1.1       roy 	TICODE_kf10,
    500        1.1       roy 	TICODE_kf11,
    501        1.1       roy 	TICODE_kf12,
    502        1.1       roy 	TICODE_kf13,
    503        1.1       roy 	TICODE_kf14,
    504        1.1       roy 	TICODE_kf15,
    505        1.1       roy 	TICODE_kf16,
    506        1.1       roy 	TICODE_kf17,
    507        1.1       roy 	TICODE_kf18,
    508        1.1       roy 	TICODE_kf19,
    509        1.1       roy 	TICODE_kf20,
    510        1.1       roy 	TICODE_kf21,
    511        1.1       roy 	TICODE_kf22,
    512        1.1       roy 	TICODE_kf23,
    513        1.1       roy 	TICODE_kf24,
    514        1.1       roy 	TICODE_kf25,
    515        1.1       roy 	TICODE_kf26,
    516        1.1       roy 	TICODE_kf27,
    517        1.1       roy 	TICODE_kf28,
    518        1.1       roy 	TICODE_kf29,
    519        1.1       roy 	TICODE_kf30,
    520        1.1       roy 	TICODE_kf31,
    521        1.1       roy 	TICODE_kf32,
    522        1.1       roy 	TICODE_kf33,
    523        1.1       roy 	TICODE_kf34,
    524        1.1       roy 	TICODE_kf35,
    525        1.1       roy 	TICODE_kf36,
    526        1.1       roy 	TICODE_kf37,
    527        1.1       roy 	TICODE_kf38,
    528        1.1       roy 	TICODE_kf39,
    529        1.1       roy 	TICODE_kf40,
    530        1.1       roy 	TICODE_kf41,
    531        1.1       roy 	TICODE_kf42,
    532        1.1       roy 	TICODE_kf43,
    533        1.1       roy 	TICODE_kf44,
    534        1.1       roy 	TICODE_kf45,
    535        1.1       roy 	TICODE_kf46,
    536        1.1       roy 	TICODE_kf47,
    537        1.1       roy 	TICODE_kf48,
    538        1.1       roy 	TICODE_kf49,
    539        1.1       roy 	TICODE_kf50,
    540        1.1       roy 	TICODE_kf51,
    541        1.1       roy 	TICODE_kf52,
    542        1.1       roy 	TICODE_kf53,
    543        1.1       roy 	TICODE_kf54,
    544        1.1       roy 	TICODE_kf55,
    545        1.1       roy 	TICODE_kf56,
    546        1.1       roy 	TICODE_kf57,
    547        1.1       roy 	TICODE_kf58,
    548        1.1       roy 	TICODE_kf59,
    549        1.1       roy 	TICODE_kf60,
    550        1.1       roy 	TICODE_kf61,
    551        1.1       roy 	TICODE_kf62,
    552        1.1       roy 	TICODE_kf63,
    553        1.1       roy 	TICODE_kfnd,
    554        1.1       roy 	TICODE_khlp,
    555        1.1       roy 	TICODE_khome,
    556        1.1       roy 	TICODE_kich1,
    557        1.1       roy 	TICODE_kil1,
    558        1.1       roy 	TICODE_kcub1,
    559        1.1       roy 	TICODE_kll,
    560        1.1       roy 	TICODE_kmrk,
    561        1.1       roy 	TICODE_kmsg,
    562        1.1       roy 	TICODE_kmous,
    563        1.1       roy 	TICODE_kmov,
    564        1.1       roy 	TICODE_knxt,
    565        1.1       roy 	TICODE_knp,
    566        1.1       roy 	TICODE_kopn,
    567        1.1       roy 	TICODE_kopt,
    568        1.1       roy 	TICODE_kpp,
    569        1.1       roy 	TICODE_kprv,
    570        1.1       roy 	TICODE_kprt,
    571        1.1       roy 	TICODE_krdo,
    572        1.1       roy 	TICODE_kref,
    573        1.1       roy 	TICODE_krfr,
    574        1.1       roy 	TICODE_krpl,
    575        1.1       roy 	TICODE_krst,
    576        1.1       roy 	TICODE_kres,
    577        1.1       roy 	TICODE_kcuf1,
    578        1.1       roy 	TICODE_ksav,
    579        1.1       roy 	TICODE_kBEG,
    580        1.1       roy 	TICODE_kCAN,
    581        1.1       roy 	TICODE_kCMD,
    582        1.1       roy 	TICODE_kCPY,
    583        1.1       roy 	TICODE_kCRT,
    584        1.1       roy 	TICODE_kDC,
    585        1.1       roy 	TICODE_kDL,
    586        1.1       roy 	TICODE_kslt,
    587        1.1       roy 	TICODE_kEND,
    588        1.1       roy 	TICODE_kEOL,
    589        1.1       roy 	TICODE_kEXT,
    590        1.1       roy 	TICODE_kind,
    591        1.1       roy 	TICODE_kFND,
    592        1.1       roy 	TICODE_kHLP,
    593        1.1       roy 	TICODE_kHOM,
    594        1.1       roy 	TICODE_kIC,
    595        1.1       roy 	TICODE_kLFT,
    596        1.1       roy 	TICODE_kMSG,
    597        1.1       roy 	TICODE_kMOV,
    598        1.1       roy 	TICODE_kNXT,
    599        1.1       roy 	TICODE_kOPT,
    600        1.1       roy 	TICODE_kPRV,
    601        1.1       roy 	TICODE_kPRT,
    602        1.1       roy 	TICODE_kri,
    603        1.1       roy 	TICODE_kRDO,
    604        1.1       roy 	TICODE_kRPL,
    605        1.1       roy 	TICODE_kRIT,
    606        1.1       roy 	TICODE_kRES,
    607        1.1       roy 	TICODE_kSAV,
    608        1.1       roy 	TICODE_kSPD,
    609        1.1       roy 	TICODE_khts,
    610        1.1       roy 	TICODE_kUND,
    611        1.1       roy 	TICODE_kspd,
    612        1.1       roy 	TICODE_kund,
    613        1.1       roy 	TICODE_kcuu1,
    614        1.1       roy 	TICODE_rmkx,
    615        1.1       roy 	TICODE_smkx,
    616        1.1       roy 	TICODE_lf0,
    617        1.1       roy 	TICODE_lf1,
    618        1.1       roy 	TICODE_lf2,
    619        1.1       roy 	TICODE_lf3,
    620        1.1       roy 	TICODE_lf4,
    621        1.1       roy 	TICODE_lf5,
    622        1.1       roy 	TICODE_lf6,
    623        1.1       roy 	TICODE_lf7,
    624        1.1       roy 	TICODE_lf8,
    625        1.1       roy 	TICODE_lf9,
    626        1.1       roy 	TICODE_lf10,
    627        1.1       roy 	TICODE_fln,
    628        1.1       roy 	TICODE_rmln,
    629        1.1       roy 	TICODE_smln,
    630        1.1       roy 	TICODE_rmm,
    631        1.1       roy 	TICODE_smm,
    632        1.1       roy 	TICODE_mhpa,
    633        1.1       roy 	TICODE_mcud1,
    634        1.1       roy 	TICODE_mcub1,
    635        1.1       roy 	TICODE_mcuf1,
    636        1.1       roy 	TICODE_mvpa,
    637        1.1       roy 	TICODE_mcuu1,
    638        1.1       roy 	TICODE_minfo,
    639        1.1       roy 	TICODE_nel,
    640        1.1       roy 	TICODE_porder,
    641        1.1       roy 	TICODE_oc,
    642        1.1       roy 	TICODE_op,
    643        1.1       roy 	TICODE_pad,
    644        1.1       roy 	TICODE_dch,
    645        1.1       roy 	TICODE_dl,
    646        1.1       roy 	TICODE_cud,
    647        1.1       roy 	TICODE_mcud,
    648        1.1       roy 	TICODE_ich,
    649        1.1       roy 	TICODE_indn,
    650        1.1       roy 	TICODE_il,
    651        1.1       roy 	TICODE_cub,
    652        1.1       roy 	TICODE_mcub,
    653        1.1       roy 	TICODE_cuf,
    654        1.1       roy 	TICODE_mcuf,
    655        1.1       roy 	TICODE_rin,
    656        1.1       roy 	TICODE_cuu,
    657        1.1       roy 	TICODE_mcuu,
    658        1.1       roy 	TICODE_pctrm,
    659        1.1       roy 	TICODE_pfkey,
    660        1.1       roy 	TICODE_pfloc,
    661        1.1       roy 	TICODE_pfxl,
    662        1.1       roy 	TICODE_pfx,
    663        1.1       roy 	TICODE_pln,
    664        1.1       roy 	TICODE_mc0,
    665        1.1       roy 	TICODE_mc5p,
    666        1.1       roy 	TICODE_mc4,
    667        1.1       roy 	TICODE_mc5,
    668        1.1       roy 	TICODE_pulse,
    669        1.1       roy 	TICODE_qdial,
    670        1.1       roy 	TICODE_rmclk,
    671        1.1       roy 	TICODE_rep,
    672        1.1       roy 	TICODE_rfi,
    673        1.1       roy 	TICODE_reqmp,
    674        1.1       roy 	TICODE_rs1,
    675        1.1       roy 	TICODE_rs2,
    676        1.1       roy 	TICODE_rs3,
    677        1.1       roy 	TICODE_rf,
    678        1.1       roy 	TICODE_rc,
    679        1.1       roy 	TICODE_vpa,
    680        1.1       roy 	TICODE_sc,
    681        1.1       roy 	TICODE_scesc,
    682        1.1       roy 	TICODE_ind,
    683        1.1       roy 	TICODE_ri,
    684        1.1       roy 	TICODE_scs,
    685        1.1       roy 	TICODE_s0ds,
    686        1.1       roy 	TICODE_s1ds,
    687        1.1       roy 	TICODE_s2ds,
    688        1.1       roy 	TICODE_s3ds,
    689        1.1       roy 	TICODE_sgr1,
    690        1.1       roy 	TICODE_setab,
    691        1.1       roy 	TICODE_setaf,
    692        1.1       roy 	TICODE_sgr,
    693        1.1       roy 	TICODE_setb,
    694        1.1       roy 	TICODE_smgb,
    695        1.1       roy 	TICODE_smgbp,
    696        1.1       roy 	TICODE_sclk,
    697        1.1       roy 	TICODE_setcolor,
    698        1.1       roy 	TICODE_scp,
    699        1.1       roy 	TICODE_setf,
    700        1.1       roy 	TICODE_smgl,
    701        1.1       roy 	TICODE_smglp,
    702        1.1       roy 	TICODE_smglr,
    703        1.1       roy 	TICODE_slines,
    704        1.1       roy 	TICODE_slength,
    705        1.1       roy 	TICODE_smgr,
    706        1.1       roy 	TICODE_smgrp,
    707        1.1       roy 	TICODE_hts,
    708        1.1       roy 	TICODE_smgtb,
    709        1.1       roy 	TICODE_smgt,
    710        1.1       roy 	TICODE_smgtp,
    711        1.1       roy 	TICODE_wind,
    712        1.1       roy 	TICODE_sbim,
    713        1.1       roy 	TICODE_scsd,
    714        1.1       roy 	TICODE_rbim,
    715        1.1       roy 	TICODE_rcsd,
    716        1.1       roy 	TICODE_subcs,
    717        1.1       roy 	TICODE_supcs,
    718        1.1       roy 	TICODE_ht,
    719        1.1       roy 	TICODE_docr,
    720        1.1       roy 	TICODE_tsl,
    721        1.1       roy 	TICODE_tone,
    722        1.1       roy 	TICODE_u0,
    723        1.1       roy 	TICODE_u1,
    724        1.1       roy 	TICODE_u2,
    725        1.1       roy 	TICODE_u3,
    726        1.1       roy 	TICODE_u4,
    727        1.1       roy 	TICODE_u5,
    728        1.1       roy 	TICODE_u6,
    729        1.1       roy 	TICODE_u7,
    730        1.1       roy 	TICODE_u8,
    731        1.1       roy 	TICODE_u9,
    732        1.1       roy 	TICODE_uc,
    733        1.1       roy 	TICODE_hu,
    734        1.1       roy 	TICODE_wait,
    735        1.1       roy 	TICODE_xoffc,
    736        1.1       roy 	TICODE_xonc,
    737        1.1       roy 	TICODE_zerom
    738        1.1       roy };
    739        1.1       roy #define TISTRMAX			TICODE_zerom
    740        1.1       roy 
    741        1.1       roy #define t_acs_chars(t)			(t)->strs[TICODE_acsc]
    742        1.1       roy #define t_alt_scancode_esc(t)		(t)->strs[TICODE_scesa]
    743        1.1       roy #define t_back_tab(t)			(t)->strs[TICODE_cbt]
    744        1.1       roy #define t_bell(t)			(t)->strs[TICODE_bel]
    745        1.1       roy #define t_bit_image_carriage_return(t)	(t)->strs[TICODE_bicr]
    746        1.1       roy #define t_bit_image_newline(t)		(t)->strs[TICODE_binel]
    747        1.1       roy #define t_bit_image_repeat(t)		(t)->strs[TICODE_birep]
    748        1.1       roy #define t_carriage_return(t)		(t)->strs[TICODE_cr]
    749        1.1       roy #define t_change_char_pitch(t)		(t)->strs[TICODE_cpi]
    750        1.1       roy #define t_change_line_pitch(t)		(t)->strs[TICODE_lpi]
    751        1.1       roy #define t_change_res_horz(t)		(t)->strs[TICODE_chr]
    752        1.1       roy #define t_change_res_vert(t)		(t)->strs[TICODE_cvr]
    753        1.1       roy #define t_change_scroll_region(t)	(t)->strs[TICODE_csr]
    754        1.1       roy #define t_char_padding(t)		(t)->strs[TICODE_rmp]
    755        1.1       roy #define t_char_set_names(t)		(t)->strs[TICODE_csnm]
    756        1.1       roy #define t_clear_all_tabs(t)		(t)->strs[TICODE_tbc]
    757        1.1       roy #define t_clear_margins(t)		(t)->strs[TICODE_mgc]
    758        1.1       roy #define t_clear_screen(t)		(t)->strs[TICODE_clear]
    759        1.1       roy #define t_clr_bol(t)			(t)->strs[TICODE_el1]
    760        1.1       roy #define t_clr_eol(t)			(t)->strs[TICODE_el]
    761        1.1       roy #define t_clr_eos(t)			(t)->strs[TICODE_ed]
    762        1.1       roy #define t_code_set_init(t)		(t)->strs[TICODE_csin]
    763        1.1       roy #define t_color_names(t)		(t)->strs[TICODE_colornm]
    764        1.1       roy #define t_column_address(t)		(t)->strs[TICODE_hpa]
    765        1.1       roy #define t_command_character(t)		(t)->strs[TICODE_cmdch]
    766        1.1       roy #define t_create_window(t)		(t)->strs[TICODE_cwin]
    767        1.1       roy #define t_cursor_address(t)		(t)->strs[TICODE_cup]
    768        1.1       roy #define t_cursor_down(t)		(t)->strs[TICODE_cud1]
    769        1.1       roy #define t_cursor_home(t)		(t)->strs[TICODE_home]
    770        1.1       roy #define t_cursor_invisible(t)		(t)->strs[TICODE_civis]
    771        1.1       roy #define t_cursor_left(t)		(t)->strs[TICODE_cub1]
    772        1.1       roy #define t_cursor_mem_address(t)		(t)->strs[TICODE_mrcup]
    773        1.1       roy #define t_cursor_normal(t)		(t)->strs[TICODE_cnorm]
    774        1.1       roy #define t_cursor_right(t)		(t)->strs[TICODE_cuf1]
    775        1.1       roy #define t_cursor_to_ll(t)		(t)->strs[TICODE_ll]
    776        1.1       roy #define t_cursor_up(t)			(t)->strs[TICODE_cuu1]
    777        1.1       roy #define t_cursor_visible(t)		(t)->strs[TICODE_cvvis]
    778        1.1       roy #define t_define_bit_image_region(t)	(t)->strs[TICODE_defbi]
    779        1.1       roy #define t_define_char(t)		(t)->strs[TICODE_defc]
    780        1.1       roy #define t_delete_character(t)		(t)->strs[TICODE_dch1]
    781        1.1       roy #define t_delete_line(t)		(t)->strs[TICODE_dl1]
    782        1.1       roy #define t_device_type(t)		(t)->strs[TICODE_devt]
    783        1.1       roy #define t_dial_phone(t)			(t)->strs[TICODE_dial]
    784        1.1       roy #define t_dis_status_line(t)		(t)->strs[TICODE_dsl]
    785        1.1       roy #define t_display_clock(t)		(t)->strs[TICODE_dclk]
    786        1.1       roy #define t_display_pc_char(t)		(t)->strs[TICODE_dispc]
    787        1.1       roy #define t_down_half_time(t)		(t)->strs[TICODE_hd]
    788        1.1       roy #define t_ena_acs(t)			(t)->strs[TICODE_enacs]
    789        1.1       roy #define t_end_bit_image_region(t)	(t)->strs[TICODE_endbi]
    790        1.1       roy #define t_enter_alt_charset_mode(t)	(t)->strs[TICODE_smacs]
    791        1.1       roy #define t_enter_am_mode(t)		(t)->strs[TICODE_smam]
    792        1.1       roy #define t_enter_blink_mode(t)		(t)->strs[TICODE_blink]
    793        1.1       roy #define t_enter_bold_mode(t)		(t)->strs[TICODE_bold]
    794        1.1       roy #define t_enter_ca_mode(t)		(t)->strs[TICODE_smcup]
    795        1.1       roy #define t_enter_delete_mode(t)		(t)->strs[TICODE_smdc]
    796        1.1       roy #define t_enter_dim_mode(t)		(t)->strs[TICODE_dim]
    797        1.1       roy #define t_enter_doublewide_mode(t)	(t)->strs[TICODE_swidm]
    798        1.1       roy #define t_enter_draft_quality(t)	(t)->strs[TICODE_sdrfq]
    799        1.1       roy #define t_enter_horizontal_hl_mode(t)	(t)->strs[TICODE_ehhlm]
    800        1.1       roy #define t_enter_insert_mode(t)		(t)->strs[TICODE_smir]
    801        1.1       roy #define t_enter_italics_mode(t)		(t)->strs[TICODE_sitm]
    802        1.1       roy #define t_enter_left_hl_mode(t)		(t)->strs[TICODE_elhlm]
    803        1.1       roy #define t_enter_leftward_mode(t)	(t)->strs[TICODE_slm]
    804        1.1       roy #define t_enter_low_hl_mode(t)		(t)->strs[TICODE_elohlm]
    805        1.1       roy #define t_enter_micro_mode(t)		(t)->strs[TICODE_smicm]
    806        1.1       roy #define t_enter_near_quality_letter(t)	(t)->strs[TICODE_snlq]
    807        1.1       roy #define t_enter_normal_quality(t)	(t)->strs[TICODE_snrmq]
    808        1.1       roy #define t_enter_pc_charset_mode(t)	(t)->strs[TICODE_smpch]
    809        1.1       roy #define t_enter_protected_mode(t)	(t)->strs[TICODE_prot]
    810        1.1       roy #define t_enter_reverse_mode(t)		(t)->strs[TICODE_rev]
    811        1.1       roy #define t_enter_right_hl_mode(t)	(t)->strs[TICODE_erhlm]
    812        1.1       roy #define t_enter_scancode_mode(t)	(t)->strs[TICODE_smsc]
    813        1.1       roy #define t_enter_secure_mode(t)		(t)->strs[TICODE_invis]
    814        1.1       roy #define t_enter_shadow_mode(t)		(t)->strs[TICODE_sshm]
    815        1.1       roy #define t_enter_standout_mode(t)	(t)->strs[TICODE_smso]
    816        1.1       roy #define t_enter_subscript_mode(t)	(t)->strs[TICODE_ssubm]
    817        1.1       roy #define t_enter_superscript_mode(t)	(t)->strs[TICODE_ssupm]
    818        1.1       roy #define t_enter_top_hl_mode(t)		(t)->strs[TICODE_ethlm]
    819        1.1       roy #define t_enter_underline_mode(t)	(t)->strs[TICODE_smul]
    820        1.1       roy #define t_enter_upward_mode(t)		(t)->strs[TICODE_sum]
    821        1.1       roy #define t_enter_vertical_hl_mode(t)	(t)->strs[TICODE_evhlm]
    822        1.1       roy #define t_enter_xon_mode(t)		(t)->strs[TICODE_smxon]
    823        1.1       roy #define t_erase_chars(t)		(t)->strs[TICODE_ech]
    824        1.1       roy #define t_exit_alt_charset_mode(t)	(t)->strs[TICODE_rmacs]
    825        1.1       roy #define t_exit_am_mode(t)		(t)->strs[TICODE_rmam]
    826        1.1       roy #define t_exit_attribute_mode(t)	(t)->strs[TICODE_sgr0]
    827        1.1       roy #define t_exit_ca_mode(t)		(t)->strs[TICODE_rmcup]
    828        1.1       roy #define t_exit_delete_mode(t)		(t)->strs[TICODE_rmdc]
    829        1.1       roy #define t_exit_doublewide_mode(t)	(t)->strs[TICODE_rwidm]
    830        1.1       roy #define t_exit_insert_mode(t)		(t)->strs[TICODE_rmir]
    831        1.1       roy #define t_exit_italics_mode(t)		(t)->strs[TICODE_ritm]
    832        1.1       roy #define t_exit_leftward_mode(t)		(t)->strs[TICODE_rlm]
    833        1.1       roy #define t_exit_micro_mode(t)		(t)->strs[TICODE_rmicm]
    834        1.1       roy #define t_exit_pc_charset_mode(t)	(t)->strs[TICODE_rmpch]
    835        1.1       roy #define t_exit_scancode_mode(t)		(t)->strs[TICODE_rmsc]
    836        1.1       roy #define t_exit_shadow_mode(t)		(t)->strs[TICODE_rshm]
    837        1.1       roy #define t_exit_standout_mode(t)		(t)->strs[TICODE_rmso]
    838        1.1       roy #define t_exit_subscript_mode(t)	(t)->strs[TICODE_rsubm]
    839        1.1       roy #define t_exit_superscript_mode(t)	(t)->strs[TICODE_rsupm]
    840        1.1       roy #define t_exit_underline_mode(t)	(t)->strs[TICODE_rmul]
    841        1.1       roy #define t_exit_upward_mode(t)		(t)->strs[TICODE_rum]
    842        1.1       roy #define t_exit_xon_mode(t)		(t)->strs[TICODE_rmxon]
    843        1.1       roy #define t_fixed_pause(t)		(t)->strs[TICODE_pause]
    844        1.1       roy #define t_flash_hook(t)			(t)->strs[TICODE_hook]
    845        1.1       roy #define t_flash_screen(t)		(t)->strs[TICODE_flash]
    846        1.1       roy #define t_form_feed(t)			(t)->strs[TICODE_ff]
    847        1.1       roy #define t_from_status_line(t)		(t)->strs[TICODE_fsl]
    848        1.1       roy #define t_get_mouse(t)			(t)->strs[TICODE_getm]
    849        1.1       roy #define t_goto_window(t)		(t)->strs[TICODE_wingo]
    850        1.1       roy #define t_hangup(t)			(t)->strs[TICODE_hup]
    851        1.1       roy #define t_init_1string(t)		(t)->strs[TICODE_is1]
    852        1.1       roy #define t_init_2string(t)		(t)->strs[TICODE_is2]
    853        1.1       roy #define t_init_3string(t)		(t)->strs[TICODE_is3]
    854        1.1       roy #define t_init_file(t)			(t)->strs[TICODE_if]
    855        1.1       roy #define t_init_prog(t)			(t)->strs[TICODE_iprog]
    856        1.1       roy #define t_initialize_color(t)		(t)->strs[TICODE_initc]
    857        1.1       roy #define t_initialize_pair(t)		(t)->strs[TICODE_initp]
    858        1.1       roy #define t_insert_character(t)		(t)->strs[TICODE_ich1]
    859        1.1       roy #define t_insert_line(t)		(t)->strs[TICODE_il1]
    860        1.1       roy #define t_insert_padding(t)		(t)->strs[TICODE_ip]
    861        1.1       roy #define t_key_a1(t)			(t)->strs[TICODE_ka1]
    862        1.1       roy #define t_key_a3(t)			(t)->strs[TICODE_ka3]
    863        1.1       roy #define t_key_b2(t)			(t)->strs[TICODE_kb2]
    864        1.1       roy #define t_key_backspace(t)		(t)->strs[TICODE_kbs]
    865        1.1       roy #define t_key_beg(t)			(t)->strs[TICODE_kbeg]
    866        1.1       roy #define t_key_btab(t)			(t)->strs[TICODE_kcbt]
    867        1.1       roy #define t_key_c1(t)			(t)->strs[TICODE_kc1]
    868        1.1       roy #define t_key_c3(t)			(t)->strs[TICODE_kc3]
    869        1.1       roy #define t_key_cancel(t)			(t)->strs[TICODE_kcan]
    870        1.1       roy #define t_key_catab(t)			(t)->strs[TICODE_ktbc]
    871        1.1       roy #define t_key_clear(t)			(t)->strs[TICODE_kclr]
    872        1.1       roy #define t_key_close(t)			(t)->strs[TICODE_kclo]
    873        1.1       roy #define t_key_command(t)		(t)->strs[TICODE_kcmd]
    874        1.1       roy #define t_key_copy(t)			(t)->strs[TICODE_kcpy]
    875        1.1       roy #define t_key_create(t)			(t)->strs[TICODE_kcrt]
    876        1.1       roy #define t_key_ctab(t)			(t)->strs[TICODE_kctab]
    877        1.1       roy #define t_key_dc(t)			(t)->strs[TICODE_kdch1]
    878        1.1       roy #define t_key_dl(t)			(t)->strs[TICODE_kdl1]
    879        1.1       roy #define t_key_down(t)			(t)->strs[TICODE_kcud1]
    880        1.1       roy #define t_key_eic(t)			(t)->strs[TICODE_krmir]
    881        1.1       roy #define t_key_end(t)			(t)->strs[TICODE_kend]
    882        1.1       roy #define t_key_enter(t)			(t)->strs[TICODE_kent]
    883        1.1       roy #define t_key_eol(t)			(t)->strs[TICODE_kel]
    884        1.1       roy #define t_key_eos(t)			(t)->strs[TICODE_ked]
    885        1.1       roy #define t_key_exit(t)			(t)->strs[TICODE_kext]
    886        1.1       roy #define t_key_f0(t)			(t)->strs[TICODE_kf0]
    887        1.1       roy #define t_key_f1(t)			(t)->strs[TICODE_kf1]
    888        1.1       roy #define t_key_f2(t)			(t)->strs[TICODE_kf2]
    889        1.1       roy #define t_key_f3(t)			(t)->strs[TICODE_kf3]
    890        1.1       roy #define t_key_f4(t)			(t)->strs[TICODE_kf4]
    891        1.1       roy #define t_key_f5(t)			(t)->strs[TICODE_kf5]
    892        1.1       roy #define t_key_f6(t)			(t)->strs[TICODE_kf6]
    893        1.1       roy #define t_key_f7(t)			(t)->strs[TICODE_kf7]
    894        1.1       roy #define t_key_f8(t)			(t)->strs[TICODE_kf8]
    895        1.1       roy #define t_key_f9(t)			(t)->strs[TICODE_kf9]
    896        1.1       roy #define t_key_f10(t)			(t)->strs[TICODE_kf10]
    897        1.1       roy #define t_key_f11(t)			(t)->strs[TICODE_kf11]
    898        1.1       roy #define t_key_f12(t)			(t)->strs[TICODE_kf12]
    899        1.1       roy #define t_key_f13(t)			(t)->strs[TICODE_kf13]
    900        1.1       roy #define t_key_f14(t)			(t)->strs[TICODE_kf14]
    901        1.1       roy #define t_key_f15(t)			(t)->strs[TICODE_kf15]
    902        1.1       roy #define t_key_f16(t)			(t)->strs[TICODE_kf16]
    903        1.1       roy #define t_key_f17(t)			(t)->strs[TICODE_kf17]
    904        1.1       roy #define t_key_f18(t)			(t)->strs[TICODE_kf18]
    905        1.1       roy #define t_key_f19(t)			(t)->strs[TICODE_kf19]
    906        1.1       roy #define t_key_f20(t)			(t)->strs[TICODE_kf20]
    907        1.1       roy #define t_key_f21(t)			(t)->strs[TICODE_kf21]
    908        1.1       roy #define t_key_f22(t)			(t)->strs[TICODE_kf22]
    909        1.1       roy #define t_key_f23(t)			(t)->strs[TICODE_kf23]
    910        1.1       roy #define t_key_f24(t)			(t)->strs[TICODE_kf24]
    911        1.1       roy #define t_key_f25(t)			(t)->strs[TICODE_kf25]
    912        1.1       roy #define t_key_f26(t)			(t)->strs[TICODE_kf26]
    913        1.1       roy #define t_key_f27(t)			(t)->strs[TICODE_kf27]
    914        1.1       roy #define t_key_f28(t)			(t)->strs[TICODE_kf28]
    915        1.1       roy #define t_key_f29(t)			(t)->strs[TICODE_kf29]
    916        1.1       roy #define t_key_f30(t)			(t)->strs[TICODE_kf30]
    917        1.1       roy #define t_key_f31(t)			(t)->strs[TICODE_kf31]
    918        1.1       roy #define t_key_f32(t)			(t)->strs[TICODE_kf32]
    919        1.1       roy #define t_key_f33(t)			(t)->strs[TICODE_kf33]
    920        1.1       roy #define t_key_f34(t)			(t)->strs[TICODE_kf34]
    921        1.1       roy #define t_key_f35(t)			(t)->strs[TICODE_kf35]
    922        1.1       roy #define t_key_f36(t)			(t)->strs[TICODE_kf36]
    923        1.1       roy #define t_key_f37(t)			(t)->strs[TICODE_kf37]
    924        1.1       roy #define t_key_f38(t)			(t)->strs[TICODE_kf38]
    925        1.1       roy #define t_key_f39(t)			(t)->strs[TICODE_kf39]
    926        1.1       roy #define t_key_f40(t)			(t)->strs[TICODE_kf40]
    927        1.1       roy #define t_key_f41(t)			(t)->strs[TICODE_kf41]
    928        1.1       roy #define t_key_f42(t)			(t)->strs[TICODE_kf42]
    929        1.1       roy #define t_key_f43(t)			(t)->strs[TICODE_kf43]
    930        1.1       roy #define t_key_f44(t)			(t)->strs[TICODE_kf44]
    931        1.1       roy #define t_key_f45(t)			(t)->strs[TICODE_kf45]
    932        1.1       roy #define t_key_f46(t)			(t)->strs[TICODE_kf46]
    933        1.1       roy #define t_key_f47(t)			(t)->strs[TICODE_kf47]
    934        1.1       roy #define t_key_f48(t)			(t)->strs[TICODE_kf48]
    935        1.1       roy #define t_key_f49(t)			(t)->strs[TICODE_kf49]
    936        1.1       roy #define t_key_f50(t)			(t)->strs[TICODE_kf50]
    937        1.1       roy #define t_key_f51(t)			(t)->strs[TICODE_kf51]
    938        1.1       roy #define t_key_f52(t)			(t)->strs[TICODE_kf52]
    939        1.1       roy #define t_key_f53(t)			(t)->strs[TICODE_kf53]
    940        1.1       roy #define t_key_f54(t)			(t)->strs[TICODE_kf54]
    941        1.1       roy #define t_key_f55(t)			(t)->strs[TICODE_kf55]
    942        1.1       roy #define t_key_f56(t)			(t)->strs[TICODE_kf56]
    943        1.1       roy #define t_key_f57(t)			(t)->strs[TICODE_kf57]
    944        1.1       roy #define t_key_f58(t)			(t)->strs[TICODE_kf58]
    945        1.1       roy #define t_key_f59(t)			(t)->strs[TICODE_kf59]
    946        1.1       roy #define t_key_f60(t)			(t)->strs[TICODE_kf60]
    947        1.1       roy #define t_key_f61(t)			(t)->strs[TICODE_kf61]
    948        1.1       roy #define t_key_f62(t)			(t)->strs[TICODE_kf62]
    949        1.1       roy #define t_key_f63(t)			(t)->strs[TICODE_kf63]
    950        1.1       roy #define t_key_find(t)			(t)->strs[TICODE_kfnd]
    951        1.1       roy #define t_key_help(t)			(t)->strs[TICODE_khlp]
    952        1.1       roy #define t_key_home(t)			(t)->strs[TICODE_khome]
    953        1.1       roy #define t_key_ic(t)			(t)->strs[TICODE_kich1]
    954        1.1       roy #define t_key_il(t)			(t)->strs[TICODE_kil1]
    955        1.1       roy #define t_key_left(t)			(t)->strs[TICODE_kcub1]
    956        1.1       roy #define t_key_ll(t)			(t)->strs[TICODE_kll]
    957        1.1       roy #define t_key_mark(t)			(t)->strs[TICODE_kmrk]
    958        1.1       roy #define t_key_message(t)		(t)->strs[TICODE_kmsg]
    959        1.1       roy #define t_key_mouse(t)			(t)->strs[TICODE_kmous]
    960        1.1       roy #define t_key_move(t)			(t)->strs[TICODE_kmov]
    961        1.1       roy #define t_key_next(t)			(t)->strs[TICODE_knxt]
    962        1.1       roy #define t_key_npage(t)			(t)->strs[TICODE_knp]
    963        1.1       roy #define t_key_open(t)			(t)->strs[TICODE_kopn]
    964        1.1       roy #define t_key_options(t)		(t)->strs[TICODE_kopt]
    965        1.1       roy #define t_key_ppage(t)			(t)->strs[TICODE_kpp]
    966        1.1       roy #define t_key_previous(t)		(t)->strs[TICODE_kprv]
    967        1.1       roy #define t_key_print(t)			(t)->strs[TICODE_kprt]
    968        1.1       roy #define t_key_redo(t)			(t)->strs[TICODE_krdo]
    969        1.1       roy #define t_key_reference(t)		(t)->strs[TICODE_kref]
    970        1.1       roy #define t_key_refresh(t)		(t)->strs[TICODE_krfr]
    971        1.1       roy #define t_key_replace(t)		(t)->strs[TICODE_krpl]
    972        1.1       roy #define t_key_restart(t)		(t)->strs[TICODE_krst]
    973        1.1       roy #define t_key_resume(t)			(t)->strs[TICODE_kres]
    974        1.1       roy #define t_key_right(t)			(t)->strs[TICODE_kcuf1]
    975        1.1       roy #define t_key_save(t)			(t)->strs[TICODE_ksav]
    976        1.1       roy #define t_key_sbeg(t)			(t)->strs[TICODE_kBEG]
    977        1.1       roy #define t_key_scancel(t)		(t)->strs[TICODE_kCAN]
    978        1.1       roy #define t_key_scommand(t)		(t)->strs[TICODE_kCMD]
    979        1.1       roy #define t_key_scopy(t)			(t)->strs[TICODE_kCPY]
    980        1.1       roy #define t_key_screate(t)		(t)->strs[TICODE_kCRT]
    981        1.1       roy #define t_key_sdc(t)			(t)->strs[TICODE_kDC]
    982        1.1       roy #define t_key_sdl(t)			(t)->strs[TICODE_kDL]
    983        1.1       roy #define t_key_select(t)			(t)->strs[TICODE_kslt]
    984        1.1       roy #define t_key_send(t)			(t)->strs[TICODE_kEND]
    985        1.1       roy #define t_key_seol(t)			(t)->strs[TICODE_kEOL]
    986        1.1       roy #define t_key_sexit(t)			(t)->strs[TICODE_kEXT]
    987        1.1       roy #define t_key_sf(t)			(t)->strs[TICODE_kind]
    988        1.1       roy #define t_key_sfind(t)			(t)->strs[TICODE_kFND]
    989        1.1       roy #define t_key_shelp(t)			(t)->strs[TICODE_kHLP]
    990        1.1       roy #define t_key_shome(t)			(t)->strs[TICODE_kHOM]
    991        1.1       roy #define t_key_sic(t)			(t)->strs[TICODE_kIC]
    992        1.1       roy #define t_key_sleft(t)			(t)->strs[TICODE_kLFT]
    993        1.1       roy #define t_key_smessage(t)		(t)->strs[TICODE_kMSG]
    994        1.1       roy #define t_key_smove(t)			(t)->strs[TICODE_kMOV]
    995        1.1       roy #define t_key_snext(t)			(t)->strs[TICODE_kNXT]
    996        1.1       roy #define t_key_soptions(t)		(t)->strs[TICODE_kOPT]
    997        1.1       roy #define t_key_sprevious(t)		(t)->strs[TICODE_kPRV]
    998        1.1       roy #define t_key_sprint(t)			(t)->strs[TICODE_kPRT]
    999        1.1       roy #define t_key_sr(t)			(t)->strs[TICODE_kri]
   1000        1.1       roy #define t_key_sredo(t)			(t)->strs[TICODE_kRDO]
   1001        1.1       roy #define t_key_sreplace(t)		(t)->strs[TICODE_kRPL]
   1002        1.1       roy #define t_key_sright(t)			(t)->strs[TICODE_kRIT]
   1003        1.1       roy #define t_key_srsume(t)			(t)->strs[TICODE_kRES]
   1004        1.1       roy #define t_key_ssave(t)			(t)->strs[TICODE_kSAV]
   1005        1.1       roy #define t_key_ssuspend(t)		(t)->strs[TICODE_kSPD]
   1006        1.1       roy #define t_key_stab(t)			(t)->strs[TICODE_khts]
   1007        1.1       roy #define t_key_sundo(t)			(t)->strs[TICODE_kUND]
   1008        1.1       roy #define t_key_suspend(t)		(t)->strs[TICODE_kspd]
   1009        1.1       roy #define t_key_undo(t)			(t)->strs[TICODE_kund]
   1010        1.1       roy #define t_key_up(t)			(t)->strs[TICODE_kcuu1]
   1011        1.1       roy #define t_keypad_local(t)		(t)->strs[TICODE_rmkx]
   1012        1.1       roy #define t_keypad_xmit(t)		(t)->strs[TICODE_smkx]
   1013        1.1       roy #define t_lab_f0(t)			(t)->strs[TICODE_lf0]
   1014        1.1       roy #define t_lab_f1(t)			(t)->strs[TICODE_lf1]
   1015        1.1       roy #define t_lab_f2(t)			(t)->strs[TICODE_lf2]
   1016        1.1       roy #define t_lab_f3(t)			(t)->strs[TICODE_lf3]
   1017        1.1       roy #define t_lab_f4(t)			(t)->strs[TICODE_lf4]
   1018        1.1       roy #define t_lab_f5(t)			(t)->strs[TICODE_lf5]
   1019        1.1       roy #define t_lab_f6(t)			(t)->strs[TICODE_lf6]
   1020        1.1       roy #define t_lab_f7(t)			(t)->strs[TICODE_lf7]
   1021        1.1       roy #define t_lab_f8(t)			(t)->strs[TICODE_lf8]
   1022        1.1       roy #define t_lab_f9(t)			(t)->strs[TICODE_lf9]
   1023        1.1       roy #define t_lab_f10(t)			(t)->strs[TICODE_lf10]
   1024        1.1       roy #define t_label_format(t)		(t)->strs[TICODE_fln]
   1025        1.1       roy #define t_label_off(t)			(t)->strs[TICODE_rmln]
   1026        1.1       roy #define t_label_on(t)			(t)->strs[TICODE_smln]
   1027        1.1       roy #define t_meta_off(t)			(t)->strs[TICODE_rmm]
   1028        1.1       roy #define t_meta_on(t)			(t)->strs[TICODE_smm]
   1029        1.1       roy #define t_micro_column_address(t)	(t)->strs[TICODE_mhpa]
   1030        1.1       roy #define t_micro_down(t)			(t)->strs[TICODE_mcud1]
   1031        1.1       roy #define t_micro_left(t)			(t)->strs[TICODE_mcub1]
   1032        1.1       roy #define t_micro_right(t)		(t)->strs[TICODE_mcuf1]
   1033        1.1       roy #define t_micro_row_address(t)		(t)->strs[TICODE_mvpa]
   1034        1.1       roy #define t_micro_up(t)			(t)->strs[TICODE_mcuu1]
   1035        1.1       roy #define t_mouse_info(t)			(t)->strs[TICODE_minfo]
   1036        1.1       roy #define t_newline(t)			(t)->strs[TICODE_nel]
   1037        1.1       roy #define t_order_of_pins(t)		(t)->strs[TICODE_porder]
   1038        1.1       roy #define t_orig_colors(t)		(t)->strs[TICODE_oc]
   1039        1.1       roy #define t_orig_pair(t)			(t)->strs[TICODE_op]
   1040        1.1       roy #define t_pad_char(t)			(t)->strs[TICODE_pad]
   1041        1.1       roy #define t_parm_dch(t)			(t)->strs[TICODE_dch]
   1042        1.1       roy #define t_parm_delete_line(t)		(t)->strs[TICODE_dl]
   1043        1.1       roy #define t_parm_down_cursor(t)		(t)->strs[TICODE_cud]
   1044        1.1       roy #define t_parm_down_micro(t)		(t)->strs[TICODE_mcud]
   1045        1.1       roy #define t_parm_ich(t)			(t)->strs[TICODE_ich]
   1046        1.1       roy #define t_parm_index(t)			(t)->strs[TICODE_indn]
   1047        1.1       roy #define t_parm_insert_line(t)		(t)->strs[TICODE_il]
   1048        1.1       roy #define t_parm_left_cursor(t)		(t)->strs[TICODE_cub]
   1049        1.1       roy #define t_parm_left_micro(t)		(t)->strs[TICODE_mcub]
   1050        1.1       roy #define t_parm_right_cursor(t)		(t)->strs[TICODE_cuf]
   1051        1.1       roy #define t_parm_right_micro(t)		(t)->strs[TICODE_mcuf]
   1052        1.1       roy #define t_parm_rindex(t)		(t)->strs[TICODE_rin]
   1053        1.1       roy #define t_parm_up_cursor(t)		(t)->strs[TICODE_cuu]
   1054        1.1       roy #define t_parm_up_micro(t)		(t)->strs[TICODE_mcuu]
   1055        1.1       roy #define t_pc_term_options(t)		(t)->strs[TICODE_pctrm]
   1056        1.1       roy #define t_pkey_key(t)			(t)->strs[TICODE_pfkey]
   1057        1.1       roy #define t_pkey_local(t)			(t)->strs[TICODE_pfloc]
   1058        1.1       roy #define t_pkey_plab(t)			(t)->strs[TICODE_pfxl]
   1059        1.1       roy #define t_pkey_xmit(t)			(t)->strs[TICODE_pfx]
   1060  1.16.10.1  pgoyette #define t_plab_norm(t)			(t)->strs[TICODE_pln]
   1061        1.1       roy #define t_print_screen(t)		(t)->strs[TICODE_mc0]
   1062        1.1       roy #define t_ptr_non(t)			(t)->strs[TICODE_mc5p]
   1063        1.1       roy #define t_ptr_off(t)			(t)->strs[TICODE_mc4]
   1064        1.1       roy #define t_ptr_on(t)			(t)->strs[TICODE_mc5]
   1065        1.1       roy #define t_pulse(t)			(t)->strs[TICODE_pulse]
   1066        1.1       roy #define t_quick_dial(t)			(t)->strs[TICODE_qdial]
   1067        1.1       roy #define t_remove_clock(t)		(t)->strs[TICODE_rmclk]
   1068        1.1       roy #define t_repeat_char(t)		(t)->strs[TICODE_rep]
   1069        1.1       roy #define t_req_for_input(t)		(t)->strs[TICODE_rfi]
   1070        1.1       roy #define t_req_mouse_pos(t)		(t)->strs[TICODE_reqmp]
   1071        1.1       roy #define t_reset_1string(t)		(t)->strs[TICODE_rs1]
   1072        1.1       roy #define t_reset_2string(t)		(t)->strs[TICODE_rs2]
   1073        1.1       roy #define t_reset_3string(t)		(t)->strs[TICODE_rs3]
   1074        1.1       roy #define t_reset_file(t)			(t)->strs[TICODE_rf]
   1075        1.1       roy #define t_restore_cursor(t)		(t)->strs[TICODE_rc]
   1076        1.1       roy #define t_row_address(t)		(t)->strs[TICODE_vpa]
   1077        1.1       roy #define t_save_cursor(t)		(t)->strs[TICODE_sc]
   1078        1.1       roy #define t_scancode_escape(t)		(t)->strs[TICODE_scesc]
   1079        1.1       roy #define t_scroll_forward(t)		(t)->strs[TICODE_ind]
   1080        1.1       roy #define t_scroll_reverse(t)		(t)->strs[TICODE_ri]
   1081        1.1       roy #define t_select_char_set(t)		(t)->strs[TICODE_scs]
   1082        1.1       roy #define t_set0_des_seq(t)		(t)->strs[TICODE_s0ds]
   1083        1.1       roy #define t_set1_des_seq(t)		(t)->strs[TICODE_s1ds]
   1084        1.1       roy #define t_set2_des_seq(t)		(t)->strs[TICODE_s2ds]
   1085        1.1       roy #define t_set3_des_seq(t)		(t)->strs[TICODE_s3ds]
   1086        1.1       roy #define t_set_a_attributes(t)		(t)->strs[TICODE_sgr1]
   1087        1.1       roy #define t_set_a_background(t)		(t)->strs[TICODE_setab]
   1088        1.1       roy #define t_set_a_foreground(t)		(t)->strs[TICODE_setaf]
   1089        1.1       roy #define t_set_attributes(t)		(t)->strs[TICODE_sgr]
   1090        1.1       roy #define t_set_background(t)		(t)->strs[TICODE_setb]
   1091        1.1       roy #define t_set_bottom_margin(t)		(t)->strs[TICODE_smgb]
   1092        1.1       roy #define t_set_bottom_margin_parm(t)	(t)->strs[TICODE_smgbp]
   1093        1.1       roy #define t_set_clock(t)			(t)->strs[TICODE_sclk]
   1094        1.1       roy #define t_set_color_band(t)		(t)->strs[TICODE_setcolor]
   1095       1.11  christos #define t_set_color_pair(t)		(t)->strs[TICODE_scp]
   1096        1.1       roy #define t_set_foreground(t)		(t)->strs[TICODE_setf]
   1097        1.1       roy #define t_set_left_margin(t)		(t)->strs[TICODE_smgl]
   1098        1.1       roy #define t_set_left_margin_parm(t)	(t)->strs[TICODE_smglp]
   1099        1.1       roy #define t_set_lr_margin(t)		(t)->strs[TICODE_smglr]
   1100        1.1       roy #define t_set_page_length(t)		(t)->strs[TICODE_slines]
   1101        1.1       roy #define t_set_pglen_inch(t)		(t)->strs[TICODE_slength]
   1102        1.1       roy #define t_set_right_margin(t)		(t)->strs[TICODE_smgr]
   1103        1.1       roy #define t_set_right_margin_parm(t)	(t)->strs[TICODE_smgrp]
   1104        1.1       roy #define t_set_tab(t)			(t)->strs[TICODE_hts]
   1105        1.1       roy #define t_set_tb_margin(t)		(t)->strs[TICODE_smgtb]
   1106        1.1       roy #define t_set_top_margin(t)		(t)->strs[TICODE_smgt]
   1107        1.1       roy #define t_set_top_margin_parm(t)	(t)->strs[TICODE_smgtp]
   1108        1.1       roy #define t_set_window(t)			(t)->strs[TICODE_wind]
   1109        1.1       roy #define t_start_bit_image(t)		(t)->strs[TICODE_sbim]
   1110        1.1       roy #define t_start_char_set_def(t)		(t)->strs[TICODE_scsd]
   1111        1.1       roy #define t_stop_bit_image(t)		(t)->strs[TICODE_rbim]
   1112        1.1       roy #define t_stop_char_set_def(t)		(t)->strs[TICODE_rcsd]
   1113        1.1       roy #define t_subscript_characters(t)	(t)->strs[TICODE_subcs]
   1114        1.1       roy #define t_superscript_characters(t)	(t)->strs[TICODE_supcs]
   1115        1.1       roy #define t_tab(t)			(t)->strs[TICODE_ht]
   1116        1.1       roy #define t_these_cause_cr(t)		(t)->strs[TICODE_docr]
   1117        1.1       roy #define t_to_status_line(t)		(t)->strs[TICODE_tsl]
   1118        1.1       roy #define t_tone(t)			(t)->strs[TICODE_tone]
   1119        1.1       roy #define t_user0(t)			(t)->strs[TICODE_u0]
   1120        1.1       roy #define t_user1(t)			(t)->strs[TICODE_u1]
   1121        1.1       roy #define t_user2(t)			(t)->strs[TICODE_u2]
   1122        1.1       roy #define t_user3(t)			(t)->strs[TICODE_u3]
   1123        1.1       roy #define t_user4(t)			(t)->strs[TICODE_u4]
   1124        1.1       roy #define t_user5(t)			(t)->strs[TICODE_u5]
   1125        1.1       roy #define t_user6(t)			(t)->strs[TICODE_u6]
   1126        1.1       roy #define t_user7(t)			(t)->strs[TICODE_u7]
   1127        1.1       roy #define t_user8(t)			(t)->strs[TICODE_u8]
   1128        1.1       roy #define t_user9(t)			(t)->strs[TICODE_u9]
   1129        1.1       roy #define t_underline_char(t)		(t)->strs[TICODE_uc]
   1130        1.1       roy #define t_up_half_line(t)		(t)->strs[TICODE_hu]
   1131        1.1       roy #define t_wait_tone(t)			(t)->strs[TICODE_wait]
   1132        1.1       roy #define t_xoff_character(t)		(t)->strs[TICODE_xoffc]
   1133        1.1       roy #define t_xon_character(t)		(t)->strs[TICODE_xonc]
   1134        1.1       roy #define t_zero_motion(t)		(t)->strs[TICODE_zerom]
   1135        1.1       roy 
   1136        1.1       roy #define acs_chars			 t_acs_chars(cur_term)
   1137        1.1       roy #define alt_scancode_esc		 t_alt_scancode_esc(cur_term)
   1138        1.1       roy #define back_tab			 t_back_tab(cur_term)
   1139        1.1       roy #define bell				 t_bell(cur_term)
   1140        1.1       roy #define bit_image_carriage_return	 t_bit_image_carriage_return(cur_term)
   1141        1.1       roy #define bit_image_newline		 t_bit_image_newline(cur_term)
   1142        1.1       roy #define bit_image_repeat		 t_bit_image_repeat(cur_term)
   1143        1.1       roy #define carriage_return			 t_carriage_return(cur_term)
   1144        1.1       roy #define change_char_pitch		 t_change_char_pitch(cur_term)
   1145        1.1       roy #define change_line_pitch		 t_change_line_pitch(cur_term)
   1146        1.1       roy #define change_res_horz			 t_change_res_horz(cur_term)
   1147        1.1       roy #define change_res_vert			 t_change_res_vert(cur_term)
   1148        1.1       roy #define change_scroll_region		 t_change_scroll_region(cur_term)
   1149        1.1       roy #define char_padding			 t_char_padding(cur_term)
   1150        1.1       roy #define char_set_names			 t_char_set_names(cur_term)
   1151        1.1       roy #define clear_all_tabs			 t_clear_all_tabs(cur_term)
   1152        1.1       roy #define clear_margins			 t_clear_margins(cur_term)
   1153        1.1       roy #define clear_screen			 t_clear_screen(cur_term)
   1154        1.1       roy #define clr_bol				 t_clr_bol(cur_term)
   1155        1.1       roy #define clr_eol				 t_clr_eol(cur_term)
   1156        1.1       roy #define clr_eos				 t_clr_eos(cur_term)
   1157        1.1       roy #define code_set_init			 t_code_set_init(cur_term)
   1158        1.1       roy #define color_names			 t_color_names(cur_term)
   1159        1.1       roy #define column_address			 t_column_address(cur_term)
   1160        1.1       roy #define command_character		 t_command_character(cur_term)
   1161        1.1       roy #define create_window			 t_create_window(cur_term)
   1162        1.1       roy #define cursor_address			 t_cursor_address(cur_term)
   1163        1.1       roy #define cursor_down			 t_cursor_down(cur_term)
   1164        1.1       roy #define cursor_home			 t_cursor_home(cur_term)
   1165        1.1       roy #define cursor_invisible		 t_cursor_invisible(cur_term)
   1166        1.1       roy #define cursor_left			 t_cursor_left(cur_term)
   1167        1.1       roy #define cursor_mem_address		 t_cursor_mem_address(cur_term)
   1168        1.1       roy #define cursor_normal			 t_cursor_normal(cur_term)
   1169        1.1       roy #define cursor_right			 t_cursor_right(cur_term)
   1170        1.1       roy #define cursor_to_ll			 t_cursor_to_ll(cur_term)
   1171        1.1       roy #define cursor_up			 t_cursor_up(cur_term)
   1172        1.1       roy #define cursor_visible			 t_cursor_visible(cur_term)
   1173        1.1       roy #define define_bit_image_region		 t_define_bit_image_region(cur_term)
   1174        1.1       roy #define define_char			 t_define_char(cur_term)
   1175        1.1       roy #define delete_character		 t_delete_character(cur_term)
   1176        1.1       roy #define delete_line			 t_delete_line(cur_term)
   1177        1.1       roy #define device_type			 t_device_type(cur_term)
   1178        1.1       roy #define dial_phone			 t_dial_phone(cur_term)
   1179        1.1       roy #define dis_status_line			 t_dis_status_line(cur_term)
   1180        1.1       roy #define display_clock			 t_display_clock(cur_term)
   1181        1.1       roy #define display_pc_char			 t_display_pc_char(cur_term)
   1182        1.1       roy #define down_half_time			 t_down_half_time(cur_term)
   1183        1.1       roy #define ena_acs				 t_ena_acs(cur_term)
   1184        1.1       roy #define end_bit_image_region		 t_end_bit_image_region(cur_term)
   1185        1.1       roy #define enter_alt_charset_mode		 t_enter_alt_charset_mode(cur_term)
   1186        1.1       roy #define enter_am_mode			 t_enter_am_mode(cur_term)
   1187        1.1       roy #define enter_blink_mode		 t_enter_blink_mode(cur_term)
   1188        1.1       roy #define enter_bold_mode			 t_enter_bold_mode(cur_term)
   1189        1.1       roy #define enter_ca_mode			 t_enter_ca_mode(cur_term)
   1190        1.1       roy #define enter_delete_mode		 t_enter_delete_mode(cur_term)
   1191        1.1       roy #define enter_dim_mode			 t_enter_dim_mode(cur_term)
   1192        1.1       roy #define enter_doublewide_mode		 t_enter_doublewide_mode(cur_term)
   1193        1.1       roy #define enter_draft_quality		 t_enter_draft_quality(cur_term)
   1194        1.1       roy #define enter_horizontal_hl_mode	 t_enter_horizontal_hl_mode(cur_term)
   1195        1.1       roy #define enter_insert_mode		 t_enter_insert_mode(cur_term)
   1196        1.1       roy #define enter_italics_mode		 t_enter_italics_mode(cur_term)
   1197        1.1       roy #define enter_left_hl_mode		 t_enter_left_hl_mode(cur_term)
   1198        1.1       roy #define enter_leftward_mode		 t_enter_leftward_mode(cur_term)
   1199        1.1       roy #define enter_low_hl_mode		 t_enter_low_hl_mode(cur_term)
   1200        1.1       roy #define enter_micro_mode		 t_enter_micro_mode(cur_term)
   1201        1.1       roy #define enter_near_quality_letter	 t_enter_near_quality_letter(cur_term)
   1202        1.1       roy #define enter_normal_quality		 t_enter_normal_quality(cur_term)
   1203        1.1       roy #define enter_pc_charset_mode		 t_enter_pc_charset_mode(cur_term)
   1204        1.1       roy #define enter_protected_mode		 t_enter_protected_mode(cur_term)
   1205        1.1       roy #define enter_reverse_mode		 t_enter_reverse_mode(cur_term)
   1206        1.1       roy #define enter_right_hl_mode		 t_enter_right_hl_mode(cur_term)
   1207        1.1       roy #define enter_scancode_mode		 t_enter_scancode_mode(cur_term)
   1208        1.1       roy #define enter_secure_mode		 t_enter_secure_mode(cur_term)
   1209        1.1       roy #define enter_shadow_mode		 t_enter_shadow_mode(cur_term)
   1210        1.1       roy #define enter_standout_mode		 t_enter_standout_mode(cur_term)
   1211        1.1       roy #define enter_subscript_mode		 t_enter_subscript_mode(cur_term)
   1212        1.1       roy #define enter_superscript_mode		 t_enter_superscript_mode(cur_term)
   1213        1.1       roy #define enter_top_hl_mode		 t_enter_top_hl_mode(cur_term)
   1214        1.1       roy #define enter_underline_mode		 t_enter_underline_mode(cur_term)
   1215        1.1       roy #define enter_upward_mode		 t_enter_upward_mode(cur_term)
   1216        1.1       roy #define enter_vertical_hl_mode		 t_enter_vertical_hl_mode(cur_term)
   1217        1.1       roy #define enter_xon_mode			 t_enter_xon_mode(cur_term)
   1218        1.1       roy #define erase_chars			 t_erase_chars(cur_term)
   1219        1.1       roy #define exit_alt_charset_mode		 t_exit_alt_charset_mode(cur_term)
   1220        1.1       roy #define exit_am_mode			 t_exit_am_mode(cur_term)
   1221        1.1       roy #define exit_attribute_mode		 t_exit_attribute_mode(cur_term)
   1222        1.1       roy #define exit_ca_mode			 t_exit_ca_mode(cur_term)
   1223        1.1       roy #define exit_delete_mode		 t_exit_delete_mode(cur_term)
   1224        1.1       roy #define exit_doublewide_mode		 t_exit_doublewide_mode(cur_term)
   1225        1.1       roy #define exit_insert_mode		 t_exit_insert_mode(cur_term)
   1226        1.1       roy #define exit_italics_mode		 t_exit_italics_mode(cur_term)
   1227        1.1       roy #define exit_leftward_mode		 t_exit_leftward_mode(cur_term)
   1228        1.1       roy #define exit_micro_mode			 t_exit_micro_mode(cur_term)
   1229        1.1       roy #define exit_pc_charset_mode		 t_exit_pc_charset_mode(cur_term)
   1230        1.1       roy #define exit_scancode_mode		 t_exit_scancode_mode(cur_term)
   1231        1.1       roy #define exit_shadow_mode		 t_exit_shadow_mode(cur_term)
   1232        1.1       roy #define exit_standout_mode		 t_exit_standout_mode(cur_term)
   1233        1.1       roy #define exit_subscript_mode		 t_exit_subscript_mode(cur_term)
   1234        1.1       roy #define exit_superscript_mode		 t_exit_superscript_mode(cur_term)
   1235        1.1       roy #define exit_underline_mode		 t_exit_underline_mode(cur_term)
   1236        1.1       roy #define exit_upward_mode		 t_exit_upward_mode(cur_term)
   1237        1.1       roy #define exit_xon_mode			 t_exit_xon_mode(cur_term)
   1238        1.1       roy #define fixed_pause			 t_fixed_pause(cur_term)
   1239        1.1       roy #define flash_hook			 t_flash_hook(cur_term)
   1240        1.1       roy #define flash_screen			 t_flash_screen(cur_term)
   1241        1.1       roy #define form_feed			 t_form_feed(cur_term)
   1242        1.1       roy #define from_status_line		 t_from_status_line(cur_term)
   1243        1.1       roy #define get_mouse			 t_get_mouse(cur_term)
   1244        1.1       roy #define goto_window			 t_goto_window(cur_term)
   1245        1.1       roy #define hangup				 t_hangup(cur_term)
   1246        1.1       roy #define init_1string			 t_init_1string(cur_term)
   1247        1.1       roy #define init_2string			 t_init_2string(cur_term)
   1248        1.1       roy #define init_3string			 t_init_3string(cur_term)
   1249        1.1       roy #define init_file			 t_init_file(cur_term)
   1250        1.1       roy #define init_prog			 t_init_prog(cur_term)
   1251        1.1       roy #define initialize_color		 t_initialize_color(cur_term)
   1252        1.1       roy #define initialize_pair			 t_initialize_pair(cur_term)
   1253        1.1       roy #define insert_character		 t_insert_character(cur_term)
   1254        1.1       roy #define insert_line			 t_insert_line(cur_term)
   1255        1.1       roy #define insert_padding			 t_insert_padding(cur_term)
   1256        1.1       roy #define key_a1				 t_key_a1(cur_term)
   1257        1.1       roy #define key_a3				 t_key_a3(cur_term)
   1258        1.1       roy #define key_b2				 t_key_b2(cur_term)
   1259        1.1       roy #define key_backspace			 t_key_backspace(cur_term)
   1260        1.1       roy #define key_beg				 t_key_beg(cur_term)
   1261        1.1       roy #define key_btab			 t_key_btab(cur_term)
   1262        1.1       roy #define key_c1				 t_key_c1(cur_term)
   1263        1.1       roy #define key_c3				 t_key_c3(cur_term)
   1264        1.1       roy #define key_cancel			 t_key_cancel(cur_term)
   1265        1.1       roy #define key_catab			 t_key_catab(cur_term)
   1266        1.1       roy #define key_clear			 t_key_clear(cur_term)
   1267        1.1       roy #define key_close			 t_key_close(cur_term)
   1268        1.1       roy #define key_command			 t_key_command(cur_term)
   1269        1.1       roy #define key_copy			 t_key_copy(cur_term)
   1270        1.1       roy #define key_create			 t_key_create(cur_term)
   1271        1.1       roy #define key_ctab			 t_key_ctab(cur_term)
   1272        1.1       roy #define key_dc				 t_key_dc(cur_term)
   1273        1.1       roy #define key_dl				 t_key_dl(cur_term)
   1274        1.1       roy #define key_down			 t_key_down(cur_term)
   1275        1.1       roy #define key_eic				 t_key_eic(cur_term)
   1276        1.1       roy #define key_end				 t_key_end(cur_term)
   1277        1.1       roy #define key_enter			 t_key_enter(cur_term)
   1278        1.1       roy #define key_eol				 t_key_eol(cur_term)
   1279        1.1       roy #define key_eos				 t_key_eos(cur_term)
   1280        1.1       roy #define key_exit			 t_key_exit(cur_term)
   1281        1.1       roy #define key_f0				 t_key_f0(cur_term)
   1282        1.1       roy #define key_f1				 t_key_f1(cur_term)
   1283        1.1       roy #define key_f2				 t_key_f2(cur_term)
   1284        1.1       roy #define key_f3				 t_key_f3(cur_term)
   1285        1.1       roy #define key_f4				 t_key_f4(cur_term)
   1286        1.1       roy #define key_f5				 t_key_f5(cur_term)
   1287        1.1       roy #define key_f6				 t_key_f6(cur_term)
   1288        1.1       roy #define key_f7				 t_key_f7(cur_term)
   1289        1.1       roy #define key_f8				 t_key_f8(cur_term)
   1290        1.1       roy #define key_f9				 t_key_f9(cur_term)
   1291        1.1       roy #define key_f10				 t_key_f10(cur_term)
   1292        1.1       roy #define key_f11				 t_key_f11(cur_term)
   1293        1.1       roy #define key_f12				 t_key_f12(cur_term)
   1294        1.1       roy #define key_f13				 t_key_f13(cur_term)
   1295        1.1       roy #define key_f14				 t_key_f14(cur_term)
   1296        1.1       roy #define key_f15				 t_key_f15(cur_term)
   1297        1.1       roy #define key_f16				 t_key_f16(cur_term)
   1298        1.1       roy #define key_f17				 t_key_f17(cur_term)
   1299        1.1       roy #define key_f18				 t_key_f18(cur_term)
   1300        1.1       roy #define key_f19				 t_key_f19(cur_term)
   1301        1.1       roy #define key_f20				 t_key_f20(cur_term)
   1302        1.1       roy #define key_f21				 t_key_f21(cur_term)
   1303        1.1       roy #define key_f22				 t_key_f22(cur_term)
   1304        1.1       roy #define key_f23				 t_key_f23(cur_term)
   1305        1.1       roy #define key_f24				 t_key_f24(cur_term)
   1306        1.1       roy #define key_f25				 t_key_f25(cur_term)
   1307        1.1       roy #define key_f26				 t_key_f26(cur_term)
   1308        1.1       roy #define key_f27				 t_key_f27(cur_term)
   1309        1.1       roy #define key_f28				 t_key_f28(cur_term)
   1310        1.1       roy #define key_f29				 t_key_f29(cur_term)
   1311        1.1       roy #define key_f30				 t_key_f30(cur_term)
   1312        1.1       roy #define key_f31				 t_key_f31(cur_term)
   1313        1.1       roy #define key_f32				 t_key_f32(cur_term)
   1314        1.1       roy #define key_f33				 t_key_f33(cur_term)
   1315        1.1       roy #define key_f34				 t_key_f34(cur_term)
   1316        1.1       roy #define key_f35				 t_key_f35(cur_term)
   1317        1.1       roy #define key_f36				 t_key_f36(cur_term)
   1318        1.1       roy #define key_f37				 t_key_f37(cur_term)
   1319        1.1       roy #define key_f38				 t_key_f38(cur_term)
   1320        1.1       roy #define key_f39				 t_key_f39(cur_term)
   1321        1.1       roy #define key_f40				 t_key_f40(cur_term)
   1322        1.1       roy #define key_f41				 t_key_f41(cur_term)
   1323        1.1       roy #define key_f42				 t_key_f42(cur_term)
   1324        1.1       roy #define key_f43				 t_key_f43(cur_term)
   1325        1.1       roy #define key_f44				 t_key_f44(cur_term)
   1326        1.1       roy #define key_f45				 t_key_f45(cur_term)
   1327        1.1       roy #define key_f46				 t_key_f46(cur_term)
   1328        1.1       roy #define key_f47				 t_key_f47(cur_term)
   1329        1.1       roy #define key_f48				 t_key_f48(cur_term)
   1330        1.1       roy #define key_f49				 t_key_f49(cur_term)
   1331        1.1       roy #define key_f50				 t_key_f50(cur_term)
   1332        1.1       roy #define key_f51				 t_key_f51(cur_term)
   1333        1.1       roy #define key_f52				 t_key_f52(cur_term)
   1334        1.1       roy #define key_f53				 t_key_f53(cur_term)
   1335        1.1       roy #define key_f54				 t_key_f54(cur_term)
   1336        1.1       roy #define key_f55				 t_key_f55(cur_term)
   1337        1.1       roy #define key_f56				 t_key_f56(cur_term)
   1338        1.1       roy #define key_f57				 t_key_f57(cur_term)
   1339        1.1       roy #define key_f58				 t_key_f58(cur_term)
   1340        1.1       roy #define key_f59				 t_key_f59(cur_term)
   1341        1.1       roy #define key_f60				 t_key_f60(cur_term)
   1342        1.1       roy #define key_f61				 t_key_f61(cur_term)
   1343        1.1       roy #define key_f62				 t_key_f62(cur_term)
   1344        1.1       roy #define key_f63				 t_key_f63(cur_term)
   1345        1.1       roy #define key_find			 t_key_find(cur_term)
   1346        1.1       roy #define key_help			 t_key_help(cur_term)
   1347        1.1       roy #define key_home			 t_key_home(cur_term)
   1348        1.1       roy #define key_ic				 t_key_ic(cur_term)
   1349        1.1       roy #define key_il				 t_key_il(cur_term)
   1350        1.1       roy #define key_left			 t_key_left(cur_term)
   1351        1.1       roy #define key_ll				 t_key_ll(cur_term)
   1352        1.1       roy #define key_mark			 t_key_mark(cur_term)
   1353        1.1       roy #define key_message			 t_key_message(cur_term)
   1354        1.1       roy #define key_mouse			 t_key_mouse(cur_term)
   1355        1.1       roy #define key_move			 t_key_move(cur_term)
   1356        1.1       roy #define key_next			 t_key_next(cur_term)
   1357        1.1       roy #define key_npage			 t_key_npage(cur_term)
   1358        1.1       roy #define key_open			 t_key_open(cur_term)
   1359        1.1       roy #define key_options			 t_key_options(cur_term)
   1360        1.1       roy #define key_ppage			 t_key_ppage(cur_term)
   1361        1.1       roy #define key_previous			 t_key_previous(cur_term)
   1362        1.1       roy #define key_print			 t_key_print(cur_term)
   1363        1.1       roy #define key_redo			 t_key_redo(cur_term)
   1364        1.1       roy #define key_reference			 t_key_reference(cur_term)
   1365        1.1       roy #define key_refresh			 t_key_refresh(cur_term)
   1366        1.1       roy #define key_replace			 t_key_replace(cur_term)
   1367        1.1       roy #define key_restart			 t_key_restart(cur_term)
   1368        1.1       roy #define key_resume			 t_key_resume(cur_term)
   1369        1.1       roy #define key_right			 t_key_right(cur_term)
   1370        1.1       roy #define key_save			 t_key_save(cur_term)
   1371        1.1       roy #define key_sbeg			 t_key_sbeg(cur_term)
   1372        1.1       roy #define key_scancel			 t_key_scancel(cur_term)
   1373        1.1       roy #define key_scommand			 t_key_scommand(cur_term)
   1374        1.1       roy #define key_scopy			 t_key_scopy(cur_term)
   1375        1.1       roy #define key_screate			 t_key_screate(cur_term)
   1376        1.1       roy #define key_sdc				 t_key_sdc(cur_term)
   1377        1.1       roy #define key_sdl				 t_key_sdl(cur_term)
   1378        1.1       roy #define key_select			 t_key_select(cur_term)
   1379        1.1       roy #define key_send			 t_key_send(cur_term)
   1380        1.1       roy #define key_seol			 t_key_seol(cur_term)
   1381        1.1       roy #define key_sexit			 t_key_sexit(cur_term)
   1382        1.1       roy #define key_sf				 t_key_sf(cur_term)
   1383        1.1       roy #define key_sfind			 t_key_sfind(cur_term)
   1384        1.1       roy #define key_shelp			 t_key_shelp(cur_term)
   1385        1.1       roy #define key_shome			 t_key_shome(cur_term)
   1386        1.1       roy #define key_sic				 t_key_sic(cur_term)
   1387        1.1       roy #define key_sleft			 t_key_sleft(cur_term)
   1388        1.1       roy #define key_smessage			 t_key_smessage(cur_term)
   1389        1.1       roy #define key_smove			 t_key_smove(cur_term)
   1390        1.1       roy #define key_snext			 t_key_snext(cur_term)
   1391        1.1       roy #define key_soptions			 t_key_soptions(cur_term)
   1392        1.1       roy #define key_sprevious			 t_key_sprevious(cur_term)
   1393        1.1       roy #define key_sprint			 t_key_sprint(cur_term)
   1394        1.1       roy #define key_sr				 t_key_sr(cur_term)
   1395        1.1       roy #define key_sredo			 t_key_sredo(cur_term)
   1396        1.1       roy #define key_sreplace			 t_key_sreplace(cur_term)
   1397        1.1       roy #define key_sright			 t_key_sright(cur_term)
   1398        1.1       roy #define key_srsume			 t_key_srsume(cur_term)
   1399        1.1       roy #define key_ssave			 t_key_ssave(cur_term)
   1400        1.1       roy #define key_ssuspend			 t_key_ssuspend(cur_term)
   1401        1.1       roy #define key_stab			 t_key_stab(cur_term)
   1402        1.1       roy #define key_sundo			 t_key_sundo(cur_term)
   1403        1.1       roy #define key_suspend			 t_key_suspend(cur_term)
   1404        1.1       roy #define key_undo			 t_key_undo(cur_term)
   1405        1.1       roy #define key_up				 t_key_up(cur_term)
   1406        1.1       roy #define keypad_local			 t_keypad_local(cur_term)
   1407        1.1       roy #define keypad_xmit			 t_keypad_xmit(cur_term)
   1408        1.1       roy #define lab_f0				 t_lab_f0(cur_term)
   1409        1.1       roy #define lab_f1				 t_lab_f1(cur_term)
   1410        1.1       roy #define lab_f2				 t_lab_f2(cur_term)
   1411        1.1       roy #define lab_f3				 t_lab_f3(cur_term)
   1412        1.1       roy #define lab_f4				 t_lab_f4(cur_term)
   1413        1.1       roy #define lab_f5				 t_lab_f5(cur_term)
   1414        1.1       roy #define lab_f6				 t_lab_f6(cur_term)
   1415        1.1       roy #define lab_f7				 t_lab_f7(cur_term)
   1416        1.1       roy #define lab_f8				 t_lab_f8(cur_term)
   1417        1.1       roy #define lab_f9				 t_lab_f9(cur_term)
   1418        1.1       roy #define lab_f10				 t_lab_f10(cur_term)
   1419        1.1       roy #define label_format			 t_label_format(cur_term)
   1420        1.1       roy #define label_off			 t_label_off(cur_term)
   1421        1.1       roy #define label_on			 t_label_on(cur_term)
   1422        1.1       roy #define meta_off			 t_meta_off(cur_term)
   1423        1.1       roy #define meta_on				 t_meta_on(cur_term)
   1424        1.1       roy #define micro_column_address		 t_micro_column_address(cur_term)
   1425        1.1       roy #define micro_down			 t_micro_down(cur_term)
   1426        1.1       roy #define micro_left			 t_micro_left(cur_term)
   1427        1.1       roy #define micro_right			 t_micro_right(cur_term)
   1428        1.1       roy #define micro_row_address		 t_micro_row_address(cur_term)
   1429        1.1       roy #define micro_up			 t_micro_up(cur_term)
   1430        1.1       roy #define mouse_info			 t_mouse_info(cur_term)
   1431        1.1       roy #define newline				 t_newline(cur_term)
   1432        1.1       roy #define order_of_pins			 t_order_of_pins(cur_term)
   1433        1.1       roy #define orig_colors			 t_orig_colors(cur_term)
   1434        1.1       roy #define orig_pair			 t_orig_pair(cur_term)
   1435        1.1       roy #define pad_char			 t_pad_char(cur_term)
   1436        1.1       roy #define parm_dch			 t_parm_dch(cur_term)
   1437        1.1       roy #define parm_delete_line		 t_parm_delete_line(cur_term)
   1438        1.1       roy #define parm_down_cursor		 t_parm_down_cursor(cur_term)
   1439        1.1       roy #define parm_down_micro			 t_parm_down_micro(cur_term)
   1440        1.1       roy #define parm_ich			 t_parm_ich(cur_term)
   1441        1.1       roy #define parm_index			 t_parm_index(cur_term)
   1442        1.1       roy #define parm_insert_line		 t_parm_insert_line(cur_term)
   1443        1.1       roy #define parm_left_cursor		 t_parm_left_cursor(cur_term)
   1444        1.1       roy #define parm_left_micro			 t_parm_left_micro(cur_term)
   1445        1.1       roy #define parm_right_cursor		 t_parm_right_cursor(cur_term)
   1446        1.1       roy #define parm_right_micro		 t_parm_right_micro(cur_term)
   1447        1.1       roy #define parm_rindex			 t_parm_rindex(cur_term)
   1448        1.1       roy #define parm_up_cursor			 t_parm_up_cursor(cur_term)
   1449        1.1       roy #define parm_up_micro			 t_parm_up_micro(cur_term)
   1450        1.1       roy #define pc_term_options			 t_pc_term_options(cur_term)
   1451        1.1       roy #define pkey_key			 t_pkey_key(cur_term)
   1452        1.1       roy #define pkey_local			 t_pkey_local(cur_term)
   1453        1.1       roy #define pkey_plab			 t_pkey_plab(cur_term)
   1454        1.1       roy #define pkey_xmit			 t_pkey_xmit(cur_term)
   1455  1.16.10.1  pgoyette #define plab_norm			 t_plab_norm(cur_term)
   1456        1.1       roy #define print_screen			 t_print_screen(cur_term)
   1457        1.1       roy #define ptr_non				 t_ptr_non(cur_term)
   1458        1.1       roy #define ptr_off				 t_ptr_off(cur_term)
   1459        1.1       roy #define ptr_on				 t_ptr_on(cur_term)
   1460        1.1       roy #define pulse				 t_pulse(cur_term)
   1461        1.1       roy #define quick_dial			 t_quick_dial(cur_term)
   1462        1.1       roy #define remove_clock			 t_remove_clock(cur_term)
   1463        1.1       roy #define repeat_char			 t_repeat_char(cur_term)
   1464        1.1       roy #define req_for_input			 t_req_for_input(cur_term)
   1465        1.1       roy #define req_mouse_pos			 t_req_mouse_pos(cur_term)
   1466        1.1       roy #define reset_1string			 t_reset_1string(cur_term)
   1467        1.1       roy #define reset_2string			 t_reset_2string(cur_term)
   1468        1.1       roy #define reset_3string			 t_reset_3string(cur_term)
   1469        1.1       roy #define reset_file			 t_reset_file(cur_term)
   1470        1.1       roy #define restore_cursor			 t_restore_cursor(cur_term)
   1471        1.1       roy #define row_address			 t_row_address(cur_term)
   1472        1.1       roy #define save_cursor			 t_save_cursor(cur_term)
   1473        1.1       roy #define scancode_escape			 t_scancode_escape(cur_term)
   1474        1.1       roy #define scroll_forward			 t_scroll_forward(cur_term)
   1475        1.1       roy #define scroll_reverse			 t_scroll_reverse(cur_term)
   1476        1.1       roy #define select_char_set			 t_select_char_set(cur_term)
   1477        1.1       roy #define set0_des_seq			 t_set0_des_seq(cur_term)
   1478        1.1       roy #define set1_des_seq			 t_set1_des_seq(cur_term)
   1479        1.1       roy #define set2_des_seq			 t_set2_des_seq(cur_term)
   1480        1.1       roy #define set3_des_seq			 t_set3_des_seq(cur_term)
   1481        1.1       roy #define set_a_attributes		 t_set_a_attributes(cur_term)
   1482        1.1       roy #define set_a_background		 t_set_a_background(cur_term)
   1483        1.1       roy #define set_a_foreground		 t_set_a_foreground(cur_term)
   1484        1.1       roy #define set_attributes			 t_set_attributes(cur_term)
   1485        1.1       roy #define set_background			 t_set_background(cur_term)
   1486        1.1       roy #define set_bottom_margin		 t_set_bottom_margin(cur_term)
   1487        1.1       roy #define set_bottom_margin_parm		 t_set_bottom_margin_parm(cur_term)
   1488        1.1       roy #define set_clock			 t_set_clock(cur_term)
   1489        1.1       roy #define set_color_band			 t_set_color_band(cur_term)
   1490       1.11  christos #define set_color_pair			 t_set_color_pair(cur_term)
   1491        1.1       roy #define set_foreground			 t_set_foreground(cur_term)
   1492        1.1       roy #define set_left_margin			 t_set_left_margin(cur_term)
   1493        1.1       roy #define set_left_margin_parm		 t_set_left_margin_parm(cur_term)
   1494        1.1       roy #define set_lr_margin			 t_set_lr_margin(cur_term)
   1495        1.1       roy #define set_page_length			 t_set_page_length(cur_term)
   1496        1.1       roy #define set_pglen_inch			 t_set_pglen_inch(cur_term)
   1497        1.1       roy #define set_right_margin		 t_set_right_margin(cur_term)
   1498        1.1       roy #define set_right_margin_parm		 t_set_right_margin_parm(cur_term)
   1499        1.1       roy #define set_tab				 t_set_tab(cur_term)
   1500        1.1       roy #define set_tb_margin			 t_set_tb_margin(cur_term)
   1501        1.1       roy #define set_top_margin			 t_set_top_margin(cur_term)
   1502        1.1       roy #define set_top_margin_parm		 t_set_top_margin_parm(cur_term)
   1503        1.1       roy #define set_window			 t_set_window(cur_term)
   1504        1.1       roy #define start_bit_image			 t_start_bit_image(cur_term)
   1505        1.1       roy #define start_char_set_def		 t_start_char_set_def(cur_term)
   1506        1.1       roy #define stop_bit_image			 t_stop_bit_image(cur_term)
   1507        1.1       roy #define stop_char_set_def		 t_stop_char_set_def(cur_term)
   1508        1.1       roy #define subscript_characters		 t_subscript_characters(cur_term)
   1509        1.1       roy #define superscript_characters		 t_superscript_characters(cur_term)
   1510        1.1       roy #define tab				 t_tab(cur_term)
   1511        1.1       roy #define these_cause_cr			 t_these_cause_cr(cur_term)
   1512        1.1       roy #define to_status_line			 t_to_status_line(cur_term)
   1513        1.1       roy #define tone				 t_tone(cur_term)
   1514        1.1       roy #define user0				 t_user0(cur_term)
   1515        1.1       roy #define user1				 t_user1(cur_term)
   1516        1.1       roy #define user2				 t_user2(cur_term)
   1517        1.1       roy #define user3				 t_user3(cur_term)
   1518        1.1       roy #define user4				 t_user4(cur_term)
   1519        1.1       roy #define user5				 t_user5(cur_term)
   1520        1.1       roy #define user6				 t_user6(cur_term)
   1521        1.1       roy #define user7				 t_user7(cur_term)
   1522        1.1       roy #define user8				 t_user8(cur_term)
   1523        1.1       roy #define user9				 t_user9(cur_term)
   1524        1.1       roy #define underline_char			 t_underline_char(cur_term)
   1525        1.1       roy #define up_half_line			 t_up_half_line(cur_term)
   1526        1.1       roy #define wait_tone			 t_wait_tone(cur_term)
   1527        1.1       roy #define xoff_character			 t_xoff_character(cur_term)
   1528        1.1       roy #define xon_character			 t_xon_character(cur_term)
   1529        1.1       roy #define zero_motion			 t_zero_motion(cur_term)
   1530        1.1       roy 
   1531       1.13       roy /*
   1532       1.13       roy  * STRING DESCRIPTIONS
   1533       1.13       roy  *
   1534       1.13       roy  * acs_chars: Graphic charset pairs aAbBcC
   1535       1.13       roy  * alt_scancode_esc: Alternate escape for scancode emulation
   1536       1.13       roy  * back_tab: Back tab
   1537       1.13       roy  * bell: Audible signal (bell)
   1538       1.13       roy  * bit_image_carriage_return: Move to beginning of same row
   1539       1.13       roy  * bit_image_newline: Move to next row of the bit image
   1540       1.13       roy  * bit_image_repeat: Repeat bit-image cell #1 #2 times
   1541       1.13       roy  * carriage_return: Carriage return
   1542       1.13       roy  * change_char_pitch: Change number of characters per inch
   1543       1.13       roy  * change_line_pitch: Change number of lines per inch
   1544       1.13       roy  * change_res_horz: Change horizontal resolution
   1545       1.13       roy  * change_res_vert: Change vertical resolution
   1546       1.13       roy  * change_scroll_region: Change to lines #1 through #2 (VT100)
   1547       1.13       roy  * char_padding: Like ip but when in replace mode
   1548       1.13       roy  * char_set_names: Returns a list of character set names
   1549       1.13       roy  * clear_all_tabs: Clear all tab stops
   1550       1.13       roy  * clear_margins: Clear all margins (top, bottom and sides)
   1551       1.13       roy  * clear_screen: Clear screen and home cursor
   1552       1.13       roy  * clr_bol: Clear to beginning of line, inclusive
   1553       1.13       roy  * clr_eol: Clear to end of line
   1554       1.13       roy  * clr_eos: Clear to end of display
   1555       1.13       roy  * code_set_init: Init sequence for multiple codesets
   1556       1.13       roy  * color_names: Give name for colour #1
   1557       1.13       roy  * column_address: Set horizontal position to absolute #1
   1558       1.13       roy  * command_character: Terminal settable cmd character in prototype
   1559       1.13       roy  * create_window: Define win #1 to go from #2,#3 to #4,#5
   1560       1.13       roy  * cursor_address: Move to row #1, col #2
   1561       1.13       roy  * cursor_down: Down one line
   1562       1.13       roy  * cursor_home: Home cursor (if no cup)
   1563       1.13       roy  * cursor_invisible: Make cursor invisible
   1564       1.13       roy  * cursor_left: Move left one space
   1565       1.13       roy  * cursor_mem_address: Memory relative cursor addressing
   1566       1.13       roy  * cursor_normal: Make cursor appear normal (under vs/vi)
   1567       1.13       roy  * cursor_right: Non-destructive space (cursor or carriage right)
   1568       1.13       roy  * cursor_to_ll: Last line, first column (if no cup)
   1569       1.13       roy  * cursor_up: Upline (cursor up)
   1570       1.13       roy  * cursor_visible: Make cursor very visible
   1571       1.13       roy  * define_bit_image_region: Define rectangular bit-image region
   1572       1.13       roy  * define_char: Define a character in a character set
   1573       1.13       roy  * delete_character: Delete character
   1574       1.13       roy  * delete_line: Delete line
   1575       1.13       roy  * device_type: Indicate language/codeset support
   1576       1.13       roy  * dial_phone: Dial phone number #1
   1577       1.13       roy  * dis_status_line: Disable status line
   1578       1.13       roy  * display_clock: Display time-of-day clock
   1579       1.13       roy  * display_pc_char: Display PC character
   1580       1.13       roy  * down_half_time: Half-line down (forward 1/2 linefeed)
   1581       1.13       roy  * ena_acs: Enable alternate character set
   1582       1.13       roy  * end_bit_image_region: End a bit-image region
   1583       1.13       roy  * enter_alt_charset_mode: Start alternate character set
   1584       1.13       roy  * enter_am_mode: Turn on automatic margins
   1585       1.13       roy  * enter_blink_mode: Turn on blinking
   1586       1.13       roy  * enter_bold_mode: Turn on bold (extra bright) mode
   1587       1.13       roy  * enter_ca_mode: String to begin programs that use cup
   1588       1.13       roy  * enter_delete_mode: Delete mode (enter)
   1589       1.13       roy  * enter_dim_mode: Turn on half-bright mode
   1590       1.13       roy  * enter_doublewide_mode: Enable double wide printing
   1591       1.13       roy  * enter_draft_quality: Set draft qualify print
   1592       1.13       roy  * enter_horizontal_hl_mode: Turn on horizontal highlight mode
   1593       1.13       roy  * enter_insert_mode: Insert mode (enter)
   1594       1.13       roy  * enter_italics_mode: Enable italics
   1595       1.13       roy  * enter_left_hl_mode: Turn on left highlight mode
   1596       1.13       roy  * enter_leftward_mode: Enable leftward carriage motion
   1597       1.13       roy  * enter_low_hl_mode: Turn on low highlight mode
   1598       1.13       roy  * enter_micro_mode: Enable micro motion capabilities
   1599       1.13       roy  * enter_near_quality_letter: Set near-letter quality print
   1600       1.13       roy  * enter_normal_quality: Set normal quality print
   1601       1.13       roy  * enter_pc_charset_mode: Enter PC character display mode
   1602       1.13       roy  * enter_protected_mode: Turn on protected mode
   1603       1.13       roy  * enter_reverse_mode: Turn on reverse video mode
   1604       1.13       roy  * enter_right_hl_mode: Turn on right highlight mode
   1605       1.13       roy  * enter_scancode_mode: Enter PC scancode mode
   1606       1.13       roy  * enter_secure_mode: Turn on blank mode (characters invisible)
   1607       1.13       roy  * enter_shadow_mode: Enable shadow printing
   1608       1.13       roy  * enter_standout_mode: Begin standout mode
   1609       1.13       roy  * enter_subscript_mode: Enable subscript printing
   1610       1.13       roy  * enter_superscript_mode: Enable superscript printing
   1611       1.13       roy  * enter_top_hl_mode: Turn on top highlight mode
   1612       1.13       roy  * enter_underline_mode: Start underscore mode
   1613       1.13       roy  * enter_upward_mode: Enable upward carriage motion
   1614       1.13       roy  * enter_vertical_hl_mode: Turn on verticle highlight mode
   1615       1.13       roy  * enter_xon_mode: Turn on xon/xoff handshaking
   1616       1.13       roy  * erase_chars: Erase #1 characters
   1617       1.13       roy  * exit_alt_charset_mode: End alternate character set
   1618       1.13       roy  * exit_am_mode: Turn off automatic margins
   1619       1.13       roy  * exit_attribute_mode: Turn off all attributes
   1620       1.13       roy  * exit_ca_mode: String to end programs that use cup
   1621       1.13       roy  * exit_delete_mode: End delete mode
   1622       1.13       roy  * exit_doublewide_mode: Disable double wide printing
   1623       1.13       roy  * exit_insert_mode: End insert mode
   1624       1.13       roy  * exit_italics_mode: Disable italics
   1625       1.13       roy  * exit_leftward_mode: Enable rightward (normal) carriage motion
   1626       1.13       roy  * exit_micro_mode: Disable micro motion capabilities
   1627       1.13       roy  * exit_pc_charset_mode: Disable PC character display mode
   1628       1.13       roy  * exit_scancode_mode: Disable PC scancode mode
   1629       1.13       roy  * exit_shadow_mode: Disable shadow printing
   1630       1.13       roy  * exit_standout_mode: End standout mode
   1631       1.13       roy  * exit_subscript_mode: Disable subscript printing
   1632       1.13       roy  * exit_superscript_mode: Disable superscript printing
   1633       1.13       roy  * exit_underline_mode: End underscore mode
   1634       1.13       roy  * exit_upward_mode: Enable downward (normal) carriage motion
   1635       1.13       roy  * exit_xon_mode: Turn off xon/xoff handshaking
   1636       1.13       roy  * fixed_pause: Pause for 2-3 seconds
   1637       1.13       roy  * flash_hook: Flash the switch hook
   1638       1.13       roy  * flash_screen: Visible bell (may move cursor)
   1639       1.13       roy  * form_feed: Hardcopy terminal eject page
   1640       1.13       roy  * from_status_line: Return from status line
   1641       1.13       roy  * get_mouse: Curses should get button events
   1642       1.13       roy  * goto_window: Go to window #1
   1643       1.13       roy  * hangup: Hang-up phone
   1644       1.13       roy  * init_1string: Terminal or printer initialisation string
   1645       1.13       roy  * init_2string: Terminal or printer initialisation string
   1646       1.13       roy  * init_3string: Terminal or printer initialisation string
   1647       1.13       roy  * init_file: Name of initialisation file
   1648       1.13       roy  * init_prog: Path name of program for initialisation
   1649       1.13       roy  * initialize_color: Set colour #1 to RGB #2, #3, #4
   1650       1.13       roy  * initialize_pair: Set colour-pair #1 to fg #2, bg #3
   1651       1.13       roy  * insert_character: Insert character
   1652       1.13       roy  * insert_line: Add new blank line
   1653       1.13       roy  * insert_padding: Insert pad after character inserted
   1654       1.13       roy  * key_a1: upper left of keypad
   1655       1.13       roy  * key_a3: upper right of keypad
   1656       1.13       roy  * key_b2: center of keypad
   1657       1.13       roy  * key_backspace: set by backspace key
   1658       1.13       roy  * key_beg: 1
   1659       1.13       roy  * key_btab: sent by back-tab key
   1660       1.13       roy  * key_c1: lower left of keypad
   1661       1.13       roy  * key_c3: lower right of keypad
   1662       1.13       roy  * key_cancel: 2
   1663       1.13       roy  * key_catab: sent by clear-all-tabs key
   1664       1.13       roy  * key_clear: sent by clear-screen or erase key
   1665       1.13       roy  * key_close: 3
   1666       1.13       roy  * key_command: 4
   1667       1.13       roy  * key_copy: 5
   1668       1.13       roy  * key_create: 6
   1669       1.13       roy  * key_ctab: sent by clear-tab key
   1670       1.13       roy  * key_dc: sent by delete-character key
   1671       1.13       roy  * key_dl: sent by delete-line key
   1672       1.13       roy  * key_down: sent by terminal down-arrow key
   1673       1.13       roy  * key_eic: sent by rmir or smir in insert mode
   1674       1.13       roy  * key_end: 7
   1675       1.13       roy  * key_enter: 8
   1676       1.13       roy  * key_eol: sent by clear-to-end-of-line key
   1677       1.13       roy  * key_eos: sent by clear-to-end-of-screen key
   1678       1.13       roy  * key_exit: 9
   1679       1.13       roy  * key_f0: sent by function key f0
   1680       1.13       roy  * key_f1: sent by function key f1
   1681       1.13       roy  * key_f2: sent by function key f2
   1682       1.13       roy  * key_f3: sent by function key f3
   1683       1.13       roy  * key_f4: sent by function key f4
   1684       1.13       roy  * key_f5: sent by function key f5
   1685       1.13       roy  * key_f6: sent by function key f6
   1686       1.13       roy  * key_f7: sent by function key f7
   1687       1.13       roy  * key_f8: sent by function key f8
   1688       1.13       roy  * key_f9: sent by function key f9
   1689       1.13       roy  * key_f10: sent by function key f10
   1690       1.13       roy  * key_f11: sent by function key f11
   1691       1.13       roy  * key_f12: sent by function key f12
   1692       1.13       roy  * key_f13: sent by function key f13
   1693       1.13       roy  * key_f14: sent by function key f14
   1694       1.13       roy  * key_f15: sent by function key f15
   1695       1.13       roy  * key_f16: sent by function key f16
   1696       1.13       roy  * key_f17: sent by function key f17
   1697       1.13       roy  * key_f18: sent by function key f18
   1698       1.13       roy  * key_f19: sent by function key f19
   1699       1.13       roy  * key_f20: sent by function key f20
   1700       1.13       roy  * key_f21: sent by function key f21
   1701       1.13       roy  * key_f22: sent by function key f22
   1702       1.13       roy  * key_f23: sent by function key f23
   1703       1.13       roy  * key_f24: sent by function key f24
   1704       1.13       roy  * key_f25: sent by function key f25
   1705       1.13       roy  * key_f26: sent by function key f26
   1706       1.13       roy  * key_f27: sent by function key f27
   1707       1.13       roy  * key_f28: sent by function key f28
   1708       1.13       roy  * key_f29: sent by function key f29
   1709       1.13       roy  * key_f30: sent by function key f30
   1710       1.13       roy  * key_f31: sent by function key f31
   1711       1.13       roy  * key_f32: sent by function key f32
   1712       1.13       roy  * key_f33: sent by function key f33
   1713       1.13       roy  * key_f34: sent by function key f34
   1714       1.13       roy  * key_f35: sent by function key f35
   1715       1.13       roy  * key_f36: sent by function key f36
   1716       1.13       roy  * key_f37: sent by function key f37
   1717       1.13       roy  * key_f38: sent by function key f38
   1718       1.13       roy  * key_f39: sent by function key f39
   1719       1.13       roy  * key_f40: sent by function key f40
   1720       1.13       roy  * key_f41: sent by function key f41
   1721       1.13       roy  * key_f42: sent by function key f42
   1722       1.13       roy  * key_f43: sent by function key f43
   1723       1.13       roy  * key_f44: sent by function key f44
   1724       1.13       roy  * key_f45: sent by function key f45
   1725       1.13       roy  * key_f46: sent by function key f46
   1726       1.13       roy  * key_f47: sent by function key f47
   1727       1.13       roy  * key_f48: sent by function key f48
   1728       1.13       roy  * key_f49: sent by function key f49
   1729       1.13       roy  * key_f50: sent by function key f50
   1730       1.13       roy  * key_f51: sent by function key f51
   1731       1.13       roy  * key_f52: sent by function key f52
   1732       1.13       roy  * key_f53: sent by function key f53
   1733       1.13       roy  * key_f54: sent by function key f54
   1734       1.13       roy  * key_f55: sent by function key f55
   1735       1.13       roy  * key_f56: sent by function key f56
   1736       1.13       roy  * key_f57: sent by function key f57
   1737       1.13       roy  * key_f58: sent by function key f58
   1738       1.13       roy  * key_f59: sent by function key f59
   1739       1.13       roy  * key_f60: sent by function key f60
   1740       1.13       roy  * key_f61: sent by function key f61
   1741       1.13       roy  * key_f62: sent by function key f62
   1742       1.13       roy  * key_f63: sent by function key f63
   1743       1.13       roy  * key_find: 0
   1744       1.13       roy  * key_help: sent by help key
   1745       1.13       roy  * key_home: sent by home key
   1746       1.13       roy  * key_ic: sent by ins-char/enter ins-mode key
   1747       1.13       roy  * key_il: sent by insert-line key
   1748       1.13       roy  * key_left: sent by terminal left-arrow key
   1749       1.13       roy  * key_ll: sent by home-down key
   1750       1.13       roy  * key_mark: sent by mark key
   1751       1.13       roy  * key_message: sent by message key
   1752       1.13       roy  * key_mouse: 0631, Mouse event has occured
   1753       1.13       roy  * key_move: sent by move key
   1754       1.13       roy  * key_next: sent by next-object key
   1755       1.13       roy  * key_npage: sent by next-page key
   1756       1.13       roy  * key_open: sent by open key
   1757       1.13       roy  * key_options: sent by options key
   1758       1.13       roy  * key_ppage: sent by previous-page key
   1759       1.13       roy  * key_previous: sent by previous-object key
   1760       1.13       roy  * key_print: sent by print or copy key
   1761       1.13       roy  * key_redo: sent by redo key
   1762       1.13       roy  * key_reference: sent by ref(erence) key
   1763       1.13       roy  * key_refresh: sent by refresh key
   1764       1.13       roy  * key_replace: sent by replace key
   1765       1.13       roy  * key_restart: sent by restart key
   1766       1.13       roy  * key_resume: sent by resume key
   1767       1.13       roy  * key_right: sent by terminal right-arrow key
   1768       1.13       roy  * key_save: sent by save key
   1769       1.13       roy  * key_sbeg: sent by shifted beginning key
   1770       1.13       roy  * key_scancel: sent by shifted cancel key
   1771       1.13       roy  * key_scommand: sent by shifted command key
   1772       1.13       roy  * key_scopy: sent by shifted copy key
   1773       1.13       roy  * key_screate: sent by shifted create key
   1774       1.13       roy  * key_sdc: sent by shifted delete-char key
   1775       1.13       roy  * key_sdl: sent by shifted delete-line key
   1776       1.13       roy  * key_select: sent by select key
   1777       1.13       roy  * key_send: sent by shifted end key
   1778       1.13       roy  * key_seol: sent by shifted clear-line key
   1779       1.13       roy  * key_sexit: sent by shited exit key
   1780       1.13       roy  * key_sf: sent by scroll-forward/down key
   1781       1.13       roy  * key_sfind: sent by shifted find key
   1782       1.13       roy  * key_shelp: sent by shifted help key
   1783       1.13       roy  * key_shome: sent by shifted home key
   1784       1.13       roy  * key_sic: sent by shifted input key
   1785       1.13       roy  * key_sleft: sent by shifted left-arrow key
   1786       1.13       roy  * key_smessage: sent by shifted message key
   1787       1.13       roy  * key_smove: sent by shifted move key
   1788       1.13       roy  * key_snext: sent by shifted next key
   1789       1.13       roy  * key_soptions: sent by shifted options key
   1790       1.13       roy  * key_sprevious: sent by shifted prev key
   1791       1.13       roy  * key_sprint: sent by shifted print key
   1792       1.13       roy  * key_sr: sent by scroll-backwards/up key
   1793       1.13       roy  * key_sredo: sent by shifted redo key
   1794       1.13       roy  * key_sreplace: sent by shifted replace key
   1795       1.13       roy  * key_sright: sent by shifted right-arrow key
   1796       1.13       roy  * key_srsume: sent by shifted resume key
   1797       1.13       roy  * key_ssave: sent by shifted save key
   1798       1.13       roy  * key_ssuspend: sent by shifted suspend key
   1799       1.13       roy  * key_stab: sent by set-tab key
   1800       1.13       roy  * key_sundo: sent by shifted undo key
   1801       1.13       roy  * key_suspend: sent by suspend key
   1802       1.13       roy  * key_undo: sent by undo key
   1803       1.13       roy  * key_up: sent by terminal up-arrow key
   1804       1.13       roy  * keypad_local: Out of "keypad-transmit" mode
   1805       1.13       roy  * keypad_xmit: Put terminal in "keypad-transmit" mode
   1806       1.13       roy  * lab_f0: Labels on function key f0 if not f0
   1807       1.13       roy  * lab_f1: Labels on function key f1 if not f1
   1808       1.13       roy  * lab_f2: Labels on function key f2 if not f2
   1809       1.13       roy  * lab_f3: Labels on function key f3 if not f3
   1810       1.13       roy  * lab_f4: Labels on function key f4 if not f4
   1811       1.13       roy  * lab_f5: Labels on function key f5 if not f5
   1812       1.13       roy  * lab_f6: Labels on function key f6 if not f6
   1813       1.13       roy  * lab_f7: Labels on function key f7 if not f7
   1814       1.13       roy  * lab_f8: Labels on function key f8 if not f8
   1815       1.15     njoly  * lab_f9: Labels on function key f9 if not f9
   1816       1.13       roy  * lab_f10: Labels on function key f10 if not f10
   1817       1.13       roy  * label_format: Label format
   1818       1.13       roy  * label_off: Turn off soft labels
   1819       1.13       roy  * label_on: Turn on soft labels
   1820       1.13       roy  * meta_off: Turn off "meta mode"
   1821       1.13       roy  * meta_on: Turn on "meta mode" (8th bit)
   1822       1.13       roy  * micro_column_address: Like column_address for micro adjustment
   1823       1.13       roy  * micro_down: Like cursor_down for micro adjustment
   1824       1.13       roy  * micro_left: Like cursor_left for micro adjustment
   1825       1.13       roy  * micro_right: Like cursor_right for micro adjustment
   1826       1.13       roy  * micro_row_address: Like row_address for micro adjustment
   1827       1.13       roy  * micro_up: Like cursor_up for micro adjustment
   1828       1.13       roy  * mouse_info: Mouse status information
   1829       1.13       roy  * newline: Newline (behaves like cr followed by lf)
   1830       1.13       roy  * order_of_pins: Matches software bits to print-head pins
   1831       1.13       roy  * orig_colors: Set all colour(-pair)s to original ones
   1832       1.13       roy  * orig_pair: Set default colour-pair to the original one
   1833       1.13       roy  * pad_char: Pad character (rather than NULL)
   1834       1.13       roy  * parm_dch: Delete #1 chars
   1835       1.13       roy  * parm_delete_line: Delete #1 lines
   1836       1.13       roy  * parm_down_cursor: Move down #1 lines
   1837       1.13       roy  * parm_down_micro: Like parm_down_cursor for micro adjustment
   1838       1.13       roy  * parm_ich: Insert #1 blank chars
   1839       1.13       roy  * parm_index: Scroll forward #1 lines
   1840       1.13       roy  * parm_insert_line: Add #1 new blank lines
   1841       1.13       roy  * parm_left_cursor: Move cursor left #1 lines
   1842       1.13       roy  * parm_left_micro: Like parm_left_cursor for micro adjustment
   1843       1.13       roy  * parm_right_cursor: Move right #1 spaces
   1844       1.13       roy  * parm_right_micro: Like parm_right_cursor for micro adjustment
   1845       1.13       roy  * parm_rindex: Scroll backward #1 lines
   1846       1.13       roy  * parm_up_cursor: Move cursor up #1 lines
   1847       1.13       roy  * parm_up_micro: Like parm_up_cursor for micro adjustment
   1848       1.13       roy  * pc_term_options: PC terminal options
   1849       1.13       roy  * pkey_key: Prog funct key #1 to type string #2
   1850       1.13       roy  * pkey_local: Prog funct key #1 to execute string #2
   1851       1.13       roy  * pkey_plab: Prog key #1 to xmit string #2 and show string #3
   1852       1.13       roy  * pkey_xmit: Prog funct key #1 to xmit string #2
   1853  1.16.10.1  pgoyette  * plab_norm: Prog label #1 to show string #2
   1854       1.13       roy  * print_screen: Print contents of screen
   1855       1.13       roy  * ptr_non: Turn off printer for #1 bytes
   1856       1.13       roy  * ptr_off: Turn off the printer
   1857       1.13       roy  * ptr_on: Turn on the printer
   1858       1.13       roy  * pulse: Select pulse dialing
   1859       1.13       roy  * quick_dial: Dial phone number #1, without progress detection
   1860       1.13       roy  * remove_clock: Remove time-of-day clock
   1861       1.13       roy  * repeat_char: Repeat char #1 #2 times
   1862       1.13       roy  * req_for_input: Send next input char (for ptys)
   1863       1.13       roy  * req_mouse_pos: Request mouse position report
   1864       1.13       roy  * reset_1string: Reset terminal completely to sane modes
   1865       1.13       roy  * reset_2string: Reset terminal completely to sane modes
   1866       1.13       roy  * reset_3string: Reset terminal completely to sane modes
   1867       1.13       roy  * reset_file: Name of file containing reset string
   1868       1.13       roy  * restore_cursor: Restore cursor to position of last sc
   1869       1.13       roy  * row_address: Set vertical position to absolute #1
   1870       1.13       roy  * save_cursor: Save cursor position
   1871       1.13       roy  * scancode_escape: Escape for scancode emulation
   1872       1.13       roy  * scroll_forward: Scroll text up
   1873       1.13       roy  * scroll_reverse: Scroll text down
   1874       1.13       roy  * select_char_set: Select character set
   1875       1.13       roy  * set0_des_seq: Shift into codeset 0 (EUC set 0, ASCII)
   1876       1.13       roy  * set1_des_seq: Shift into codeset 1
   1877       1.13       roy  * set2_des_seq: Shift into codeset 2
   1878       1.13       roy  * set3_des_seq: Shift into codeset 3
   1879       1.13       roy  * set_a_attributes: Define second set of video attributes #1-#6
   1880       1.13       roy  * set_a_background: Set background colour to #1 using ANSI escape
   1881       1.13       roy  * set_a_foreground: Set foreground colour to #1 using ANSI escape
   1882       1.13       roy  * set_attributes: Define first set of video attributes #1-#9
   1883       1.13       roy  * set_background: Set background colour to #1
   1884       1.13       roy  * set_bottom_margin: Set bottom margin at current line
   1885       1.13       roy  * set_bottom_margin_parm: Set bottom margin at line #1 or #2 lines from bottom
   1886       1.13       roy  * set_clock: Set clock to hours (#1), minutes (#2), seconds (#3)
   1887       1.13       roy  * set_color_band: Change ribbon to colour #1
   1888       1.13       roy  * set_color_pair: Set current colour pair to #1
   1889       1.13       roy  * set_foreground: Set foreground colour to #1
   1890       1.13       roy  * set_left_margin: Set left margin at current column
   1891       1.13       roy  * set_left_margin_parm: Set left (right) margin at column #1 (#2)
   1892       1.13       roy  * set_lr_margin: Sets both left and right margins
   1893       1.13       roy  * set_page_length: Set page length to #1 lines
   1894       1.13       roy  * set_pglen_inch: Set page length to #1 hundredth of an inch
   1895       1.13       roy  * set_right_margin: Set right margin at current column
   1896       1.13       roy  * set_right_margin_parm: Set right margin at #1
   1897       1.13       roy  * set_tab: Set a tab in all rows, current column
   1898       1.13       roy  * set_tb_margin: Sets both top and bottom margins
   1899       1.13       roy  * set_top_margin: Set top margin at current line
   1900       1.13       roy  * set_top_margin_parm: Set top (bottom) margin at line #1 (#2)
   1901       1.13       roy  * set_window: Current window is lines #1-#2 cols #3-#4
   1902       1.13       roy  * start_bit_image: Start printing bit image graphics
   1903       1.13       roy  * start_char_set_def: Start definition of a character set
   1904       1.13       roy  * stop_bit_image: End printing bit image graphics
   1905       1.13       roy  * stop_char_set_def: End definition of a character set
   1906       1.13       roy  * subscript_characters: List of "subscript-able" characters
   1907       1.13       roy  * superscript_characters: List of "superscript-able" characters
   1908       1.13       roy  * tab: Tab to next 8-space hardware tab stop
   1909       1.13       roy  * these_cause_cr: Printing any of these characters causes cr
   1910       1.13       roy  * to_status_line: Go to status line, col #1
   1911       1.13       roy  * tone: Select tone touch dialing
   1912       1.13       roy  * user0: User string 0
   1913       1.13       roy  * user1: User string 1
   1914       1.13       roy  * user2: User string 2
   1915       1.13       roy  * user3: User string 3
   1916       1.13       roy  * user4: User string 4
   1917       1.13       roy  * user5: User string 5
   1918       1.13       roy  * user6: User string 6
   1919       1.13       roy  * user7: User string 7
   1920       1.13       roy  * user8: User string 8
   1921       1.13       roy  * user9: User string 9
   1922       1.13       roy  * underline_char: Underscore one char and move past it
   1923       1.13       roy  * up_half_line: Half-line up (reverse 1/2 linefeed)
   1924       1.13       roy  * wait_tone: Wait for dial tone
   1925       1.13       roy  * xoff_character: X-off character
   1926       1.13       roy  * xon_character: X-on character
   1927       1.13       roy  * zero_motion: No motion for the subsequent character
   1928       1.13       roy  */
   1929       1.13       roy 
   1930        1.1       roy #ifndef _TERMINFO
   1931        1.6       roy typedef struct {
   1932        1.1       roy 	int fildes;
   1933        1.1       roy 	/* We need to expose these so that the macros work */
   1934        1.4       roy 	const char *name;
   1935        1.4       roy 	const char *desc;
   1936  1.16.10.2  pgoyette 	signed char *flags;
   1937  1.16.10.2  pgoyette 	short *nums;
   1938        1.1       roy 	const char **strs;
   1939        1.1       roy } TERMINAL;
   1940        1.1       roy #endif
   1941        1.1       roy 
   1942       1.12  dholland #include <sys/cdefs.h>
   1943       1.12  dholland 
   1944        1.1       roy __BEGIN_DECLS
   1945        1.1       roy 
   1946        1.1       roy extern TERMINAL *cur_term;
   1947        1.1       roy 
   1948        1.1       roy /* setup functions */
   1949        1.1       roy int		setupterm(const char *, int, int *);
   1950        1.1       roy TERMINAL *	set_curterm(TERMINAL *);
   1951        1.1       roy int		del_curterm(TERMINAL *);
   1952        1.8       roy char *		termname(void);
   1953       1.10       roy char *		longname(void);
   1954        1.1       roy 
   1955        1.1       roy /* information functions */
   1956        1.1       roy int		tigetflag(const char *);
   1957        1.1       roy int		tigetnum(const char *);
   1958        1.1       roy char *		tigetstr(const char *);
   1959        1.1       roy /* You should note that the spec allows stuffing a char * into a long
   1960        1.1       roy  * if the platform allows and the %pN is followed immediately by %l or %s */
   1961        1.1       roy char *		tparm(const char *, long, long, long, long, long,
   1962        1.1       roy 		long, long, long, long);
   1963        1.1       roy 
   1964        1.1       roy /* Non standard functions, but provide a level of thread safety */
   1965        1.1       roy int		ti_setupterm(TERMINAL **, const char *, int, int *);
   1966        1.1       roy int		ti_getflag(const TERMINAL *, const char *);
   1967        1.1       roy int		ti_getnum(const TERMINAL *, const char *);
   1968        1.1       roy const char *	ti_getstr(const TERMINAL *, const char *);
   1969        1.9       roy char *		ti_parm(TERMINAL *, const char *,
   1970        1.1       roy     long, long, long, long, long, long, long, long, long);
   1971        1.1       roy 
   1972        1.1       roy /* These functions do not use PC or speed, but the terminal */
   1973        1.1       roy int		ti_puts(const TERMINAL *, const char *, int,
   1974        1.1       roy     int (*)(int, void *), void *);
   1975        1.1       roy int		ti_putp(const TERMINAL *, const char *);
   1976        1.1       roy 
   1977       1.14       roy /* Using tparm can be kunkly, so provide a variadic function
   1978       1.14       roy  * Numbers have to be passed as int */
   1979        1.9       roy /* This is not standard, but ncurses also provides this */
   1980        1.9       roy char *		tiparm(const char *, ...);
   1981        1.1       roy /* And a thread safe version */
   1982        1.9       roy char *		ti_tiparm(TERMINAL *, const char *, ...);
   1983        1.1       roy 
   1984       1.14       roy #ifdef TPARM_TLPARM
   1985       1.14       roy /* Same as the above, but numbers have to be passed as long */
   1986       1.14       roy char *		tlparm(const char *, ...);
   1987       1.14       roy /* And a thread safe version */
   1988       1.14       roy char *		ti_tlparm(TERMINAL *, const char *, ...);
   1989       1.14       roy #endif
   1990       1.14       roy 
   1991        1.1       roy /* Default to X/Open tparm, but allow it to be variadic also */
   1992        1.1       roy #ifdef TPARM_VARARGS
   1993        1.9       roy #  define tparm	tiparm
   1994        1.9       roy #  define ti_parm ti_tiparm
   1995        1.1       roy #endif
   1996        1.1       roy 
   1997        1.5       roy /* Convert a termcap string into a terminfo string.
   1998        1.5       roy  * The passed string is destroyed and the return string needs to be freed. */
   1999        1.5       roy char *		captoinfo(char *);
   2000        1.5       roy 
   2001        1.7       roy /* POSIX says that term.h should also pull in our termcap definitions. */
   2002        1.7       roy #include <termcap.h>
   2003        1.7       roy 
   2004        1.1       roy __END_DECLS
   2005        1.1       roy #endif
   2006