* Compile errors for zsh 4.0.4 on Aix 4.3.3
@ 2002-05-09 14:08 travis
2002-05-09 15:03 ` Bart Schaefer
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: travis @ 2002-05-09 14:08 UTC (permalink / raw)
To: zsh-workers
[-- Attachment #1: Type: text/plain, Size: 569 bytes --]
The Etc/MACHINES file said you want more info on this error.
Here it is. I have attached two of the relevant files.
Please let me know if you need more.
make[3]: Entering directory `/home/travis/aixbin/zsh-4.0.4/Src/Modules'
cc -qlanglvl=ansi -c -I. -DHAVE_CONFIG_H -O -o parameter.o parameter.c
echo '' parameter.o | sed 's" " Modules/"g' >> ../../Src/stamp-modobjs.tmp
cc -qlanglvl=ansi -c -I. -DHAVE_CONFIG_H -O -o termcap.o termcap.c
"termcap.c", line 71.13: 1506-334 (S) Identifier boolcodes has already been defined on line 1342 of "/usr/include/term.h".
[-- Attachment #2: term.h --]
[-- Type: text/plain, Size: 88884 bytes --]
#ifndef _AIX32_CURSES
/* IBM_PROLOG_BEGIN_TAG */
/* This is an automatically generated prolog. */
/* */
/* bos430 src/bos/usr/ccs/lib/libxcurses/copyright.h 1.2 */
/* */
/* Licensed Materials - Property of IBM */
/* */
/* Restricted Materials of IBM */
/* */
/* (C) COPYRIGHT International Business Machines Corp. 1994,1997 */
/* All Rights Reserved */
/* */
/* US Government Users Restricted Rights - Use, duplication or */
/* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */
/* */
/* IBM_PROLOG_END_TAG */
/* @(#)97 1.2 src/bos/usr/ccs/lib/libxcurses/copyright.h, libcurses, bos430, 9737A_430 2/29/96 10:34:49 */
/*
* COMPONENT_NAME: LIBCURSES
*
* FUNCTIONS: none
*
* ORIGINS: 27, 110
*
*
* (C) COPYRIGHT International Business Machines Corp. 1994,1996
* All Rights Reserved
* Licensed Materials - Property of IBM
* US Government Users Restricted Rights - Use, duplication or
* disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
*/
/*
* Copyright (c) 1984-1994
* Novell, Inc. All Rights Reserved.
* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF Novell Inc.
* The copyright notice above does not evidence any
* actual or intended publication of such source code.
*/
/* Copyright (c) 1984 AT&T
* All Rights Reserved
* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T
* The copyright notice above does not evidence any
* actual or intended publication of such source code.
*/
#ifdef IDENT
#ident "$Header: copyright.h 1.2 91/06/26 $"
#endif /* IDENT */
#ifdef IDENT
#ident "@( #)curses:common/lib/xlibcurses/screen/maketerm.ed 1.43.2.4"
#endif /* IDENT */
/*
* term.h - this file is automatically made from caps and maketerm.ed.
* Don't make changes directly to term.h.
*
* Guard against multiple includes.
*/
#ifndef _TERM_H
#define _TERM_H /* define prevents multiple includes */
#ifndef auto_left_margin
#define auto_left_margin CUR _b1
#define auto_right_margin CUR _b2
#define no_esc_ctlc CUR _b3
#define ceol_standout_glitch CUR _b4
#define eat_newline_glitch CUR _b5
#define erase_overstrike CUR _b6
#define generic_type CUR _b7
#define hard_copy CUR _b8
#define has_meta_key CUR _b9
#define has_status_line CUR _b10
#define insert_null_glitch CUR _b11
#define memory_above CUR _b12
#define memory_below CUR _b13
#define move_insert_mode CUR _b14
#define move_standout_mode CUR _b15
#define over_strike CUR _b16
#define status_line_esc_ok CUR _b17
#define dest_tabs_magic_smso CUR _b18
#define tilde_glitch CUR _b19
#define transparent_underline CUR _b20
#define xon_xoff CUR _b21
#define needs_xon_xoff CURB _needs_xon_xoff
#define prtr_silent CURB _prtr_silent
#define hard_cursor CURB _hard_cursor
#define non_rev_rmcup CURB _non_rev_rmcup
#define no_pad_char CURB _no_pad_char
#define non_dest_scroll_region CURB _non_dest_scroll_region
#define can_change CURB _can_change
#define back_color_erase CURB _back_color_erase
#define hue_lightness_saturation CURB _hue_lightness_saturation
#define col_addr_glitch CURB _col_addr_glitch
#define cr_cancels_micro_mode CURB _cr_cancels_micro_mode
#define has_print_wheel CURB _has_print_wheel
#define row_addr_glitch CURB _row_addr_glitch
#define semi_auto_right_margin CURB _semi_auto_right_margin
#define cpi_changes_res CURB _cpi_changes_res
#define lpi_changes_res CURB _lpi_changes_res
#define columns CUR _c1
#define init_tabs CUR _c2
#define lines CUR _c3
#define lines_of_memory CUR _c4
#define magic_cookie_glitch CUR _c5
#define padding_baud_rate CUR _c6
#define virtual_terminal CUR _c7
#define width_status_line CUR _c8
#define num_labels CURN _num_labels
#define label_height CURN _labl_height
#define label_width CURN _labl_width
#define max_attributes CURN _max_attributes
#define maximum_windows CURN _maximum_windows
#define max_colors CURN _max_colors
#define max_pairs CURN _max_pairs
#define no_color_video CURN _no_color_video
#define buffer_capacity CURN _buffer_capacity
#define dot_vert_spacing CURN _dot_vert_spacing
#define dot_horz_spacing CURN _dot_horz_spacing
#define max_micro_address CURN _max_micro_address
#define max_micro_jump CURN _max_micro_jump
#define micro_col_size CURN _micro_col_size
#define micro_line_size CURN _micro_line_size
#define number_of_pins CURN _number_of_pins
#define output_res_char CURN _output_res_char
#define output_res_line CURN _output_res_line
#define output_res_horz_inch CURN _output_res_horz_inch
#define output_res_vert_inch CURN _output_res_vert_inch
#define print_rate CURN _print_rate
#define wide_char_size CURN _wide_char_size
#define buttons CURN _buttons
#define bit_image_entwining CURN _bit_image_entwining
#define bit_image_type CURN _bit_image_type
#define back_tab CUR _Vr2_Astrs._s1
#define bell CUR _Vr2_Astrs._s2
#define carriage_return CUR _Vr2_Astrs._s3
#define change_scroll_region CUR _Vr2_Astrs._s4
#define clear_all_tabs CUR _Vr2_Astrs._s5
#define clear_screen CUR _Vr2_Astrs._s6
#define clr_eol CUR _Vr2_Astrs._s7
#define clr_eos CUR _Vr2_Astrs._s8
#define column_address CUR _Vr2_Astrs._s9
#define command_character CUR _Vr2_Astrs._s10
#define cursor_address CUR _Vr2_Astrs._s11
#define cursor_down CUR _Vr2_Astrs._s12
#define cursor_home CUR _Vr2_Astrs._s13
#define cursor_invisible CUR _Vr2_Astrs._s14
#define cursor_left CUR _Vr2_Astrs._s15
#define cursor_mem_address CUR _Vr2_Astrs._s16
#define cursor_normal CUR _Vr2_Astrs._s17
#define cursor_right CUR _Vr2_Astrs._s18
#define cursor_to_ll CUR _Vr2_Astrs._s19
#define cursor_up CUR _Vr2_Astrs._s20
#define cursor_visible CUR _Vr2_Astrs._s21
#define delete_character CUR _Vr2_Astrs._s22
#define delete_line CUR _Vr2_Astrs._s23
#define dis_status_line CUR _Vr2_Astrs._s24
#define down_half_line CUR _Vr2_Astrs._s25
#define enter_alt_charset_mode CUR _Vr2_Astrs._s26
#define enter_blink_mode CUR _Vr2_Astrs._s27
#define enter_bold_mode CUR _Vr2_Astrs._s28
#define enter_ca_mode CUR _Vr2_Astrs._s29
#define enter_delete_mode CUR _Vr2_Astrs._s30
#define enter_dim_mode CUR _Vr2_Astrs._s31
#define enter_insert_mode CUR _Vr2_Astrs._s32
#define enter_secure_mode CUR _Vr2_Astrs._s33
#define enter_protected_mode CUR _Vr2_Astrs._s34
#define enter_reverse_mode CUR _Vr2_Astrs._s35
#define enter_standout_mode CUR _Vr2_Astrs._s36
#define enter_underline_mode CUR _Vr2_Astrs._s37
#define erase_chars CUR _Vr2_Astrs._s38
#define exit_alt_charset_mode CUR _Vr2_Astrs._s39
#define exit_attribute_mode CUR _Vr2_Astrs._s40
#define exit_ca_mode CUR _Vr2_Astrs._s41
#define exit_delete_mode CUR _Vr2_Astrs._s42
#define exit_insert_mode CUR _Vr2_Astrs._s43
#define exit_standout_mode CUR _Vr2_Astrs._s44
#define exit_underline_mode CUR _Vr2_Astrs._s45
#define flash_screen CUR _Vr2_Astrs._s46
#define form_feed CUR _Vr2_Astrs._s47
#define from_status_line CUR _Vr2_Astrs._s48
#define init_1string CUR _Vr2_Astrs._s49
#define init_2string CUR _Vr2_Astrs._s50
#define init_3string CUR _Vr2_Astrs._s51
#define init_file CUR _Vr2_Astrs._s52
#define insert_character CUR _Vr2_Astrs._s53
#define insert_line CUR _Vr2_Astrs._s54
#define insert_padding CUR _Vr2_Astrs._s55
#define key_backspace CUR _Vr2_Astrs._s56
#define key_catab CUR _Vr2_Astrs._s57
#define key_clear CUR _Vr2_Astrs._s58
#define key_ctab CUR _Vr2_Astrs._s59
#define key_dc CUR _Vr2_Astrs._s60
#define key_dl CUR _Vr2_Astrs._s61
#define key_down CUR _Vr2_Astrs._s62
#define key_eic CUR _Vr2_Astrs._s63
#define key_eol CUR _Vr2_Astrs._s64
#define key_eos CUR _Vr2_Astrs._s65
#define key_f0 CUR _Vr2_Astrs._s66
#define key_f1 CUR _Vr2_Astrs._s67
#define key_f10 CUR _Vr2_Astrs._s68
#define key_f2 CUR _Vr2_Astrs._s69
#define key_f3 CUR _Vr2_Astrs._s70
#define key_f4 CUR _Vr2_Astrs._s71
#define key_f5 CUR _Vr2_Astrs._s72
#define key_f6 CUR _Vr2_Astrs._s73
#define key_f7 CUR _Vr2_Astrs._s74
#define key_f8 CUR _Vr2_Astrs._s75
#define key_f9 CUR _Vr2_Astrs._s76
#define key_home CUR _Vr2_Astrs._s77
#define key_ic CUR _Vr2_Astrs._s78
#define key_il CUR _Vr2_Astrs._s79
#define key_left CUR _Vr2_Astrs._s80
#define key_ll CUR _Vr2_Astrs._s81
#define key_npage CUR _Vr2_Astrs._s82
#define key_ppage CUR _Vr2_Astrs._s83
#define key_right CUR _Vr2_Astrs._s84
#define key_sf CUR _Vr2_Astrs._s85
#define key_sr CUR _Vr2_Astrs._s86
#define key_stab CUR _Vr2_Astrs._s87
#define key_up CUR _Vr2_Astrs._s88
#define keypad_local CUR _Vr2_Astrs._s89
#define keypad_xmit CUR _Vr2_Astrs._s90
#define lab_f0 CUR _Vr2_Astrs._s91
#define lab_f1 CUR _Vr2_Astrs._s92
#define lab_f10 CUR _Vr2_Astrs._s93
#define lab_f2 CUR _Vr2_Astrs._s94
#define lab_f3 CUR _Vr2_Astrs._s95
#define lab_f4 CUR _Vr2_Astrs._s96
#define lab_f5 CUR _Vr2_Astrs._s97
#define lab_f6 CUR _Vr2_Astrs._s98
#define lab_f7 CUR _Vr2_Astrs._s99
#define lab_f8 CUR _Vr2_Astrs._s100
#define lab_f9 CUR _Vr2_Bstrs._s101
#define meta_off CUR _Vr2_Bstrs._s102
#define meta_on CUR _Vr2_Bstrs._s103
#define newline CUR _Vr2_Bstrs._s104
#define pad_char CUR _Vr2_Bstrs._s105
#define parm_dch CUR _Vr2_Bstrs._s106
#define parm_delete_line CUR _Vr2_Bstrs._s107
#define parm_down_cursor CUR _Vr2_Bstrs._s108
#define parm_ich CUR _Vr2_Bstrs._s109
#define parm_index CUR _Vr2_Bstrs._s110
#define parm_insert_line CUR _Vr2_Bstrs._s111
#define parm_left_cursor CUR _Vr2_Bstrs._s112
#define parm_right_cursor CUR _Vr2_Bstrs._s113
#define parm_rindex CUR _Vr2_Bstrs._s114
#define parm_up_cursor CUR _Vr2_Bstrs._s115
#define pkey_key CUR _Vr2_Bstrs._s116
#define pkey_local CUR _Vr2_Bstrs._s117
#define pkey_xmit CUR _Vr2_Bstrs._s118
#define print_screen CUR _Vr2_Bstrs._s119
#define prtr_off CUR _Vr2_Bstrs._s120
#define prtr_on CUR _Vr2_Bstrs._s121
#define repeat_char CUR _Vr2_Bstrs._s122
#define reset_1string CUR _Vr2_Bstrs._s123
#define reset_2string CUR _Vr2_Bstrs._s124
#define reset_3string CUR _Vr2_Bstrs._s125
#define reset_file CUR _Vr2_Bstrs._s126
#define restore_cursor CUR _Vr2_Bstrs._s127
#define row_address CUR _Vr2_Bstrs._s128
#define save_cursor CUR _Vr2_Bstrs._s129
#define scroll_forward CUR _Vr2_Bstrs._s130
#define scroll_reverse CUR _Vr2_Bstrs._s131
#define set_attributes CUR _Vr2_Bstrs._s132
#define set_tab CUR _Vr2_Bstrs._s133
#define set_window CUR _Vr2_Bstrs._s134
#define tab CUR _Vr2_Bstrs._s135
#define to_status_line CUR _Vr2_Bstrs._s136
#define underline_char CUR _Vr2_Bstrs._s137
#define up_half_line CUR _Vr2_Bstrs._s138
#define init_prog CUR _Vr2_Bstrs._s139
#define key_a1 CUR _Vr2_Bstrs._s140
#define key_a3 CUR _Vr2_Bstrs._s141
#define key_b2 CUR _Vr2_Bstrs._s142
#define key_c1 CUR _Vr2_Bstrs._s143
#define key_c3 CUR _Vr2_Bstrs._s144
#define prtr_non CUR _Vr2_Bstrs._s145
#define box_chars_1 CURS strs2._box_chars_1
#define box_chars_2 CURS strs2._box_chars_2
#define box_attr_1 CURS strs2._box_attr_1
#define box_attr_2 CURS strs2._box_attr_2
#define color_bg_0 CURS strs2._color_bg_0
#define color_bg_1 CURS strs2._color_bg_1
#define color_bg_2 CURS strs2._color_bg_2
#define color_bg_3 CURS strs2._color_bg_3
#define color_bg_4 CURS strs2._color_bg_4
#define color_bg_5 CURS strs2._color_bg_5
#define color_bg_6 CURS strs2._color_bg_6
#define color_bg_7 CURS strs2._color_bg_7
#define color_fg_0 CURS strs2._color_fg_0
#define color_fg_1 CURS strs2._color_fg_1
#define color_fg_2 CURS strs2._color_fg_2
#define color_fg_3 CURS strs2._color_fg_3
#define color_fg_4 CURS strs2._color_fg_4
#define color_fg_5 CURS strs2._color_fg_5
#define color_fg_6 CURS strs2._color_fg_6
#define color_fg_7 CURS strs2._color_fg_7
#define font_0 CURS strs2._font_0
#define font_1 CURS strs2._font_1
#define font_2 CURS strs2._font_2
#define font_3 CURS strs2._font_3
#define font_4 CURS strs2._font_4
#define font_5 CURS strs2._font_5
#define font_6 CURS strs2._font_6
#define font_7 CURS strs2._font_7
#define key_back_tab CURS strs2._ky_back_tab
#define key_do CURS strs2._ky_do
#define key_command CURS strs2._ky_command
#define key_command_pane CURS strs2._ky_command_pane
#define key_end CURS strs2._ky_end
#define key_help CURS strs2._ky_help
#define key_newline CURS strs2._ky_newline
#define key_next_pane CURS strs2._ky_next_pane
#define key_prev_cmd CURS strs2._ky_prev_cmd
#define key_prev_pane CURS strs2._ky_prev_pane
#define key_quit CURS strs2._ky_quit
#define key_select_aix CURS strs2._ky_select_aix
#define key_scroll_left CURS strs2._ky_scroll_left
#define key_scroll_right CURS strs2._ky_scroll_right
#define key_tab CURS strs2._ky_tab
#define key_smap_in1 CURS strs2._ky_smap_in1
#define key_smap_out1 CURS strs2._ky_smap_out1
#define key_smap_in2 CURS strs2._ky_smap_in2
#define key_smap_out2 CURS strs2._ky_smap_out2
#define key_smap_in3 CURS strs2._ky_smap_in3
#define key_smap_out3 CURS strs2._ky_smap_out3
#define key_smap_in4 CURS strs2._ky_smap_in4
#define key_smap_out4 CURS strs2._ky_smap_out4
#define key_smap_in5 CURS strs2._ky_smap_in5
#define key_smap_out5 CURS strs2._ky_smap_out5
#define appl_defined_str CURS strs2._appl_defined_str
#define key_smap_in6 CURS strs2._ky_smap_in6
#define key_smap_out6 CURS strs3._ky_smap_out6
#define key_smap_in7 CURS strs3._ky_smap_in7
#define key_smap_out7 CURS strs3._ky_smap_out7
#define key_smap_in8 CURS strs3._ky_smap_in8
#define key_smap_out8 CURS strs3._ky_smap_out8
#define key_smap_in9 CURS strs3._ky_smap_in9
#define key_smap_out9 CURS strs3._ky_smap_out9
#define key_sf1 CURS strs3._ky_sf1
#define key_sf2 CURS strs3._ky_sf2
#define key_sf3 CURS strs3._ky_sf3
#define key_sf4 CURS strs3._ky_sf4
#define key_sf5 CURS strs3._ky_sf5
#define key_sf6 CURS strs3._ky_sf6
#define key_sf7 CURS strs3._ky_sf7
#define key_sf8 CURS strs3._ky_sf8
#define key_sf9 CURS strs3._ky_sf9
#define key_sf10 CURS strs3._ky_sf10
#define key_f11 CURS strs3._ky_f11
#define key_f12 CURS strs3._ky_f12
#define key_f13 CURS strs3._ky_f13
#define key_f14 CURS strs3._ky_f14
#define key_f15 CURS strs3._ky_f15
#define key_f16 CURS strs3._ky_f16
#define key_f17 CURS strs3._ky_f17
#define key_f18 CURS strs3._ky_f18
#define key_f19 CURS strs3._ky_f19
#define key_f20 CURS strs3._ky_f20
#define key_f21 CURS strs3._ky_f21
#define key_f22 CURS strs3._ky_f22
#define key_f23 CURS strs3._ky_f23
#define key_f24 CURS strs3._ky_f24
#define key_f25 CURS strs3._ky_f25
#define key_f26 CURS strs3._ky_f26
#define key_f27 CURS strs3._ky_f27
#define key_f28 CURS strs3._ky_f28
#define key_f29 CURS strs3._ky_f29
#define key_f30 CURS strs3._ky_f30
#define key_f31 CURS strs3._ky_f31
#define key_f32 CURS strs3._ky_f32
#define key_f33 CURS strs3._ky_f33
#define key_f34 CURS strs3._ky_f34
#define key_f35 CURS strs3._ky_f35
#define key_f36 CURS strs3._ky_f36
#define key_f37 CURS strs3._ky_f37
#define key_f38 CURS strs3._ky_f38
#define key_f39 CURS strs3._ky_f39
#define key_f40 CURS strs3._ky_f40
#define key_f41 CURS strs3._ky_f41
#define key_f42 CURS strs3._ky_f42
#define key_f43 CURS strs3._ky_f43
#define key_f44 CURS strs3._ky_f44
#define key_f45 CURS strs3._ky_f45
#define key_f46 CURS strs3._ky_f46
#define key_f47 CURS strs3._ky_f47
#define key_f48 CURS strs3._ky_f48
#define key_f49 CURS strs3._ky_f49
#define key_f50 CURS strs3._ky_f50
#define key_f51 CURS strs3._ky_f51
#define key_f52 CURS strs3._ky_f52
#define key_f53 CURS strs3._ky_f53
#define key_f54 CURS strs3._ky_f54
#define key_f55 CURS strs3._ky_f55
#define key_f56 CURS strs3._ky_f56
#define key_f57 CURS strs3._ky_f57
#define key_f58 CURS strs3._ky_f58
#define key_f59 CURS strs3._ky_f59
#define key_f60 CURS strs3._ky_f60
#define key_f61 CURS strs3._ky_f61
#define key_f62 CURS strs3._ky_f62
#define key_f63 CURS strs3._ky_f63
#define key_action CURS strs3._ky_action
#define enter_topline_mode CURS strs3._entr_topline_mode
#define enter_bottom_mode CURS strs3._entr_bottom_mode
#define enter_rvert_mode CURS strs3._entr_rvert_mode
#define enter_lvert_mode CURS strs3._entr_lvert_mode
#define char_padding CURS strs3._char_padding
#define acs_chars CURS strs3._acs_chars
#define plab_norm CURS strs3._plab_norm
#define key_btab CURS strs3._ky_btab
#define enter_xon_mode CURS strs3._entr_xon_mode
#define exit_xon_mode CURS strs3._exit_xon_mode
#define enter_am_mode CURS strs3._entr_am_mode
#define exit_am_mode CURS strs3._exit_am_mode
#define xon_character CURS strs3._xon_character
#define xoff_character CURS strs3._xoff_character
#define ena_acs CURS strs3._ena_acs
#define label_on CURS strs3._labl_on
#define label_off CURS strs3._labl_off
#define key_beg CURS strs3._ky_beg
#define key_cancel CURS strs3._ky_cancel
#define key_close CURS strs3._ky_close
#define key_copy CURS strs3._ky_copy
#define key_create CURS strs3._ky_create
#define key_enter CURS strs3._ky_enter
#define key_exit CURS strs3._ky_exit
#define key_find CURS strs3._ky_find
#define key_mark CURS strs3._ky_mark
#define key_message CURS strs3._ky_message
#define key_move CURS strs3._ky_move
#define key_next CURS strs3._ky_next
#define key_open CURS strs4._ky_open
#define key_options CURS strs4._ky_options
#define key_previous CURS strs4._ky_previous
#define key_print CURS strs4._ky_print
#define key_redo CURS strs4._ky_redo
#define key_reference CURS strs4._ky_reference
#define key_refresh CURS strs4._ky_refresh
#define key_replace CURS strs4._ky_replace
#define key_restart CURS strs4._ky_restart
#define key_resume CURS strs4._ky_resume
#define key_save CURS strs4._ky_save
#define key_suspend CURS strs4._ky_suspend
#define key_undo CURS strs4._ky_undo
#define key_sbeg CURS strs4._ky_sbeg
#define key_scancel CURS strs4._ky_scancel
#define key_scommand CURS strs4._ky_scommand
#define key_scopy CURS strs4._ky_scopy
#define key_screate CURS strs4._ky_screate
#define key_sdc CURS strs4._ky_sdc
#define key_sdl CURS strs4._ky_sdl
#define key_select CURS strs4._ky_select
#define key_send CURS strs4._ky_send
#define key_seol CURS strs4._ky_seol
#define key_sexit CURS strs4._ky_sexit
#define key_sfind CURS strs4._ky_sfind
#define key_shelp CURS strs4._ky_shelp
#define key_shome CURS strs4._ky_shome
#define key_sic CURS strs4._ky_sic
#define key_sleft CURS strs4._ky_sleft
#define key_smessage CURS strs4._ky_smessage
#define key_smove CURS strs4._ky_smove
#define key_snext CURS strs4._ky_snext
#define key_soptions CURS strs4._ky_soptions
#define key_sprevious CURS strs4._ky_sprevious
#define key_sprint CURS strs4._ky_sprint
#define key_sredo CURS strs4._ky_sredo
#define key_sreplace CURS strs4._ky_sreplace
#define key_sright CURS strs4._ky_sright
#define key_srsume CURS strs4._ky_srsume
#define key_ssave CURS strs4._ky_ssave
#define key_ssuspend CURS strs4._ky_ssuspend
#define key_sundo CURS strs4._ky_sundo
#define req_for_input CURS strs4._req_for_input
#define clr_bol CURS strs4._clr_bol
#define clear_margins CURS strs4._clear_margins
#define set_left_margin CURS strs4._set_left_margin
#define set_right_margin CURS strs4._set_right_margin
#define label_format CURS strs4._labl_format
#define set_clock CURS strs4._set_clock
#define display_clock CURS strs4._display_clock
#define remove_clock CURS strs4._remove_clock
#define create_window CURS strs4._create_window
#define goto_window CURS strs4._goto_window
#define hangup CURS strs4._hangup
#define dial_phone CURS strs4._dial_phone
#define quick_dial CURS strs4._quick_dial
#define tone CURS strs4._tone
#define pulse CURS strs4._pulse
#define flash_hook CURS strs4._flash_hook
#define fixed_pause CURS strs4._fixed_pause
#define wait_tone CURS strs4._wait_tone
#define user0 CURS strs4._user0
#define user1 CURS strs4._user1
#define user2 CURS strs4._user2
#define user3 CURS strs4._user3
#define user4 CURS strs4._user4
#define user5 CURS strs4._user5
#define user6 CURS strs4._user6
#define user7 CURS strs4._user7
#define user8 CURS strs4._user8
#define user9 CURS strs4._user9
#define orig_pair CURS strs4._orig_pair
#define orig_colors CURS strs4._orig_colors
#define initialize_color CURS strs4._initialize_color
#define initialize_pair CURS strs4._initialize_pair
#define set_color_pair CURS strs4._set_color_pair
#define set_foreground CURS strs4._set_foreground
#define set_background CURS strs4._set_background
#define change_char_pitch CURS strs4._change_char_pitch
#define change_line_pitch CURS strs4._change_line_pitch
#define change_res_horz CURS strs4._change_res_horz
#define change_res_vert CURS strs4._change_res_vert
#define define_char CURS strs4._define_char
#define enter_doublewide_mode CURS strs4._entr_doublewide_mode
#define enter_draft_quality CURS strs4._entr_draft_quality
#define enter_italics_mode CURS strs4._entr_italics_mode
#define enter_leftward_mode CURS strs4._entr_leftward_mode
#define enter_micro_mode CURS strs4._entr_micro_mode
#define enter_near_letter_quality CURS strs4._entr_near_letter_quality
#define enter_normal_quality CURS strs4._entr_normal_quality
#define enter_shadow_mode CURS strs4._entr_shadow_mode
#define enter_subscript_mode CURS strs4._entr_subscript_mode
#define enter_superscript_mode CURS strs4._entr_superscript_mode
#define enter_upward_mode CURS strs4._entr_upward_mode
#define exit_doublewide_mode CURS strs4._exit_doublewide_mode
#define exit_italics_mode CURS strs4._exit_italics_mode
#define exit_leftward_mode CURS strs4._exit_leftward_mode
#define exit_micro_mode CURS strs4._exit_micro_mode
#define exit_shadow_mode CURS strs4._exit_shadow_mode
#define exit_subscript_mode CURS strs4._exit_subscript_mode
#define exit_superscript_mode CURS strs4._exit_superscript_mode
#define exit_upward_mode CURS strs4._exit_upward_mode
#define micro_column_address CURS strs4._micro_column_address
#define micro_down CURS strs4._micro_down
#define micro_left CURS strs4._micro_left
#define micro_right CURS strs4._micro_right
#define micro_row_address CURS strs4._micro_row_address
#define micro_up CURS strs4._micro_up
#define order_of_pins CURS strs4._order_of_pins
#define parm_down_micro CURS strs4._prm_down_micro
#define parm_left_micro CURS strs4._prm_left_micro
#define parm_right_micro CURS strs4._prm_right_micro
#define parm_up_micro CURS strs4._prm_up_micro
#define select_char_set CURS strs4._select_char_set
#define set_bottom_margin CURS strs4._set_bottom_margin
#define set_bottom_margin_parm CURS strs4._set_bottom_margin_parm
#define set_left_margin_parm CURS strs4._set_left_margin_parm
#define set_right_margin_parm CURS strs4._set_right_margin_parm
#define set_top_margin CURS strs4._set_top_margin
#define set_top_margin_parm CURS strs4._set_top_margin_parm
#define start_bit_image CURS strs4._start_bit_image
#define start_char_set_def CURS strs4._start_char_set_def
#define stop_bit_image CURS strs4._stop_bit_image
#define stop_char_set_def CURS strs4._stop_char_set_def
#define subscript_characters CURS strs4._subscript_characters
#define superscript_characters CURS strs4._superscript_characters
#define these_cause_cr CURS strs4._these_cause_cr
#define zero_motion CURS strs4._zero_motion
#define char_set_names CURS strs4._char_set_names
#define key_mouse CURS strs4._ky_mouse
#define mouse_info CURS strs4._mouse_info
#define req_mouse_pos CURS strs4._req_mouse_pos
#define get_mouse CURS strs4._get_mouse
#define set_a_foreground CURS strs4._set_a_foreground
#define set_a_background CURS strs4._set_a_background
#define pkey_plab CURS strs4._pkey_plab
#define device_type CURS strs4._device_type
#define code_set_init CURS strs4._code_set_init
#define set0_des_seq CURS strs4._set0_des_seq
#define set1_des_seq CURS strs4._set1_des_seq
#define set2_des_seq CURS strs4._set2_des_seq
#define set3_des_seq CURS strs4._set3_des_seq
#define set_lr_margin CURS strs4._set_lr_margin
#define set_tb_margin CURS strs4._set_tb_margin
#define bit_image_repeat CURS strs4._bit_image_repeat
#define bit_image_newline CURS strs4._bit_image_newline
#define bit_image_carriage_return CURS strs4._bit_image_carriage_return
#define color_names CURS strs4._color_names
#define define_bit_image_region CURS strs4._define_bit_image_region
#define end_bit_image_region CURS strs4._end_bit_image_region
#define set_color_band CURS strs4._set_color_band
#define set_page_length CURS strs4._set_page_length
#define display_pc_char CURS strs4._display_pc_char
#define enter_pc_charset_mode CURS strs4._entr_pc_charset_mode
#define exit_pc_charset_mode CURS strs4._exit_pc_charset_mode
#define enter_scancode_mode CURS strs4._entr_scancode_mode
#define exit_scancode_mode CURS strs4._exit_scancode_mode
#define pc_term_options CURS strs4._pc_term_options
#define scancode_escape CURS strs4._scancode_escape
#define alt_scancode_esc CURS strs4._alt_scancode_esc
#define set_pglen_inch CURS strs4._set_pglen_inch
typedef char *charptr;
struct strs {
charptr
_back_tab, /* Back tab */
_bell, /* Audible signal (bell) */
_carriage_return, /* Carriage return (*) */
_change_scroll_region, /* change to lines #1 thru #2 (vt100) (G) */
_clear_all_tabs, /* Clear all tab stops. */
_clear_screen, /* Clear screen (*) */
_clr_eol, /* Clear to end of line */
_clr_eos, /* Clear to end of display (*) */
_column_address, /* Set cursor column (G) */
_command_character, /* Term. settable cmd char in prototype */
_crsr_address, /* Cursor motion to row #1 col #2 (G) */
_crsr_down, /* Down one line */
_crsr_home, /* Home cursor (if no cup) */
_crsr_invisible, /* Make cursor invisible */
_crsr_left, /* Move cursor left one space. */
_crsr_mem_address, /* Memory relative cursor addressing. */
_crsr_normal, /* Make cursor appear normal (undo vs/vi) */
_crsr_right, /* Non-destructive space (cursor right) */
_crsr_to_ll, /* Last line, first column (if no cup) */
_crsr_up, /* Upline (cursor up) */
_crsr_visible, /* Make cursor very visible */
_dlt_character, /* Delete character (*) */
_dlt_line, /* Delete line (*) */
_dis_status_line, /* Disable status line */
_down_half_line, /* Half-line down (forward 1/2 linefeed) */
_entr_alt_charset_mode, /* Start alternate character set */
_entr_blink_mode, /* Turn on blinking */
_entr_bold_mode, /* Turn on bold (extra bright) mode */
_entr_ca_mode, /* String to begin programs that use cup */
_entr_delete_mode, /* Delete mode (enter) */
_entr_dim_mode, /* Turn on half-bright mode */
_entr_insert_mode, /* Insert mode (enter); */
_entr_secure_mode, /* Turn on blank mode (chars invisible) */
_entr_protected_mode, /* Turn on protected mode */
_entr_reverse_mode, /* Turn on reverse video mode */
_entr_standout_mode, /* Begin stand out mode */
_entr_underline_mode, /* Start underscore mode */
_erase_chars, /* Erase #1 characters (G) */
_exit_alt_charset_mode, /* End alternate character set */
_exit_attribute_mode, /* Turn off all attributes */
_exit_ca_mode, /* String to end programs that use cup */
_exit_delete_mode, /* End delete mode */
_exit_insert_mode, /* End insert mode; */
_exit_standout_mode, /* End stand out mode */
_exit_underline_mode, /* End underscore mode */
_flash_screen, /* Visible bell (may not move cursor) */
_form_feed, /* Hardcopy terminal page eject (*) */
_from_status_line, /* Return from status line */
_init_1string, /* Terminal initialization string */
_init_2string, /* Terminal initialization string */
_init_3string, /* Terminal initialization string */
_init_file, /* Name of file containing is */
_ins_character, /* Insert character */
_ins_line, /* Add new blank line (*) */
_ins_padding, /* Insert pad after character inserted (*) */
_ky_backspace, /* KEY_BACKSPACE, 03507, Sent by backspace key */
_ky_catab, /* KEY_CATAB, 03626, Sent by clear-all-tabs key. */
_ky_clear, /* KEY_CLEAR, 03615, Sent by clear screen or erase key. */
_ky_ctab, /* KEY_CTAB, 03625, Sent by clear-tab key */
_ky_dc, /* KEY_DC, 03612, Sent by delete character key. */
_ky_dl, /* KEY_DL, 03610, Sent by delete line key. */
_ky_down, /* KEY_DOWN, 03502, Sent by terminal down arrow key */
_ky_eic, /* KEY_EIC, 03614, Sent by rmir or smir in insert mode. */
_ky_eol, /* KEY_EOL, 03617, Sent by clear-to-end-of-line key. */
_ky_eos, /* KEY_EOS, 03616, Sent by clear-to-end-of-screen key. */
_ky_f0, /* KEY_F(0), 03510, function key f0. */
_ky_f1, /* KEY_F(1), 03511, function key f1. */
_ky_f10, /* KEY_F(10), 03522, function key f10. */
_ky_f2, /* KEY_F(2), 03512, function key f2. */
_ky_f3, /* KEY_F(3), 03513, function key f3. */
_ky_f4, /* KEY_F(4), 03514, function key f4. */
_ky_f5, /* KEY_F(5), 03515, function key f5. */
_ky_f6, /* KEY_F(6), 03516, function key f6. */
_ky_f7, /* KEY_F(7), 03517, function key f7. */
_ky_f8, /* KEY_F(8), 03520, function key f8. */
_ky_f9, /* KEY_F(9), 03521, function key f9. */
_ky_home, /* KEY_HOME, 03506, Sent by home key. */
_ky_ic, /* KEY_IC, 03613, Sent by ins char/enter ins mode key. */
_ky_il, /* KEY_IL, 03611, Sent by insert line. */
_ky_left, /* KEY_LEFT, 03504, Sent by terminal left arrow key */
_ky_ll, /* KEY_LL, 03633, Sent by home-down key */
_ky_npage, /* KEY_NPAGE, 03622, Sent by next-page key */
_ky_ppage, /* KEY_PPAGE, 03623, Sent by previous-page key */
_ky_right, /* KEY_RIGHT, 03505, Sent by terminal right arrow key */
_ky_sf, /* KEY_SF, 03620, Sent by scroll-forward/down key */
_ky_sr, /* KEY_SR, 03621, Sent by scroll-backward/up key */
_ky_stab, /* KEY_STAB, 03624, Sent by set-tab key */
_ky_up, /* KEY_UP, 03503, Sent by terminal up arrow key */
_kpad_local, /* Out of "keypad transmit" mode */
_kpad_xmit, /* Put terminal in "keypad transmit" mode */
_lab_f0, /* Labels on function key f0 if not f0 */
_lab_f1, /* Labels on function key f1 if not f1 */
_lab_f10, /* Labels on function key f10 if not f10 */
_lab_f2, /* Labels on function key f2 if not f2 */
_lab_f3, /* Labels on function key f3 if not f3 */
_lab_f4, /* Labels on function key f4 if not f4 */
_lab_f5, /* Labels on function key f5 if not f5 */
_lab_f6, /* Labels on function key f6 if not f6 */
_lab_f7, /* Labels on function key f7 if not f7 */
_lab_f8; /* Labels on function key f8 if not f8 */
};
struct strs2 {
charptr
_lab_f9, /* Labels on function key f9 if not f9 */
_meta_off, /* Turn off "meta mode" */
_meta_on, /* Turn on "meta mode" (8th bit) */
_newline, /* Newline (behaves like cr followed by lf) */
_pad_char, /* Pad character (rather than null) */
_prm_dch, /* Delete #1 chars (G*) */
_prm_delete_line, /* Delete #1 lines (G*) */
_prm_down_cursor, /* Move cursor down #1 lines. (G*) */
_prm_ich, /* Insert #1 blank chars (G*) */
_prm_index, /* Scroll forward #1 lines. (G) */
_prm_insert_line, /* Add #1 new blank lines (G*) */
_prm_left_cursor, /* Move cursor left #1 spaces (G) */
_prm_right_cursor, /* Move cursor right #1 spaces. (G*) */
_prm_rindex, /* Scroll backward #1 lines. (G) */
_prm_up_cursor, /* Move cursor up #1 lines. (G*) */
_pkey_key, /* Prog funct key #1 to type string #2 */
_pkey_local, /* Prog funct key #1 to execute string #2 */
_pkey_xmit, /* Prog funct key #1 to xmit string #2 */
_print_screen, /* Print contents of the screen */
_prtr_off, /* Turn off the printer */
_prtr_on, /* Turn on the printer */
_repeat_char, /* Repeat char #1 #2 times. (G*) */
_reset_1string, /* Reset terminal completely to sane modes. */
_reset_2string, /* Reset terminal completely to sane modes. */
_reset_3string, /* Reset terminal completely to sane modes. */
_reset_file, /* Name of file containing reset string. */
_restore_cursor, /* Restore cursor to position of last sc. */
_row_address, /* Like hpa but sets row. (G) */
_save_cursor, /* Save cursor position. */
_scrll_forward, /* Scroll text up */
_scrll_reverse, /* Scroll text down */
_set_attributes, /* Define the video attributes (G9) */
_set_tab, /* Set a tab in all rows, current column. */
_set_window, /* Current window is lines #1-#2 cols #3-#4 */
_tab, /* Tab to next 8 space hardware tab stop. */
_to_status_line, /* Go to status line, col #1 */
_underline_char, /* Underscore one char and move past it */
_up_half_line, /* Half-line up (reverse 1/2 linefeed) */
_init_prog, /* Path name of program for init. */
_ky_a1, /* KEY_A1, 03634, Upper left of keypad */
_ky_a3, /* KEY_A3, 03635, Upper right of keypad */
_ky_b2, /* KEY_B2, 03636, Center of keypad */
_ky_c1, /* KEY_C1, 03637, Lower left of keypad */
_ky_c3, /* KEY_C3, 03640, Lower right of keypad */
_prtr_non, /* Turn on the printer for #1 bytes. */
_box_chars_1, /* Box characters primary set */
_box_chars_2, /* Box characters alternate set */
_box_attr_1, /* Attributes for box_chars_1 */
_box_attr_2, /* Attributes for box_chars_2 */
_color_bg_0, /* Background color 0 black */
_color_bg_1, /* Background color 1 red */
_color_bg_2, /* Background color 2 green */
_color_bg_3, /* Background color 3 brown */
_color_bg_4, /* Background color 4 blue */
_color_bg_5, /* Background color 5 magenta */
_color_bg_6, /* Background color 6 cyan */
_color_bg_7, /* Background color 7 white */
_color_fg_0, /* Foreground color 0 white */
_color_fg_1, /* Foreground color 1 red */
_color_fg_2, /* Foreground color 2 green */
_color_fg_3, /* Foreground color 3 brown */
_color_fg_4, /* Foreground color 4 blue */
_color_fg_5, /* Foreground color 5 magenta */
_color_fg_6, /* Foreground color 6 cyan */
_color_fg_7, /* Foreground color 7 black */
_font_0, /* Select font 0 */
_font_1, /* Select font 1 */
_font_2, /* Select font 2 */
_font_3, /* Select font 3 */
_font_4, /* Select font 4 */
_font_5, /* Select font 5 */
_font_6, /* Select font 6 */
_font_7, /* Select font 7 */
_ky_back_tab, /* AIX back tab key */
_ky_do, /* Do request key */
_ky_command, /* KEY_COMMAND, 03645, cmd (command) key */
_ky_command_pane, /* Command pane key */
_ky_end, /* KEY_END, 03650, end key */
_ky_help, /* KEY_HELP, 03653, help key */
_ky_newline, /* Newline key */
_ky_next_pane, /* Next pane key */
_ky_prev_cmd, /* Previous command key */
_ky_prev_pane, /* Previous pane key */
_ky_quit, /* Quit key */
_ky_select_aix, /* AIX select key */
_ky_scroll_left, /* Scroll left */
_ky_scroll_right, /* Scroll right */
_ky_tab, /* Tab key */
_ky_smap_in1, /* input for special mapped key 1 */
_ky_smap_out1, /* output for mapped key 1 */
_ky_smap_in2, /* input for special mapped key 2 */
_ky_smap_out2, /* output for mapped key 2 */
_ky_smap_in3, /* input for special mapped key 3 */
_ky_smap_out3, /* output for mapped key 3 */
_ky_smap_in4, /* input for special mapped key 4 */
_ky_smap_out4, /* output for mapped key 4 */
_ky_smap_in5, /* input for special mapped key 5 */
_ky_smap_out5, /* output for mapped key 5 */
_appl_defined_str, /* Application defined terminal string */
_ky_smap_in6; /* input for special mapped key 6 */
};
struct strs3 {
charptr
_ky_smap_out6, /* output for mapped key 6 */
_ky_smap_in7, /* input for special mapped key 7 */
_ky_smap_out7, /* output for mapped key 7 */
_ky_smap_in8, /* input for special mapped key 8 */
_ky_smap_out8, /* output for mapped key 8 */
_ky_smap_in9, /* input for special mapped key 9 */
_ky_smap_out9, /* output for mapped key 9 */
_ky_sf1, /* Special function key 1 */
_ky_sf2, /* Special function key 2 */
_ky_sf3, /* Special function key 3 */
_ky_sf4, /* Special function key 4 */
_ky_sf5, /* Special function key 5 */
_ky_sf6, /* Special function key 6 */
_ky_sf7, /* Special function key 7 */
_ky_sf8, /* Special function key 8 */
_ky_sf9, /* Special function key 9 */
_ky_sf10, /* Special function key 10 */
_ky_f11, /* KEY_F(11), 03523, Sent by function key f11. */
_ky_f12, /* KEY_F(12), 03524, Sent by function key f12. */
_ky_f13, /* KEY_F(13), 03525, Sent by function key f13. */
_ky_f14, /* KEY_F(14), 03526, Sent by function key f14. */
_ky_f15, /* KEY_F(15), 03527, Sent by function key f15. */
_ky_f16, /* KEY_F(16), 03530, Sent by function key f16. */
_ky_f17, /* KEY_F(17), 03531, Sent by function key f17. */
_ky_f18, /* KEY_F(18), 03532, Sent by function key f18. */
_ky_f19, /* KEY_F(19), 03533, Sent by function key f19. */
_ky_f20, /* KEY_F(20), 03534, Sent by function key f20. */
_ky_f21, /* KEY_F(21), 03535, Sent by function key f21. */
_ky_f22, /* KEY_F(22), 03536, Sent by function key f22. */
_ky_f23, /* KEY_F(23), 03537, Sent by function key f23. */
_ky_f24, /* KEY_F(24), 03540, Sent by function key f24. */
_ky_f25, /* KEY_F(25), 03541, Sent by function key f25. */
_ky_f26, /* KEY_F(26), 03542, Sent by function key f26. */
_ky_f27, /* KEY_F(27), 03543, Sent by function key f27. */
_ky_f28, /* KEY_F(28), 03544, Sent by function key f28. */
_ky_f29, /* KEY_F(29), 03545, Sent by function key f29. */
_ky_f30, /* KEY_F(30), 03546, Sent by function key f30. */
_ky_f31, /* KEY_F(31), 03547, Sent by function key f31. */
_ky_f32, /* KEY_F(32), 03550, Sent by function key f32. */
_ky_f33, /* KEY_F(33), 03551, Sent by function key f33. */
_ky_f34, /* KEY_F(34), 03552, Sent by function key f34. */
_ky_f35, /* KEY_F(35), 03553, Sent by function key f35. */
_ky_f36, /* KEY_F(36), 03554, Sent by function key f36. */
_ky_f37, /* KEY_F(37), 03555, Sent by function key f37. */
_ky_f38, /* KEY_F(38), 03556, Sent by function key f38. */
_ky_f39, /* KEY_F(39), 03557, Sent by function key f39. */
_ky_f40, /* KEY_F(40), 03560, Sent by function key f40. */
_ky_f41, /* KEY_F(41), 03561, Sent by function key f41. */
_ky_f42, /* KEY_F(42), 03562, Sent by function key f42. */
_ky_f43, /* KEY_F(43), 03563, Sent by function key f43. */
_ky_f44, /* KEY_F(44), 03564, Sent by function key f44. */
_ky_f45, /* KEY_F(45), 03565, Sent by function key f45. */
_ky_f46, /* KEY_F(46), 03566, Sent by function key f46. */
_ky_f47, /* KEY_F(47), 03567, Sent by function key f47. */
_ky_f48, /* KEY_F(48), 03570, Sent by function key f48. */
_ky_f49, /* KEY_F(49), 03571, Sent by function key f49. */
_ky_f50, /* KEY_F(50), 03572, Sent by function key f50. */
_ky_f51, /* KEY_F(51), 03573, Sent by function key f51. */
_ky_f52, /* KEY_F(52), 03574, Sent by function key f52. */
_ky_f53, /* KEY_F(53), 03575, Sent by function key f53. */
_ky_f54, /* KEY_F(54), 03576, Sent by function key f54. */
_ky_f55, /* KEY_F(55), 03577, Sent by function key f55. */
_ky_f56, /* KEY_F(56), 03600, Sent by function key f56. */
_ky_f57, /* KEY_F(57), 03601, Sent by function key f57. */
_ky_f58, /* KEY_F(58), 03602, Sent by function key f58. */
_ky_f59, /* KEY_F(59), 03603, Sent by function key f59. */
_ky_f60, /* KEY_F(60), 03604, Sent by function key f60. */
_ky_f61, /* KEY_F(61), 03605, Sent by function key f61. */
_ky_f62, /* KEY_F(62), 03606, Sent by function key f62. */
_ky_f63, /* KEY_F(63), 03607, Sent by function key f63. */
_ky_action, /* KEY_ACTION, 03731, Sent by the action key. */
_entr_topline_mode, /* Start topline mode. */
_entr_bottom_mode, /* Start bottom mode. */
_entr_rvert_mode, /* Start right vertical line mode. */
_entr_lvert_mode, /* Start left vertical line mode. */
_char_padding, /* Like ip but when in replace mode */
_acs_chars, /* Graphic charset pairs aAbBcC - def=vt100 */
_plab_norm, /* Prog label #1 to show string #2 */
_ky_btab, /* KEY_BTAB, 03641, Back tab key */
_entr_xon_mode, /* Turn on xon/xoff handshaking */
_exit_xon_mode, /* Turn off xon/xoff handshaking */
_entr_am_mode, /* Turn on automatic margins */
_exit_am_mode, /* Turn off automatic margins */
_xon_character, /* X-on character */
_xoff_character, /* X-off character */
_ena_acs, /* Enable alternate char set */
_labl_on, /* Turn on soft labels */
_labl_off, /* Turn off soft labels */
_ky_beg, /* KEY_BEG, 03642, beg(inning) key */
_ky_cancel, /* KEY_CANCEL, 03643, cancel key */
_ky_close, /* KEY_CLOSE, 03644, close key */
_ky_copy, /* KEY_COPY, 03646, copy key */
_ky_create, /* KEY_CREATE, 03647, create key */
_ky_enter, /* KEY_ENTER, 03627, Enter/send (unreliable) */
_ky_exit, /* KEY_EXIT, 03651, exit key */
_ky_find, /* KEY_FIND, 03652, find key */
_ky_mark, /* KEY_MARK, 03654, mark key */
_ky_message, /* KEY_MESSAGE, 03655, message key */
_ky_move, /* KEY_MOVE, 03656, move key */
_ky_next; /* KEY_NEXT, 03657, next object key */
};
struct strs4 {
charptr
_ky_open, /* KEY_OPEN, 03660, open key */
_ky_options, /* KEY_OPTIONS, 03661, options key */
_ky_previous, /* KEY_PREVIOUS, 03662, previous object key */
_ky_print, /* KEY_PRINT, 03632, print or copy */
_ky_redo, /* KEY_REDO, 03663, redo key */
_ky_reference, /* KEY_REFERENCE, 03664, ref(erence) key */
_ky_refresh, /* KEY_REFRESH, 03665, refresh key */
_ky_replace, /* KEY_REPLACE, 03666, replace key */
_ky_restart, /* KEY_RESTART, 03667, restart key */
_ky_resume, /* KEY_RESUME, 03670, resume key */
_ky_save, /* KEY_SAVE, 03671, save key */
_ky_suspend, /* KEY_SUSPEND, 03727, suspend key */
_ky_undo, /* KEY_UNDO, 03730, undo key */
_ky_sbeg, /* KEY_SBEG, 03672, shifted beginning key */
_ky_scancel, /* KEY_SCANCEL, 03673, shifted cancel key */
_ky_scommand, /* KEY_SCOMMAND, 03674, shifted command key */
_ky_scopy, /* KEY_SCOPY, 03675, shifted copy key */
_ky_screate, /* KEY_SCREATE, 03676, shifted create key */
_ky_sdc, /* KEY_SDC, 03677, shifted delete char key */
_ky_sdl, /* KEY_SDL, 03700, shifted delete line key */
_ky_select, /* KEY_SELECT, 03701, select key */
_ky_send, /* KEY_SEND, 03702, shifted end key */
_ky_seol, /* KEY_SEOL, 03703, shifted clear line key */
_ky_sexit, /* KEY_SEXIT, 03704, shifted exit key */
_ky_sfind, /* KEY_SFIND, 03705, shifted find key */
_ky_shelp, /* KEY_SHELP, 03706, shifted help key */
_ky_shome, /* KEY_SHOME, 03707, shifted home key */
_ky_sic, /* KEY_SIC, 03710, shifted input key */
_ky_sleft, /* KEY_SLEFT, 03711, shifted left arrow key */
_ky_smessage, /* KEY_SMESSAGE, 03712, shifted message key */
_ky_smove, /* KEY_SMOVE, 03713, shifted move key */
_ky_snext, /* KEY_SNEXT, 03714, shifted next key */
_ky_soptions, /* KEY_SOPTIONS, 03715, shifted options key */
_ky_sprevious, /* KEY_SPREVIOUS, 03716, shifted prev key */
_ky_sprint, /* KEY_SPRINT, 03717, shifted print key */
_ky_sredo, /* KEY_SREDO, 03720, shifted redo key */
_ky_sreplace, /* KEY_SREPLACE, 03721, shifted replace key */
_ky_sright, /* KEY_SRIGHT, 03722, shifted right arrow */
_ky_srsume, /* KEY_SRSUME, 03723, shifted resume key */
_ky_ssave, /* KEY_SSAVE, 03724, shifted save key */
_ky_ssuspend, /* KEY_SSUSPEND, 03725, shifted suspend key */
_ky_sundo, /* KEY_SUNDO, 03726, shifted undo key */
_req_for_input, /* send next input char (for ptys) */
_clr_bol, /* Clear to beginning of line, inclusive */
_clear_margins, /* Clear left and right soft margins */
_set_left_margin, /* Set soft left margin */
_set_right_margin, /* Set soft right margin */
_labl_format, /* Label format */
_set_clock, /* Set time-of-day clock */
_display_clock, /* Display time-of-day clock */
_remove_clock, /* Remove time-of-day clock */
_create_window, /* Define win #1 to go from #2,#3 to #4,#5 */
_goto_window, /* Got to window #1 */
_hangup, /* Hang-up phone */
_dial_phone, /* Dial phone number #1 */
_quick_dial, /* Dial phone number #1, without progress detection */
_tone, /* Select touch tone dialing */
_pulse, /* Select pulse dialing */
_flash_hook, /* Flash the switch hook */
_fixed_pause, /* Pause for 2-3 seconds */
_wait_tone, /* Wait for dial tone */
_user0, /* User string 0 */
_user1, /* User string 1 */
_user2, /* User string 2 */
_user3, /* User string 3 */
_user4, /* User string 4 */
_user5, /* User string 5 */
_user6, /* User string 6 */
_user7, /* User string 7 */
_user8, /* User string 8 */
_user9, /* User string 9 */
_orig_pair, /* Original color-pair */
_orig_colors, /* Original colors */
_initialize_color, /* Initialize the definition of color */
_initialize_pair, /* Initialize color pair */
_set_color_pair, /* Set color pair */
_set_foreground, /* Set foreground color using RGB escape */
_set_background, /* Set background color using RGB escape */
_change_char_pitch, /* Change no. characters per inch */
_change_line_pitch, /* Change no. lines per inch */
_change_res_horz, /* Change horizontal resolution */
_change_res_vert, /* Change vertical resolution */
_define_char, /* Define a character in a character set */
_entr_doublewide_mode, /* Enable double wide printing */
_entr_draft_quality, /* Set draft quality print */
_entr_italics_mode, /* Enable italics */
_entr_leftward_mode, /* Enable leftward carriage motion */
_entr_micro_mode, /* Enable micro motion capabilities */
_entr_near_letter_quality, /* Set near-letter quality print */
_entr_normal_quality, /* Set normal quality print */
_entr_shadow_mode, /* Enable shadow printing */
_entr_subscript_mode, /* Enable subscript printing */
_entr_superscript_mode, /* Enable superscript printing */
_entr_upward_mode, /* Enable upward carriage motion */
_exit_doublewide_mode, /* Disable double wide printing */
_exit_italics_mode, /* Disable italics */
_exit_leftward_mode, /* Enable rightward (normal) carriage motion */
_exit_micro_mode, /* Disable micro motion capabilities */
_exit_shadow_mode, /* Disable shadow printing */
_exit_subscript_mode, /* Disable subscript printing */
_exit_superscript_mode, /* Disable superscript printing */
_exit_upward_mode, /* Enable downward (normal) carriage motion */
_micro_column_address, /* Like column_address for micro adjustment */
_micro_down, /* Like cursor_down for micro adjustment */
_micro_left, /* Like cursor_left for micro adjustment */
_micro_right, /* Like cursor_right for micro adjustment */
_micro_row_address, /* Like row_address for micro adjustment */
_micro_up, /* Like cursor_up for micro adjustment */
_order_of_pins, /* Matches software bits to print-head pins */
_prm_down_micro, /* Like parm_down_cursor for micro adjust. */
_prm_left_micro, /* Like parm_left_cursor for micro adjust. */
_prm_right_micro, /* Like parm_right_cursor for micro adjust. */
_prm_up_micro, /* Like parm_up_cursor for micro adjust. */
_select_char_set, /* Select character set */
_set_bottom_margin, /* Set soft bottom margin at current line */
_set_bottom_margin_parm,/* Set soft bottom margin */
_set_left_margin_parm, /* Set soft left margin */
_set_right_margin_parm, /* Set soft right margin */
_set_top_margin, /* Set soft top margin at current line */
_set_top_margin_parm, /* Set soft top margin */
_start_bit_image, /* Start printing bit image graphics */
_start_char_set_def, /* Start definition of a character set */
_stop_bit_image, /* End printing bit image graphics */
_stop_char_set_def, /* End definition of a character set */
_subscript_characters, /* List of ``subscript-able'' characters */
_superscript_characters,/* List of ``superscript-able'' characters */
_these_cause_cr, /* Printing any of these chars causes cr */
_zero_motion, /* No motion for the subsequent character */
_char_set_names, /* List of character set names */
_ky_mouse, /* KEY_MOUSE, 03732, Mouse event has occured */
_mouse_info, /* Mouse status information */
_req_mouse_pos, /* Request mouse position report */
_get_mouse, /* Curses should get button events */
_set_a_foreground, /* Set foreground color using ANSI escape */
_set_a_background, /* Set background color using ANSI escape */
_pkey_plab, /* Prog key #1 to xmit string #2 and show string #3 */
_device_type, /* Indicate language/codeset support */
_code_set_init, /* Init sequence for multiple codesets */
_set0_des_seq, /* Shift into codeset 0 (EUC set 0, ASCII) */
_set1_des_seq, /* Shift into codeset 1 */
_set2_des_seq, /* Shift into codeset 2 */
_set3_des_seq, /* Shift into codeset 3 */
_set_lr_margin, /* Sets both left and right margins */
_set_tb_margin, /* Sets both top and bottom margins */
_bit_image_repeat, /* Repeat bit-image cell #1 #2 times (use tparm) */
_bit_image_newline, /* Move to next row of the bit image (use tparm) */
_bit_image_carriage_return, /* Move to beginning of same row (use tparm) */
_color_names, /* Give name for color #1 */
_define_bit_image_region, /* Define rectangular bit-image region (use tparm) */
_end_bit_image_region, /* End a bit-image region (use tparm) */
_set_color_band, /* Change to ribbon color #1 */
_set_page_length, /* Set page length to #1 lines (use tparm) */
_display_pc_char, /* Display PC character */
_entr_pc_charset_mode, /* Enter PC character display mode */
_exit_pc_charset_mode, /* Disable PC character display mode */
_entr_scancode_mode, /* Enter PC scancode mode */
_exit_scancode_mode, /* Disable PC scancode mode */
_pc_term_options, /* PC terminal options */
_scancode_escape, /* Escape for scancode emulation */
_alt_scancode_esc, /* Alternate escape for scancode emulation */
_set_pglen_inch, /* Set page length to #1 hundredths of an inch (use tparm) */
Sentinel; /* End of strings. DO NOT MOVE! */
};
struct _bool_struct {
char
_auto_left_margin, /* cub1 wraps from column 0 to last column */
_auto_right_margin, /* Terminal has automatic margins */
_no_esc_ctlc, /* Beehive (f1=escape, f2=ctrl C) */
_ceol_standout_glitch, /* Standout not erased by overwriting (hp) */
_eat_newline_glitch, /* newline ignored after 80 cols (Concept) */
_erase_overstrike, /* Can erase overstrikes with a blank */
_generic_type, /* Generic line type (e.g. dialup, switch). */
_hard_copy, /* Hardcopy terminal */
_has_meta_key, /* Has a meta key (shift, sets parity bit) */
_has_status_line, /* Has extra "status line" */
_ins_null_glitch, /* Insert mode distinguishes nulls */
_mem_above, /* Display may be retained above the screen */
_mem_below, /* Display may be retained below the screen */
_move_insert_mode, /* Safe to move while in insert mode */
_move_standout_mode, /* Safe to move in standout modes */
_over_strike, /* Terminal overstrikes */
_status_line_esc_ok, /* Escape can be used on the status line */
_dest_tabs_magic_smso, /* Tabs destructive, magic so char (t1061) */
_tilde_glitch, /* Hazeltine; can't print ~'s */
_transparent_underline, /* underline character overstrikes */
_xon_xoff, /* Terminal uses xon/xoff handshaking */
_needs_xon_xoff, /* Padding won't work, xon/xoff required */
_prtr_silent, /* Printer won't echo on screen. */
_hard_cursor, /* Cursor is hard to see. */
_non_rev_rmcup, /* Smcup does not reverse rmcup. */
_no_pad_char, /* Pad character doesn't exist. */
_non_dest_scroll_region,/* Scrolling region is non-destructive. */
_can_change, /* Can re-define existing color */
_back_color_erase, /* Erases screen with current background */
_hue_lightness_saturation, /* HLS color notation is used (Tek) */
_col_addr_glitch, /* Only positive motion for hpa/mhpa caps */
_cr_cancels_micro_mode, /* Using cr turns off micro mode */
_has_print_wheel, /* Printer needs operator to change character set */
_row_addr_glitch, /* Only positive motion for vpa/mvpa caps */
_semi_auto_right_margin,/* Printing in last column causes cr */
_cpi_changes_res, /* Changing char. pitch changes resolution */
_lpi_changes_res, /* Changing line pitch changes resolution */
Sentinel; /* End of bools. DO NOT MOVE! */
};
struct _num_struct {
short
_columns, /* Number of columns in a line */
_init_tabs, /* Tabs initially every # spaces. */
_lines, /* Number of lines on screen or page */
_lines_of_memory, /* Lines of memory if > lines. 0 => varies */
_magic_cookie_glitch, /* Number blank chars left by smso or rmso */
_padding_baud_rate, /* Lowest baud rate where padding needed */
_virtual_terminal, /* Virtual terminal number (CB/Unix) */
_width_status_line, /* # columns in status line */
_num_labels, /* # of labels on screen (start at 1) */
_labl_height, /* # rows in each label */
_labl_width, /* # cols in each label */
_max_attributes, /* max combined video attributes terminal can display */
_maximum_windows, /* Maximum number of defineable windows */
_max_colors, /* max # of color on the screen */
_max_pairs, /* max # of color pairs on the screen */
_no_color_video, /* Video attributes that cannot be used with colors */
_buffer_capacity, /* Number of bytes buffered before printing */
_dot_vert_spacing, /* Spacing of pins vertically in pins per inch */
_dot_horz_spacing, /* Spacing of dots horizontally in dots per inch */
_max_micro_address, /* Maximum value in micro_..._address */
_max_micro_jump, /* Maximum value in parm_..._micro */
_micro_col_size, /* Character step size when in micro mode */
_micro_line_size, /* Line step size when in micro mode */
_number_of_pins, /* Number of pins in print-head */
_output_res_char, /* Horizontal resolution in units per character */
_output_res_line, /* Vertical resolution in units per line */
_output_res_horz_inch, /* Horizontal resolution in units per inch */
_output_res_vert_inch, /* Vertical resolution in units per inch */
_print_rate, /* Print rate in characters per second */
_wide_char_size, /* Character step size when in double wide mode */
_buttons, /* Number of buttons on the mouse */
_bit_image_entwining, /* Number of passes for each bit-image row */
_bit_image_type, /* Type of bit-image device */
Sentinel; /* End of nums. DO NOT MOVE! */
};
struct _str_struct {
struct strs strs;
struct strs2 strs2;
struct strs3 strs3;
struct strs4 strs4;
};
#define NUM_ATTRIBUTES 9
#define UNACCESSIBLE 1
#define NO_TERMINAL 2
#define CORRUPTED 3
#define ENTRY_TOO_LONG 4
#define TERMINFO_TOO_LONG 5
#define TERM_BAD_MALLOC 6
#define NOT_READABLE 7
#define TERMCAP_TOO_LONG 8
#define _VR2_COMPAT_CODE
#ifdef _VR2_COMPAT_CODE
struct _Vr2_Astrs {
charptr
_s1, _s2, _s3, _s4, _s5, _s6, _s7, _s8, _s9, _s10,
_s11, _s12, _s13, _s14, _s15, _s16, _s17, _s18, _s19, _s20,
_s21, _s22, _s23, _s24, _s25, _s26, _s27, _s28, _s29, _s30,
_s31, _s32, _s33, _s34, _s35, _s36, _s37, _s38, _s39, _s40,
_s41, _s42, _s43, _s44, _s45, _s46, _s47, _s48, _s49, _s50,
_s51, _s52, _s53, _s54, _s55, _s56, _s57, _s58, _s59, _s60,
_s61, _s62, _s63, _s64, _s65, _s66, _s67, _s68, _s69, _s70,
_s71, _s72, _s73, _s74, _s75, _s76, _s77, _s78, _s79, _s80,
_s81, _s82, _s83, _s84, _s85, _s86, _s87, _s88, _s89, _s90,
_s91, _s92, _s93, _s94, _s95, _s96, _s97, _s98, _s99, _s100;
};
struct _Vr2_Bstrs {
charptr
_s101, _s102, _s103, _s104, _s105, _s106, _s107, _s108, _s109, _s110,
_s111, _s112, _s113, _s114, _s115, _s116, _s117, _s118, _s119, _s120,
_s121, _s122, _s123, _s124, _s125, _s126, _s127, _s128, _s129, _s130,
_s131, _s132, _s133, _s134, _s135, _s136, _s137, _s138, _s139, _s140,
_s141, _s142, _s143, _s144, _s145;
};
#endif /* _VR2_COMPAT_CODE */
typedef struct {
char *_sends; /* Characters sent when key is pressed */
short _keyval; /* "char" we pass back to program */
} _KEY_MAP;
typedef struct {
short foreground; /* foreground color */
short background; /* background color */
bool init; /* TRUE if pair was initialized */
} _Color_pair;
typedef struct {
short r, g, b;
} _Color;
/*
* This definition for the term struct allows the boolean, number
* and string information to grow in the future and still allow .o
* compatibility.
*/
#ifndef __Mbstate_t_
#define __Mbstate_t_
typedef short Mbstate_t; /* local mbstate_t as defined in wchar.h */
#endif
struct term {
#ifdef _VR2_COMPAT_CODE
char
_b1, _b2, _b3, _b4, _b5, _b6, _b7, _b8, _b9, _b10,
_b11, _b12, _b13, _b14, _b15, _b16, _b17, _b18, _b19, _b20, _b21;
short
_c1, _c2, _c3, _c4, _c5, _c6, _c7, _c8;
struct _Vr2_Astrs _Vr2_Astrs;
struct _Vr2_Bstrs _Vr2_Bstrs;
#endif /* _VR2_COMPAT_CODE */
short Filedes; /* file descriptor being written to */
SGTTY Ottyb, /* original state of the terminal */
Nttyb; /* current state of the terminal */
#ifdef DIOCSETT
struct termcb new, old; /* CB/UNIX virtual terminals */
#endif
#ifdef LTILDE
int newlmode, oldlmode; /* BSD tty driver */
#endif
/* end of Vr2 structure */
struct _bool_struct *_bools;
struct _num_struct *_nums;
struct _str_struct *_strs;
char *_strtab;
#ifdef FIONREAD
long timeout; /* for BSD halfdelay mode */
#endif
/* end of Vr3 structure */
attr_t sgr_mode; /* current phys. graphic rendition */
attr_t sgr_faked; /* attributes faked by vidputs */
int _delay; /* timeout for inputs */
int _inputfd; /* input file descriptor */
int _check_fd; /* typeahead file descriptor */
_KEY_MAP **_keys, /* key map */
*internal_keys; /* pointer to free key structures */
short _ksz, /* size of keymap */
_lastkey_ordered,/* where the last ordered key is */
_lastmacro_ordered,/* where the last ordered macro is */
_first_macro;
bool /* map of which chars start fn keys */
funckeystarter[0400];
bool _fl_rawmode, /* in cbreak(=1) or raw(=2) mode */
fl_typeahdok, /* ok to use typeahead */
_cursorstate, /* cursor: 0=invis, 1=norm, 2=vvis */
_iwait; /* true if input-pending */
short _regs[26]; /* tparm static registers */
#define INP_QSIZE 32
int /* a place to put stuff ungetch'ed */
_input_queue[INP_QSIZE];
short _ungotten; /* # chars ungotten by ungetch() */
char _chars_on_queue; /* # chars on queue */
cchar_t *_acsmap; /* map of alternate char set chars */
char *turn_on_seq[NUM_ATTRIBUTES];
attr_t bit_vector;
char *cursor_seq[3];
char _termname[15];
char *turn_off_seq[3];
attr_t check_turn_off;
_Color_pair _cur_pair;
_Color_pair *_pairs_tbl;
_Color *_color_tbl;
Mbstate_t shift_state;
};
typedef struct term TERMINAL;
/* allow old names for these capabilities */
#define beehive_glitch no_esc_ctlc
#define teleray_glitch dest_tabs_magic_smso
extern TERMINAL *cur_term;
extern struct _bool_struct *cur_bools;
extern struct _num_struct *cur_nums;
extern struct _str_struct *cur_strs;
#ifdef SINGLE
extern TERMINAL _first_term;
extern struct _bool_struct _frst_bools;
extern struct _num_struct _frst_nums;
extern struct _str_struct _frst_strs;
# define CUR _first_term.
# define CURB _frst_bools.
# define CURN _frst_nums.
# define CURS _frst_strs.
# define PROGTTY _first_term.Nttyb
# define SHELLTTY _first_term.Ottyb
#else
# define CUR cur_term->
# define CURB cur_bools->
# define CURN cur_nums->
# define CURS cur_strs->
# define PROGTTY (cur_term->Nttyb)
# define SHELLTTY (cur_term->Ottyb)
#endif
#ifndef NOMACROS
#define set_curterm setcurterm
#define del_curterm delterm
#else /* NOMACROS */
#if defined(__STDC__) || !defined(_NO_PROTO)
extern TERMINAL *set_curterm(TERMINAL *);
extern int del_curterm(TERMINAL *);
#else /* __STDC__ */
extern TERMINAL *set_curterm();
extern int del_curterm();
#endif /* __STDC__ */
#endif /* NOMACROS */
extern short term_errno;
extern char term_parm_err[], *term_err_strings[], *Def_term,
*boolnames[], *boolcodes[], *boolfnames[],
*numnames[], *numcodes[], *numfnames[],
*strnames[], *strcodes[], *strfnames[];
#if defined(__STDC__) || !defined(_NO_PROTO) /* needed for tparm.c */
extern TERMINAL *setcurterm(TERMINAL *);
#ifdef _TPARM_COMPAT
extern char *tparm(char *instring, ...);
#else
extern char *tparm(char *, long, long, long, long,
long, long, long, long, long);
#endif /* _TPARM_COMPAT */
extern char *tgoto(const char *, int, int),
*tgetstr(char *, char **),
*tigetstr(char *),
*termname(void);
extern int tgetent(char *, const char *), tgetflag(char *), tgetnum(char *),
tigetflag(char *), tigetnum(char *),
tputs(const char *, int, int (*)(int)), putp(const char *);
extern int resetterm(void), fixterm(void), saveterm(void),
restartterm(char *, int, int *), delterm(TERMINAL *);
extern void termerr(void), tinputfd(int);
#else /* __STDC__ */
extern TERMINAL *setcurterm();
extern char *tparm(), *tgoto(), *tgetstr(), *tigetstr(),
*termname();
extern int tgetent(), tgetflag(), tgetnum(), tigetflag(), tigetnum(),
tputs(), putp();
extern int resetterm(), fixterm(), saveterm(),
restartterm(), delterm();
extern void termerr(), tinputfd();
#endif /* __STDC__ */
#endif /* auto_left_margin */
#endif /* _TERM_H */
#else /* _AIX32_CURSES */
/*
* term3.h - this file is automatically made from caps and maketerm.ex.
*
* Guard against multiple includes.
*/
#ifndef _H_TERM
#define _H_TERM
#define auto_left_margin CUR Auto_left_margin
#define auto_right_margin CUR Auto_right_margin
#define beehive_glitch CUR Beehive_glitch
#define ceol_standout_glitch CUR Ceol_standout_glitch
#define eat_newline_glitch CUR Eat_newline_glitch
#define erase_overstrike CUR Erase_overstrike
#define generic_type CUR Generic_type
#define hard_copy CUR Hard_copy
#define has_meta_key CUR Has_meta_key
#define has_status_line CUR Has_status_line
#define insert_null_glitch CUR Insert_null_glitch
#define memory_above CUR Memory_above
#define memory_below CUR Memory_below
#define move_insert_mode CUR Move_insert_mode
#define move_standout_mode CUR Move_standout_mode
#define over_strike CUR Over_strike
#define status_line_esc_ok CUR Status_line_esc_ok
#define teleray_glitch CUR Teleray_glitch
#define tilde_glitch CUR Tilde_glitch
#define transparent_underline CUR Transparent_underline
#define xon_xoff CUR Xon_xoff
#define columns CUR Columns
#define init_tabs CUR Init_tabs
#define lines CUR Lines
#define lines_of_memory CUR Lines_of_memory
#define magic_cookie_glitch CUR Magic_cookie_glitch
#define padding_baud_rate CUR Padding_baud_rate
#define virtual_terminal CUR Virtual_terminal
#define width_status_line CUR Width_status_line
#define back_tab CUR strs.Back_tab
#define bell CUR strs.Bell
#define carriage_return CUR strs.Carriage_return
#define change_scroll_region CUR strs.Change_scroll_region
#define clear_all_tabs CUR strs.Clear_all_tabs
#define clear_screen CUR strs.Clear_screen
#define clr_eol CUR strs.Clr_eol
#define clr_eos CUR strs.Clr_eos
#define column_address CUR strs.Column_address
#define command_character CUR strs.Command_character
#define cursor_address CUR strs.Cursor_address
#define cursor_down CUR strs.Cursor_down
#define cursor_home CUR strs.Cursor_home
#define cursor_invisible CUR strs.Cursor_invisible
#define cursor_left CUR strs.Cursor_left
#define cursor_mem_address CUR strs.Cursor_mem_address
#define cursor_normal CUR strs.Cursor_normal
#define cursor_right CUR strs.Cursor_right
#define cursor_to_ll CUR strs.Cursor_to_ll
#define cursor_up CUR strs.Cursor_up
#define cursor_visible CUR strs.Cursor_visible
#define delete_character CUR strs.Delete_character
#define delete_line CUR strs.Delete_line
#define dis_status_line CUR strs.Dis_status_line
#define down_half_line CUR strs.Down_half_line
#define enter_alt_charset_mode CUR strs.Enter_alt_charset_mode
#define enter_blink_mode CUR strs.Enter_blink_mode
#define enter_bold_mode CUR strs.Enter_bold_mode
#define enter_ca_mode CUR strs.Enter_ca_mode
#define enter_delete_mode CUR strs.Enter_delete_mode
#define enter_dim_mode CUR strs.Enter_dim_mode
#define enter_insert_mode CUR strs.Enter_insert_mode
#define enter_secure_mode CUR strs.Enter_secure_mode
#define enter_protected_mode CUR strs.Enter_protected_mode
#define enter_reverse_mode CUR strs.Enter_reverse_mode
#define enter_standout_mode CUR strs.Enter_standout_mode
#define enter_underline_mode CUR strs.Enter_underline_mode
#define erase_chars CUR strs.Erase_chars
#define exit_alt_charset_mode CUR strs.Exit_alt_charset_mode
#define exit_attribute_mode CUR strs.Exit_attribute_mode
#define exit_ca_mode CUR strs.Exit_ca_mode
#define exit_delete_mode CUR strs.Exit_delete_mode
#define exit_insert_mode CUR strs.Exit_insert_mode
#define exit_standout_mode CUR strs.Exit_standout_mode
#define exit_underline_mode CUR strs.Exit_underline_mode
#define flash_screen CUR strs.Flash_screen
#define form_feed CUR strs.Form_feed
#define from_status_line CUR strs.From_status_line
#define init_1string CUR strs.Init_1string
#define init_2string CUR strs.Init_2string
#define init_3string CUR strs.Init_3string
#define init_file CUR strs.Init_file
#define insert_character CUR strs.Insert_character
#define insert_line CUR strs.Insert_line
#define insert_padding CUR strs.Insert_padding
#define key_backspace CUR strs.Key_backspace
#define key_catab CUR strs.Key_catab
#define key_clear CUR strs.Key_clear
#define key_ctab CUR strs.Key_ctab
#define key_dc CUR strs.Key_dc
#define key_dl CUR strs.Key_dl
#define key_down CUR strs.Key_down
#define key_eic CUR strs.Key_eic
#define key_eol CUR strs.Key_eol
#define key_eos CUR strs.Key_eos
#define key_f0 CUR strs.Key_f0
#define key_f1 CUR strs.Key_f1
#define key_f10 CUR strs.Key_f10
#define key_f2 CUR strs.Key_f2
#define key_f3 CUR strs.Key_f3
#define key_f4 CUR strs.Key_f4
#define key_f5 CUR strs.Key_f5
#define key_f6 CUR strs.Key_f6
#define key_f7 CUR strs.Key_f7
#define key_f8 CUR strs.Key_f8
#define key_f9 CUR strs.Key_f9
#define key_home CUR strs.Key_home
#define key_ic CUR strs.Key_ic
#define key_il CUR strs.Key_il
#define key_left CUR strs.Key_left
#define key_ll CUR strs.Key_ll
#define key_npage CUR strs.Key_npage
#define key_ppage CUR strs.Key_ppage
#define key_right CUR strs.Key_right
#define key_sf CUR strs.Key_sf
#define key_sr CUR strs.Key_sr
#define key_stab CUR strs.Key_stab
#define key_up CUR strs.Key_up
#define keypad_local CUR strs.Keypad_local
#define keypad_xmit CUR strs.Keypad_xmit
#define lab_f0 CUR strs.Lab_f0
#define lab_f1 CUR strs.Lab_f1
#define lab_f10 CUR strs.Lab_f10
#define lab_f2 CUR strs.Lab_f2
#define lab_f3 CUR strs.Lab_f3
#define lab_f4 CUR strs.Lab_f4
#define lab_f5 CUR strs.Lab_f5
#define lab_f6 CUR strs.Lab_f6
#define lab_f7 CUR strs.Lab_f7
#define lab_f8 CUR strs.Lab_f8
#define lab_f9 CUR strs2.Lab_f9
#define meta_off CUR strs2.Meta_off
#define meta_on CUR strs2.Meta_on
#define newline CUR strs2.Newline
#define pad_char CUR strs2.Pad_char
#define parm_dch CUR strs2.Parm_dch
#define parm_delete_line CUR strs2.Parm_delete_line
#define parm_down_cursor CUR strs2.Parm_down_cursor
#define parm_ich CUR strs2.Parm_ich
#define parm_index CUR strs2.Parm_index
#define parm_insert_line CUR strs2.Parm_insert_line
#define parm_left_cursor CUR strs2.Parm_left_cursor
#define parm_right_cursor CUR strs2.Parm_right_cursor
#define parm_rindex CUR strs2.Parm_rindex
#define parm_up_cursor CUR strs2.Parm_up_cursor
#define pkey_key CUR strs2.Pkey_key
#define pkey_local CUR strs2.Pkey_local
#define pkey_xmit CUR strs2.Pkey_xmit
#define print_screen CUR strs2.Print_screen
#define prtr_off CUR strs2.Prtr_off
#define prtr_on CUR strs2.Prtr_on
#define repeat_char CUR strs2.Repeat_char
#define reset_1string CUR strs2.Reset_1string
#define reset_2string CUR strs2.Reset_2string
#define reset_3string CUR strs2.Reset_3string
#define reset_file CUR strs2.Reset_file
#define restore_cursor CUR strs2.Restore_cursor
#define row_address CUR strs2.Row_address
#define save_cursor CUR strs2.Save_cursor
#define scroll_forward CUR strs2.Scroll_forward
#define scroll_reverse CUR strs2.Scroll_reverse
#define set_attributes CUR strs2.Set_attributes
#define set_tab CUR strs2.Set_tab
#define set_window CUR strs2.Set_window
#define tab CUR strs2.Tab
#define to_status_line CUR strs2.To_status_line
#define underline_char CUR strs2.Underline_char
#define up_half_line CUR strs2.Up_half_line
#define init_prog CUR strs2.Init_prog
#define key_a1 CUR strs2.Key_a1
#define key_a3 CUR strs2.Key_a3
#define key_b2 CUR strs2.Key_b2
#define key_c1 CUR strs2.Key_c1
#define key_c3 CUR strs2.Key_c3
#define prtr_non CUR strs2.Prtr_non
#define box_chars_1 CUR strs2.Box_chars_1
#define box_chars_2 CUR strs2.Box_chars_2
#define box_attr_1 CUR strs2.Box_attr_1
#define box_attr_2 CUR strs2.Box_attr_2
#define color_bg_0 CUR strs2.Color_bg_0
#define color_bg_1 CUR strs2.Color_bg_1
#define color_bg_2 CUR strs2.Color_bg_2
#define color_bg_3 CUR strs2.Color_bg_3
#define color_bg_4 CUR strs2.Color_bg_4
#define color_bg_5 CUR strs2.Color_bg_5
#define color_bg_6 CUR strs2.Color_bg_6
#define color_bg_7 CUR strs2.Color_bg_7
#define color_fg_0 CUR strs2.Color_fg_0
#define color_fg_1 CUR strs2.Color_fg_1
#define color_fg_2 CUR strs2.Color_fg_2
#define color_fg_3 CUR strs2.Color_fg_3
#define color_fg_4 CUR strs2.Color_fg_4
#define color_fg_5 CUR strs2.Color_fg_5
#define color_fg_6 CUR strs2.Color_fg_6
#define color_fg_7 CUR strs2.Color_fg_7
#define font_0 CUR strs2.Font_0
#define font_1 CUR strs2.Font_1
#define font_2 CUR strs2.Font_2
#define font_3 CUR strs2.Font_3
#define font_4 CUR strs2.Font_4
#define font_5 CUR strs2.Font_5
#define font_6 CUR strs2.Font_6
#define font_7 CUR strs2.Font_7
#define key_back_tab CUR strs2.Key_back_tab
#define key_do CUR strs2.Key_do
#define key_command CUR strs2.Key_command
#define key_command_pane CUR strs2.Key_command_pane
#define key_end CUR strs2.Key_end
#define key_help CUR strs2.Key_help
#define key_newline CUR strs2.Key_newline
#define key_next_pane CUR strs2.Key_next_pane
#define key_prev_cmd CUR strs2.Key_prev_cmd
#define key_prev_pane CUR strs2.Key_prev_pane
#define key_quit CUR strs2.Key_quit
#define key_select CUR strs2.Key_select
#define key_scroll_left CUR strs2.Key_scroll_left
#define key_scroll_right CUR strs2.Key_scroll_right
#define key_tab CUR strs2.Key_tab
#define key_smap_in1 CUR strs2.Key_smap_in1
#define key_smap_out1 CUR strs2.Key_smap_out1
#define key_smap_in2 CUR strs2.Key_smap_in2
#define key_smap_out2 CUR strs2.Key_smap_out2
#define key_smap_in3 CUR strs2.Key_smap_in3
#define key_smap_out3 CUR strs2.Key_smap_out3
#define key_smap_in4 CUR strs2.Key_smap_in4
#define key_smap_out4 CUR strs2.Key_smap_out4
#define key_smap_in5 CUR strs2.Key_smap_in5
#define key_smap_out5 CUR strs2.Key_smap_out5
#define appl_defined_str CUR strs2.Appl_defined_str
#define key_smap_in6 CUR strs2.Key_smap_in6
#define key_smap_out6 CUR strs2.Key_smap_out6
#define key_smap_in7 CUR strs2.Key_smap_in7
#define key_smap_out7 CUR strs2.Key_smap_out7
#define key_smap_in8 CUR strs2.Key_smap_in8
#define key_smap_out8 CUR strs2.Key_smap_out8
#define key_smap_in9 CUR strs2.Key_smap_in9
#define key_smap_out9 CUR strs2.Key_smap_out9
#define key_sf1 CUR strs2.Key_sf1
#define key_sf2 CUR strs2.Key_sf2
#define key_sf3 CUR strs2.Key_sf3
#define key_sf4 CUR strs2.Key_sf4
#define key_sf5 CUR strs2.Key_sf5
#define key_sf6 CUR strs2.Key_sf6
#define key_sf7 CUR strs2.Key_sf7
#define key_sf8 CUR strs2.Key_sf8
#define key_sf9 CUR strs2.Key_sf9
#define key_sf10 CUR strs2.Key_sf10
#define key_f11 CUR strs2.Key_f11
#define key_f12 CUR strs2.Key_f12
#define key_f13 CUR strs2.Key_f13
#define key_f14 CUR strs2.Key_f14
#define key_f15 CUR strs2.Key_f15
#define key_f16 CUR strs2.Key_f16
#define key_f17 CUR strs2.Key_f17
#define key_f18 CUR strs2.Key_f18
#define key_f19 CUR strs2.Key_f19
#define key_f20 CUR strs2.Key_f20
#define key_f21 CUR strs2.Key_f21
#define key_f22 CUR strs2.Key_f22
#define key_f23 CUR strs2.Key_f23
#define key_f24 CUR strs2.Key_f24
#define key_f25 CUR strs2.Key_f25
#define key_f26 CUR strs2.Key_f26
#define key_f27 CUR strs2.Key_f27
#define key_f28 CUR strs2.Key_f28
#define key_f29 CUR strs2.Key_f29
#define key_f30 CUR strs2.Key_f30
#define key_f31 CUR strs2.Key_f31
#define key_f32 CUR strs2.Key_f32
#define key_f33 CUR strs2.Key_f33
#define key_f34 CUR strs2.Key_f34
#define key_f35 CUR strs2.Key_f35
#define key_f36 CUR strs2.Key_f36
#define key_f37 CUR strs2.Key_f37
#define key_f38 CUR strs2.Key_f38
#define key_f39 CUR strs2.Key_f39
#define key_f40 CUR strs2.Key_f40
#define key_f41 CUR strs2.Key_f41
#define key_f42 CUR strs2.Key_f42
#define key_f43 CUR strs2.Key_f43
#define key_f44 CUR strs2.Key_f44
#define key_f45 CUR strs2.Key_f45
#define key_f46 CUR strs2.Key_f46
#define key_f47 CUR strs2.Key_f47
#define key_f48 CUR strs2.Key_f48
#define key_f49 CUR strs2.Key_f49
#define key_f50 CUR strs2.Key_f50
#define key_f51 CUR strs2.Key_f51
#define key_f52 CUR strs2.Key_f52
#define key_f53 CUR strs2.Key_f53
#define key_f54 CUR strs2.Key_f54
#define key_f55 CUR strs2.Key_f55
#define key_f56 CUR strs2.Key_f56
#define key_f57 CUR strs2.Key_f57
#define key_f58 CUR strs2.Key_f58
#define key_f59 CUR strs2.Key_f59
#define key_f60 CUR strs2.Key_f60
#define key_f61 CUR strs2.Key_f61
#define key_f62 CUR strs2.Key_f62
#define key_f63 CUR strs2.Key_f63
#define key_action CUR strs2.Key_action
#define enter_topline_mode CUR strs2.Enter_topline_mode
#define enter_bottom_mode CUR strs2.Enter_bottom_mode
#define enter_rvert_mode CUR strs2.Enter_rvert_mode
#define enter_lvert_mode CUR strs2.Enter_lvert_mode
typedef char *charptr ;
struct strs {
charptr
Back_tab, /* Back tab (P)*/
Bell, /* Audible signal (bell) (P)*/
Carriage_return, /* Carriage return (P*)*/
Change_scroll_region, /* change to lines #1 thru #2 (vt100) (PG)*/
Clear_all_tabs, /* Clear all tab stops. (P)*/
Clear_screen, /* Clear screen (P*)*/
Clr_eol, /* Clear to end of line (P)*/
Clr_eos, /* Clear to end of display (P*)*/
Column_address, /* Set cursor column (PG)*/
Command_character, /* Term. settable cmd char in prototype*/
Cursor_address, /* Cursor motion to row #1 col #2 (PG)*/
Cursor_down, /* Down one line*/
Cursor_home, /* Home cursor (if no cup)*/
Cursor_invisible, /* Make cursor invisible*/
Cursor_left, /* Move cursor left one space.*/
Cursor_mem_address, /* Memory relative cursor addressing.*/
Cursor_normal, /* Make cursor appear normal (undo vs/vi)*/
Cursor_right, /* Non-destructive space (cursor right)*/
Cursor_to_ll, /* Last line, first column (if no cup)*/
Cursor_up, /* Upline (cursor up)*/
Cursor_visible, /* Make cursor very visible*/
Delete_character, /* Delete character (P*)*/
Delete_line, /* Delete line (P*)*/
Dis_status_line, /* Disable status line*/
Down_half_line, /* Half-line down (forward 1/2 linefeed)*/
Enter_alt_charset_mode, /* Start alternate character set (P)*/
Enter_blink_mode, /* Turn on blinking*/
Enter_bold_mode, /* Turn on bold (extra bright) mode*/
Enter_ca_mode, /* String to begin programs that use cup*/
Enter_delete_mode, /* Delete mode (enter)*/
Enter_dim_mode, /* Turn on half-bright mode*/
Enter_insert_mode, /* Insert mode (enter);*/
Enter_secure_mode, /* Turn on blank mode (chars invisible)*/
Enter_protected_mode, /* Turn on protected mode*/
Enter_reverse_mode, /* Turn on reverse video mode*/
Enter_standout_mode, /* Begin stand out mode*/
Enter_underline_mode, /* Start underscore mode*/
Erase_chars, /* Erase #1 characters (PG)*/
Exit_alt_charset_mode, /* End alternate character set (P)*/
Exit_attribute_mode, /* Turn off all attributes*/
Exit_ca_mode, /* String to end programs that use cup*/
Exit_delete_mode, /* End delete mode*/
Exit_insert_mode, /* End insert mode;*/
Exit_standout_mode, /* End stand out mode*/
Exit_underline_mode, /* End underscore mode*/
Flash_screen, /* Visible bell (may not move cursor)*/
Form_feed, /* Hardcopy terminal page eject (P*)*/
From_status_line, /* Return from status line*/
Init_1string, /* Terminal initialization string*/
Init_2string, /* Terminal initialization string*/
Init_3string, /* Terminal initialization string*/
Init_file, /* Name of file containing is*/
Insert_character, /* Insert character (P)*/
Insert_line, /* Add new blank line (P*)*/
Insert_padding, /* Insert pad after character inserted (P*)*/
Key_backspace, /* Sent by backspace key*/
Key_catab, /* Sent by clear-all-tabs key.*/
Key_clear, /* Sent by clear screen or erase key.*/
Key_ctab, /* Sent by clear-tab key*/
Key_dc, /* Sent by delete character key.*/
Key_dl, /* Sent by delete line key.*/
Key_down, /* Sent by terminal down arrow key*/
Key_eic, /* Sent by rmir or smir in insert mode.*/
Key_eol, /* Sent by clear-to-end-of-line key.*/
Key_eos, /* Sent by clear-to-end-of-screen key.*/
Key_f0, /* Sent by function key f0.*/
Key_f1, /* Sent by function key f1.*/
Key_f10, /* Sent by function key f10.*/
Key_f2, /* Sent by function key f2.*/
Key_f3, /* Sent by function key f3.*/
Key_f4, /* Sent by function key f4.*/
Key_f5, /* Sent by function key f5.*/
Key_f6, /* Sent by function key f6.*/
Key_f7, /* Sent by function key f7.*/
Key_f8, /* Sent by function key f8.*/
Key_f9, /* Sent by function key f9.*/
Key_home, /* Sent by home key.*/
Key_ic, /* Sent by ins char/enter ins mode key.*/
Key_il, /* Sent by insert line.*/
Key_left, /* Sent by terminal left arrow key*/
Key_ll, /* Sent by home-down key*/
Key_npage, /* Sent by next-page key*/
Key_ppage, /* Sent by previous-page key*/
Key_right, /* Sent by terminal right arrow key*/
Key_sf, /* Sent by scroll-forward/down key*/
Key_sr, /* Sent by scroll-backward/up key*/
Key_stab, /* Sent by set-tab key*/
Key_up, /* Sent by terminal up arrow key*/
Keypad_local, /* Out of "keypad transmit" mode*/
Keypad_xmit, /* Put terminal in "keypad transmit" mode*/
Lab_f0, /* Labels on function key f0 if not f0*/
Lab_f1, /* Labels on function key f1 if not f1*/
Lab_f10, /* Labels on function key f10 if not f10*/
Lab_f2, /* Labels on function key f2 if not f2*/
Lab_f3, /* Labels on function key f3 if not f3*/
Lab_f4, /* Labels on function key f4 if not f4*/
Lab_f5, /* Labels on function key f5 if not f5*/
Lab_f6, /* Labels on function key f6 if not f6*/
Lab_f7, /* Labels on function key f7 if not f7*/
Lab_f8; /* Labels on function key f8 if not f8*/
};
struct strs2 {
charptr
Lab_f9, /* Labels on function key f9 if not f9*/
Meta_off, /* Turn off "meta mode"*/
Meta_on, /* Turn on "meta mode" (8th bit)*/
Newline, /* Newline (behaves like cr followed by lf)*/
Pad_char, /* Pad character (rather than null)*/
Parm_dch, /* Delete #1 chars (PG*)*/
Parm_delete_line, /* Delete #1 lines (PG*)*/
Parm_down_cursor, /* Move cursor down #1 lines. (PG*)*/
Parm_ich, /* Insert #1 blank chars (PG*)*/
Parm_index, /* Scroll forward #1 lines. (PG)*/
Parm_insert_line, /* Add #1 new blank lines (PG*)*/
Parm_left_cursor, /* Move cursor left #1 spaces (PG)*/
Parm_right_cursor, /* Move cursor right #1 spaces. (PG*)*/
Parm_rindex, /* Scroll backward #1 lines. (PG)*/
Parm_up_cursor, /* Move cursor up #1 lines. (PG*)*/
Pkey_key, /* Prog funct key #1 to type string #2*/
Pkey_local, /* Prog funct key #1 to execute string #2*/
Pkey_xmit, /* Prog funct key #1 to xmit string #2*/
Print_screen, /* Print contents of the screen*/
Prtr_off, /* Turn off the printer*/
Prtr_on, /* Turn on the printer*/
Repeat_char, /* Repeat char #1 #2 times. (PG*)*/
Reset_1string, /* Reset terminal completely to sane modes.*/
Reset_2string, /* Reset terminal completely to sane modes.*/
Reset_3string, /* Reset terminal completely to sane modes.*/
Reset_file, /* Name of file containing reset string.*/
Restore_cursor, /* Restore cursor to position of last sc.*/
Row_address, /* Like hpa but sets row. (PG)*/
Save_cursor, /* Save cursor position. (P)*/
Scroll_forward, /* Scroll text up (P)*/
Scroll_reverse, /* Scroll text down (P)*/
Set_attributes, /* Define the video attributes (PG9)*/
Set_tab, /* Set a tab in all rows, current column.*/
Set_window, /* Current window is lines #1-#2 cols #3-#4*/
Tab, /* Tab to next 8 space hardware tab stop.*/
To_status_line, /* Go to status line*/
Underline_char, /* Underscore one char and move past it*/
Up_half_line, /* Half-line up (reverse 1/2 linefeed)*/
Init_prog, /* Path name of program for init.*/
Key_a1, /* Upper left of keypad*/
Key_a3, /* Upper right of keypad*/
Key_b2, /* Center of keypad*/
Key_c1, /* Lower left of keypad*/
Key_c3, /* Lower right of keypad*/
Prtr_non, /* Turn on the printer for #1 bytes.*/
Box_chars_1, /* Box characters primary set*/
Box_chars_2, /* Box characters alternate set*/
Box_attr_1, /* Attributes for box_chars_1*/
Box_attr_2, /* Attributes for box_chars_2*/
Color_bg_0, /* Background color 0 black*/
Color_bg_1, /* Background color 1 red*/
Color_bg_2, /* Background color 2 green*/
Color_bg_3, /* Background color 3 brown*/
Color_bg_4, /* Background color 4 blue*/
Color_bg_5, /* Background color 5 magenta*/
Color_bg_6, /* Background color 6 cyan*/
Color_bg_7, /* Background color 7 white*/
Color_fg_0, /* Foreground color 0 white*/
Color_fg_1, /* Foreground color 1 red*/
Color_fg_2, /* Foreground color 2 green*/
Color_fg_3, /* Foreground color 3 brown*/
Color_fg_4, /* Foreground color 4 blue*/
Color_fg_5, /* Foreground color 5 magenta*/
Color_fg_6, /* Foreground color 6 cyan*/
Color_fg_7, /* Foreground color 7 black*/
Font_0, /* Select font 0*/
Font_1, /* Select font 1*/
Font_2, /* Select font 2*/
Font_3, /* Select font 3*/
Font_4, /* Select font 4*/
Font_5, /* Select font 5*/
Font_6, /* Select font 6*/
Font_7, /* Select font 7*/
Key_back_tab, /* Backtab key*/
Key_do, /* Do request key*/
Key_command, /* Command request key*/
Key_command_pane, /* Command pane key*/
Key_end, /* End key*/
Key_help, /* Help key*/
Key_newline, /* Newline key*/
Key_next_pane, /* Next pane key*/
Key_prev_cmd, /* Previous command key*/
Key_prev_pane, /* Previous pane key*/
Key_quit, /* Quit key*/
Key_select, /* Select key*/
Key_scroll_left, /* Scroll left*/
Key_scroll_right, /* Scroll right*/
Key_tab, /* Tab key*/
Key_smap_in1, /* input for special mapped key 1*/
Key_smap_out1, /* output for mapped key 1*/
Key_smap_in2, /* input for special mapped key 2*/
Key_smap_out2, /* output for mapped key 2*/
Key_smap_in3, /* input for special mapped key 3*/
Key_smap_out3, /* output for mapped key 3*/
Key_smap_in4, /* input for special mapped key 4*/
Key_smap_out4, /* output for mapped key 4*/
Key_smap_in5, /* input for special mapped key 5*/
Key_smap_out5, /* output for mapped key 5*/
Appl_defined_str, /* Application defined terminal string*/
Key_smap_in6, /* input for special mapped key 6*/
Key_smap_out6, /* output for mapped key 6*/
Key_smap_in7, /* input for special mapped key 7*/
Key_smap_out7, /* output for mapped key 7*/
Key_smap_in8, /* input for special mapped key 8*/
Key_smap_out8, /* output for mapped key 8*/
Key_smap_in9, /* input for special mapped key 9*/
Key_smap_out9, /* output for mapped key 9*/
Key_sf1, /* Special function key 1*/
Key_sf2, /* Special function key 2*/
Key_sf3, /* Special function key 3*/
Key_sf4, /* Special function key 4*/
Key_sf5, /* Special function key 5*/
Key_sf6, /* Special function key 6*/
Key_sf7, /* Special function key 7*/
Key_sf8, /* Special function key 8*/
Key_sf9, /* Special function key 9*/
Key_sf10, /* Special function key 10*/
Key_f11, /* Sent by function key f11.*/
Key_f12, /* Sent by function key f12.*/
Key_f13, /* Sent by function key f13.*/
Key_f14, /* Sent by function key f14.*/
Key_f15, /* Sent by function key f15.*/
Key_f16, /* Sent by function key f16.*/
Key_f17, /* Sent by function key f17.*/
Key_f18, /* Sent by function key f18.*/
Key_f19, /* Sent by function key f19.*/
Key_f20, /* Sent by function key f20.*/
Key_f21, /* Sent by function key f21.*/
Key_f22, /* Sent by function key f22.*/
Key_f23, /* Sent by function key f23.*/
Key_f24, /* Sent by function key f24.*/
Key_f25, /* Sent by function key f25.*/
Key_f26, /* Sent by function key f26.*/
Key_f27, /* Sent by function key f27.*/
Key_f28, /* Sent by function key f28.*/
Key_f29, /* Sent by function key f29.*/
Key_f30, /* Sent by function key f30.*/
Key_f31, /* Sent by function key f31.*/
Key_f32, /* Sent by function key f32.*/
Key_f33, /* Sent by function key f33.*/
Key_f34, /* Sent by function key f34.*/
Key_f35, /* Sent by function key f35.*/
Key_f36, /* Sent by function key f36.*/
Key_f37, /* Sent by function key f37.*/
Key_f38, /* Sent by function key f38.*/
Key_f39, /* Sent by function key f39.*/
Key_f40, /* Sent by function key f40.*/
Key_f41, /* Sent by function key f41.*/
Key_f42, /* Sent by function key f42.*/
Key_f43, /* Sent by function key f43.*/
Key_f44, /* Sent by function key f44.*/
Key_f45, /* Sent by function key f45.*/
Key_f46, /* Sent by function key f46.*/
Key_f47, /* Sent by function key f47.*/
Key_f48, /* Sent by function key f48.*/
Key_f49, /* Sent by function key f49.*/
Key_f50, /* Sent by function key f50.*/
Key_f51, /* Sent by function key f51.*/
Key_f52, /* Sent by function key f52.*/
Key_f53, /* Sent by function key f53.*/
Key_f54, /* Sent by function key f54.*/
Key_f55, /* Sent by function key f55.*/
Key_f56, /* Sent by function key f56.*/
Key_f57, /* Sent by function key f57.*/
Key_f58, /* Sent by function key f58.*/
Key_f59, /* Sent by function key f59.*/
Key_f60, /* Sent by function key f60.*/
Key_f61, /* Sent by function key f61.*/
Key_f62, /* Sent by function key f62.*/
Key_f63, /* Sent by function key f63.*/
Key_action, /* Sent by the action key.*/
Enter_topline_mode, /* Start topline mode.*/
Enter_bottom_mode, /* Start bottom mode.*/
Enter_rvert_mode, /* Start right vertical line mode.*/
Enter_lvert_mode; /* Start left vertical line mode.*/
} ;
struct term {
char
Auto_left_margin, /* cub1 wraps from column 0 to last column*/
Auto_right_margin, /* Terminal has automatic margins*/
Beehive_glitch, /* Beehive (f1=escape, f2=ctrl C)*/
Ceol_standout_glitch, /* Standout not erased by overwriting (hp)*/
Eat_newline_glitch, /* newline ignored after 80 cols (Concept)*/
Erase_overstrike, /* Can erase overstrikes with a blank*/
Generic_type, /* Generic line type (e.g. dialup, switch).*/
Hard_copy, /* Hardcopy terminal*/
Has_meta_key, /* Has a meta key (shift, sets parity bit)*/
Has_status_line, /* Has extra "status line"*/
Insert_null_glitch, /* Insert mode distinguishes nulls*/
Memory_above, /* Display may be retained above the screen*/
Memory_below, /* Display may be retained below the screen*/
Move_insert_mode, /* Safe to move while in insert mode*/
Move_standout_mode, /* Safe to move in standout modes*/
Over_strike, /* Terminal overstrikes*/
Status_line_esc_ok, /* Escape can be used on the status line*/
Teleray_glitch, /* Tabs destructive, magic so char (t1061)*/
Tilde_glitch, /* Hazeltine; can't print ~'s*/
Transparent_underline, /* underline character overstrikes*/
Xon_xoff; /* Terminal uses xon/xoff handshaking*/
short
Columns, /* Number of columns in a line*/
Init_tabs, /* Tabs initially every # spaces.*/
Lines, /* Number of lines on screen or page*/
Lines_of_memory, /* Lines of memory if > lines. 0 => varies*/
Magic_cookie_glitch, /* Number blank chars left by smso or rmso*/
Padding_baud_rate, /* Lowest baud rate where padding needed*/
Virtual_terminal, /* Virtual terminal number (CB/Unix)*/
Width_status_line; /* # columns in status line*/
struct strs strs;
struct strs2 strs2;
short Filedes; /* file descriptor being written to */
#ifndef NONSTANDARD
SGTTY Ottyb, /* original state of the terminal */
Nttyb; /* current state of the terminal */
#endif
};
#ifndef NONSTANDARD
extern struct term *cur_term;
#endif
#ifdef SINGLE
extern struct term _first_term;
# define CUR _first_term.
#else
# define CUR cur_term->
#endif
#endif /* _H_TERM */
#endif /* _AIX32_CURSES */
[-- Attachment #3: termcap.c --]
[-- Type: text/plain, Size: 11769 bytes --]
/*
* termcap.c - termcap manipulation through curses
*
* This file is part of zsh, the Z shell.
*
* Copyright (c) 1992-1997 Paul Falstad
* All rights reserved.
*
* Permission is hereby granted, without written agreement and without
* license or royalty fees, to use, copy, modify, and distribute this
* software and to distribute modified versions of this software for any
* purpose, provided that the above copyright notice and the following
* two paragraphs appear in all copies of this software.
*
* In no event shall Paul Falstad or the Zsh Development Group be liable
* to any party for direct, indirect, special, incidental, or consequential
* damages arising out of the use of this software and its documentation,
* even if Paul Falstad and the Zsh Development Group have been advised of
* the possibility of such damage.
*
* Paul Falstad and the Zsh Development Group specifically disclaim any
* warranties, including, but not limited to, the implied warranties of
* merchantability and fitness for a particular purpose. The software
* provided hereunder is on an "as is" basis, and Paul Falstad and the
* Zsh Development Group have no obligation to provide maintenance,
* support, updates, enhancements, or modifications.
*
*/
/*
* We need to include the zsh headers later to avoid clashes with
* the definitions on some systems, however we need the configuration
* file to decide whether we should avoid curses.h, which clashes
* with several zsh constants on some systems (e.g. SunOS 4).
*/
#include "../../config.h"
#ifdef HAVE_TGETENT
# if defined(HAVE_CURSES_H) && defined(HAVE_TERM_H)
# define USES_TERM_H 1
# else
# ifdef HAVE_TERMCAP_H
# define USES_TERMCAP_H 1
# endif
# endif
#endif
#include "termcap.mdh"
#include "termcap.pro"
static char termcap_nam[] = "termcap";
#ifdef HAVE_TGETENT
# ifdef USES_TERM_H
# ifdef HAVE_TERMIO_H
# include <termio.h>
# endif
# ifdef TERM_H_NEEDS_CURSES_H
# include <curses.h>
# endif
# include <term.h>
# else
# ifdef USES_TERMCAP_H
# include <termcap.h>
# endif
# endif
static Param termcap_pm;
#ifndef HAVE_BOOLCODES
static char *boolcodes[] = {
"bw", "am", "ut", "cc", "xs", "YA", "YF", "YB", "xt", "xn", "eo",
"gn", "hc", "HC", "km", "YC", "hs", "hl", "in", "YG", "da", "db",
"mi", "ms", "nx", "xb", "NP", "ND", "NR", "os", "5i", "YD", "YE",
"es", "hz", "ul", "xo", NULL};
#endif
/**/
static int
ztgetflag(char *s)
{
char **b;
/* ncurses can tell if an existing boolean capability is *
* off, but other curses variants can't, so we fudge it. *
* This feature of ncurses appears to have gone away as *
* of NCURSES_MAJOR_VERSION == 5, so don't rely on it. */
switch (tgetflag(s)) {
case -1:
break;
case 0:
for (b = (char **)boolcodes; *b; ++b)
if (s[0] == (*b)[0] && s[1] == (*b)[1])
return 0;
break;
default:
return 1;
}
return -1;
}
/* echotc: output a termcap */
/**/
static int
bin_echotc(char *name, char **argv, char *ops, int func)
{
char *s, buf[2048], *t, *u;
int num, argct;
s = *argv++;
if (termflags & TERM_BAD)
return 1;
if ((termflags & TERM_UNKNOWN) && (isset(INTERACTIVE) || !init_term()))
return 1;
/* if the specified termcap has a numeric value, display it */
if ((num = tgetnum(s)) != -1) {
printf("%d\n", num);
return 0;
}
/* if the specified termcap is boolean, and set, say so */
switch (ztgetflag(s)) {
case -1:
break;
case 0:
puts("no");
return 0;
default:
puts("yes");
return 0;
}
/* get a string-type capability */
u = buf;
t = tgetstr(s, &u);
if (t == (char *)-1 || !t || !*t) {
/* capability doesn't exist, or (if boolean) is off */
zwarnnam(name, "no such capability: %s", s, 0);
return 1;
}
/* count the number of arguments required */
for (argct = 0, u = t; *u; u++)
if (*u == '%') {
if (u++, (*u == 'd' || *u == '2' || *u == '3' || *u == '.' ||
*u == '+'))
argct++;
}
/* check that the number of arguments provided is correct */
if (arrlen(argv) != argct) {
zwarnnam(name, (arrlen(argv) < argct) ? "not enough arguments" :
"too many arguments", NULL, 0);
return 1;
}
/* output string, through the proper termcap functions */
if (!argct)
tputs(t, 1, putraw);
else {
num = (argv[1]) ? atoi(argv[1]) : atoi(*argv);
tputs(tgoto(t, atoi(*argv), num), num, putraw);
}
return 0;
}
#else /* ! HAVE_TGETENT */
#define bin_echotc bin_notavail
#endif /* HAVE_TGETENT */
static struct builtin bintab[] = {
BUILTIN("echotc", 0, bin_echotc, 1, -1, 0, NULL, NULL),
};
/**/
#ifdef HAVE_TGETENT
/* Empty dummy function for special hash parameters. */
/**/
static void
shempty(void)
{
}
/* Create a simple special hash parameter. */
/**/
static Param
createtchash()
{
Param pm;
HashTable ht;
unsetparam(termcap_nam);
if (!(pm = createparam(termcap_nam, PM_SPECIAL|PM_HIDE|PM_HIDEVAL|
PM_REMOVABLE|PM_HASHED)))
return NULL;
pm->level = pm->old ? locallevel : 0;
pm->gets.hfn = hashgetfn;
pm->sets.hfn = hashsetfn;
pm->unsetfn = stdunsetfn;
pm->u.hash = ht = newhashtable(7, termcap_nam, NULL);
ht->hash = hasher;
ht->emptytable = (TableFunc) shempty;
ht->filltable = NULL;
ht->addnode = (AddNodeFunc) shempty;
ht->getnode = ht->getnode2 = gettermcap;
ht->removenode = (RemoveNodeFunc) shempty;
ht->disablenode = NULL;
ht->enablenode = NULL;
ht->freenode = (FreeNodeFunc) shempty;
ht->printnode = printparamnode;
ht->scantab = scantermcap;
return (termcap_pm = pm);
}
/**/
static HashNode
gettermcap(HashTable ht, char *name)
{
int len, num;
char *tcstr, buf[2048], *u;
Param pm = NULL;
/* This depends on the termcap stuff in init.c */
if (termflags & TERM_BAD)
return NULL;
if ((termflags & TERM_UNKNOWN) && (isset(INTERACTIVE) || !init_term()))
return NULL;
unmetafy(name, &len);
pm = (Param) zhalloc(sizeof(struct param));
pm->nam = dupstring(name);
pm->flags = PM_READONLY;
pm->sets.cfn = NULL;
pm->gets.cfn = strgetfn;
pm->sets.ifn = NULL;
pm->gets.ifn = intgetfn;
pm->unsetfn = NULL;
pm->ct = 0;
pm->env = NULL;
pm->ename = NULL;
pm->old = NULL;
pm->level = 0;
u = buf;
/* logic in the following cascade copied from echotc, above */
if ((num = tgetnum(name)) != -1) {
pm->u.val = num;
pm->flags |= PM_INTEGER;
return (HashNode) pm;
}
switch (ztgetflag(name)) {
case -1:
break;
case 0:
pm->u.str = dupstring("no");
pm->flags |= PM_SCALAR;
return (HashNode) pm;
default:
pm->u.str = dupstring("yes");
pm->flags |= PM_SCALAR;
return (HashNode) pm;
}
if ((tcstr = tgetstr(name, &u)) != NULL && tcstr != (char *)-1)
{
pm->u.str = dupstring(tcstr);
pm->flags |= PM_SCALAR;
}
else
{
/* zwarn("no such capability: %s", name, 0); */
pm->u.str = dupstring("");
pm->flags |= PM_UNSET;
}
return (HashNode) pm;
}
/**/
static void
scantermcap(HashTable ht, ScanFunc func, int flags)
{
Param pm = NULL;
int num;
char **capcode, *tcstr, buf[2048], *u;
#ifndef HAVE_NUMCODES
static char *numcodes[] = {
"co", "it", "lh", "lw", "li", "lm", "sg", "ma", "Co", "pa", "MW",
"NC", "Nl", "pb", "vt", "ws", "Yo", "Yp", "Ya", "BT", "Yc", "Yb",
"Yd", "Ye", "Yf", "Yg", "Yh", "Yi", "Yk", "Yj", "Yl", "Ym", "Yn",
NULL};
#endif
#ifndef HAVE_STRCODES
static char *strcodes[] = {
"ac", "bt", "bl", "cr", "ZA", "ZB", "ZC", "ZD", "cs", "rP", "ct",
"MC", "cl", "cb", "ce", "cd", "ch", "CC", "CW", "cm", "do", "ho",
"vi", "le", "CM", "ve", "nd", "ll", "up", "vs", "ZE", "dc", "dl",
"DI", "ds", "DK", "hd", "eA", "as", "SA", "mb", "md", "ti", "dm",
"mh", "ZF", "ZG", "im", "ZH", "ZI", "ZJ", "ZK", "ZL", "mp", "mr",
"mk", "ZM", "so", "ZN", "ZO", "us", "ZP", "SX", "ec", "ae", "RA",
"me", "te", "ed", "ZQ", "ei", "ZR", "ZS", "ZT", "ZU", "se", "ZV",
"ZW", "ue", "ZX", "RX", "PA", "fh", "vb", "ff", "fs", "WG", "HU",
"i1", "is", "i3", "if", "iP", "Ic", "Ip", "ic", "al", "ip", "K1",
"K3", "K2", "kb", "@1", "kB", "K4", "K5", "@2", "ka", "kC", "@3",
"@4", "@5", "@6", "kt", "kD", "kL", "kd", "kM", "@7", "@8", "kE",
"kS", "@9", "k0", "k1", "k;", "F1", "F2", "F3", "F4", "F5", "F6",
"F7", "F8", "F9", "k2", "FA", "FB", "FC", "FD", "FE", "FF", "FG",
"FH", "FI", "FJ", "k3", "FK", "FL", "FM", "FN", "FO", "FP", "FQ",
"FR", "FS", "FT", "k4", "FU", "FV", "FW", "FX", "FY", "FZ", "Fa",
"Fb", "Fc", "Fd", "k5", "Fe", "Ff", "Fg", "Fh", "Fi", "Fj", "Fk",
"Fl", "Fm", "Fn", "k6", "Fo", "Fp", "Fq", "Fr", "k7", "k8", "k9",
"@0", "%1", "kh", "kI", "kA", "kl", "kH", "%2", "%3", "%4", "%5",
"kN", "%6", "%7", "kP", "%8", "%9", "%0", "&1", "&2", "&3", "&4",
"&5", "kr", "&6", "&9", "&0", "*1", "*2", "*3", "*4", "*5", "*6",
"*7", "*8", "*9", "kF", "*0", "#1", "#2", "#3", "#4", "%a", "%b",
"%c", "%d", "%e", "%f", "kR", "%g", "%h", "%i", "%j", "!1", "!2",
"kT", "!3", "&7", "&8", "ku", "ke", "ks", "l0", "l1", "la", "l2",
"l3", "l4", "l5", "l6", "l7", "l8", "l9", "Lf", "LF", "LO", "mo",
"mm", "ZY", "ZZ", "Za", "Zb", "Zc", "Zd", "nw", "Ze", "oc", "op",
"pc", "DC", "DL", "DO", "Zf", "IC", "SF", "AL", "LE", "Zg", "RI",
"Zh", "SR", "UP", "Zi", "pk", "pl", "px", "pn", "ps", "pO", "pf",
"po", "PU", "QD", "RC", "rp", "RF", "r1", "r2", "r3", "rf", "rc",
"cv", "sc", "sf", "sr", "Zj", "sa", "Sb", "Zk", "Zl", "SC", "sp",
"Sf", "ML", "Zm", "MR", "Zn", "st", "Zo", "Zp", "wi", "Zq", "Zr",
"Zs", "Zt", "Zu", "Zv", "ta", "Zw", "ts", "TO", "uc", "hu", "u0",
"u1", "u2", "u3", "u4", "u5", "u6", "u7", "u8", "u9", "WA", "XF",
"XN", "Zx", "S8", "Yv", "Zz", "Xy", "Zy", "ci", "Yw", "Yx", "dv",
"S1", "Yy", "S2", "S4", "S3", "S5", "Gm", "Km", "Mi", "S6", "xl",
"RQ", "S7", "s0", "s1", "s2", "s3", "AB", "AF", "Yz", "ML", "YZ",
"MT", "Xh", "Xl", "Xo", "Xr", "Xt", "Xv", "sA", "sL", NULL};
#endif
pm = (Param) zhalloc(sizeof(struct param));
pm->sets.cfn = NULL;
pm->gets.cfn = strgetfn;
pm->sets.ifn = NULL;
pm->gets.ifn = intgetfn;
pm->unsetfn = NULL;
pm->ct = 0;
pm->env = NULL;
pm->ename = NULL;
pm->old = NULL;
u = buf;
pm->flags = PM_READONLY | PM_SCALAR;
for (capcode = (char **)boolcodes; *capcode; capcode++) {
if ((num = ztgetflag(*capcode)) != -1) {
pm->u.str = num ? dupstring("yes") : dupstring("no");
pm->nam = dupstring(*capcode);
func((HashNode) pm, flags);
}
}
pm->flags = PM_READONLY | PM_INTEGER;
for (capcode = (char **)numcodes; *capcode; capcode++) {
if ((num = tgetnum(*capcode)) != -1) {
pm->u.val = num;
pm->nam = dupstring(*capcode);
func((HashNode) pm, flags);
}
}
pm->flags = PM_READONLY | PM_SCALAR;
for (capcode = (char **)strcodes; *capcode; capcode++) {
if ((tcstr = (char *)tgetstr(*capcode,&u)) != NULL &&
tcstr != (char *)-1) {
pm->u.str = dupstring(tcstr);
pm->nam = dupstring(*capcode);
func((HashNode) pm, flags);
}
}
}
/**/
#endif /* HAVE_TGETENT */
/**/
int
setup_(Module m)
{
return 0;
}
/**/
int
boot_(Module m)
{
#ifdef HAVE_TGETENT
# ifdef HAVE_SETUPTERM
setupterm((char *)0, 1, (int *)0);
# endif
if (!createtchash())
return 1;
#else
unsetparam(termcap_nam);
#endif
return !addbuiltins(m->nam, bintab, sizeof(bintab)/sizeof(*bintab));
}
/**/
int
cleanup_(Module m)
{
#ifdef HAVE_TGETENT
Param pm;
if ((pm = (Param) paramtab->getnode(paramtab, termcap_nam)) &&
pm == termcap_pm) {
pm->flags &= ~PM_READONLY;
unsetparam_pm(pm, 0, 1);
}
#endif
deletebuiltins(m->nam, bintab, sizeof(bintab)/sizeof(*bintab));
return 0;
}
/**/
int
finish_(Module m)
{
return 0;
}
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Compile errors for zsh 4.0.4 on Aix 4.3.3
2002-05-09 14:08 Compile errors for zsh 4.0.4 on Aix 4.3.3 travis
@ 2002-05-09 15:03 ` Bart Schaefer
2002-05-09 15:05 ` Borsenkow Andrej
2002-05-09 15:08 ` Bart Schaefer
2 siblings, 0 replies; 9+ messages in thread
From: Bart Schaefer @ 2002-05-09 15:03 UTC (permalink / raw)
To: travis, zsh-workers
On May 9, 9:08am, travis@jedi.net wrote:
}
} The Etc/MACHINES file said you want more info on this error.
} Here it is. I have attached two of the relevant files.
} Please let me know if you need more.
What are the definitions of HAVE_TGETENT and USES_TERM_H in your config.h
file?
What does your config.log file have to say about the configure tests that
generated those definitions?
Thanks ...
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Compile errors for zsh 4.0.4 on Aix 4.3.3
2002-05-09 14:08 Compile errors for zsh 4.0.4 on Aix 4.3.3 travis
2002-05-09 15:03 ` Bart Schaefer
@ 2002-05-09 15:05 ` Borsenkow Andrej
2002-05-09 15:31 ` Borsenkow Andrej
2002-05-09 15:08 ` Bart Schaefer
2 siblings, 1 reply; 9+ messages in thread
From: Borsenkow Andrej @ 2002-05-09 15:05 UTC (permalink / raw)
To: travis; +Cc: zsh-workers
В Чтв, 09.05.2002, в 18:08, travis@jedi.net написал:
> The Etc/MACHINES file said you want more info on this error.
> Here it is. I have attached two of the relevant files.
> Please let me know if you need more.
>
> make[3]: Entering directory `/home/travis/aixbin/zsh-4.0.4/Src/Modules'
> cc -qlanglvl=ansi -c -I. -DHAVE_CONFIG_H -O -o parameter.o parameter.c
> echo '' parameter.o | sed 's" " Modules/"g' >> ../../Src/stamp-modobjs.tmp
> cc -qlanglvl=ansi -c -I. -DHAVE_CONFIG_H -O -o termcap.o termcap.c
> "termcap.c", line 71.13: 1506-334 (S) Identifier boolcodes has already been defined on line 1342 of "/usr/include/term.h".
>
Thank you for feedback but unfortunately it is not the info that helps.
It appears exactly the problem as mentioned in Etc/MACHINES - when
configure tests for boolcodes & Co it does not find them (because they
are missing in library or at least not exported) so it decides to use
local versions. And this clashes with declaration in term.h. What was
meant was some hint how to detect this condition.
Proper way to fix it would be
- use something like _zsh_boolcodes internally
- check for both declaration and availablility
- on well-behaving systems simply do #define _zsh_boolcodes boolcodes
- on bad systems leave _zsh_boolcodes as local definition.
Unfortunately (proper) test for declaration is missing in autoconf 2.13
and honestly speaking I am reluctant to backport it from autoconf 2.5x.
If anybody feels like doing it - he is welcome.
And I know that current 4.0 maintainer is reluctant to forget 2.13
compatibility :-)
-andrej
_PLEASE_ next time when you send 1000+ lines to list at least compress
them. Much better is first ask if this is really needed.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Compile errors for zsh 4.0.4 on Aix 4.3.3
2002-05-09 14:08 Compile errors for zsh 4.0.4 on Aix 4.3.3 travis
2002-05-09 15:03 ` Bart Schaefer
2002-05-09 15:05 ` Borsenkow Andrej
@ 2002-05-09 15:08 ` Bart Schaefer
2002-05-09 15:17 ` Borsenkow Andrej
2002-05-10 23:01 ` Albert Chin
2 siblings, 2 replies; 9+ messages in thread
From: Bart Schaefer @ 2002-05-09 15:08 UTC (permalink / raw)
To: travis, zsh-workers
On May 9, 9:08am, travis@jedi.net wrote:
}
} The Etc/MACHINES file said you want more info on this error.
Hmm, actually I should have re-read Etc/MACHINES more closely before I
responded.
The error that you're seeing:
} "termcap.c", line 71.13: 1506-334 (S) Identifier boolcodes has already been defined on line 1342 of "/usr/include/term.h".
is happening *because* "Zsh now defaults to termcap on AIX;" the problem
about which we want more information is "variables boolcodes and some other
are declared in term.h but missing is libcurses.a."
It's a bit confusing that your build actually included term.h even though
it was supposedly defaulting to termcap, so that might still be worth
looking into, but it's not the problem Etc/MACHINES is talking about.
--
Bart Schaefer Brass Lantern Enterprises
http://www.well.com/user/barts http://www.brasslantern.com
Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Compile errors for zsh 4.0.4 on Aix 4.3.3
2002-05-09 15:08 ` Bart Schaefer
@ 2002-05-09 15:17 ` Borsenkow Andrej
2002-05-10 23:01 ` Albert Chin
1 sibling, 0 replies; 9+ messages in thread
From: Borsenkow Andrej @ 2002-05-09 15:17 UTC (permalink / raw)
To: Bart Schaefer; +Cc: travis, zsh-workers
В Чтв, 09.05.2002, в 19:08, Bart Schaefer написал:
>
> It's a bit confusing that your build actually included term.h even though
> it was supposedly defaulting to
Well, the only thing it does is to put termcap first in library search
order:
[case "$host_os" in
hpux10.*|hpux11.*|solaris*)
termcap_curses_order="curses ncurses termcap" ;;
*) termcap_curses_order="termcap curses ncurses" ;;
esac])dnl
Now we may not have libtermcap installed (is it possible?) or logic in
termcap.c still selects USES_TERM_H. I must admit I never fully
understood the logic that have been used to select between them.
-andrej
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Compile errors for zsh 4.0.4 on Aix 4.3.3
2002-05-09 15:05 ` Borsenkow Andrej
@ 2002-05-09 15:31 ` Borsenkow Andrej
2002-05-09 15:45 ` Borsenkow Andrej
2002-05-09 15:56 ` Bart Schaefer
0 siblings, 2 replies; 9+ messages in thread
From: Borsenkow Andrej @ 2002-05-09 15:31 UTC (permalink / raw)
To: zsh-workers
В Чтв, 09.05.2002, в 19:05, Borsenkow Andrej написал:
>
> Proper way to fix it would be
>
> - use something like _zsh_boolcodes internally
> - check for both declaration and availablility
> - on well-behaving systems simply do #define _zsh_boolcodes boolcodes
> - on bad systems leave _zsh_boolcodes as local definition.
>
> Unfortunately (proper) test for declaration is missing in autoconf 2.13
> and honestly speaking I am reluctant to backport it from autoconf 2.5x.
> If anybody feels like doing it - he is welcome.
>
Stupid me. There is no need to test for declaration. Just test for
availability and #define if available. Else simply use local name that
do not clash.
Whose baby termcap/terminfo is? I am afraid to touch it :-)
-andrej
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Compile errors for zsh 4.0.4 on Aix 4.3.3
2002-05-09 15:31 ` Borsenkow Andrej
@ 2002-05-09 15:45 ` Borsenkow Andrej
2002-05-09 15:56 ` Bart Schaefer
1 sibling, 0 replies; 9+ messages in thread
From: Borsenkow Andrej @ 2002-05-09 15:45 UTC (permalink / raw)
To: travis; +Cc: zsh-workers
В Чтв, 09.05.2002, в 19:31, Borsenkow Andrej написал:
> Stupid me. There is no need to test for declaration. Just test for
> availability and #define if available. Else simply use local name that
> do not clash.
>
> Whose baby termcap/terminfo is? I am afraid to touch it :-)
>
OTOH why not :-)
Could you try this patch?
-andrej
Index: Etc/MACHINES
===================================================================
RCS file: /cvsroot/zsh/zsh/Etc/MACHINES,v
retrieving revision 1.12.4.2
diff -u -r1.12.4.2 MACHINES
--- Etc/MACHINES 23 Oct 2001 06:44:05 -0000 1.12.4.2
+++ Etc/MACHINES 9 May 2002 15:44:02 -0000
@@ -89,12 +89,6 @@
4.1, though native cc works. More information about this problem
would be appreciated.
- It was reported, that at least some 4.x versions have problem
- with curses - variables boolcodes and some other are declared
- in term.h but missing is libcurses.a. That makes native compiler
- very unhappy (GCC 3.0 apparently does not mind). Zsh now defaults
- to termcap on AIX; any info about this problem is appreciated.
-
Linux: Linux 2.* (various 32-bit and 64-bit processors)
Should build `out-of-the-box'.
Index: Src/Modules/termcap.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Modules/termcap.c,v
retrieving revision 1.13.4.1
diff -u -r1.13.4.1 termcap.c
--- Src/Modules/termcap.c 18 Jun 2001 17:40:52 -0000 1.13.4.1
+++ Src/Modules/termcap.c 9 May 2002 15:44:03 -0000
@@ -67,8 +67,10 @@
static Param termcap_pm;
-#ifndef HAVE_BOOLCODES
-static char *boolcodes[] = {
+#ifdef HAVE_BOOLCODES
+#define zsh_boolcodes boolcodes
+#else
+static char *zsh_boolcodes[] = {
"bw", "am", "ut", "cc", "xs", "YA", "YF", "YB", "xt", "xn", "eo",
"gn", "hc", "HC", "km", "YC", "hs", "hl", "in", "YG", "da", "db",
"mi", "ms", "nx", "xb", "NP", "ND", "NR", "os", "5i", "YD", "YE",
@@ -89,7 +91,7 @@
case -1:
break;
case 0:
- for (b = (char **)boolcodes; *b; ++b)
+ for (b = (char **)zsh_boolcodes; *b; ++b)
if (s[0] == (*b)[0] && s[1] == (*b)[1])
return 0;
break;
@@ -289,16 +291,20 @@
int num;
char **capcode, *tcstr, buf[2048], *u;
-#ifndef HAVE_NUMCODES
- static char *numcodes[] = {
+#ifdef HAVE_NUMCODES
+#define zsh_numcodes numcodes
+#else
+ static char *zsh_numcodes[] = {
"co", "it", "lh", "lw", "li", "lm", "sg", "ma", "Co", "pa", "MW",
"NC", "Nl", "pb", "vt", "ws", "Yo", "Yp", "Ya", "BT", "Yc", "Yb",
"Yd", "Ye", "Yf", "Yg", "Yh", "Yi", "Yk", "Yj", "Yl", "Ym", "Yn",
NULL};
#endif
-#ifndef HAVE_STRCODES
- static char *strcodes[] = {
+#ifdef HAVE_STRCODES
+#define zsh_strcodes strcodes
+#else
+ static char *zsh_strcodes[] = {
"ac", "bt", "bl", "cr", "ZA", "ZB", "ZC", "ZD", "cs", "rP", "ct",
"MC", "cl", "cb", "ce", "cd", "ch", "CC", "CW", "cm", "do", "ho",
"vi", "le", "CM", "ve", "nd", "ll", "up", "vs", "ZE", "dc", "dl",
@@ -350,7 +356,7 @@
u = buf;
pm->flags = PM_READONLY | PM_SCALAR;
- for (capcode = (char **)boolcodes; *capcode; capcode++) {
+ for (capcode = (char **)zsh_boolcodes; *capcode; capcode++) {
if ((num = ztgetflag(*capcode)) != -1) {
pm->u.str = num ? dupstring("yes") : dupstring("no");
pm->nam = dupstring(*capcode);
@@ -359,7 +365,7 @@
}
pm->flags = PM_READONLY | PM_INTEGER;
- for (capcode = (char **)numcodes; *capcode; capcode++) {
+ for (capcode = (char **)zsh_numcodes; *capcode; capcode++) {
if ((num = tgetnum(*capcode)) != -1) {
pm->u.val = num;
pm->nam = dupstring(*capcode);
@@ -368,7 +374,7 @@
}
pm->flags = PM_READONLY | PM_SCALAR;
- for (capcode = (char **)strcodes; *capcode; capcode++) {
+ for (capcode = (char **)zsh_strcodes; *capcode; capcode++) {
if ((tcstr = (char *)tgetstr(*capcode,&u)) != NULL &&
tcstr != (char *)-1) {
pm->u.str = dupstring(tcstr);
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Compile errors for zsh 4.0.4 on Aix 4.3.3
2002-05-09 15:31 ` Borsenkow Andrej
2002-05-09 15:45 ` Borsenkow Andrej
@ 2002-05-09 15:56 ` Bart Schaefer
1 sibling, 0 replies; 9+ messages in thread
From: Bart Schaefer @ 2002-05-09 15:56 UTC (permalink / raw)
To: Borsenkow Andrej; +Cc: zsh-workers
On 9 May 2002, Borsenkow Andrej wrote:
> Whose baby termcap/terminfo is? I am afraid to touch it :-)
Clint was the original perpetrator of the modulized versions.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Compile errors for zsh 4.0.4 on Aix 4.3.3
2002-05-09 15:08 ` Bart Schaefer
2002-05-09 15:17 ` Borsenkow Andrej
@ 2002-05-10 23:01 ` Albert Chin
1 sibling, 0 replies; 9+ messages in thread
From: Albert Chin @ 2002-05-10 23:01 UTC (permalink / raw)
To: zsh-workers
On Thu, May 09, 2002 at 03:08:23PM +0000, Bart Schaefer wrote:
> On May 9, 9:08am, travis@jedi.net wrote:
> } "termcap.c", line 71.13: 1506-334 (S) Identifier boolcodes has already been defined on line 1342 of "/usr/include/term.h".
>
> is happening *because* "Zsh now defaults to termcap on AIX;" the problem
> about which we want more information is "variables boolcodes and some other
> are declared in term.h but missing is libcurses.a."
>
> It's a bit confusing that your build actually included term.h even though
> it was supposedly defaulting to termcap, so that might still be worth
> looking into, but it's not the problem Etc/MACHINES is talking about.
The patch below worked for us with 4.0.4 and AIX 4.3.2.
--
albert chin (china@thewrittenword.com)
-- snip snip
--- Src/Modules/termcap.c.orig Sat Nov 10 13:26:59 2001
+++ Src/Modules/termcap.c Sat Nov 10 13:27:53 2001
@@ -67,20 +67,20 @@
static Param termcap_pm;
-#ifndef HAVE_BOOLCODES
-static char *boolcodes[] = {
- "bw", "am", "ut", "cc", "xs", "YA", "YF", "YB", "xt", "xn", "eo",
- "gn", "hc", "HC", "km", "YC", "hs", "hl", "in", "YG", "da", "db",
- "mi", "ms", "nx", "xb", "NP", "ND", "NR", "os", "5i", "YD", "YE",
- "es", "hz", "ul", "xo", NULL};
-#endif
-
/**/
static int
ztgetflag(char *s)
{
char **b;
+#ifndef HAVE_BOOLCODES
+ static char *boolcodes[] = {
+ "bw", "am", "ut", "cc", "xs", "YA", "YF", "YB", "xt", "xn", "eo",
+ "gn", "hc", "HC", "km", "YC", "hs", "hl", "in", "YG", "da", "db",
+ "mi", "ms", "nx", "xb", "NP", "ND", "NR", "os", "5i", "YD", "YE",
+ "es", "hz", "ul", "xo", NULL};
+#endif
+
/* ncurses can tell if an existing boolean capability is *
* off, but other curses variants can't, so we fudge it. *
* This feature of ncurses appears to have gone away as *
@@ -295,6 +295,14 @@
"NC", "Nl", "pb", "vt", "ws", "Yo", "Yp", "Ya", "BT", "Yc", "Yb",
"Yd", "Ye", "Yf", "Yg", "Yh", "Yi", "Yk", "Yj", "Yl", "Ym", "Yn",
NULL};
+#endif
+
+#ifndef HAVE_BOOLCODES
+ static char *boolcodes[] = {
+ "bw", "am", "ut", "cc", "xs", "YA", "YF", "YB", "xt", "xn", "eo",
+ "gn", "hc", "HC", "km", "YC", "hs", "hl", "in", "YG", "da", "db",
+ "mi", "ms", "nx", "xb", "NP", "ND", "NR", "os", "5i", "YD", "YE",
+ "es", "hz", "ul", "xo", NULL};
#endif
#ifndef HAVE_STRCODES
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2002-05-10 23:08 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-05-09 14:08 Compile errors for zsh 4.0.4 on Aix 4.3.3 travis
2002-05-09 15:03 ` Bart Schaefer
2002-05-09 15:05 ` Borsenkow Andrej
2002-05-09 15:31 ` Borsenkow Andrej
2002-05-09 15:45 ` Borsenkow Andrej
2002-05-09 15:56 ` Bart Schaefer
2002-05-09 15:08 ` Bart Schaefer
2002-05-09 15:17 ` Borsenkow Andrej
2002-05-10 23:01 ` Albert Chin
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).