Manpages - unibilium.h.3

Table of Contents



NAME

unibilium.h - ncurses terminfo parser and utility functions

SYNOPSIS

#include <unibilium.h>

DESCRIPTION

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.

Types

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_.

SEE ALSO

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)

Author: dt

Created: 2022-02-20 Sun 20:44