unibilium.h - ncurses terminfo parser and utility functions
This library provides functions and types to access terminal
descriptions in the terminfo database (in the format used by ncurses). It
can parse compiled terminfo entries from memory or files, access and modify
their capabilities, and generate new terminfo entries.
The following types are provided:
- unibi_term
- The main type. It represents a terminfo entry. Most functions take a
pointer to this structure.
- unibi_var_t
- A type that represents the values in format string operations, which are
either integers or strings. Its exact representation is unspecified.
See unibi_var_from_num(3),
unibi_var_from_str(3), unibi_num_from_var(3),
unibi_str_from_var(3) for how to use values of this type.
However, it is guaranteed that zero-initializing a
"unibi_var_t" is equivalent to
unibi_var_from_num(0).
- enum unibi_boolean
- An enumeration of boolean capabilities. It has the following
elements:
- "unibi_auto_left_margin"
- "unibi_auto_right_margin"
- "unibi_no_esc_ctlc"
- "unibi_ceol_standout_glitch"
- "unibi_eat_newline_glitch"
- "unibi_erase_overstrike"
- "unibi_generic_type"
- "unibi_hard_copy"
- "unibi_has_meta_key"
- "unibi_has_status_line"
- "unibi_insert_null_glitch"
- "unibi_memory_above"
- "unibi_memory_below"
- "unibi_move_insert_mode"
- "unibi_move_standout_mode"
- "unibi_over_strike"
- "unibi_status_line_esc_ok"
- "unibi_dest_tabs_magic_smso"
- "unibi_tilde_glitch"
- "unibi_transparent_underline"
- "unibi_xon_xoff"
- "unibi_needs_xon_xoff"
- "unibi_prtr_silent"
- "unibi_hard_cursor"
- "unibi_non_rev_rmcup"
- "unibi_no_pad_char"
- "unibi_non_dest_scroll_region"
- "unibi_can_change"
- "unibi_back_color_erase"
- "unibi_hue_lightness_saturation"
- "unibi_col_addr_glitch"
- "unibi_cr_cancels_micro_mode"
- "unibi_has_print_wheel"
- "unibi_row_addr_glitch"
- "unibi_semi_auto_right_margin"
- "unibi_cpi_changes_res"
- "unibi_lpi_changes_res"
- "unibi_backspaces_with_bs"
- "unibi_crt_no_scrolling"
- "unibi_no_correctly_working_cr"
- "unibi_gnu_has_meta_key"
- "unibi_linefeed_is_newline"
- "unibi_has_hardware_tabs"
- "unibi_return_does_clr_eol"
The special values
"unibi_boolean_begin_" and
"unibi_boolean_end_" are provided to make
it easier for programs to loop over all boolean capabilities. All of the
enum values listed above are greater than
"unibi_boolean_begin_" and less than
"unibi_boolean_end_".
- enum
unibi_numeric
- An enumeration of numeric capabilities. It has the following
elements:
- "unibi_columns"
- "unibi_init_tabs"
- "unibi_lines"
- "unibi_lines_of_memory"
- "unibi_magic_cookie_glitch"
- "unibi_padding_baud_rate"
- "unibi_virtual_terminal"
- "unibi_width_status_line"
- "unibi_num_labels"
- "unibi_label_height"
- "unibi_label_width"
- "unibi_max_attributes"
- "unibi_maximum_windows"
- "unibi_max_colors"
- "unibi_max_pairs"
- "unibi_no_color_video"
- "unibi_buffer_capacity"
- "unibi_dot_vert_spacing"
- "unibi_dot_horz_spacing"
- "unibi_max_micro_address"
- "unibi_max_micro_jump"
- "unibi_micro_col_size"
- "unibi_micro_line_size"
- "unibi_number_of_pins"
- "unibi_output_res_char"
- "unibi_output_res_line"
- "unibi_output_res_horz_inch"
- "unibi_output_res_vert_inch"
- "unibi_print_rate"
- "unibi_wide_char_size"
- "unibi_buttons"
- "unibi_bit_image_entwining"
- "unibi_bit_image_type"
- "unibi_magic_cookie_glitch_ul"
- "unibi_carriage_return_delay"
- "unibi_new_line_delay"
- "unibi_backspace_delay"
- "unibi_horizontal_tab_delay"
- "unibi_number_of_function_keys"
The special values
"unibi_numeric_begin_" and
"unibi_numeric_end_" are provided to make
it easier for programs to loop over all numeric capabilities. All of the
enum values listed above are greater than
"unibi_numeric_begin_" and less than
"unibi_numeric_end_".
- enum unibi_string
- An enumeration of string capabilities. It has the following elements:
- "unibi_back_tab"
- "unibi_bell"
- "unibi_carriage_return"
- "unibi_change_scroll_region"
- "unibi_clear_all_tabs"
- "unibi_clear_screen"
- "unibi_clr_eol"
- "unibi_clr_eos"
- "unibi_column_address"
- "unibi_command_character"
- "unibi_cursor_address"
- "unibi_cursor_down"
- "unibi_cursor_home"
- "unibi_cursor_invisible"
- "unibi_cursor_left"
- "unibi_cursor_mem_address"
- "unibi_cursor_normal"
- "unibi_cursor_right"
- "unibi_cursor_to_ll"
- "unibi_cursor_up"
- "unibi_cursor_visible"
- "unibi_delete_character"
- "unibi_delete_line"
- "unibi_dis_status_line"
- "unibi_down_half_line"
- "unibi_enter_alt_charset_mode"
- "unibi_enter_blink_mode"
- "unibi_enter_bold_mode"
- "unibi_enter_ca_mode"
- "unibi_enter_delete_mode"
- "unibi_enter_dim_mode"
- "unibi_enter_insert_mode"
- "unibi_enter_secure_mode"
- "unibi_enter_protected_mode"
- "unibi_enter_reverse_mode"
- "unibi_enter_standout_mode"
- "unibi_enter_underline_mode"
- "unibi_erase_chars"
- "unibi_exit_alt_charset_mode"
- "unibi_exit_attribute_mode"
- "unibi_exit_ca_mode"
- "unibi_exit_delete_mode"
- "unibi_exit_insert_mode"
- "unibi_exit_standout_mode"
- "unibi_exit_underline_mode"
- "unibi_flash_screen"
- "unibi_form_feed"
- "unibi_from_status_line"
- "unibi_init_1string"
- "unibi_init_2string"
- "unibi_init_3string"
- "unibi_init_file"
- "unibi_insert_character"
- "unibi_insert_line"
- "unibi_insert_padding"
- "unibi_key_backspace"
- "unibi_key_catab"
- "unibi_key_clear"
- "unibi_key_ctab"
- "unibi_key_dc"
- "unibi_key_dl"
- "unibi_key_down"
- "unibi_key_eic"
- "unibi_key_eol"
- "unibi_key_eos"
- "unibi_key_f0"
- "unibi_key_f1"
- "unibi_key_f10"
- "unibi_key_f2"
- "unibi_key_f3"
- "unibi_key_f4"
- "unibi_key_f5"
- "unibi_key_f6"
- "unibi_key_f7"
- "unibi_key_f8"
- "unibi_key_f9"
- "unibi_key_home"
- "unibi_key_ic"
- "unibi_key_il"
- "unibi_key_left"
- "unibi_key_ll"
- "unibi_key_npage"
- "unibi_key_ppage"
- "unibi_key_right"
- "unibi_key_sf"
- "unibi_key_sr"
- "unibi_key_stab"
- "unibi_key_up"
- "unibi_keypad_local"
- "unibi_keypad_xmit"
- "unibi_lab_f0"
- "unibi_lab_f1"
- "unibi_lab_f10"
- "unibi_lab_f2"
- "unibi_lab_f3"
- "unibi_lab_f4"
- "unibi_lab_f5"
- "unibi_lab_f6"
- "unibi_lab_f7"
- "unibi_lab_f8"
- "unibi_lab_f9"
- "unibi_meta_off"
- "unibi_meta_on"
- "unibi_newline"
- "unibi_pad_char"
- "unibi_parm_dch"
- "unibi_parm_delete_line"
- "unibi_parm_down_cursor"
- "unibi_parm_ich"
- "unibi_parm_index"
- "unibi_parm_insert_line"
- "unibi_parm_left_cursor"
- "unibi_parm_right_cursor"
- "unibi_parm_rindex"
- "unibi_parm_up_cursor"
- "unibi_pkey_key"
- "unibi_pkey_local"
- "unibi_pkey_xmit"
- "unibi_print_screen"
- "unibi_prtr_off"
- "unibi_prtr_on"
- "unibi_repeat_char"
- "unibi_reset_1string"
- "unibi_reset_2string"
- "unibi_reset_3string"
- "unibi_reset_file"
- "unibi_restore_cursor"
- "unibi_row_address"
- "unibi_save_cursor"
- "unibi_scroll_forward"
- "unibi_scroll_reverse"
- "unibi_set_attributes"
- "unibi_set_tab"
- "unibi_set_window"
- "unibi_tab"
- "unibi_to_status_line"
- "unibi_underline_char"
- "unibi_up_half_line"
- "unibi_init_prog"
- "unibi_key_a1"
- "unibi_key_a3"
- "unibi_key_b2"
- "unibi_key_c1"
- "unibi_key_c3"
- "unibi_prtr_non"
- "unibi_char_padding"
- "unibi_acs_chars"
- "unibi_plab_norm"
- "unibi_key_btab"
- "unibi_enter_xon_mode"
- "unibi_exit_xon_mode"
- "unibi_enter_am_mode"
- "unibi_exit_am_mode"
- "unibi_xon_character"
- "unibi_xoff_character"
- "unibi_ena_acs"
- "unibi_label_on"
- "unibi_label_off"
- "unibi_key_beg"
- "unibi_key_cancel"
- "unibi_key_close"
- "unibi_key_command"
- "unibi_key_copy"
- "unibi_key_create"
- "unibi_key_end"
- "unibi_key_enter"
- "unibi_key_exit"
- "unibi_key_find"
- "unibi_key_help"
- "unibi_key_mark"
- "unibi_key_message"
- "unibi_key_move"
- "unibi_key_next"
- "unibi_key_open"
- "unibi_key_options"
- "unibi_key_previous"
- "unibi_key_print"
- "unibi_key_redo"
- "unibi_key_reference"
- "unibi_key_refresh"
- "unibi_key_replace"
- "unibi_key_restart"
- "unibi_key_resume"
- "unibi_key_save"
- "unibi_key_suspend"
- "unibi_key_undo"
- "unibi_key_sbeg"
- "unibi_key_scancel"
- "unibi_key_scommand"
- "unibi_key_scopy"
- "unibi_key_screate"
- "unibi_key_sdc"
- "unibi_key_sdl"
- "unibi_key_select"
- "unibi_key_send"
- "unibi_key_seol"
- "unibi_key_sexit"
- "unibi_key_sfind"
- "unibi_key_shelp"
- "unibi_key_shome"
- "unibi_key_sic"
- "unibi_key_sleft"
- "unibi_key_smessage"
- "unibi_key_smove"
- "unibi_key_snext"
- "unibi_key_soptions"
- "unibi_key_sprevious"
- "unibi_key_sprint"
- "unibi_key_sredo"
- "unibi_key_sreplace"
- "unibi_key_sright"
- "unibi_key_srsume"
- "unibi_key_ssave"
- "unibi_key_ssuspend"
- "unibi_key_sundo"
- "unibi_req_for_input"
- "unibi_key_f11"
- "unibi_key_f12"
- "unibi_key_f13"
- "unibi_key_f14"
- "unibi_key_f15"
- "unibi_key_f16"
- "unibi_key_f17"
- "unibi_key_f18"
- "unibi_key_f19"
- "unibi_key_f20"
- "unibi_key_f21"
- "unibi_key_f22"
- "unibi_key_f23"
- "unibi_key_f24"
- "unibi_key_f25"
- "unibi_key_f26"
- "unibi_key_f27"
- "unibi_key_f28"
- "unibi_key_f29"
- "unibi_key_f30"
- "unibi_key_f31"
- "unibi_key_f32"
- "unibi_key_f33"
- "unibi_key_f34"
- "unibi_key_f35"
- "unibi_key_f36"
- "unibi_key_f37"
- "unibi_key_f38"
- "unibi_key_f39"
- "unibi_key_f40"
- "unibi_key_f41"
- "unibi_key_f42"
- "unibi_key_f43"
- "unibi_key_f44"
- "unibi_key_f45"
- "unibi_key_f46"
- "unibi_key_f47"
- "unibi_key_f48"
- "unibi_key_f49"
- "unibi_key_f50"
- "unibi_key_f51"
- "unibi_key_f52"
- "unibi_key_f53"
- "unibi_key_f54"
- "unibi_key_f55"
- "unibi_key_f56"
- "unibi_key_f57"
- "unibi_key_f58"
- "unibi_key_f59"
- "unibi_key_f60"
- "unibi_key_f61"
- "unibi_key_f62"
- "unibi_key_f63"
- "unibi_clr_bol"
- "unibi_clear_margins"
- "unibi_set_left_margin"
- "unibi_set_right_margin"
- "unibi_label_format"
- "unibi_set_clock"
- "unibi_display_clock"
- "unibi_remove_clock"
- "unibi_create_window"
- "unibi_goto_window"
- "unibi_hangup"
- "unibi_dial_phone"
- "unibi_quick_dial"
- "unibi_tone"
- "unibi_pulse"
- "unibi_flash_hook"
- "unibi_fixed_pause"
- "unibi_wait_tone"
- "unibi_user0"
- "unibi_user1"
- "unibi_user2"
- "unibi_user3"
- "unibi_user4"
- "unibi_user5"
- "unibi_user6"
- "unibi_user7"
- "unibi_user8"
- "unibi_user9"
- "unibi_orig_pair"
- "unibi_orig_colors"
- "unibi_initialize_color"
- "unibi_initialize_pair"
- "unibi_set_color_pair"
- "unibi_set_foreground"
- "unibi_set_background"
- "unibi_change_char_pitch"
- "unibi_change_line_pitch"
- "unibi_change_res_horz"
- "unibi_change_res_vert"
- "unibi_define_char"
- "unibi_enter_doublewide_mode"
- "unibi_enter_draft_quality"
- "unibi_enter_italics_mode"
- "unibi_enter_leftward_mode"
- "unibi_enter_micro_mode"
- "unibi_enter_near_letter_quality"
- "unibi_enter_normal_quality"
- "unibi_enter_shadow_mode"
- "unibi_enter_subscript_mode"
- "unibi_enter_superscript_mode"
- "unibi_enter_upward_mode"
- "unibi_exit_doublewide_mode"
- "unibi_exit_italics_mode"
- "unibi_exit_leftward_mode"
- "unibi_exit_micro_mode"
- "unibi_exit_shadow_mode"
- "unibi_exit_subscript_mode"
- "unibi_exit_superscript_mode"
- "unibi_exit_upward_mode"
- "unibi_micro_column_address"
- "unibi_micro_down"
- "unibi_micro_left"
- "unibi_micro_right"
- "unibi_micro_row_address"
- "unibi_micro_up"
- "unibi_order_of_pins"
- "unibi_parm_down_micro"
- "unibi_parm_left_micro"
- "unibi_parm_right_micro"
- "unibi_parm_up_micro"
- "unibi_select_char_set"
- "unibi_set_bottom_margin"
- "unibi_set_bottom_margin_parm"
- "unibi_set_left_margin_parm"
- "unibi_set_right_margin_parm"
- "unibi_set_top_margin"
- "unibi_set_top_margin_parm"
- "unibi_start_bit_image"
- "unibi_start_char_set_def"
- "unibi_stop_bit_image"
- "unibi_stop_char_set_def"
- "unibi_subscript_characters"
- "unibi_superscript_characters"
- "unibi_these_cause_cr"
- "unibi_zero_motion"
- "unibi_char_set_names"
- "unibi_key_mouse"
- "unibi_mouse_info"
- "unibi_req_mouse_pos"
- "unibi_get_mouse"
- "unibi_set_a_foreground"
- "unibi_set_a_background"
- "unibi_pkey_plab"
- "unibi_device_type"
- "unibi_code_set_init"
- "unibi_set0_des_seq"
- "unibi_set1_des_seq"
- "unibi_set2_des_seq"
- "unibi_set3_des_seq"
- "unibi_set_lr_margin"
- "unibi_set_tb_margin"
- "unibi_bit_image_repeat"
- "unibi_bit_image_newline"
- "unibi_bit_image_carriage_return"
- "unibi_color_names"
- "unibi_define_bit_image_region"
- "unibi_end_bit_image_region"
- "unibi_set_color_band"
- "unibi_set_page_length"
- "unibi_display_pc_char"
- "unibi_enter_pc_charset_mode"
- "unibi_exit_pc_charset_mode"
- "unibi_enter_scancode_mode"
- "unibi_exit_scancode_mode"
- "unibi_pc_term_options"
- "unibi_scancode_escape"
- "unibi_alt_scancode_esc"
- "unibi_enter_horizontal_hl_mode"
- "unibi_enter_left_hl_mode"
- "unibi_enter_low_hl_mode"
- "unibi_enter_right_hl_mode"
- "unibi_enter_top_hl_mode"
- "unibi_enter_vertical_hl_mode"
- "unibi_set_a_attributes"
- "unibi_set_pglen_inch"
- "unibi_termcap_init2"
- "unibi_termcap_reset"
- "unibi_linefeed_if_not_lf"
- "unibi_backspace_if_not_bs"
- "unibi_other_non_function_keys"
- "unibi_arrow_key_map"
- "unibi_acs_ulcorner"
- "unibi_acs_llcorner"
- "unibi_acs_urcorner"
- "unibi_acs_lrcorner"
- "unibi_acs_ltee"
- "unibi_acs_rtee"
- "unibi_acs_btee"
- "unibi_acs_ttee"
- "unibi_acs_hline"
- "unibi_acs_vline"
- "unibi_acs_plus"
- "unibi_memory_lock"
- "unibi_memory_unlock"
- "unibi_box_chars_1"
The special values
"unibi_string_begin_" and
"unibi_string_end_" are provided to make
it easier for programs to loop over all string capabilities. All of the enum
values listed above are greater than
"unibi_string_begin_" and less than
"unibi_string_end_".
terminfo(5), unibi_dummy(3),
unibi_from_mem(3), unibi_destroy(3), unibi_dump(3),
unibi_get_name(3), unibi_set_name(3),
unibi_get_aliases(3), unibi_set_aliases(3),
unibi_get_bool(3), unibi_set_bool(3), unibi_get_num(3),
unibi_set_num(3), unibi_get_str(3), unibi_set_str(3),
unibi_from_fp(3), unibi_from_fd(3), unibi_from_file(3),
unibi_from_term(3), unibi_from_env(3),
unibi_terminfo_dirs(3), unibi_name_bool(3),
unibi_short_name_bool(3), unibi_name_num(3),
unibi_short_name_num(3), unibi_name_str(3),
unibi_short_name_str(3), unibi_count_ext_bool(3),
unibi_count_ext_num(3), unibi_count_ext_str(3),
unibi_get_ext_bool(3), unibi_get_ext_num(3),
unibi_get_ext_str(3), unibi_set_ext_bool(3),
unibi_set_ext_num(3), unibi_set_ext_str(3),
unibi_get_ext_bool_name(3), unibi_get_ext_num_name(3),
unibi_get_ext_str_name(3), unibi_set_ext_bool_name(3),
unibi_set_ext_num_name(3), unibi_set_ext_str_name(3),
unibi_add_ext_bool(3), unibi_add_ext_num(3),
unibi_add_ext_str(3), unibi_del_ext_bool(3),
unibi_del_ext_num(3), unibi_del_ext_str(3),
unibi_var_from_num(3), unibi_var_from_str(3),
unibi_num_from_var(3), unibi_str_from_var(3),
unibi_format(3), unibi_run(3)