1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 /* 22 * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 23 */ 24 25 /* Copyright (c) 1988 AT&T */ 26 /* All Rights Reserved */ 27 28 /* 29 * University Copyright- Copyright (c) 1982, 1986, 1988 30 * The Regents of the University of California 31 * All Rights Reserved 32 * 33 * University Acknowledgment- Portions of this document are derived from 34 * software developed by the University of California, Berkeley, and its 35 * contributors. 36 */ 37 #ifndef _TERM_H 38 #define _TERM_H 39 40 /* 41 * term.h - this file is automatically made from caps and maketerm.ed. 42 * Don't make changes directly to term.h. 43 */ 44 45 #ifdef __cplusplus 46 extern "C" { 47 #endif 48 49 #define auto_left_margin CUR _b1 50 #define auto_right_margin CUR _b2 51 #define no_esc_ctlc CUR _b3 52 #define ceol_standout_glitch CUR _b4 53 #define eat_newline_glitch CUR _b5 54 #define erase_overstrike CUR _b6 55 #define generic_type CUR _b7 56 #define hard_copy CUR _b8 57 #define has_meta_key CUR _b9 58 #define has_status_line CUR _b10 59 #define insert_null_glitch CUR _b11 60 #define memory_above CUR _b12 61 #define memory_below CUR _b13 62 #define move_insert_mode CUR _b14 63 #define move_standout_mode CUR _b15 64 #define over_strike CUR _b16 65 #define status_line_esc_ok CUR _b17 66 #define dest_tabs_magic_smso CUR _b18 67 #define tilde_glitch CUR _b19 68 #define transparent_underline CUR _b20 69 #define xon_xoff CUR _b21 70 #define needs_xon_xoff CURB _needs_xon_xoff 71 #define prtr_silent CURB _prtr_silent 72 #define hard_cursor CURB _hard_cursor 73 #define non_rev_rmcup CURB _non_rev_rmcup 74 #define no_pad_char CURB _no_pad_char 75 #define non_dest_scroll_region CURB _non_dest_scroll_region 76 #define can_change CURB _can_change 77 #define back_color_erase CURB _back_color_erase 78 #define hue_lightness_saturation CURB _hue_lightness_saturation 79 #define col_addr_glitch CURB _col_addr_glitch 80 #define cr_cancels_micro_mode CURB _cr_cancels_micro_mode 81 #define has_print_wheel CURB _has_print_wheel 82 #define row_addr_glitch CURB _row_addr_glitch 83 #define semi_auto_right_margin CURB _semi_auto_right_margin 84 #define cpi_changes_res CURB _cpi_changes_res 85 #define lpi_changes_res CURB _lpi_changes_res 86 #define columns CUR _c1 87 #define init_tabs CUR _c2 88 #define lines CUR _c3 89 #define lines_of_memory CUR _c4 90 #define magic_cookie_glitch CUR _c5 91 #define padding_baud_rate CUR _c6 92 #define virtual_terminal CUR _c7 93 #define width_status_line CUR _c8 94 #define num_labels CURN _num_labels 95 #define label_height CURN _labl_height 96 #define label_width CURN _labl_width 97 #define max_attributes CURN _max_attributes 98 #define maximum_windows CURN _maximum_windows 99 #define max_colors CURN _max_colors 100 #define max_pairs CURN _max_pairs 101 #define no_color_video CURN _no_color_video 102 #define buffer_capacity CURN _buffer_capacity 103 #define dot_vert_spacing CURN _dot_vert_spacing 104 #define dot_horz_spacing CURN _dot_horz_spacing 105 #define max_micro_address CURN _max_micro_address 106 #define max_micro_jump CURN _max_micro_jump 107 #define micro_char_size CURN _micro_char_size 108 #define micro_line_size CURN _micro_line_size 109 #define number_of_pins CURN _number_of_pins 110 #define output_res_char CURN _output_res_char 111 #define output_res_line CURN _output_res_line 112 #define output_res_horz_inch CURN _output_res_horz_inch 113 #define output_res_vert_inch CURN _output_res_vert_inch 114 #define print_rate CURN _print_rate 115 #define wide_char_size CURN _wide_char_size 116 #define buttons CURN _buttons 117 #define bit_image_entwining CURN _bit_image_entwining 118 #define bit_image_type CURN _bit_image_type 119 #define back_tab CUR _Vr2_Astrs._s1 120 #define bell CUR _Vr2_Astrs._s2 121 #define carriage_return CUR _Vr2_Astrs._s3 122 #define change_scroll_region CUR _Vr2_Astrs._s4 123 #define clear_all_tabs CUR _Vr2_Astrs._s5 124 #define clear_screen CUR _Vr2_Astrs._s6 125 #define clr_eol CUR _Vr2_Astrs._s7 126 #define clr_eos CUR _Vr2_Astrs._s8 127 #define column_address CUR _Vr2_Astrs._s9 128 #define command_character CUR _Vr2_Astrs._s10 129 #define cursor_address CUR _Vr2_Astrs._s11 130 #define cursor_down CUR _Vr2_Astrs._s12 131 #define cursor_home CUR _Vr2_Astrs._s13 132 #define cursor_invisible CUR _Vr2_Astrs._s14 133 #define cursor_left CUR _Vr2_Astrs._s15 134 #define cursor_mem_address CUR _Vr2_Astrs._s16 135 #define cursor_normal CUR _Vr2_Astrs._s17 136 #define cursor_right CUR _Vr2_Astrs._s18 137 #define cursor_to_ll CUR _Vr2_Astrs._s19 138 #define cursor_up CUR _Vr2_Astrs._s20 139 #define cursor_visible CUR _Vr2_Astrs._s21 140 #define delete_character CUR _Vr2_Astrs._s22 141 #define delete_line CUR _Vr2_Astrs._s23 142 #define dis_status_line CUR _Vr2_Astrs._s24 143 #define down_half_line CUR _Vr2_Astrs._s25 144 #define enter_alt_charset_mode CUR _Vr2_Astrs._s26 145 #define enter_blink_mode CUR _Vr2_Astrs._s27 146 #define enter_bold_mode CUR _Vr2_Astrs._s28 147 #define enter_ca_mode CUR _Vr2_Astrs._s29 148 #define enter_delete_mode CUR _Vr2_Astrs._s30 149 #define enter_dim_mode CUR _Vr2_Astrs._s31 150 #define enter_insert_mode CUR _Vr2_Astrs._s32 151 #define enter_secure_mode CUR _Vr2_Astrs._s33 152 #define enter_protected_mode CUR _Vr2_Astrs._s34 153 #define enter_reverse_mode CUR _Vr2_Astrs._s35 154 #define enter_standout_mode CUR _Vr2_Astrs._s36 155 #define enter_underline_mode CUR _Vr2_Astrs._s37 156 #define erase_chars CUR _Vr2_Astrs._s38 157 #define exit_alt_charset_mode CUR _Vr2_Astrs._s39 158 #define exit_attribute_mode CUR _Vr2_Astrs._s40 159 #define exit_ca_mode CUR _Vr2_Astrs._s41 160 #define exit_delete_mode CUR _Vr2_Astrs._s42 161 #define exit_insert_mode CUR _Vr2_Astrs._s43 162 #define exit_standout_mode CUR _Vr2_Astrs._s44 163 #define exit_underline_mode CUR _Vr2_Astrs._s45 164 #define flash_screen CUR _Vr2_Astrs._s46 165 #define form_feed CUR _Vr2_Astrs._s47 166 #define from_status_line CUR _Vr2_Astrs._s48 167 #define init_1string CUR _Vr2_Astrs._s49 168 #define init_2string CUR _Vr2_Astrs._s50 169 #define init_3string CUR _Vr2_Astrs._s51 170 #define init_file CUR _Vr2_Astrs._s52 171 #define insert_character CUR _Vr2_Astrs._s53 172 #define insert_line CUR _Vr2_Astrs._s54 173 #define insert_padding CUR _Vr2_Astrs._s55 174 #define key_backspace CUR _Vr2_Astrs._s56 175 #define key_catab CUR _Vr2_Astrs._s57 176 #define key_clear CUR _Vr2_Astrs._s58 177 #define key_ctab CUR _Vr2_Astrs._s59 178 #define key_dc CUR _Vr2_Astrs._s60 179 #define key_dl CUR _Vr2_Astrs._s61 180 #define key_down CUR _Vr2_Astrs._s62 181 #define key_eic CUR _Vr2_Astrs._s63 182 #define key_eol CUR _Vr2_Astrs._s64 183 #define key_eos CUR _Vr2_Astrs._s65 184 #define key_f0 CUR _Vr2_Astrs._s66 185 #define key_f1 CUR _Vr2_Astrs._s67 186 #define key_f10 CUR _Vr2_Astrs._s68 187 #define key_f2 CUR _Vr2_Astrs._s69 188 #define key_f3 CUR _Vr2_Astrs._s70 189 #define key_f4 CUR _Vr2_Astrs._s71 190 #define key_f5 CUR _Vr2_Astrs._s72 191 #define key_f6 CUR _Vr2_Astrs._s73 192 #define key_f7 CUR _Vr2_Astrs._s74 193 #define key_f8 CUR _Vr2_Astrs._s75 194 #define key_f9 CUR _Vr2_Astrs._s76 195 #define key_home CUR _Vr2_Astrs._s77 196 #define key_ic CUR _Vr2_Astrs._s78 197 #define key_il CUR _Vr2_Astrs._s79 198 #define key_left CUR _Vr2_Astrs._s80 199 #define key_ll CUR _Vr2_Astrs._s81 200 #define key_npage CUR _Vr2_Astrs._s82 201 #define key_ppage CUR _Vr2_Astrs._s83 202 #define key_right CUR _Vr2_Astrs._s84 203 #define key_sf CUR _Vr2_Astrs._s85 204 #define key_sr CUR _Vr2_Astrs._s86 205 #define key_stab CUR _Vr2_Astrs._s87 206 #define key_up CUR _Vr2_Astrs._s88 207 #define keypad_local CUR _Vr2_Astrs._s89 208 #define keypad_xmit CUR _Vr2_Astrs._s90 209 #define lab_f0 CUR _Vr2_Astrs._s91 210 #define lab_f1 CUR _Vr2_Astrs._s92 211 #define lab_f10 CUR _Vr2_Astrs._s93 212 #define lab_f2 CUR _Vr2_Astrs._s94 213 #define lab_f3 CUR _Vr2_Astrs._s95 214 #define lab_f4 CUR _Vr2_Astrs._s96 215 #define lab_f5 CUR _Vr2_Astrs._s97 216 #define lab_f6 CUR _Vr2_Astrs._s98 217 #define lab_f7 CUR _Vr2_Astrs._s99 218 #define lab_f8 CUR _Vr2_Astrs._s100 219 #define lab_f9 CUR _Vr2_Bstrs._s101 220 #define meta_off CUR _Vr2_Bstrs._s102 221 #define meta_on CUR _Vr2_Bstrs._s103 222 #define newline CUR _Vr2_Bstrs._s104 223 #define pad_char CUR _Vr2_Bstrs._s105 224 #define parm_dch CUR _Vr2_Bstrs._s106 225 #define parm_delete_line CUR _Vr2_Bstrs._s107 226 #define parm_down_cursor CUR _Vr2_Bstrs._s108 227 #define parm_ich CUR _Vr2_Bstrs._s109 228 #define parm_index CUR _Vr2_Bstrs._s110 229 #define parm_insert_line CUR _Vr2_Bstrs._s111 230 #define parm_left_cursor CUR _Vr2_Bstrs._s112 231 #define parm_right_cursor CUR _Vr2_Bstrs._s113 232 #define parm_rindex CUR _Vr2_Bstrs._s114 233 #define parm_up_cursor CUR _Vr2_Bstrs._s115 234 #define pkey_key CUR _Vr2_Bstrs._s116 235 #define pkey_local CUR _Vr2_Bstrs._s117 236 #define pkey_xmit CUR _Vr2_Bstrs._s118 237 #define print_screen CUR _Vr2_Bstrs._s119 238 #define prtr_off CUR _Vr2_Bstrs._s120 239 #define prtr_on CUR _Vr2_Bstrs._s121 240 #define repeat_char CUR _Vr2_Bstrs._s122 241 #define reset_1string CUR _Vr2_Bstrs._s123 242 #define reset_2string CUR _Vr2_Bstrs._s124 243 #define reset_3string CUR _Vr2_Bstrs._s125 244 #define reset_file CUR _Vr2_Bstrs._s126 245 #define restore_cursor CUR _Vr2_Bstrs._s127 246 #define row_address CUR _Vr2_Bstrs._s128 247 #define save_cursor CUR _Vr2_Bstrs._s129 248 #define scroll_forward CUR _Vr2_Bstrs._s130 249 #define scroll_reverse CUR _Vr2_Bstrs._s131 250 #define set_attributes CUR _Vr2_Bstrs._s132 251 #define set_tab CUR _Vr2_Bstrs._s133 252 #define set_window CUR _Vr2_Bstrs._s134 253 #define tab CUR _Vr2_Bstrs._s135 254 #define to_status_line CUR _Vr2_Bstrs._s136 255 #define underline_char CUR _Vr2_Bstrs._s137 256 #define up_half_line CUR _Vr2_Bstrs._s138 257 #define init_prog CUR _Vr2_Bstrs._s139 258 #define key_a1 CUR _Vr2_Bstrs._s140 259 #define key_a3 CUR _Vr2_Bstrs._s141 260 #define key_b2 CUR _Vr2_Bstrs._s142 261 #define key_c1 CUR _Vr2_Bstrs._s143 262 #define key_c3 CUR _Vr2_Bstrs._s144 263 #define prtr_non CUR _Vr2_Bstrs._s145 264 #define char_padding CURS strs2._char_padding 265 #define acs_chars CURS strs2._acs_chars 266 #define plab_norm CURS strs2._plab_norm 267 #define key_btab CURS strs2._ky_btab 268 #define enter_xon_mode CURS strs2._entr_xon_mode 269 #define exit_xon_mode CURS strs2._exit_xon_mode 270 #define enter_am_mode CURS strs2._entr_am_mode 271 #define exit_am_mode CURS strs2._exit_am_mode 272 #define xon_character CURS strs2._xon_character 273 #define xoff_character CURS strs2._xoff_character 274 #define ena_acs CURS strs2._ena_acs 275 #define label_on CURS strs2._labl_on 276 #define label_off CURS strs2._labl_off 277 #define key_beg CURS strs2._ky_beg 278 #define key_cancel CURS strs2._ky_cancel 279 #define key_close CURS strs2._ky_close 280 #define key_command CURS strs2._ky_command 281 #define key_copy CURS strs2._ky_copy 282 #define key_create CURS strs2._ky_create 283 #define key_end CURS strs2._ky_end 284 #define key_enter CURS strs2._ky_enter 285 #define key_exit CURS strs2._ky_exit 286 #define key_find CURS strs2._ky_find 287 #define key_help CURS strs2._ky_help 288 #define key_mark CURS strs2._ky_mark 289 #define key_message CURS strs2._ky_message 290 #define key_move CURS strs2._ky_move 291 #define key_next CURS strs2._ky_next 292 #define key_open CURS strs2._ky_open 293 #define key_options CURS strs2._ky_options 294 #define key_previous CURS strs2._ky_previous 295 #define key_print CURS strs2._ky_print 296 #define key_redo CURS strs2._ky_redo 297 #define key_reference CURS strs2._ky_reference 298 #define key_refresh CURS strs2._ky_refresh 299 #define key_replace CURS strs2._ky_replace 300 #define key_restart CURS strs2._ky_restart 301 #define key_resume CURS strs2._ky_resume 302 #define key_save CURS strs2._ky_save 303 #define key_suspend CURS strs2._ky_suspend 304 #define key_undo CURS strs2._ky_undo 305 #define key_sbeg CURS strs2._ky_sbeg 306 #define key_scancel CURS strs2._ky_scancel 307 #define key_scommand CURS strs2._ky_scommand 308 #define key_scopy CURS strs2._ky_scopy 309 #define key_screate CURS strs2._ky_screate 310 #define key_sdc CURS strs2._ky_sdc 311 #define key_sdl CURS strs2._ky_sdl 312 #define key_select CURS strs2._ky_select 313 #define key_send CURS strs2._ky_send 314 #define key_seol CURS strs2._ky_seol 315 #define key_sexit CURS strs2._ky_sexit 316 #define key_sfind CURS strs2._ky_sfind 317 #define key_shelp CURS strs2._ky_shelp 318 #define key_shome CURS strs2._ky_shome 319 #define key_sic CURS strs3._ky_sic 320 #define key_sleft CURS strs3._ky_sleft 321 #define key_smessage CURS strs3._ky_smessage 322 #define key_smove CURS strs3._ky_smove 323 #define key_snext CURS strs3._ky_snext 324 #define key_soptions CURS strs3._ky_soptions 325 #define key_sprevious CURS strs3._ky_sprevious 326 #define key_sprint CURS strs3._ky_sprint 327 #define key_sredo CURS strs3._ky_sredo 328 #define key_sreplace CURS strs3._ky_sreplace 329 #define key_sright CURS strs3._ky_sright 330 #define key_srsume CURS strs3._ky_srsume 331 #define key_ssave CURS strs3._ky_ssave 332 #define key_ssuspend CURS strs3._ky_ssuspend 333 #define key_sundo CURS strs3._ky_sundo 334 #define req_for_input CURS strs3._req_for_input 335 #define key_f11 CURS strs3._ky_f11 336 #define key_f12 CURS strs3._ky_f12 337 #define key_f13 CURS strs3._ky_f13 338 #define key_f14 CURS strs3._ky_f14 339 #define key_f15 CURS strs3._ky_f15 340 #define key_f16 CURS strs3._ky_f16 341 #define key_f17 CURS strs3._ky_f17 342 #define key_f18 CURS strs3._ky_f18 343 #define key_f19 CURS strs3._ky_f19 344 #define key_f20 CURS strs3._ky_f20 345 #define key_f21 CURS strs3._ky_f21 346 #define key_f22 CURS strs3._ky_f22 347 #define key_f23 CURS strs3._ky_f23 348 #define key_f24 CURS strs3._ky_f24 349 #define key_f25 CURS strs3._ky_f25 350 #define key_f26 CURS strs3._ky_f26 351 #define key_f27 CURS strs3._ky_f27 352 #define key_f28 CURS strs3._ky_f28 353 #define key_f29 CURS strs3._ky_f29 354 #define key_f30 CURS strs3._ky_f30 355 #define key_f31 CURS strs3._ky_f31 356 #define key_f32 CURS strs3._ky_f32 357 #define key_f33 CURS strs3._ky_f33 358 #define key_f34 CURS strs3._ky_f34 359 #define key_f35 CURS strs3._ky_f35 360 #define key_f36 CURS strs3._ky_f36 361 #define key_f37 CURS strs3._ky_f37 362 #define key_f38 CURS strs3._ky_f38 363 #define key_f39 CURS strs3._ky_f39 364 #define key_f40 CURS strs3._ky_f40 365 #define key_f41 CURS strs3._ky_f41 366 #define key_f42 CURS strs3._ky_f42 367 #define key_f43 CURS strs3._ky_f43 368 #define key_f44 CURS strs3._ky_f44 369 #define key_f45 CURS strs3._ky_f45 370 #define key_f46 CURS strs3._ky_f46 371 #define key_f47 CURS strs3._ky_f47 372 #define key_f48 CURS strs3._ky_f48 373 #define key_f49 CURS strs3._ky_f49 374 #define key_f50 CURS strs3._ky_f50 375 #define key_f51 CURS strs3._ky_f51 376 #define key_f52 CURS strs3._ky_f52 377 #define key_f53 CURS strs3._ky_f53 378 #define key_f54 CURS strs3._ky_f54 379 #define key_f55 CURS strs3._ky_f55 380 #define key_f56 CURS strs3._ky_f56 381 #define key_f57 CURS strs3._ky_f57 382 #define key_f58 CURS strs3._ky_f58 383 #define key_f59 CURS strs3._ky_f59 384 #define key_f60 CURS strs3._ky_f60 385 #define key_f61 CURS strs3._ky_f61 386 #define key_f62 CURS strs3._ky_f62 387 #define key_f63 CURS strs3._ky_f63 388 #define clr_bol CURS strs3._clr_bol 389 #define clear_margins CURS strs3._clear_margins 390 #define set_left_margin CURS strs3._set_left_margin 391 #define set_right_margin CURS strs3._set_right_margin 392 #define label_format CURS strs3._labl_format 393 #define set_clock CURS strs3._set_clock 394 #define display_clock CURS strs3._display_clock 395 #define remove_clock CURS strs3._remove_clock 396 #define create_window CURS strs3._create_window 397 #define goto_window CURS strs3._goto_window 398 #define hangup CURS strs3._hangup 399 #define dial_phone CURS strs3._dial_phone 400 #define quick_dial CURS strs3._quick_dial 401 #define tone CURS strs3._tone 402 #define pulse CURS strs3._pulse 403 #define flash_hook CURS strs3._flash_hook 404 #define fixed_pause CURS strs3._fixed_pause 405 #define wait_tone CURS strs3._wait_tone 406 #define user0 CURS strs3._user0 407 #define user1 CURS strs3._user1 408 #define user2 CURS strs3._user2 409 #define user3 CURS strs3._user3 410 #define user4 CURS strs3._user4 411 #define user5 CURS strs3._user5 412 #define user6 CURS strs3._user6 413 #define user7 CURS strs3._user7 414 #define user8 CURS strs3._user8 415 #define user9 CURS strs3._user9 416 #define orig_pair CURS strs3._orig_pair 417 #define orig_colors CURS strs3._orig_colors 418 #define initialize_color CURS strs3._initialize_color 419 #define initialize_pair CURS strs4._initialize_pair 420 #define set_color_pair CURS strs4._set_color_pair 421 #define set_foreground CURS strs4._set_foreground 422 #define set_background CURS strs4._set_background 423 #define change_char_pitch CURS strs4._change_char_pitch 424 #define change_line_pitch CURS strs4._change_line_pitch 425 #define change_res_horz CURS strs4._change_res_horz 426 #define change_res_vert CURS strs4._change_res_vert 427 #define define_char CURS strs4._define_char 428 #define enter_doublewide_mode CURS strs4._entr_doublewide_mode 429 #define enter_draft_quality CURS strs4._entr_draft_quality 430 #define enter_italics_mode CURS strs4._entr_italics_mode 431 #define enter_leftward_mode CURS strs4._entr_leftward_mode 432 #define enter_micro_mode CURS strs4._entr_micro_mode 433 #define enter_near_letter_quality CURS strs4._entr_near_letter_quality 434 #define enter_normal_quality CURS strs4._entr_normal_quality 435 #define enter_shadow_mode CURS strs4._entr_shadow_mode 436 #define enter_subscript_mode CURS strs4._entr_subscript_mode 437 #define enter_superscript_mode CURS strs4._entr_superscript_mode 438 #define enter_upward_mode CURS strs4._entr_upward_mode 439 #define exit_doublewide_mode CURS strs4._exit_doublewide_mode 440 #define exit_italics_mode CURS strs4._exit_italics_mode 441 #define exit_leftward_mode CURS strs4._exit_leftward_mode 442 #define exit_micro_mode CURS strs4._exit_micro_mode 443 #define exit_shadow_mode CURS strs4._exit_shadow_mode 444 #define exit_subscript_mode CURS strs4._exit_subscript_mode 445 #define exit_superscript_mode CURS strs4._exit_superscript_mode 446 #define exit_upward_mode CURS strs4._exit_upward_mode 447 #define micro_column_address CURS strs4._micro_column_address 448 #define micro_down CURS strs4._micro_down 449 #define micro_left CURS strs4._micro_left 450 #define micro_right CURS strs4._micro_right 451 #define micro_row_address CURS strs4._micro_row_address 452 #define micro_up CURS strs4._micro_up 453 #define order_of_pins CURS strs4._order_of_pins 454 #define parm_down_micro CURS strs4._prm_down_micro 455 #define parm_left_micro CURS strs4._prm_left_micro 456 #define parm_right_micro CURS strs4._prm_right_micro 457 #define parm_up_micro CURS strs4._prm_up_micro 458 #define select_char_set CURS strs4._select_char_set 459 #define set_bottom_margin CURS strs4._set_bottom_margin 460 #define set_bottom_margin_parm CURS strs4._set_bottom_margin_parm 461 #define set_left_margin_parm CURS strs4._set_left_margin_parm 462 #define set_right_margin_parm CURS strs4._set_right_margin_parm 463 #define set_top_margin CURS strs4._set_top_margin 464 #define set_top_margin_parm CURS strs4._set_top_margin_parm 465 #define start_bit_image CURS strs4._start_bit_image 466 #define start_char_set_def CURS strs4._start_char_set_def 467 #define stop_bit_image CURS strs4._stop_bit_image 468 #define stop_char_set_def CURS strs4._stop_char_set_def 469 #define subscript_characters CURS strs4._subscript_characters 470 #define superscript_characters CURS strs4._superscript_characters 471 #define these_cause_cr CURS strs4._these_cause_cr 472 #define zero_motion CURS strs4._zero_motion 473 #define char_set_names CURS strs4._char_set_names 474 #define key_mouse CURS strs4._ky_mouse 475 #define mouse_info CURS strs4._mouse_info 476 #define req_mouse_pos CURS strs4._req_mouse_pos 477 #define get_mouse CURS strs4._get_mouse 478 #define set_a_foreground CURS strs4._set_a_foreground 479 #define set_a_background CURS strs4._set_a_background 480 #define pkey_plab CURS strs4._pkey_plab 481 #define device_type CURS strs4._device_type 482 #define code_set_init CURS strs4._code_set_init 483 #define set0_des_seq CURS strs4._set0_des_seq 484 #define set1_des_seq CURS strs4._set1_des_seq 485 #define set2_des_seq CURS strs4._set2_des_seq 486 #define set3_des_seq CURS strs4._set3_des_seq 487 #define set_lr_margin CURS strs4._set_lr_margin 488 #define set_tb_margin CURS strs4._set_tb_margin 489 #define bit_image_repeat CURS strs4._bit_image_repeat 490 #define bit_image_newline CURS strs4._bit_image_newline 491 #define bit_image_carriage_return CURS strs4._bit_image_carriage_return 492 #define color_names CURS strs4._color_names 493 #define define_bit_image_region CURS strs4._define_bit_image_region 494 #define end_bit_image_region CURS strs4._end_bit_image_region 495 #define set_color_band CURS strs4._set_color_band 496 #define set_page_length CURS strs4._set_page_length 497 #define display_pc_char CURS strs4._display_pc_char 498 #define enter_pc_charset_mode CURS strs4._entr_pc_charset_mode 499 #define exit_pc_charset_mode CURS strs4._exit_pc_charset_mode 500 #define enter_scancode_mode CURS strs4._entr_scancode_mode 501 #define exit_scancode_mode CURS strs4._exit_scancode_mode 502 #define pc_term_options CURS strs4._pc_term_options 503 #define scancode_escape CURS strs4._scancode_escape 504 #define alt_scancode_esc CURS strs4._alt_scancode_esc 505 #define enter_horizontal_hl_mode CURS strs4._entr_horizontal_hl_mode 506 #define enter_left_hl_mode CURS strs4._entr_left_hl_mode 507 #define enter_low_hl_mode CURS strs4._entr_low_hl_mode 508 #define enter_right_hl_mode CURS strs4._entr_right_hl_mode 509 #define enter_top_hl_mode CURS strs4._entr_top_hl_mode 510 #define enter_vertical_hl_mode CURS strs4._entr_vertical_hl_mode 511 #define set_a_attributes CURS strs4._set_a_attributes 512 #define set_pglen_inch CURS strs4._set_pglen_inch 513 514 typedef char *charptr; 515 struct strs { 516 charptr 517 _back_tab, /* Back tab */ 518 _bell, /* Audible signal (bell) */ 519 _carriage_return, /* Carriage return (*) */ 520 _change_scroll_region, /* change to lines #1 thru #2 (vt100) (G) */ 521 _clear_all_tabs, /* Clear all tab stops. */ 522 _clear_screen, /* Clear screen (*) */ 523 _clr_eol, /* Clear to end of line */ 524 _clr_eos, /* Clear to end of display (*) */ 525 _column_address, /* Set cursor column (G) */ 526 _command_character, /* Term. settable cmd char in prototype */ 527 _crsr_address, /* Cursor motion to row #1 col #2 (G) */ 528 _crsr_down, /* Down one line */ 529 _crsr_home, /* Home cursor (if no cup) */ 530 _crsr_invisible, /* Make cursor invisible */ 531 _crsr_left, /* Move cursor left one space. */ 532 _crsr_mem_address, /* Memory relative cursor addressing. */ 533 _crsr_normal, /* Make cursor appear normal (undo vs/vi) */ 534 _crsr_right, /* Non-destructive space (cursor right) */ 535 _crsr_to_ll, /* Last line, first column (if no cup) */ 536 _crsr_up, /* Upline (cursor up) */ 537 _crsr_visible, /* Make cursor very visible */ 538 _dlt_character, /* Delete character (*) */ 539 _dlt_line, /* Delete line (*) */ 540 _dis_status_line, /* Disable status line */ 541 _down_half_line, /* Half-line down (forward 1/2 linefeed) */ 542 _entr_alt_charset_mode, /* Start alternate character set */ 543 _entr_blink_mode, /* Turn on blinking */ 544 _entr_bold_mode, /* Turn on bold (extra bright) mode */ 545 _entr_ca_mode, /* String to begin programs that use cup */ 546 _entr_delete_mode, /* Delete mode (enter) */ 547 _entr_dim_mode, /* Turn on half-bright mode */ 548 _entr_insert_mode, /* Insert mode (enter); */ 549 _entr_secure_mode, /* Turn on blank mode (chars invisible) */ 550 _entr_protected_mode, /* Turn on protected mode */ 551 _entr_reverse_mode, /* Turn on reverse video mode */ 552 _entr_standout_mode, /* Begin stand out mode */ 553 _entr_underline_mode, /* Start underscore mode */ 554 _erase_chars, /* Erase #1 characters (G) */ 555 _exit_alt_charset_mode, /* End alternate character set */ 556 _exit_attribute_mode, /* Turn off all attributes */ 557 _exit_ca_mode, /* String to end programs that use cup */ 558 _exit_delete_mode, /* End delete mode */ 559 _exit_insert_mode, /* End insert mode; */ 560 _exit_standout_mode, /* End stand out mode */ 561 _exit_underline_mode, /* End underscore mode */ 562 _flash_screen, /* Visible bell (may not move cursor) */ 563 _form_feed, /* Hardcopy terminal page eject (*) */ 564 _from_status_line, /* Return from status line */ 565 _init_1string, /* Terminal initialization string */ 566 _init_2string, /* Terminal initialization string */ 567 _init_3string, /* Terminal initialization string */ 568 _init_file, /* Name of file containing is */ 569 _ins_character, /* Insert character */ 570 _ins_line, /* Add new blank line (*) */ 571 _ins_padding, /* Insert pad after character inserted (*) */ 572 _ky_backspace, /* KEY_BACKSPACE, 0407, Sent by backspace key */ 573 _ky_catab, /* KEY_CATAB, 0526, Sent by clear-all-tabs key. */ 574 _ky_clear, /* KEY_CLEAR, 0515, Sent by clear screen or erase key. */ 575 _ky_ctab, /* KEY_CTAB, 0525, Sent by clear-tab key */ 576 _ky_dc, /* KEY_DC, 0512, Sent by delete character key. */ 577 _ky_dl, /* KEY_DL, 0510, Sent by delete line key. */ 578 _ky_down, /* KEY_DOWN, 0402, Sent by terminal down arrow key */ 579 _ky_eic, /* KEY_EIC, 0514, Sent by rmir or smir in ins mode. */ 580 _ky_eol, /* KEY_EOL, 0517, Sent by clear-to-end-of-line key. */ 581 _ky_eos, /* KEY_EOS, 0516, Sent by clear-to-end-of-screen. */ 582 _ky_f0, /* KEY_F(0), 0410, function key f0. */ 583 _ky_f1, /* KEY_F(1), 0411, function key f1. */ 584 _ky_f10, /* KEY_F(10), 0422, function key f10. */ 585 _ky_f2, /* KEY_F(2), 0412, function key f2. */ 586 _ky_f3, /* KEY_F(3), 0413, function key f3. */ 587 _ky_f4, /* KEY_F(4), 0414, function key f4. */ 588 _ky_f5, /* KEY_F(5), 0415, function key f5. */ 589 _ky_f6, /* KEY_F(6), 0416, function key f6. */ 590 _ky_f7, /* KEY_F(7), 0417, function key f7. */ 591 _ky_f8, /* KEY_F(8), 0420, function key f8. */ 592 _ky_f9, /* KEY_F(9), 0421, function key f9. */ 593 _ky_home, /* KEY_HOME, 0406, Sent by home key. */ 594 _ky_ic, /* KEY_IC, 0513, Sent by ins char/enter mode key. */ 595 _ky_il, /* KEY_IL, 0511, Sent by insert line. */ 596 _ky_left, /* KEY_LEFT, 0404, Sent by terminal left arrow key */ 597 _ky_ll, /* KEY_LL, 0533, Sent by home-down key */ 598 _ky_npage, /* KEY_NPAGE, 0522, Sent by next-page key */ 599 _ky_ppage, /* KEY_PPAGE, 0523, Sent by previous-page key */ 600 _ky_right, /* KEY_RIGHT, 0405, Sent by terminal right arrow key */ 601 _ky_sf, /* KEY_SF, 0520, Sent by scroll-forward/down key */ 602 _ky_sr, /* KEY_SR, 0521, Sent by scroll-backward/up key */ 603 _ky_stab, /* KEY_STAB, 0524, Sent by set-tab key */ 604 _ky_up, /* KEY_UP, 0403, Sent by terminal up arrow key */ 605 _kpad_local, /* Out of "keypad transmit" mode */ 606 _kpad_xmit, /* Put terminal in "keypad transmit" mode */ 607 _lab_f0, /* Labels on function key f0 if not f0 */ 608 _lab_f1, /* Labels on function key f1 if not f1 */ 609 _lab_f10, /* Labels on function key f10 if not f10 */ 610 _lab_f2, /* Labels on function key f2 if not f2 */ 611 _lab_f3, /* Labels on function key f3 if not f3 */ 612 _lab_f4, /* Labels on function key f4 if not f4 */ 613 _lab_f5, /* Labels on function key f5 if not f5 */ 614 _lab_f6, /* Labels on function key f6 if not f6 */ 615 _lab_f7, /* Labels on function key f7 if not f7 */ 616 _lab_f8; /* Labels on function key f8 if not f8 */ 617 }; 618 619 struct strs2 { 620 charptr 621 _lab_f9, /* Labels on function key f9 if not f9 */ 622 _meta_off, /* Turn off "meta mode" */ 623 _meta_on, /* Turn on "meta mode" (8th bit) */ 624 _newline, /* Newline (behaves like cr followed by lf) */ 625 _pad_char, /* Pad character (rather than null) */ 626 _prm_dch, /* Delete #1 chars (G*) */ 627 _prm_delete_line, /* Delete #1 lines (G*) */ 628 _prm_down_cursor, /* Move cursor down #1 lines. (G*) */ 629 _prm_ich, /* Insert #1 blank chars (G*) */ 630 _prm_index, /* Scroll forward #1 lines. (G) */ 631 _prm_insert_line, /* Add #1 new blank lines (G*) */ 632 _prm_left_cursor, /* Move cursor left #1 spaces (G) */ 633 _prm_right_cursor, /* Move cursor right #1 spaces. (G*) */ 634 _prm_rindex, /* Scroll backward #1 lines. (G) */ 635 _prm_up_cursor, /* Move cursor up #1 lines. (G*) */ 636 _pkey_key, /* Prog funct key #1 to type string #2 */ 637 _pkey_local, /* Prog funct key #1 to execute string #2 */ 638 _pkey_xmit, /* Prog funct key #1 to xmit string #2 */ 639 _print_screen, /* Print contents of the screen */ 640 _prtr_off, /* Turn off the printer */ 641 _prtr_on, /* Turn on the printer */ 642 _repeat_char, /* Repeat char #1 #2 times. (G*) */ 643 _reset_1string, /* Reset terminal completely to sane modes. */ 644 _reset_2string, /* Reset terminal completely to sane modes. */ 645 _reset_3string, /* Reset terminal completely to sane modes. */ 646 _reset_file, /* Name of file containing reset string. */ 647 _restore_cursor, /* Restore cursor to position of last sc. */ 648 _row_address, /* Like hpa but sets row. (G) */ 649 _save_cursor, /* Save cursor position. */ 650 _scrll_forward, /* Scroll text up */ 651 _scrll_reverse, /* Scroll text down */ 652 _set_attributes, /* Define the video attributes (G9) */ 653 _set_tab, /* Set a tab in all rows, current column. */ 654 _set_window, /* Current window is lines #1-#2 cols #3-#4 */ 655 _tab, /* Tab to next 8 space hardware tab stop. */ 656 _to_status_line, /* Go to status line, col #1 */ 657 _underline_char, /* Underscore one char and move past it */ 658 _up_half_line, /* Half-line up (reverse 1/2 linefeed) */ 659 _init_prog, /* Path name of program for init. */ 660 _ky_a1, /* KEY_A1, 0534, Upper left of keypad */ 661 _ky_a3, /* KEY_A3, 0535, Upper right of keypad */ 662 _ky_b2, /* KEY_B2, 0536, Center of keypad */ 663 _ky_c1, /* KEY_C1, 0537, Lower left of keypad */ 664 _ky_c3, /* KEY_C3, 0540, Lower right of keypad */ 665 _prtr_non, /* Turn on the printer for #1 bytes. */ 666 _char_padding, /* Like ip but when in replace mode */ 667 _acs_chars, /* Graphic charset pairs aAbBcC - def=vt100 */ 668 _plab_norm, /* Prog label #1 to show string #2 */ 669 _ky_btab, /* KEY_BTAB, 0541, Back tab key */ 670 _entr_xon_mode, /* Turn on xon/xoff handshaking */ 671 _exit_xon_mode, /* Turn off xon/xoff handshaking */ 672 _entr_am_mode, /* Turn on automatic margins */ 673 _exit_am_mode, /* Turn off automatic margins */ 674 _xon_character, /* X-on character */ 675 _xoff_character, /* X-off character */ 676 _ena_acs, /* Enable alternate char set */ 677 _labl_on, /* Turn on soft labels */ 678 _labl_off, /* Turn off soft labels */ 679 _ky_beg, /* KEY_BEG, 0542, beg(inning) key */ 680 _ky_cancel, /* KEY_CANCEL, 0543, cancel key */ 681 _ky_close, /* KEY_CLOSE, 0544, close key */ 682 _ky_command, /* KEY_COMMAND, 0545, cmd (command) key */ 683 _ky_copy, /* KEY_COPY, 0546, copy key */ 684 _ky_create, /* KEY_CREATE, 0547, create key */ 685 _ky_end, /* KEY_END, 0550, end key */ 686 _ky_enter, /* KEY_ENTER, 0527, Enter/send (unreliable) */ 687 _ky_exit, /* KEY_EXIT, 0551, exit key */ 688 _ky_find, /* KEY_FIND, 0552, find key */ 689 _ky_help, /* KEY_HELP, 0553, help key */ 690 _ky_mark, /* KEY_MARK, 0554, mark key */ 691 _ky_message, /* KEY_MESSAGE, 0555, message key */ 692 _ky_move, /* KEY_MOVE, 0556, move key */ 693 _ky_next, /* KEY_NEXT, 0557, next object key */ 694 _ky_open, /* KEY_OPEN, 0560, open key */ 695 _ky_options, /* KEY_OPTIONS, 0561, options key */ 696 _ky_previous, /* KEY_PREVIOUS, 0562, previous object key */ 697 _ky_print, /* KEY_PRINT, 0532, print or copy */ 698 _ky_redo, /* KEY_REDO, 0563, redo key */ 699 _ky_reference, /* KEY_REFERENCE, 0564, ref(erence) key */ 700 _ky_refresh, /* KEY_REFRESH, 0565, refresh key */ 701 _ky_replace, /* KEY_REPLACE, 0566, replace key */ 702 _ky_restart, /* KEY_RESTART, 0567, restart key */ 703 _ky_resume, /* KEY_RESUME, 0570, resume key */ 704 _ky_save, /* KEY_SAVE, 0571, save key */ 705 _ky_suspend, /* KEY_SUSPEND, 0627, suspend key */ 706 _ky_undo, /* KEY_UNDO, 0630, undo key */ 707 _ky_sbeg, /* KEY_SBEG, 0572, shifted beginning key */ 708 _ky_scancel, /* KEY_SCANCEL, 0573, shifted cancel key */ 709 _ky_scommand, /* KEY_SCOMMAND, 0574, shifted command key */ 710 _ky_scopy, /* KEY_SCOPY, 0575, shifted copy key */ 711 _ky_screate, /* KEY_SCREATE, 0576, shifted create key */ 712 _ky_sdc, /* KEY_SDC, 0577, shifted delete char key */ 713 _ky_sdl, /* KEY_SDL, 0600, shifted delete line key */ 714 _ky_select, /* KEY_SELECT, 0601, select key */ 715 _ky_send, /* KEY_SEND, 0602, shifted end key */ 716 _ky_seol, /* KEY_SEOL, 0603, shifted clear line key */ 717 _ky_sexit, /* KEY_SEXIT, 0604, shifted exit key */ 718 _ky_sfind, /* KEY_SFIND, 0605, shifted find key */ 719 _ky_shelp, /* KEY_SHELP, 0606, shifted help key */ 720 _ky_shome; /* KEY_SHOME, 0607, shifted home key */ 721 }; 722 723 struct strs3 { 724 charptr 725 _ky_sic, /* KEY_SIC, 0610, shifted input key */ 726 _ky_sleft, /* KEY_SLEFT, 0611, shifted left arrow key */ 727 _ky_smessage, /* KEY_SMESSAGE, 0612, shifted message key */ 728 _ky_smove, /* KEY_SMOVE, 0613, shifted move key */ 729 _ky_snext, /* KEY_SNEXT, 0614, shifted next key */ 730 _ky_soptions, /* KEY_SOPTIONS, 0615, shifted options key */ 731 _ky_sprevious, /* KEY_SPREVIOUS, 0616, shifted prev key */ 732 _ky_sprint, /* KEY_SPRINT, 0617, shifted print key */ 733 _ky_sredo, /* KEY_SREDO, 0620, shifted redo key */ 734 _ky_sreplace, /* KEY_SREPLACE, 0621, shifted replace key */ 735 _ky_sright, /* KEY_SRIGHT, 0622, shifted right arrow */ 736 _ky_srsume, /* KEY_SRSUME, 0623, shifted resume key */ 737 _ky_ssave, /* KEY_SSAVE, 0624, shifted save key */ 738 _ky_ssuspend, /* KEY_SSUSPEND, 0625, shifted suspend key */ 739 _ky_sundo, /* KEY_SUNDO, 0626, shifted undo key */ 740 _req_for_input, /* send next input char (for ptys) */ 741 _ky_f11, /* KEY_F(11), 0423, function key f11. */ 742 _ky_f12, /* KEY_F(12), 0424, function key f12. */ 743 _ky_f13, /* KEY_F(13), 0425, function key f13. */ 744 _ky_f14, /* KEY_F(14), 0426, function key f14. */ 745 _ky_f15, /* KEY_F(15), 0427, function key f15. */ 746 _ky_f16, /* KEY_F(16), 0430, function key f16. */ 747 _ky_f17, /* KEY_F(17), 0431, function key f17. */ 748 _ky_f18, /* KEY_F(18), 0432, function key f18. */ 749 _ky_f19, /* KEY_F(19), 0433, function key f19. */ 750 _ky_f20, /* KEY_F(20), 0434, function key f20. */ 751 _ky_f21, /* KEY_F(21), 0435, function key f21. */ 752 _ky_f22, /* KEY_F(22), 0436, function key f22. */ 753 _ky_f23, /* KEY_F(23), 0437, function key f23. */ 754 _ky_f24, /* KEY_F(24), 0440, function key f24. */ 755 _ky_f25, /* KEY_F(25), 0441, function key f25. */ 756 _ky_f26, /* KEY_F(26), 0442, function key f26. */ 757 _ky_f27, /* KEY_F(27), 0443, function key f27. */ 758 _ky_f28, /* KEY_F(28), 0444, function key f28. */ 759 _ky_f29, /* KEY_F(29), 0445, function key f29. */ 760 _ky_f30, /* KEY_F(30), 0446, function key f30. */ 761 _ky_f31, /* KEY_F(31), 0447, function key f31. */ 762 _ky_f32, /* KEY_F(32), 0450, function key f32. */ 763 _ky_f33, /* KEY_F(33), 0451, function key f33. */ 764 _ky_f34, /* KEY_F(34), 0452, function key f34. */ 765 _ky_f35, /* KEY_F(35), 0453, function key f35. */ 766 _ky_f36, /* KEY_F(36), 0454, function key f36. */ 767 _ky_f37, /* KEY_F(37), 0455, function key f37. */ 768 _ky_f38, /* KEY_F(38), 0456, function key f38. */ 769 _ky_f39, /* KEY_F(39), 0457, function key f39. */ 770 _ky_f40, /* KEY_F(40), 0460, function key f40. */ 771 _ky_f41, /* KEY_F(41), 0461, function key f41. */ 772 _ky_f42, /* KEY_F(42), 0462, function key f42. */ 773 _ky_f43, /* KEY_F(43), 0463, function key f43. */ 774 _ky_f44, /* KEY_F(44), 0464, function key f44. */ 775 _ky_f45, /* KEY_F(45), 0465, function key f45. */ 776 _ky_f46, /* KEY_F(46), 0466, function key f46. */ 777 _ky_f47, /* KEY_F(47), 0467, function key f47. */ 778 _ky_f48, /* KEY_F(48), 0470, function key f48. */ 779 _ky_f49, /* KEY_F(49), 0471, function key f49. */ 780 _ky_f50, /* KEY_F(50), 0472, function key f50. */ 781 _ky_f51, /* KEY_F(51), 0473, function key f51. */ 782 _ky_f52, /* KEY_F(52), 0474, function key f52. */ 783 _ky_f53, /* KEY_F(53), 0475, function key f53. */ 784 _ky_f54, /* KEY_F(54), 0476, function key f54. */ 785 _ky_f55, /* KEY_F(55), 0477, function key f55. */ 786 _ky_f56, /* KEY_F(56), 0500, function key f56. */ 787 _ky_f57, /* KEY_F(57), 0501, function key f57. */ 788 _ky_f58, /* KEY_F(58), 0502, function key f58. */ 789 _ky_f59, /* KEY_F(59), 0503, function key f59. */ 790 _ky_f60, /* KEY_F(60), 0504, function key f60. */ 791 _ky_f61, /* KEY_F(61), 0505, function key f61. */ 792 _ky_f62, /* KEY_F(62), 0506, function key f62. */ 793 _ky_f63, /* KEY_F(63), 0507, function key f63. */ 794 _clr_bol, /* Clear to beginning of line, inclusive */ 795 _clear_margins, /* Clear left and right soft margins */ 796 _set_left_margin, /* Set soft left margin */ 797 _set_right_margin, /* Set soft right margin */ 798 _labl_format, /* Label format */ 799 _set_clock, /* Set time-of-day clock */ 800 _display_clock, /* Display time-of-day clock */ 801 _remove_clock, /* Remove time-of-day clock */ 802 _create_window, /* Define win #1 to go from #2,#3 to #4,#5 */ 803 _goto_window, /* Got to window #1 */ 804 _hangup, /* Hang-up phone */ 805 _dial_phone, /* Dial phone number #1 */ 806 _quick_dial, /* Dial phone number #1, without progress detection */ 807 _tone, /* Select touch tone dialing */ 808 _pulse, /* Select pulse dialing */ 809 _flash_hook, /* Flash the switch hook */ 810 _fixed_pause, /* Pause for 2-3 seconds */ 811 _wait_tone, /* Wait for dial tone */ 812 _user0, /* User string 0 */ 813 _user1, /* User string 1 */ 814 _user2, /* User string 2 */ 815 _user3, /* User string 3 */ 816 _user4, /* User string 4 */ 817 _user5, /* User string 5 */ 818 _user6, /* User string 6 */ 819 _user7, /* User string 7 */ 820 _user8, /* User string 8 */ 821 _user9, /* User string 9 */ 822 _orig_pair, /* Original color-pair */ 823 _orig_colors, /* Original colors */ 824 _initialize_color; /* Initialize the definition of color */ 825 }; 826 827 struct strs4 { 828 charptr 829 _initialize_pair, /* Initialize color pair */ 830 _set_color_pair, /* Set color pair */ 831 _set_foreground, /* Set foreground color using RGB escape */ 832 _set_background, /* Set background color using RGB escape */ 833 _change_char_pitch, /* Change no. characters per inch */ 834 _change_line_pitch, /* Change no. lines per inch */ 835 _change_res_horz, /* Change horizontal resolution */ 836 _change_res_vert, /* Change vertical resolution */ 837 _define_char, /* Define a character in a character set */ 838 _entr_doublewide_mode, /* Enable double wide printing */ 839 _entr_draft_quality, /* Set draft quality print */ 840 _entr_italics_mode, /* Enable italics */ 841 _entr_leftward_mode, /* Enable leftward carriage motion */ 842 _entr_micro_mode, /* Enable micro motion capabilities */ 843 _entr_near_letter_quality, /* Set near-letter quality print */ 844 _entr_normal_quality, /* Set normal quality print */ 845 _entr_shadow_mode, /* Enable shadow printing */ 846 _entr_subscript_mode, /* Enable subscript printing */ 847 _entr_superscript_mode, /* Enable superscript printing */ 848 _entr_upward_mode, /* Enable upward carriage motion */ 849 _exit_doublewide_mode, /* Disable double wide printing */ 850 _exit_italics_mode, /* Disable italics */ 851 _exit_leftward_mode, /* Enable rightward (normal) carriage motion */ 852 _exit_micro_mode, /* Disable micro motion capabilities */ 853 _exit_shadow_mode, /* Disable shadow printing */ 854 _exit_subscript_mode, /* Disable subscript printing */ 855 _exit_superscript_mode, /* Disable superscript printing */ 856 _exit_upward_mode, /* Enable downward (normal) carriage motion */ 857 _micro_column_address, /* Like column_address for micro adjustment */ 858 _micro_down, /* Like cursor_down for micro adjustment */ 859 _micro_left, /* Like cursor_left for micro adjustment */ 860 _micro_right, /* Like cursor_right for micro adjustment */ 861 _micro_row_address, /* Like row_address for micro adjustment */ 862 _micro_up, /* Like cursor_up for micro adjustment */ 863 _order_of_pins, /* Matches software bits to print-head pins */ 864 _prm_down_micro, /* Like parm_down_cursor for micro adjust. */ 865 _prm_left_micro, /* Like parm_left_cursor for micro adjust. */ 866 _prm_right_micro, /* Like parm_right_cursor for micro adjust. */ 867 _prm_up_micro, /* Like parm_up_cursor for micro adjust. */ 868 _select_char_set, /* Select character set */ 869 _set_bottom_margin, /* Set soft bottom margin at current line */ 870 _set_bottom_margin_parm, /* Set soft bottom margin */ 871 _set_left_margin_parm, /* Set soft left margin */ 872 _set_right_margin_parm, /* Set soft right margin */ 873 _set_top_margin, /* Set soft top margin at current line */ 874 _set_top_margin_parm, /* Set soft top margin */ 875 _start_bit_image, /* Start printing bit image graphics */ 876 _start_char_set_def, /* Start definition of a character set */ 877 _stop_bit_image, /* End printing bit image graphics (use tputs) */ 878 _stop_char_set_def, /* End definition of a character set */ 879 _subscript_characters, /* List of ``subscript-able'' characters */ 880 _superscript_characters, /* List of ``superscript-able'' characters */ 881 _these_cause_cr, /* Printing any of these chars causes cr */ 882 _zero_motion, /* No motion for the subsequent character */ 883 _char_set_names, /* List of character set names */ 884 _ky_mouse, /* KEY_MOUSE, 0631, Mouse event has occured */ 885 _mouse_info, /* Mouse status information */ 886 _req_mouse_pos, /* Request mouse position report */ 887 _get_mouse, /* Curses should get button events */ 888 _set_a_foreground, /* Set foreground color using ANSI escape */ 889 _set_a_background, /* Set background color using ANSI escape */ 890 _pkey_plab, /* Prog key #1 to xmit string #2 and show string #3 */ 891 _device_type, /* Indicate language/codeset support */ 892 _code_set_init, /* Init sequence for multiple codesets */ 893 _set0_des_seq, /* Shift into codeset 0 (EUC set 0, ASCII) */ 894 _set1_des_seq, /* Shift into codeset 1 */ 895 _set2_des_seq, /* Shift into codeset 2 */ 896 _set3_des_seq, /* Shift into codeset 3 */ 897 _set_lr_margin, /* Sets both left and right margins */ 898 _set_tb_margin, /* Sets both top and bottom margins */ 899 _bit_image_repeat, /* Repeat bit-image cell #1 #2 times (use tparm) */ 900 _bit_image_newline, /* Move to next row of the bit image (use tparm) */ 901 _bit_image_carriage_return, /* Move to beginning of same row (use tparm) */ 902 _color_names, /* Give name for color #1 */ 903 _define_bit_image_region, /* Define rectangular bit-image region (use tparm) */ 904 _end_bit_image_region, /* End a bit-image region (use tparm) */ 905 _set_color_band, /* Change to ribbon color #1 */ 906 _set_page_length, /* Set page length to #1 lines (use tparm) */ 907 _display_pc_char, /* Display PC character */ 908 _entr_pc_charset_mode, /* Enter PC character display mode */ 909 _exit_pc_charset_mode, /* Disable PC character display mode */ 910 _entr_scancode_mode, /* Enter PC scancode mode */ 911 _exit_scancode_mode, /* Disable PC scancode mode */ 912 _pc_term_options, /* PC terminal options */ 913 _scancode_escape, /* Escape for scancode emulation */ 914 _alt_scancode_esc, /* Alternate escape for scancode emulation */ 915 _entr_horizontal_hl_mode, /* Horizontal highlight mode */ 916 _entr_left_hl_mode, /* Left highlight mode */ 917 _entr_low_hl_mode, /* Low highlight mode */ 918 _entr_right_hl_mode, /* Right highlight mode */ 919 _entr_top_hl_mode, /* Top highlight mode */ 920 _entr_vertical_hl_mode, /* Vertical highlight mode */ 921 _set_a_attributes, /* Define second set of attributes #1-#6 */ 922 _set_pglen_inch, /* Set page length to #1/100 of an inch */ 923 Sentinel; /* End of strings. DO NOT MOVE! */ 924 }; 925 926 struct _bool_struct { 927 char 928 _auto_left_margin, /* cub1 wraps from column 0 to last column */ 929 _auto_right_margin, /* Terminal has automatic margins */ 930 _no_esc_ctlc, /* Beehive (f1=escape, f2=ctrl C) */ 931 _ceol_standout_glitch, /* Standout not erased by overwriting (hp) */ 932 _eat_newline_glitch, /* newline ignored after 80 cols (Concept) */ 933 _erase_overstrike, /* Can erase overstrikes with a blank */ 934 _generic_type, /* Generic line type (e.g. dialup, switch). */ 935 _hard_copy, /* Hardcopy terminal */ 936 _has_meta_key, /* Has a meta key (shift, sets parity bit) */ 937 _has_status_line, /* Has extra "status line" */ 938 _ins_null_glitch, /* Insert mode distinguishes nulls */ 939 _mem_above, /* Display may be retained above the screen */ 940 _mem_below, /* Display may be retained below the screen */ 941 _move_insert_mode, /* Safe to move while in insert mode */ 942 _move_standout_mode, /* Safe to move in standout modes */ 943 _over_strike, /* Terminal overstrikes */ 944 _status_line_esc_ok, /* Escape can be used on the status line */ 945 _dest_tabs_magic_smso, /* Tabs destructive, magic so char (t1061) */ 946 _tilde_glitch, /* Hazeltine; can't print ~'s */ 947 _transparent_underline, /* underline character overstrikes */ 948 _xon_xoff, /* Terminal uses xon/xoff handshaking */ 949 _needs_xon_xoff, /* Padding won't work, xon/xoff required */ 950 _prtr_silent, /* Printer won't echo on screen. */ 951 _hard_cursor, /* Cursor is hard to see. */ 952 _non_rev_rmcup, /* Smcup does not reverse rmcup. */ 953 _no_pad_char, /* Pad character doesn't exist. */ 954 _non_dest_scroll_region, /* Scrolling region is non-destructive. */ 955 _can_change, /* Can re-define existing color */ 956 _back_color_erase, /* Erases screen with current background */ 957 _hue_lightness_saturation, /* HLS color notation is used (Tek) */ 958 _col_addr_glitch, /* Only positive motion for hpa/mhpa caps */ 959 _cr_cancels_micro_mode, /* Using cr turns off micro mode */ 960 _has_print_wheel, /* Printer needs operator to change character set */ 961 _row_addr_glitch, /* Only positive motion for vpa/mvpa caps */ 962 _semi_auto_right_margin, /* Printing in last column causes cr */ 963 _cpi_changes_res, /* Changing char. pitch changes resolution */ 964 _lpi_changes_res, /* Changing line pitch changes resolution */ 965 Sentinel; /* End of bools. DO NOT MOVE! */ 966 }; 967 968 struct _num_struct { 969 short 970 _columns, /* Number of columns in a line */ 971 _init_tabs, /* Tabs initially every # spaces. */ 972 _lines, /* Number of lines on screen or page */ 973 _lines_of_memory, /* Lines of memory if > lines. 0 => varies */ 974 _magic_cookie_glitch, /* Number blank chars left by smso or rmso */ 975 _padding_baud_rate, /* Lowest baud rate where padding needed */ 976 _virtual_terminal, /* Virtual terminal number (CB/Unix) */ 977 _width_status_line, /* # columns in status line */ 978 _num_labels, /* # of labels on screen (start at 1) */ 979 _labl_height, /* # rows in each label */ 980 _labl_width, /* # cols in each label */ 981 _max_attributes, /* max combined video attributes terminal can display */ 982 _maximum_windows, /* Maximum number of defineable windows */ 983 _max_colors, /* max # of color on the screen */ 984 _max_pairs, /* max # of color pairs on the screen */ 985 _no_color_video, /* Video attributes that cannot be used with colors */ 986 _buffer_capacity, /* Number of bytes buffered before printing */ 987 _dot_vert_spacing, /* Spacing of pins vertically in pins per inch */ 988 _dot_horz_spacing, /* Spacing of dots horizontally in dots per inch */ 989 _max_micro_address, /* Maximum value in micro_..._address */ 990 _max_micro_jump, /* Maximum value in parm_..._micro */ 991 _micro_char_size, /* Character step size when in micro mode */ 992 _micro_line_size, /* Line step size when in micro mode */ 993 _number_of_pins, /* Number of pins in print-head */ 994 _output_res_char, /* Horizontal resolution in units per character */ 995 _output_res_line, /* Vertical resolution in units per line */ 996 _output_res_horz_inch, /* Horizontal resolution in units per inch */ 997 _output_res_vert_inch, /* Vertical resolution in units per inch */ 998 _print_rate, /* Print rate in characters per second */ 999 _wide_char_size, /* Character step size when in double wide mode */ 1000 _buttons, /* Number of buttons on the mouse */ 1001 _bit_image_entwining, /* Number of passes for each bit-image row */ 1002 _bit_image_type, /* Type of bit-image device */ 1003 Sentinel; /* End of nums. DO NOT MOVE! */ 1004 }; 1005 1006 struct _str_struct { 1007 struct strs strs; 1008 struct strs2 strs2; 1009 struct strs3 strs3; 1010 struct strs4 strs4; 1011 }; 1012 1013 #define NUM_ATTRIBUTES 9 1014 #define UNACCESSIBLE 1 1015 #define NO_TERMINAL 2 1016 #define CORRUPTED 3 1017 #define ENTRY_TOO_LONG 4 1018 #define TERMINFO_TOO_LONG 5 1019 #define TERM_BAD_MALLOC 6 1020 #define NOT_READABLE 7 1021 #define _VR2_COMPAT_CODE 1022 #ifdef _VR2_COMPAT_CODE 1023 struct _Vr2_Astrs { 1024 charptr 1025 _s1, _s2, _s3, _s4, _s5, _s6, _s7, _s8, _s9, _s10, 1026 _s11, _s12, _s13, _s14, _s15, _s16, _s17, _s18, _s19, _s20, 1027 _s21, _s22, _s23, _s24, _s25, _s26, _s27, _s28, _s29, _s30, 1028 _s31, _s32, _s33, _s34, _s35, _s36, _s37, _s38, _s39, _s40, 1029 _s41, _s42, _s43, _s44, _s45, _s46, _s47, _s48, _s49, _s50, 1030 _s51, _s52, _s53, _s54, _s55, _s56, _s57, _s58, _s59, _s60, 1031 _s61, _s62, _s63, _s64, _s65, _s66, _s67, _s68, _s69, _s70, 1032 _s71, _s72, _s73, _s74, _s75, _s76, _s77, _s78, _s79, _s80, 1033 _s81, _s82, _s83, _s84, _s85, _s86, _s87, _s88, _s89, _s90, 1034 _s91, _s92, _s93, _s94, _s95, _s96, _s97, _s98, _s99, _s100; 1035 }; 1036 1037 struct _Vr2_Bstrs { 1038 charptr 1039 _s101, _s102, _s103, _s104, _s105, _s106, _s107, _s108, _s109, _s110, 1040 _s111, _s112, _s113, _s114, _s115, _s116, _s117, _s118, _s119, _s120, 1041 _s121, _s122, _s123, _s124, _s125, _s126, _s127, _s128, _s129, _s130, 1042 _s131, _s132, _s133, _s134, _s135, _s136, _s137, _s138, _s139, _s140, 1043 _s141, _s142, _s143, _s144, _s145; 1044 }; 1045 #endif /* _VR2_COMPAT_CODE */ 1046 1047 typedef struct { 1048 char *_sends; /* Characters sent when key is pressed */ 1049 short _keyval; /* "char" we pass back to program */ 1050 } _KEY_MAP; 1051 1052 typedef struct { 1053 short foreground; /* foreground color */ 1054 short background; /* background color */ 1055 bool init; /* TRUE if pair was initialized */ 1056 } _Color_pair; 1057 1058 1059 typedef struct { 1060 short r, g, b; 1061 } _Color; 1062 1063 1064 /* 1065 * This definition for the term struct allows the boolean, number 1066 * and string information to grow in the future and still allow .o 1067 * compatibility. 1068 */ 1069 1070 struct term { 1071 #ifdef _VR2_COMPAT_CODE 1072 char 1073 _b1, _b2, _b3, _b4, _b5, _b6, _b7, _b8, _b9, _b10, 1074 _b11, _b12, _b13, _b14, _b15, _b16, _b17, _b18, _b19, _b20, _b21; 1075 short 1076 _c1, _c2, _c3, _c4, _c5, _c6, _c7, _c8; 1077 struct _Vr2_Astrs _Vr2_Astrs; 1078 struct _Vr2_Bstrs _Vr2_Bstrs; 1079 #endif /* _VR2_COMPAT_CODE */ 1080 short Filedes; /* file descriptor being written to */ 1081 SGTTY Ottyb, /* original state of the terminal */ 1082 Nttyb; /* current state of the terminal */ 1083 #ifdef SYSV 1084 SGTTYS Ottybs, /* original state of the terminal */ 1085 Nttybs; /* current state of the terminal */ 1086 #endif 1087 #ifdef DIOCSETT 1088 struct termcb new, old; /* CB/UNIX virtual terminals */ 1089 #endif 1090 #ifdef LTILDE 1091 int newlmode, oldlmode; /* BSD tty driver */ 1092 #endif 1093 /* end of Vr2 structure */ 1094 struct _bool_struct *_bools; 1095 struct _num_struct *_nums; 1096 struct _str_struct *_strs; 1097 char *_strtab; 1098 #ifdef FIONREAD 1099 long timeout; /* for BSD halfdelay mode */ 1100 #endif 1101 /* end of Vr3 structure */ 1102 chtype sgr_mode; /* current phys. graphic rendition */ 1103 chtype sgr_faked; /* attributes faked by vidputs */ 1104 int _delay; /* timeout for inputs */ 1105 int _inputfd; /* input file descriptor */ 1106 int _check_fd; /* typeahead file descriptor */ 1107 _KEY_MAP **_keys, /* key map */ 1108 *internal_keys; /* pointer to free key structures */ 1109 short _ksz, /* size of keymap */ 1110 _lastkey_ordered, /* where the last ordered key is */ 1111 _lastmacro_ordered, /* where last ordered macro is */ 1112 _first_macro; 1113 bool funckeystarter[0400]; 1114 /* map of which chars start fn keys */ 1115 bool _fl_rawmode, /* in cbreak(=1) or raw(=2) mode */ 1116 fl_typeahdok, /* ok to use typeahead */ 1117 _cursorstate, /* cursor: 0=invis, 1=norm, 2=vvis */ 1118 _iwait; /* true if input-pending */ 1119 short _regs[26]; /* tparm static registers */ 1120 #define INP_QSIZE 32 1121 chtype /* a place to put stuff ungetch'ed */ 1122 _input_queue[INP_QSIZE]; 1123 short _ungotten; /* # chars ungotten by ungetch() */ 1124 char _chars_on_queue; /* # chars on queue */ 1125 #ifdef _VR3_COMPAT_CODE 1126 _ochtype *_acsmap; 1127 chtype *_acs32map; /* map of alternate char set chars */ 1128 #else /* _VR3_COMPAT_CODE */ 1129 chtype *_acsmap; /* map of alternate char set chars */ 1130 #endif /* _VR3_COMPAT_CODE */ 1131 char *turn_on_seq[NUM_ATTRIBUTES]; 1132 chtype bit_vector; 1133 char *cursor_seq[3]; 1134 char _termname[15]; 1135 char *turn_off_seq[3]; 1136 chtype check_turn_off; 1137 chtype non_faked_mode; 1138 _Color_pair _cur_pair; 1139 _Color_pair *_pairs_tbl; 1140 _Color *_color_tbl; 1141 }; 1142 1143 typedef struct term TERMINAL; 1144 1145 /* allow old names for these capabilities */ 1146 #define beehive_glitch no_esc_ctlc 1147 #define teleray_glitch dest_tabs_magic_smso 1148 1149 extern TERMINAL *cur_term; 1150 extern struct _bool_struct *cur_bools; 1151 extern struct _num_struct *cur_nums; 1152 extern struct _str_struct *cur_strs; 1153 1154 #ifdef SINGLE 1155 extern TERMINAL _first_term; 1156 extern struct _bool_struct _frst_bools; 1157 extern struct _num_struct _frst_nums; 1158 extern struct _str_struct _frst_strs; 1159 1160 #define CUR _first_term. 1161 #define CURB _frst_bools. 1162 #define CURN _frst_nums. 1163 #define CURS _frst_strs. 1164 #define PROGTTY _first_term.Nttyb 1165 #define SHELLTTY _first_term.Ottyb 1166 #ifdef SYSV 1167 #define PROGTTYS _first_term.Nttybs 1168 #define SHELLTTYS _first_term.Ottybs 1169 #endif 1170 #else 1171 #define CUR cur_term-> 1172 #define CURB cur_bools-> 1173 #define CURN cur_nums-> 1174 #define CURS cur_strs-> 1175 #define PROGTTY (cur_term->Nttyb) 1176 #define SHELLTTY (cur_term->Ottyb) 1177 #ifdef SYSV 1178 #define PROGTTYS (cur_term->Nttybs) 1179 #define SHELLTTYS (cur_term->Ottybs) 1180 #endif 1181 #endif 1182 1183 #ifndef NOMACROS 1184 #define set_curterm setcurterm 1185 #define del_curterm delterm 1186 #else /* NOMACROS */ 1187 1188 #ifdef __STDC__ 1189 extern TERMINAL *set_curterm(TERMINAL *); 1190 extern int del_curterm(TERMINAL *); 1191 #else /* __STDC__ */ 1192 extern TERMINAL *set_curterm(); 1193 extern int del_curterm(); 1194 #endif /* __STDC__ */ 1195 1196 #endif /* NOMACROS */ 1197 1198 extern short term_errno; 1199 1200 #ifdef SYSV 1201 extern int prog_istermios; 1202 extern int shell_istermios; 1203 #endif 1204 1205 extern char term_parm_err[], *term_err_strings[], *Def_term, 1206 *boolnames[], *boolcodes[], *boolfnames[], 1207 *numnames[], *numcodes[], *numfnames[], 1208 *strnames[], *strcodes[], *strfnames[]; 1209 1210 #ifdef __STDC__ 1211 extern TERMINAL *setcurterm(TERMINAL *); 1212 1213 #if defined(_XPG4_2) || defined(_LP64) || defined(__cplusplus) 1214 extern char 1215 *tparm(char *, long, long, long, long, long, long, long, long, long); 1216 #else 1217 /* this is wrong, but is needed for historical reasons */ 1218 extern char *tparm(); 1219 #endif 1220 1221 extern char *tgoto(char *, int, int), 1222 *tgetstr(char *, char **), 1223 *tigetstr(char *), 1224 *termname(void); 1225 1226 extern int tgetent(char *, char *), tgetflag(char *), tgetnum(char *), 1227 tputs(char *, int, int (*)(char)), putp(char *), 1228 tigetint(char *), tigetflag(char *), tigetnum(char *), 1229 vidputs(chtype, int (*)(char)), vidattr(chtype); 1230 1231 extern int resetterm(void), fixterm(void), saveterm(void), 1232 restartterm(char *, int, int *), delterm(TERMINAL *); 1233 1234 extern void termerr(void), tinputfd(int); 1235 #else /* __STDC__ */ 1236 extern TERMINAL *setcurterm(); 1237 extern char *tparm(), *tgoto(), *tgetstr(), *tigetstr(), 1238 *termname(); 1239 1240 extern int tgetent(), tgetflag(), tgetnum(), 1241 tigetint(), tigetflag(), tigetnum(), 1242 tputs(), putp(), vidputs(), vidattr(); 1243 1244 extern int resetterm(), fixterm(), saveterm(), 1245 restartterm(), delterm(); 1246 1247 extern void termerr(), tinputfd(); 1248 #endif /* __STDC__ */ 1249 1250 #ifdef __cplusplus 1251 } 1252 #endif 1253 1254 #endif /* _TERM_H */ 1255