Module: TermTime::DB

Defined in:
lib/termtime/db.rb

Defined Under Namespace

Classes: Boolean, Capability, Number, String

Constant Summary collapse

BOOLEANS =
{
  "bw" => Boolean.new(
    "auto_left_margin",
    "bw",
    "bool",
    "bw",
    "-",
    "-",
    "YB-G-",
    "cub1 wraps from column 0 to last column",
    0,
  ).freeze,
  "am" => Boolean.new(
    "auto_right_margin",
    "am",
    "bool",
    "am",
    "-",
    "-",
    "YBCGE",
    "terminal has automatic margins",
    1,
  ).freeze,
  "xsb" => Boolean.new(
    "no_esc_ctlc",
    "xsb",
    "bool",
    "xb",
    "-",
    "-",
    "YBCG-",
    "beehive (f1=escape, f2=ctrl C)",
    2,
  ).freeze,
  "xhp" => Boolean.new(
    "ceol_standout_glitch",
    "xhp",
    "bool",
    "xs",
    "-",
    "-",
    "YBCGE",
    "standout not erased by overwriting (hp)",
    3,
  ).freeze,
  "xenl" => Boolean.new(
    "eat_newline_glitch",
    "xenl",
    "bool",
    "xn",
    "-",
    "-",
    "YBCGE",
    "newline ignored after 80 cols (concept)",
    4,
  ).freeze,
  "eo" => Boolean.new(
    "erase_overstrike",
    "eo",
    "bool",
    "eo",
    "-",
    "-",
    "YBCG-",
    "can erase overstrikes with a blank",
    5,
  ).freeze,
  "gn" => Boolean.new(
    "generic_type",
    "gn",
    "bool",
    "gn",
    "-",
    "-",
    "YB-G-",
    "generic line type",
    6,
  ).freeze,
  "hc" => Boolean.new(
    "hard_copy",
    "hc",
    "bool",
    "hc",
    "-",
    "-",
    "YBCG-",
    "hardcopy terminal",
    7,
  ).freeze,
  "km" => Boolean.new(
    "has_meta_key",
    "km",
    "bool",
    "km",
    "-",
    "-",
    "YB-GE",
    "Has a meta key (i.e., sets 8th-bit)",
    8,
  ).freeze,
  "hs" => Boolean.new(
    "has_status_line",
    "hs",
    "bool",
    "hs",
    "-",
    "-",
    "YB-G-",
    "has extra status line",
    9,
  ).freeze,
  "in" => Boolean.new(
    "insert_null_glitch",
    "in",
    "bool",
    "in",
    "-",
    "-",
    "YBCGE",
    "insert mode distinguishes nulls",
    10,
  ).freeze,
  "da" => Boolean.new(
    "memory_above",
    "da",
    "bool",
    "da",
    "-",
    "-",
    "YBCG-",
    "display may be retained above the screen",
    11,
  ).freeze,
  "db" => Boolean.new(
    "memory_below",
    "db",
    "bool",
    "db",
    "-",
    "-",
    "YB-GE",
    "display may be retained below the screen",
    12,
  ).freeze,
  "mir" => Boolean.new(
    "move_insert_mode",
    "mir",
    "bool",
    "mi",
    "-",
    "-",
    "YBCGE",
    "safe to move while in insert mode",
    13,
  ).freeze,
  "msgr" => Boolean.new(
    "move_standout_mode",
    "msgr",
    "bool",
    "ms",
    "-",
    "-",
    "YBCGE",
    "safe to move while in standout mode",
    14,
  ).freeze,
  "os" => Boolean.new(
    "over_strike",
    "os",
    "bool",
    "os",
    "-",
    "-",
    "YBCG-",
    "terminal can overstrike",
    15,
  ).freeze,
  "eslok" => Boolean.new(
    "status_line_esc_ok",
    "eslok",
    "bool",
    "es",
    "-",
    "-",
    "YB-G-",
    "escape can be used on the status line",
    16,
  ).freeze,
  "xt" => Boolean.new(
    "dest_tabs_magic_smso",
    "xt",
    "bool",
    "xt",
    "-",
    "-",
    "YBCGE",
    "tabs destructive, magic so char (t1061)",
    17,
  ).freeze,
  "hz" => Boolean.new(
    "tilde_glitch",
    "hz",
    "bool",
    "hz",
    "-",
    "-",
    "YB-GE",
    "cannot print ~'s (Hazeltine)",
    18,
  ).freeze,
  "ul" => Boolean.new(
    "transparent_underline",
    "ul",
    "bool",
    "ul",
    "-",
    "-",
    "YBCGE",
    "underline character overstrikes",
    19,
  ).freeze,
  "xon" => Boolean.new(
    "xon_xoff",
    "xon",
    "bool",
    "xo",
    "-",
    "-",
    "YB---",
    "terminal uses xon/xoff handshaking",
    20,
  ).freeze,
  "nxon" => Boolean.new(
    "needs_xon_xoff",
    "nxon",
    "bool",
    "nx",
    "-",
    "-",
    "-----",
    "padding will not work, xon/xoff required",
    21,
  ).freeze,
  "mc5i" => Boolean.new(
    "prtr_silent",
    "mc5i",
    "bool",
    "5i",
    "-",
    "-",
    "-----",
    "printer will not echo on screen",
    22,
  ).freeze,
  "chts" => Boolean.new(
    "hard_cursor",
    "chts",
    "bool",
    "HC",
    "-",
    "-",
    "-----",
    "cursor is hard to see",
    23,
  ).freeze,
  "nrrmc" => Boolean.new(
    "non_rev_rmcup",
    "nrrmc",
    "bool",
    "NR",
    "-",
    "-",
    "-----",
    "smcup does not reverse rmcup",
    24,
  ).freeze,
  "npc" => Boolean.new(
    "no_pad_char",
    "npc",
    "bool",
    "NP",
    "-",
    "-",
    "-----",
    "pad character does not exist",
    25,
  ).freeze,
  "ndscr" => Boolean.new(
    "non_dest_scroll_region",
    "ndscr",
    "bool",
    "ND",
    "-",
    "-",
    "-----",
    "scrolling region is non-destructive",
    26,
  ).freeze,
  "ccc" => Boolean.new(
    "can_change",
    "ccc",
    "bool",
    "cc",
    "-",
    "-",
    "-----",
    "terminal can re-define existing colors",
    27,
  ).freeze,
  "bce" => Boolean.new(
    "back_color_erase",
    "bce",
    "bool",
    "ut",
    "-",
    "-",
    "-----",
    "screen erased with background color",
    28,
  ).freeze,
  "hls" => Boolean.new(
    "hue_lightness_saturation",
    "hls",
    "bool",
    "hl",
    "-",
    "-",
    "-----",
    "terminal uses only HLS color notation (Tektronix)",
    29,
  ).freeze,
  "xhpa" => Boolean.new(
    "col_addr_glitch",
    "xhpa",
    "bool",
    "YA",
    "-",
    "-",
    "-----",
    "only positive motion for hpa/mhpa caps",
    30,
  ).freeze,
  "crxm" => Boolean.new(
    "cr_cancels_micro_mode",
    "crxm",
    "bool",
    "YB",
    "-",
    "-",
    "-----",
    "using cr turns off micro mode",
    31,
  ).freeze,
  "daisy" => Boolean.new(
    "has_print_wheel",
    "daisy",
    "bool",
    "YC",
    "-",
    "-",
    "-----",
    "printer needs operator to change character set",
    32,
  ).freeze,
  "xvpa" => Boolean.new(
    "row_addr_glitch",
    "xvpa",
    "bool",
    "YD",
    "-",
    "-",
    "-----",
    "only positive motion for vpa/mvpa caps",
    33,
  ).freeze,
  "sam" => Boolean.new(
    "semi_auto_right_margin",
    "sam",
    "bool",
    "YE",
    "-",
    "-",
    "-----",
    "printing in last column causes cr",
    34,
  ).freeze,
  "cpix" => Boolean.new(
    "cpi_changes_res",
    "cpix",
    "bool",
    "YF",
    "-",
    "-",
    "-----",
    "changing character pitch changes resolution",
    35,
  ).freeze,
  "lpix" => Boolean.new(
    "lpi_changes_res",
    "lpix",
    "bool",
    "YG",
    "-",
    "-",
    "-----",
    "changing line pitch changes resolution",
    36,
  ).freeze,
}.freeze
BOOLEAN_LIST =
BOOLEANS.values
NUMBERS =
{
  "cols" => Number.new(
    "columns",
    "cols",
    "num",
    "co",
    "-",
    "-",
    "YBCGE",
    "number of columns in a line",
    0,
  ).freeze,
  "it" => Number.new(
    "init_tabs",
    "it",
    "num",
    "it",
    "-",
    "-",
    "YB-G-",
    "tabs initially every # spaces",
    1,
  ).freeze,
  "lines" => Number.new(
    "lines",
    "lines",
    "num",
    "li",
    "-",
    "-",
    "YBCGE",
    "number of lines on screen or page",
    2,
  ).freeze,
  "lm" => Number.new(
    "lines_of_memory",
    "lm",
    "num",
    "lm",
    "-",
    "-",
    "YB-G-",
    "lines of memory if > line. 0 means varies",
    3,
  ).freeze,
  "xmc" => Number.new(
    "magic_cookie_glitch",
    "xmc",
    "num",
    "sg",
    "-",
    "-",
    "YBCGE",
    "number of blank characters left by smso or rmso",
    4,
  ).freeze,
  "pb" => Number.new(
    "padding_baud_rate",
    "pb",
    "num",
    "pb",
    "-",
    "-",
    "YB-GE",
    "lowest baud rate where padding needed",
    5,
  ).freeze,
  "vt" => Number.new(
    "virtual_terminal",
    "vt",
    "num",
    "vt",
    "-",
    "-",
    "YB---",
    "virtual terminal number (CB/unix)",
    6,
  ).freeze,
  "wsl" => Number.new(
    "width_status_line",
    "wsl",
    "num",
    "ws",
    "-",
    "-",
    "YB-G-",
    "number of columns in status line",
    7,
  ).freeze,
  "nlab" => Number.new(
    "num_labels",
    "nlab",
    "num",
    "Nl",
    "-",
    "-",
    "-----",
    "number of labels on screen",
    8,
  ).freeze,
  "lh" => Number.new(
    "label_height",
    "lh",
    "num",
    "lh",
    "-",
    "-",
    "-----",
    "rows in each label",
    9,
  ).freeze,
  "lw" => Number.new(
    "label_width",
    "lw",
    "num",
    "lw",
    "-",
    "-",
    "-----",
    "columns in each label",
    10,
  ).freeze,
  "ma" => Number.new(
    "max_attributes",
    "ma",
    "num",
    "ma",
    "-",
    "-",
    "YBC--",
    "maximum combined attributes terminal can handle",
    11,
  ).freeze,
  "wnum" => Number.new(
    "maximum_windows",
    "wnum",
    "num",
    "MW",
    "-",
    "-",
    "-----",
    "maximum number of definable windows",
    12,
  ).freeze,
  "colors" => Number.new(
    "max_colors",
    "colors",
    "num",
    "Co",
    "-",
    "-",
    "-----",
    "maximum number of colors on screen",
    13,
  ).freeze,
  "pairs" => Number.new(
    "max_pairs",
    "pairs",
    "num",
    "pa",
    "-",
    "-",
    "-----",
    "maximum number of color-pairs on the screen",
    14,
  ).freeze,
  "ncv" => Number.new(
    "no_color_video",
    "ncv",
    "num",
    "NC",
    "-",
    "-",
    "-----",
    "video attributes that cannot be used with colors",
    15,
  ).freeze,
  "bufsz" => Number.new(
    "buffer_capacity",
    "bufsz",
    "num",
    "Ya",
    "-",
    "-",
    "-----",
    "numbers of bytes buffered before printing",
    16,
  ).freeze,
  "spinv" => Number.new(
    "dot_vert_spacing",
    "spinv",
    "num",
    "Yb",
    "-",
    "-",
    "-----",
    "spacing of pins vertically in pins per inch",
    17,
  ).freeze,
  "spinh" => Number.new(
    "dot_horz_spacing",
    "spinh",
    "num",
    "Yc",
    "-",
    "-",
    "-----",
    "spacing of dots horizontally in dots per inch",
    18,
  ).freeze,
  "maddr" => Number.new(
    "max_micro_address",
    "maddr",
    "num",
    "Yd",
    "-",
    "-",
    "-----",
    "maximum value in micro_..._address",
    19,
  ).freeze,
  "mjump" => Number.new(
    "max_micro_jump",
    "mjump",
    "num",
    "Ye",
    "-",
    "-",
    "-----",
    "maximum value in parm_..._micro",
    20,
  ).freeze,
  "mcs" => Number.new(
    "micro_col_size",
    "mcs",
    "num",
    "Yf",
    "-",
    "-",
    "-----",
    "character step size when in micro mode",
    21,
  ).freeze,
  "mls" => Number.new(
    "micro_line_size",
    "mls",
    "num",
    "Yg",
    "-",
    "-",
    "-----",
    "line step size when in micro mode",
    22,
  ).freeze,
  "npins" => Number.new(
    "number_of_pins",
    "npins",
    "num",
    "Yh",
    "-",
    "-",
    "-----",
    "numbers of pins in print-head",
    23,
  ).freeze,
  "orc" => Number.new(
    "output_res_char",
    "orc",
    "num",
    "Yi",
    "-",
    "-",
    "-----",
    "horizontal resolution in units per line",
    24,
  ).freeze,
  "orl" => Number.new(
    "output_res_line",
    "orl",
    "num",
    "Yj",
    "-",
    "-",
    "-----",
    "vertical resolution in units per line",
    25,
  ).freeze,
  "orhi" => Number.new(
    "output_res_horz_inch",
    "orhi",
    "num",
    "Yk",
    "-",
    "-",
    "-----",
    "horizontal resolution in units per inch",
    26,
  ).freeze,
  "orvi" => Number.new(
    "output_res_vert_inch",
    "orvi",
    "num",
    "Yl",
    "-",
    "-",
    "-----",
    "vertical resolution in units per inch",
    27,
  ).freeze,
  "cps" => Number.new(
    "print_rate",
    "cps",
    "num",
    "Ym",
    "-",
    "-",
    "-----",
    "print rate in characters per second",
    28,
  ).freeze,
  "widcs" => Number.new(
    "wide_char_size",
    "widcs",
    "num",
    "Yn",
    "-",
    "-",
    "-----",
    "character step size when in double wide mode",
    29,
  ).freeze,
  "btns" => Number.new(
    "buttons",
    "btns",
    "num",
    "BT",
    "-",
    "-",
    "-----",
    "number of buttons on mouse",
    30,
  ).freeze,
  "bitwin" => Number.new(
    "bit_image_entwining",
    "bitwin",
    "num",
    "Yo",
    "-",
    "-",
    "-----",
    "number of passes for each bit-image row",
    31,
  ).freeze,
  "bitype" => Number.new(
    "bit_image_type",
    "bitype",
    "num",
    "Yp",
    "-",
    "-",
    "-----",
    "type of bit-image device",
    32,
  ).freeze,
}.freeze
NUMBER_LIST =
NUMBERS.values
STRINGS =
{
  "cbt" => String.new(
    "back_tab",
    "cbt",
    "str",
    "bt",
    "-",
    "-",
    "YBCGE",
    "back tab (P)",
    0,
  ).freeze,
  "bel" => String.new(
    "bell",
    "bel",
    "str",
    "bl",
    "-",
    "-",
    "YB-GE",
    "audible signal (bell) (P)",
    1,
  ).freeze,
  "cr" => String.new(
    "carriage_return",
    "cr",
    "str",
    "cr",
    "-",
    "-",
    "YBCGE",
    "carriage return (P*) (P*)",
    2,
  ).freeze,
  "csr" => String.new(
    "change_scroll_region",
    "csr",
    "str",
    "cs",
    "-",
    "-",
    "YBCGE",
    "change region to line #1 to line #2 (P)",
    3,
  ).freeze,
  "tbc" => String.new(
    "clear_all_tabs",
    "tbc",
    "str",
    "ct",
    "-",
    "-",
    "YB-G-",
    "clear all tab stops (P)",
    4,
  ).freeze,
  "clear" => String.new(
    "clear_screen",
    "clear",
    "str",
    "cl",
    "-",
    "-",
    "YBCGE",
    "clear screen and home cursor (P*)",
    5,
  ).freeze,
  "el" => String.new(
    "clr_eol",
    "el",
    "str",
    "ce",
    "-",
    "-",
    "YBCGE",
    "clear to end of line (P)",
    6,
  ).freeze,
  "ed" => String.new(
    "clr_eos",
    "ed",
    "str",
    "cd",
    "-",
    "-",
    "YBCGE",
    "clear to end of screen (P*)",
    7,
  ).freeze,
  "hpa" => String.new(
    "column_address",
    "hpa",
    "str",
    "ch",
    "-",
    "-",
    "-B-GE*",
    "horizontal position #1, absolute (P)",
    8,
  ).freeze,
  "cmdch" => String.new(
    "command_character",
    "cmdch",
    "str",
    "CC",
    "-",
    "-",
    "YB-G-",
    "terminal settable cmd character in prototype !?",
    9,
  ).freeze,
  "cup" => String.new(
    "cursor_address",
    "cup",
    "str",
    "cm",
    "-",
    "-",
    "YBCGE",
    "move to row #1 columns #2",
    10,
  ).freeze,
  "cud1" => String.new(
    "cursor_down",
    "cud1",
    "str",
    "do",
    "-",
    "-",
    "YBCGE",
    "down one line",
    11,
  ).freeze,
  "home" => String.new(
    "cursor_home",
    "home",
    "str",
    "ho",
    "-",
    "-",
    "YBCGE",
    "home cursor (if no cup)",
    12,
  ).freeze,
  "civis" => String.new(
    "cursor_invisible",
    "civis",
    "str",
    "vi",
    "-",
    "-",
    "YB-G-",
    "make cursor invisible",
    13,
  ).freeze,
  "cub1" => String.new(
    "cursor_left",
    "cub1",
    "str",
    "le",
    "-",
    "-",
    "YBCGE",
    "move left one space",
    14,
  ).freeze,
  "mrcup" => String.new(
    "cursor_mem_address",
    "mrcup",
    "str",
    "CM",
    "-",
    "-",
    "YB-G-",
    "memory relative cursor addressing, move to row #1 columns #2",
    15,
  ).freeze,
  "cnorm" => String.new(
    "cursor_normal",
    "cnorm",
    "str",
    "ve",
    "-",
    "-",
    "YBCGE",
    "make cursor appear normal (undo civis/cvvis)",
    16,
  ).freeze,
  "cuf1" => String.new(
    "cursor_right",
    "cuf1",
    "str",
    "nd",
    "-",
    "-",
    "YBCGE",
    "non-destructive space (move right one space)",
    17,
  ).freeze,
  "ll" => String.new(
    "cursor_to_ll",
    "ll",
    "str",
    "ll",
    "-",
    "-",
    "YBCGE",
    "last line, first column (if no cup)",
    18,
  ).freeze,
  "cuu1" => String.new(
    "cursor_up",
    "cuu1",
    "str",
    "up",
    "-",
    "-",
    "YBCGE",
    "up one line",
    19,
  ).freeze,
  "cvvis" => String.new(
    "cursor_visible",
    "cvvis",
    "str",
    "vs",
    "-",
    "-",
    "YBCGE",
    "make cursor very visible",
    20,
  ).freeze,
  "dch1" => String.new(
    "delete_character",
    "dch1",
    "str",
    "dc",
    "-",
    "-",
    "YBCGE",
    "delete character (P*)",
    21,
  ).freeze,
  "dl1" => String.new(
    "delete_line",
    "dl1",
    "str",
    "dl",
    "-",
    "-",
    "YBCGE",
    "delete line (P*)",
    22,
  ).freeze,
  "dsl" => String.new(
    "dis_status_line",
    "dsl",
    "str",
    "ds",
    "-",
    "-",
    "YB-G-",
    "disable status line",
    23,
  ).freeze,
  "hd" => String.new(
    "down_half_line",
    "hd",
    "str",
    "hd",
    "-",
    "-",
    "YB-G-",
    "half a line down",
    24,
  ).freeze,
  "smacs" => String.new(
    "enter_alt_charset_mode",
    "smacs",
    "str",
    "as",
    "-",
    "-",
    "YB-G-",
    "start alternate character set (P)",
    25,
  ).freeze,
  "blink" => String.new(
    "enter_blink_mode",
    "blink",
    "str",
    "mb",
    "-",
    "-",
    "YB-G-",
    "turn on blinking",
    26,
  ).freeze,
  "bold" => String.new(
    "enter_bold_mode",
    "bold",
    "str",
    "md",
    "-",
    "-",
    "YB-G-",
    "turn on bold (extra bright) mode",
    27,
  ).freeze,
  "smcup" => String.new(
    "enter_ca_mode",
    "smcup",
    "str",
    "ti",
    "-",
    "-",
    "YBCGE",
    "string to start programs using cup",
    28,
  ).freeze,
  "smdc" => String.new(
    "enter_delete_mode",
    "smdc",
    "str",
    "dm",
    "-",
    "-",
    "YBCGE",
    "enter delete mode",
    29,
  ).freeze,
  "dim" => String.new(
    "enter_dim_mode",
    "dim",
    "str",
    "mh",
    "-",
    "-",
    "YB-G-",
    "turn on half-bright mode",
    30,
  ).freeze,
  "smir" => String.new(
    "enter_insert_mode",
    "smir",
    "str",
    "im",
    "-",
    "-",
    "YBCGE",
    "enter insert mode",
    31,
  ).freeze,
  "invis" => String.new(
    "enter_secure_mode",
    "invis",
    "str",
    "mk",
    "-",
    "-",
    "-B-G-*",
    "turn on blank mode (characters invisible)",
    32,
  ).freeze,
  "prot" => String.new(
    "enter_protected_mode",
    "prot",
    "str",
    "mp",
    "-",
    "-",
    "-B-G-*",
    "turn on protected mode",
    33,
  ).freeze,
  "rev" => String.new(
    "enter_reverse_mode",
    "rev",
    "str",
    "mr",
    "-",
    "-",
    "YB-G-",
    "turn on reverse video mode",
    34,
  ).freeze,
  "smso" => String.new(
    "enter_standout_mode",
    "smso",
    "str",
    "so",
    "-",
    "-",
    "YBCGE",
    "begin standout mode",
    35,
  ).freeze,
  "smul" => String.new(
    "enter_underline_mode",
    "smul",
    "str",
    "us",
    "-",
    "-",
    "YBCGE",
    "begin underline mode",
    36,
  ).freeze,
  "ech" => String.new(
    "erase_chars",
    "ech",
    "str",
    "ec",
    "-",
    "-",
    "YB-G-",
    "erase #1 characters (P)",
    37,
  ).freeze,
  "rmacs" => String.new(
    "exit_alt_charset_mode",
    "rmacs",
    "str",
    "ae",
    "-",
    "-",
    "YB-G-",
    "end alternate character set (P)",
    38,
  ).freeze,
  "sgr0" => String.new(
    "exit_attribute_mode",
    "sgr0",
    "str",
    "me",
    "-",
    "-",
    "YB-GE",
    "turn off all attributes",
    39,
  ).freeze,
  "rmcup" => String.new(
    "exit_ca_mode",
    "rmcup",
    "str",
    "te",
    "-",
    "-",
    "YBCGE",
    "strings to end programs using cup",
    40,
  ).freeze,
  "rmdc" => String.new(
    "exit_delete_mode",
    "rmdc",
    "str",
    "ed",
    "-",
    "-",
    "YBCGE",
    "end delete mode",
    41,
  ).freeze,
  "rmir" => String.new(
    "exit_insert_mode",
    "rmir",
    "str",
    "ei",
    "-",
    "-",
    "YBCGE",
    "exit insert mode",
    42,
  ).freeze,
  "rmso" => String.new(
    "exit_standout_mode",
    "rmso",
    "str",
    "se",
    "-",
    "-",
    "YBCGE",
    "exit standout mode",
    43,
  ).freeze,
  "rmul" => String.new(
    "exit_underline_mode",
    "rmul",
    "str",
    "ue",
    "-",
    "-",
    "YBCGE",
    "exit underline mode",
    44,
  ).freeze,
  "flash" => String.new(
    "flash_screen",
    "flash",
    "str",
    "vb",
    "-",
    "-",
    "YBCGE",
    "visible bell (may not move cursor)",
    45,
  ).freeze,
  "ff" => String.new(
    "form_feed",
    "ff",
    "str",
    "ff",
    "-",
    "-",
    "YB-G-",
    "hardcopy terminal page eject (P*)",
    46,
  ).freeze,
  "fsl" => String.new(
    "from_status_line",
    "fsl",
    "str",
    "fs",
    "-",
    "-",
    "YB-G-",
    "return from status line",
    47,
  ).freeze,
  "is1" => String.new(
    "init_1string",
    "is1",
    "str",
    "i1",
    "-",
    "-",
    "YB-G-",
    "initialization string",
    48,
  ).freeze,
  "is2" => String.new(
    "init_2string",
    "is2",
    "str",
    "is",
    "-",
    "-",
    "YB-G-",
    "initialization string",
    49,
  ).freeze,
  "is3" => String.new(
    "init_3string",
    "is3",
    "str",
    "i3",
    "-",
    "-",
    "YB-G-",
    "initialization string",
    50,
  ).freeze,
  "if" => String.new(
    "init_file",
    "if",
    "str",
    "if",
    "-",
    "-",
    "YB-G-",
    "name of initialization file",
    51,
  ).freeze,
  "ich1" => String.new(
    "insert_character",
    "ich1",
    "str",
    "ic",
    "-",
    "-",
    "YBCGE",
    "insert character (P)",
    52,
  ).freeze,
  "il1" => String.new(
    "insert_line",
    "il1",
    "str",
    "al",
    "-",
    "-",
    "YBCGE",
    "insert line (P*)",
    53,
  ).freeze,
  "ip" => String.new(
    "insert_padding",
    "ip",
    "str",
    "ip",
    "-",
    "-",
    "YBCGE",
    "insert padding after inserted character",
    54,
  ).freeze,
  "kbs" => String.new(
    "key_backspace",
    "kbs",
    "str",
    "kb",
    "KEY_BACKSPACE",
    "0407",
    "YB-G-",
    "backspace key",
    55,
  ).freeze,
  "ktbc" => String.new(
    "key_catab",
    "ktbc",
    "str",
    "ka",
    "KEY_CATAB",
    "0526",
    "-B-G-*",
    "clear-all-tabs key",
    56,
  ).freeze,
  "kclr" => String.new(
    "key_clear",
    "kclr",
    "str",
    "kC",
    "KEY_CLEAR",
    "0515",
    "-B-G-*",
    "clear-screen or erase key",
    57,
  ).freeze,
  "kctab" => String.new(
    "key_ctab",
    "kctab",
    "str",
    "kt",
    "KEY_CTAB",
    "0525",
    "-B-G-*",
    "clear-tab key",
    58,
  ).freeze,
  "kdch1" => String.new(
    "key_dc",
    "kdch1",
    "str",
    "kD",
    "KEY_DC",
    "0512",
    "YB-G-",
    "delete-character key",
    59,
  ).freeze,
  "kdl1" => String.new(
    "key_dl",
    "kdl1",
    "str",
    "kL",
    "KEY_DL",
    "0510",
    "-B-G-*",
    "delete-line key",
    60,
  ).freeze,
  "kcud1" => String.new(
    "key_down",
    "kcud1",
    "str",
    "kd",
    "KEY_DOWN",
    "0402",
    "YBCGE",
    "down-arrow key",
    61,
  ).freeze,
  "krmir" => String.new(
    "key_eic",
    "krmir",
    "str",
    "kM",
    "KEY_EIC",
    "0514",
    "-B-G-*",
    "sent by rmir or smir in insert mode",
    62,
  ).freeze,
  "kel" => String.new(
    "key_eol",
    "kel",
    "str",
    "kE",
    "KEY_EOL",
    "0517",
    "-B-G-*",
    "clear-to-end-of-line key",
    63,
  ).freeze,
  "ked" => String.new(
    "key_eos",
    "ked",
    "str",
    "kS",
    "KEY_EOS",
    "0516",
    "-B-G-*",
    "clear-to-end-of-screen key",
    64,
  ).freeze,
  "kf0" => String.new(
    "key_f0",
    "kf0",
    "str",
    "k0",
    "KEY_F(0)",
    "0410",
    "YBCGE",
    "F0 function key",
    65,
  ).freeze,
  "kf1" => String.new(
    "key_f1",
    "kf1",
    "str",
    "k1",
    "KEY_F(1)",
    "-",
    "YBCGE",
    "F1 function key",
    66,
  ).freeze,
  "kf10" => String.new(
    "key_f10",
    "kf10",
    "str",
    "k;",
    "KEY_F(10)",
    "-",
    "----E",
    "F10 function key",
    67,
  ).freeze,
  "kf2" => String.new(
    "key_f2",
    "kf2",
    "str",
    "k2",
    "KEY_F(2)",
    "-",
    "YBCGE",
    "F2 function key",
    68,
  ).freeze,
  "kf3" => String.new(
    "key_f3",
    "kf3",
    "str",
    "k3",
    "KEY_F(3)",
    "-",
    "YBCGE",
    "F3 function key",
    69,
  ).freeze,
  "kf4" => String.new(
    "key_f4",
    "kf4",
    "str",
    "k4",
    "KEY_F(4)",
    "-",
    "YBCGE",
    "F4 function key",
    70,
  ).freeze,
  "kf5" => String.new(
    "key_f5",
    "kf5",
    "str",
    "k5",
    "KEY_F(5)",
    "-",
    "YBCGE",
    "F5 function key",
    71,
  ).freeze,
  "kf6" => String.new(
    "key_f6",
    "kf6",
    "str",
    "k6",
    "KEY_F(6)",
    "-",
    "YBCGE",
    "F6 function key",
    72,
  ).freeze,
  "kf7" => String.new(
    "key_f7",
    "kf7",
    "str",
    "k7",
    "KEY_F(7)",
    "-",
    "YBCGE",
    "F7 function key",
    73,
  ).freeze,
  "kf8" => String.new(
    "key_f8",
    "kf8",
    "str",
    "k8",
    "KEY_F(8)",
    "-",
    "YBCGE",
    "F8 function key",
    74,
  ).freeze,
  "kf9" => String.new(
    "key_f9",
    "kf9",
    "str",
    "k9",
    "KEY_F(9)",
    "-",
    "YBCGE",
    "F9 function key",
    75,
  ).freeze,
  "khome" => String.new(
    "key_home",
    "khome",
    "str",
    "kh",
    "KEY_HOME",
    "0406",
    "YBCGE",
    "home key",
    76,
  ).freeze,
  "kich1" => String.new(
    "key_ic",
    "kich1",
    "str",
    "kI",
    "KEY_IC",
    "0513",
    "YB-GE",
    "insert-character key",
    77,
  ).freeze,
  "kil1" => String.new(
    "key_il",
    "kil1",
    "str",
    "kA",
    "KEY_IL",
    "0511",
    "-B-G-*",
    "insert-line key",
    78,
  ).freeze,
  "kcub1" => String.new(
    "key_left",
    "kcub1",
    "str",
    "kl",
    "KEY_LEFT",
    "0404",
    "YBCGE",
    "left-arrow key",
    79,
  ).freeze,
  "kll" => String.new(
    "key_ll",
    "kll",
    "str",
    "kH",
    "KEY_LL",
    "0533",
    "YB-G-",
    "lower-left key (home down)",
    80,
  ).freeze,
  "knp" => String.new(
    "key_npage",
    "knp",
    "str",
    "kN",
    "KEY_NPAGE",
    "0522",
    "YB-GE",
    "next-page key",
    81,
  ).freeze,
  "kpp" => String.new(
    "key_ppage",
    "kpp",
    "str",
    "kP",
    "KEY_PPAGE",
    "0523",
    "YB-GE",
    "previous-page key",
    82,
  ).freeze,
  "kcuf1" => String.new(
    "key_right",
    "kcuf1",
    "str",
    "kr",
    "KEY_RIGHT",
    "0405",
    "YBCGE",
    "right-arrow key",
    83,
  ).freeze,
  "kind" => String.new(
    "key_sf",
    "kind",
    "str",
    "kF",
    "KEY_SF",
    "0520",
    "-B-G-*",
    "scroll-forward key",
    84,
  ).freeze,
  "kri" => String.new(
    "key_sr",
    "kri",
    "str",
    "kR",
    "KEY_SR",
    "0521",
    "-B-G-*",
    "scroll-backward key",
    85,
  ).freeze,
  "khts" => String.new(
    "key_stab",
    "khts",
    "str",
    "kT",
    "KEY_STAB",
    "0524",
    "-B-G-*",
    "set-tab key",
    86,
  ).freeze,
  "kcuu1" => String.new(
    "key_up",
    "kcuu1",
    "str",
    "ku",
    "KEY_UP",
    "0403",
    "YBCGE",
    "up-arrow key",
    87,
  ).freeze,
  "rmkx" => String.new(
    "keypad_local",
    "rmkx",
    "str",
    "ke",
    "-",
    "-",
    "YBCGE",
    "leave keyboard transmit mode",
    88,
  ).freeze,
  "smkx" => String.new(
    "keypad_xmit",
    "smkx",
    "str",
    "ks",
    "-",
    "-",
    "YBCGE",
    "enter keyboard transmit mode",
    89,
  ).freeze,
  "lf0" => String.new(
    "lab_f0",
    "lf0",
    "str",
    "l0",
    "-",
    "-",
    "-B-G-*",
    "label on function key f0 if not f0",
    90,
  ).freeze,
  "lf1" => String.new(
    "lab_f1",
    "lf1",
    "str",
    "l1",
    "-",
    "-",
    "-B-G-*",
    "label on function key f1 if not f1",
    91,
  ).freeze,
  "lf10" => String.new(
    "lab_f10",
    "lf10",
    "str",
    "la",
    "-",
    "-",
    "-----",
    "label on function key f10 if not f10",
    92,
  ).freeze,
  "lf2" => String.new(
    "lab_f2",
    "lf2",
    "str",
    "l2",
    "-",
    "-",
    "-B-G-*",
    "label on function key f2 if not f2",
    93,
  ).freeze,
  "lf3" => String.new(
    "lab_f3",
    "lf3",
    "str",
    "l3",
    "-",
    "-",
    "-B-G-*",
    "label on function key f3 if not f3",
    94,
  ).freeze,
  "lf4" => String.new(
    "lab_f4",
    "lf4",
    "str",
    "l4",
    "-",
    "-",
    "-B-G-*",
    "label on function key f4 if not f4",
    95,
  ).freeze,
  "lf5" => String.new(
    "lab_f5",
    "lf5",
    "str",
    "l5",
    "-",
    "-",
    "-B-G-*",
    "label on function key f5 if not f5",
    96,
  ).freeze,
  "lf6" => String.new(
    "lab_f6",
    "lf6",
    "str",
    "l6",
    "-",
    "-",
    "-B-G-*",
    "label on function key f6 if not f6",
    97,
  ).freeze,
  "lf7" => String.new(
    "lab_f7",
    "lf7",
    "str",
    "l7",
    "-",
    "-",
    "-B-G-*",
    "label on function key f7 if not f7",
    98,
  ).freeze,
  "lf8" => String.new(
    "lab_f8",
    "lf8",
    "str",
    "l8",
    "-",
    "-",
    "-B-G-*",
    "label on function key f8 if not f8",
    99,
  ).freeze,
  "lf9" => String.new(
    "lab_f9",
    "lf9",
    "str",
    "l9",
    "-",
    "-",
    "-B-G-*",
    "label on function key f9 if not f9",
    100,
  ).freeze,
  "rmm" => String.new(
    "meta_off",
    "rmm",
    "str",
    "mo",
    "-",
    "-",
    "YB-G-*",
    "turn off meta mode",
    101,
  ).freeze,
  "smm" => String.new(
    "meta_on",
    "smm",
    "str",
    "mm",
    "-",
    "-",
    "YB-G-*",
    "turn on meta mode (8th-bit on)",
    102,
  ).freeze,
  "nel" => String.new(
    "newline",
    "nel",
    "str",
    "nw",
    "-",
    "-",
    "YB-G-*",
    "newline (behave like cr followed by lf)",
    103,
  ).freeze,
  "pad" => String.new(
    "pad_char",
    "pad",
    "str",
    "pc",
    "-",
    "-",
    "YBCGE",
    "padding char (instead of null)",
    104,
  ).freeze,
  "dch" => String.new(
    "parm_dch",
    "dch",
    "str",
    "DC",
    "-",
    "-",
    "YB-GE",
    "delete #1 characters (P*)",
    105,
  ).freeze,
  "dl" => String.new(
    "parm_delete_line",
    "dl",
    "str",
    "DL",
    "-",
    "-",
    "YBCGE",
    "delete #1 lines (P*)",
    106,
  ).freeze,
  "cud" => String.new(
    "parm_down_cursor",
    "cud",
    "str",
    "DO",
    "-",
    "-",
    "YBCGE",
    "down #1 lines (P*)",
    107,
  ).freeze,
  "ich" => String.new(
    "parm_ich",
    "ich",
    "str",
    "IC",
    "-",
    "-",
    "YB-GE",
    "insert #1 characters (P*)",
    108,
  ).freeze,
  "indn" => String.new(
    "parm_index",
    "indn",
    "str",
    "SF",
    "-",
    "-",
    "YBCG-",
    "scroll forward #1 lines (P)",
    109,
  ).freeze,
  "il" => String.new(
    "parm_insert_line",
    "il",
    "str",
    "AL",
    "-",
    "-",
    "YBCGE",
    "insert #1 lines (P*)",
    110,
  ).freeze,
  "cub" => String.new(
    "parm_left_cursor",
    "cub",
    "str",
    "LE",
    "-",
    "-",
    "YBCGE",
    "move #1 characters to the left (P)",
    111,
  ).freeze,
  "cuf" => String.new(
    "parm_right_cursor",
    "cuf",
    "str",
    "RI",
    "-",
    "-",
    "YBCGE",
    "move #1 characters to the right (P*)",
    112,
  ).freeze,
  "rin" => String.new(
    "parm_rindex",
    "rin",
    "str",
    "SR",
    "-",
    "-",
    "YBCG-",
    "scroll back #1 lines (P)",
    113,
  ).freeze,
  "cuu" => String.new(
    "parm_up_cursor",
    "cuu",
    "str",
    "UP",
    "-",
    "-",
    "YBCGE",
    "up #1 lines (P*)",
    114,
  ).freeze,
  "pfkey" => String.new(
    "pkey_key",
    "pfkey",
    "str",
    "pk",
    "-",
    "-",
    "-B---",
    "program function key #1 to type string #2",
    115,
  ).freeze,
  "pfloc" => String.new(
    "pkey_local",
    "pfloc",
    "str",
    "pl",
    "-",
    "-",
    "-B---",
    "program function key #1 to execute string #2",
    116,
  ).freeze,
  "pfx" => String.new(
    "pkey_xmit",
    "pfx",
    "str",
    "px",
    "-",
    "-",
    "-B---",
    "program function key #1 to transmit string #2",
    117,
  ).freeze,
  "mc0" => String.new(
    "print_screen",
    "mc0",
    "str",
    "ps",
    "-",
    "-",
    "-B-G-*",
    "print contents of screen",
    118,
  ).freeze,
  "mc4" => String.new(
    "prtr_off",
    "mc4",
    "str",
    "pf",
    "-",
    "-",
    "-B-G-*",
    "turn off printer",
    119,
  ).freeze,
  "mc5" => String.new(
    "prtr_on",
    "mc5",
    "str",
    "po",
    "-",
    "-",
    "-B-G-*",
    "turn on printer",
    120,
  ).freeze,
  "rep" => String.new(
    "repeat_char",
    "rep",
    "str",
    "rp",
    "-",
    "-",
    "YB-GE",
    "repeat char #1 #2 times (P*)",
    121,
  ).freeze,
  "rs1" => String.new(
    "reset_1string",
    "rs1",
    "str",
    "r1",
    "-",
    "-",
    "-B---",
    "reset string",
    122,
  ).freeze,
  "rs2" => String.new(
    "reset_2string",
    "rs2",
    "str",
    "r2",
    "-",
    "-",
    "-B---",
    "reset string",
    123,
  ).freeze,
  "rs3" => String.new(
    "reset_3string",
    "rs3",
    "str",
    "r3",
    "-",
    "-",
    "-B---",
    "reset string",
    124,
  ).freeze,
  "rf" => String.new(
    "reset_file",
    "rf",
    "str",
    "rf",
    "-",
    "-",
    "-B---",
    "name of reset file",
    125,
  ).freeze,
  "rc" => String.new(
    "restore_cursor",
    "rc",
    "str",
    "rc",
    "-",
    "-",
    "YBCG-",
    "restore cursor to position of last save_cursor",
    126,
  ).freeze,
  "vpa" => String.new(
    "row_address",
    "vpa",
    "str",
    "cv",
    "-",
    "-",
    "-B-GE*",
    "vertical position #1 absolute (P)",
    127,
  ).freeze,
  "sc" => String.new(
    "save_cursor",
    "sc",
    "str",
    "sc",
    "-",
    "-",
    "YBCG-",
    "save current cursor position (P)",
    128,
  ).freeze,
  "ind" => String.new(
    "scroll_forward",
    "ind",
    "str",
    "sf",
    "-",
    "-",
    "YBCGE",
    "scroll text up (P)",
    129,
  ).freeze,
  "ri" => String.new(
    "scroll_reverse",
    "ri",
    "str",
    "sr",
    "-",
    "-",
    "YBCGE",
    "scroll text down (P)",
    130,
  ).freeze,
  "sgr" => String.new(
    "set_attributes",
    "sgr",
    "str",
    "sa",
    "-",
    "-",
    "YB-G-",
    "define video attributes #1-#9 (PG9)",
    131,
  ).freeze,
  "hts" => String.new(
    "set_tab",
    "hts",
    "str",
    "st",
    "-",
    "-",
    "YB-G-",
    "set a tab in every row, current columns",
    132,
  ).freeze,
  "wind" => String.new(
    "set_window",
    "wind",
    "str",
    "wi",
    "-",
    "-",
    "-B-GE",
    "current window is lines #1-#2 cols #3-#4",
    133,
  ).freeze,
  "ht" => String.new(
    "tab",
    "ht",
    "str",
    "ta",
    "-",
    "-",
    "YBCGE",
    "tab to next 8-space hardware tab stop",
    134,
  ).freeze,
  "tsl" => String.new(
    "to_status_line",
    "tsl",
    "str",
    "ts",
    "-",
    "-",
    "YB-G-",
    "move to status line, column #1",
    135,
  ).freeze,
  "uc" => String.new(
    "underline_char",
    "uc",
    "str",
    "uc",
    "-",
    "-",
    "YBCG-",
    "underline char and move past it",
    136,
  ).freeze,
  "hu" => String.new(
    "up_half_line",
    "hu",
    "str",
    "hu",
    "-",
    "-",
    "YB-G-",
    "half a line up",
    137,
  ).freeze,
  "iprog" => String.new(
    "init_prog",
    "iprog",
    "str",
    "iP",
    "-",
    "-",
    "-B---",
    "path name of program for initialization",
    138,
  ).freeze,
  "ka1" => String.new(
    "key_a1",
    "ka1",
    "str",
    "K1",
    "KEY_A1",
    "0534",
    "YB-GE",
    "upper left of keypad",
    139,
  ).freeze,
  "ka3" => String.new(
    "key_a3",
    "ka3",
    "str",
    "K3",
    "KEY_A3",
    "0535",
    "YB-GE",
    "upper right of keypad",
    140,
  ).freeze,
  "kb2" => String.new(
    "key_b2",
    "kb2",
    "str",
    "K2",
    "KEY_B2",
    "0536",
    "YB-GE",
    "center of keypad",
    141,
  ).freeze,
  "kc1" => String.new(
    "key_c1",
    "kc1",
    "str",
    "K4",
    "KEY_C1",
    "0537",
    "YB-GE",
    "lower left of keypad",
    142,
  ).freeze,
  "kc3" => String.new(
    "key_c3",
    "kc3",
    "str",
    "K5",
    "KEY_C3",
    "0540",
    "YB-GE",
    "lower right of keypad",
    143,
  ).freeze,
  "mc5p" => String.new(
    "prtr_non",
    "mc5p",
    "str",
    "pO",
    "-",
    "-",
    "-B-G-*",
    "turn on printer for #1 bytes",
    144,
  ).freeze,
  "rmp" => String.new(
    "char_padding",
    "rmp",
    "str",
    "rP",
    "-",
    "-",
    "-----",
    "like ip but when in insert mode",
    145,
  ).freeze,
  "acsc" => String.new(
    "acs_chars",
    "acsc",
    "str",
    "ac",
    "-",
    "-",
    "-----",
    "graphics charset pairs, based on vt100",
    146,
  ).freeze,
  "pln" => String.new(
    "plab_norm",
    "pln",
    "str",
    "pn",
    "-",
    "-",
    "-----",
    "program label #1 to show string #2",
    147,
  ).freeze,
  "kcbt" => String.new(
    "key_btab",
    "kcbt",
    "str",
    "kB",
    "KEY_BTAB",
    "0541",
    "-----",
    "back-tab key",
    148,
  ).freeze,
  "smxon" => String.new(
    "enter_xon_mode",
    "smxon",
    "str",
    "SX",
    "-",
    "-",
    "-----",
    "turn on xon/xoff handshaking",
    149,
  ).freeze,
  "rmxon" => String.new(
    "exit_xon_mode",
    "rmxon",
    "str",
    "RX",
    "-",
    "-",
    "-----",
    "turn off xon/xoff handshaking",
    150,
  ).freeze,
  "smam" => String.new(
    "enter_am_mode",
    "smam",
    "str",
    "SA",
    "-",
    "-",
    "-----",
    "turn on automatic margins",
    151,
  ).freeze,
  "rmam" => String.new(
    "exit_am_mode",
    "rmam",
    "str",
    "RA",
    "-",
    "-",
    "-----",
    "turn off automatic margins",
    152,
  ).freeze,
  "xonc" => String.new(
    "xon_character",
    "xonc",
    "str",
    "XN",
    "-",
    "-",
    "-----",
    "XON character",
    153,
  ).freeze,
  "xoffc" => String.new(
    "xoff_character",
    "xoffc",
    "str",
    "XF",
    "-",
    "-",
    "-----",
    "XOFF character",
    154,
  ).freeze,
  "enacs" => String.new(
    "ena_acs",
    "enacs",
    "str",
    "eA",
    "-",
    "-",
    "-----",
    "enable alternate char set",
    155,
  ).freeze,
  "smln" => String.new(
    "label_on",
    "smln",
    "str",
    "LO",
    "-",
    "-",
    "-----",
    "turn on soft labels",
    156,
  ).freeze,
  "rmln" => String.new(
    "label_off",
    "rmln",
    "str",
    "LF",
    "-",
    "-",
    "-----",
    "turn off soft labels",
    157,
  ).freeze,
  "kbeg" => String.new(
    "key_beg",
    "kbeg",
    "str",
    "@1",
    "KEY_BEG",
    "0542",
    "-----",
    "begin key",
    158,
  ).freeze,
  "kcan" => String.new(
    "key_cancel",
    "kcan",
    "str",
    "@2",
    "KEY_CANCEL",
    "0543",
    "-----",
    "cancel key",
    159,
  ).freeze,
  "kclo" => String.new(
    "key_close",
    "kclo",
    "str",
    "@3",
    "KEY_CLOSE",
    "0544",
    "-----",
    "close key",
    160,
  ).freeze,
  "kcmd" => String.new(
    "key_command",
    "kcmd",
    "str",
    "@4",
    "KEY_COMMAND",
    "0545",
    "-----",
    "command key",
    161,
  ).freeze,
  "kcpy" => String.new(
    "key_copy",
    "kcpy",
    "str",
    "@5",
    "KEY_COPY",
    "0546",
    "-----",
    "copy key",
    162,
  ).freeze,
  "kcrt" => String.new(
    "key_create",
    "kcrt",
    "str",
    "@6",
    "KEY_CREATE",
    "0547",
    "-----",
    "create key",
    163,
  ).freeze,
  "kend" => String.new(
    "key_end",
    "kend",
    "str",
    "@7",
    "KEY_END",
    "0550",
    "-----",
    "end key",
    164,
  ).freeze,
  "kent" => String.new(
    "key_enter",
    "kent",
    "str",
    "@8",
    "KEY_ENTER",
    "0527",
    "-----",
    "enter/send key",
    165,
  ).freeze,
  "kext" => String.new(
    "key_exit",
    "kext",
    "str",
    "@9",
    "KEY_EXIT",
    "0551",
    "-----",
    "exit key",
    166,
  ).freeze,
  "kfnd" => String.new(
    "key_find",
    "kfnd",
    "str",
    "@0",
    "KEY_FIND",
    "0552",
    "-----",
    "find key",
    167,
  ).freeze,
  "khlp" => String.new(
    "key_help",
    "khlp",
    "str",
    "%1",
    "KEY_HELP",
    "0553",
    "-----",
    "help key",
    168,
  ).freeze,
  "kmrk" => String.new(
    "key_mark",
    "kmrk",
    "str",
    "%2",
    "KEY_MARK",
    "0554",
    "-----",
    "mark key",
    169,
  ).freeze,
  "kmsg" => String.new(
    "key_message",
    "kmsg",
    "str",
    "%3",
    "KEY_MESSAGE",
    "0555",
    "-----",
    "message key",
    170,
  ).freeze,
  "kmov" => String.new(
    "key_move",
    "kmov",
    "str",
    "%4",
    "KEY_MOVE",
    "0556",
    "-----",
    "move key",
    171,
  ).freeze,
  "knxt" => String.new(
    "key_next",
    "knxt",
    "str",
    "%5",
    "KEY_NEXT",
    "0557",
    "-----",
    "next key",
    172,
  ).freeze,
  "kopn" => String.new(
    "key_open",
    "kopn",
    "str",
    "%6",
    "KEY_OPEN",
    "0560",
    "-----",
    "open key",
    173,
  ).freeze,
  "kopt" => String.new(
    "key_options",
    "kopt",
    "str",
    "%7",
    "KEY_OPTIONS",
    "0561",
    "-----",
    "options key",
    174,
  ).freeze,
  "kprv" => String.new(
    "key_previous",
    "kprv",
    "str",
    "%8",
    "KEY_PREVIOUS",
    "0562",
    "-----",
    "previous key",
    175,
  ).freeze,
  "kprt" => String.new(
    "key_print",
    "kprt",
    "str",
    "%9",
    "KEY_PRINT",
    "0532",
    "-----",
    "print key",
    176,
  ).freeze,
  "krdo" => String.new(
    "key_redo",
    "krdo",
    "str",
    "%0",
    "KEY_REDO",
    "0563",
    "-----",
    "redo key",
    177,
  ).freeze,
  "kref" => String.new(
    "key_reference",
    "kref",
    "str",
    "&1",
    "KEY_REFERENCE",
    "0564",
    "-----",
    "reference key",
    178,
  ).freeze,
  "krfr" => String.new(
    "key_refresh",
    "krfr",
    "str",
    "&2",
    "KEY_REFRESH",
    "0565",
    "-----",
    "refresh key",
    179,
  ).freeze,
  "krpl" => String.new(
    "key_replace",
    "krpl",
    "str",
    "&3",
    "KEY_REPLACE",
    "0566",
    "-----",
    "replace key",
    180,
  ).freeze,
  "krst" => String.new(
    "key_restart",
    "krst",
    "str",
    "&4",
    "KEY_RESTART",
    "0567",
    "-----",
    "restart key",
    181,
  ).freeze,
  "kres" => String.new(
    "key_resume",
    "kres",
    "str",
    "&5",
    "KEY_RESUME",
    "0570",
    "-----",
    "resume key",
    182,
  ).freeze,
  "ksav" => String.new(
    "key_save",
    "ksav",
    "str",
    "&6",
    "KEY_SAVE",
    "0571",
    "-----",
    "save key",
    183,
  ).freeze,
  "kspd" => String.new(
    "key_suspend",
    "kspd",
    "str",
    "&7",
    "KEY_SUSPEND",
    "0627",
    "-----",
    "suspend key",
    184,
  ).freeze,
  "kund" => String.new(
    "key_undo",
    "kund",
    "str",
    "&8",
    "KEY_UNDO",
    "0630",
    "-----",
    "undo key",
    185,
  ).freeze,
  "kBEG" => String.new(
    "key_sbeg",
    "kBEG",
    "str",
    "&9",
    "KEY_SBEG",
    "0572",
    "-----",
    "shifted begin key",
    186,
  ).freeze,
  "kCAN" => String.new(
    "key_scancel",
    "kCAN",
    "str",
    "&0",
    "KEY_SCANCEL",
    "0573",
    "-----",
    "shifted cancel key",
    187,
  ).freeze,
  "kCMD" => String.new(
    "key_scommand",
    "kCMD",
    "str",
    "*1",
    "KEY_SCOMMAND",
    "0574",
    "-----",
    "shifted command key",
    188,
  ).freeze,
  "kCPY" => String.new(
    "key_scopy",
    "kCPY",
    "str",
    "*2",
    "KEY_SCOPY",
    "0575",
    "-----",
    "shifted copy key",
    189,
  ).freeze,
  "kCRT" => String.new(
    "key_screate",
    "kCRT",
    "str",
    "*3",
    "KEY_SCREATE",
    "0576",
    "-----",
    "shifted create key",
    190,
  ).freeze,
  "kDC" => String.new(
    "key_sdc",
    "kDC",
    "str",
    "*4",
    "KEY_SDC",
    "0577",
    "-----",
    "shifted delete-character key",
    191,
  ).freeze,
  "kDL" => String.new(
    "key_sdl",
    "kDL",
    "str",
    "*5",
    "KEY_SDL",
    "0600",
    "-----",
    "shifted delete-line key",
    192,
  ).freeze,
  "kslt" => String.new(
    "key_select",
    "kslt",
    "str",
    "*6",
    "KEY_SELECT",
    "0601",
    "-----",
    "select key",
    193,
  ).freeze,
  "kEND" => String.new(
    "key_send",
    "kEND",
    "str",
    "*7",
    "KEY_SEND",
    "0602",
    "-----",
    "shifted end key",
    194,
  ).freeze,
  "kEOL" => String.new(
    "key_seol",
    "kEOL",
    "str",
    "*8",
    "KEY_SEOL",
    "0603",
    "-----",
    "shifted clear-to-end-of-line key",
    195,
  ).freeze,
  "kEXT" => String.new(
    "key_sexit",
    "kEXT",
    "str",
    "*9",
    "KEY_SEXIT",
    "0604",
    "-----",
    "shifted exit key",
    196,
  ).freeze,
  "kFND" => String.new(
    "key_sfind",
    "kFND",
    "str",
    "*0",
    "KEY_SFIND",
    "0605",
    "-----",
    "shifted find key",
    197,
  ).freeze,
  "kHLP" => String.new(
    "key_shelp",
    "kHLP",
    "str",
    "#1",
    "KEY_SHELP",
    "0606",
    "-----",
    "shifted help key",
    198,
  ).freeze,
  "kHOM" => String.new(
    "key_shome",
    "kHOM",
    "str",
    "#2",
    "KEY_SHOME",
    "0607",
    "-----",
    "shifted home key",
    199,
  ).freeze,
  "kIC" => String.new(
    "key_sic",
    "kIC",
    "str",
    "#3",
    "KEY_SIC",
    "0610",
    "-----",
    "shifted insert-character key",
    200,
  ).freeze,
  "kLFT" => String.new(
    "key_sleft",
    "kLFT",
    "str",
    "#4",
    "KEY_SLEFT",
    "0611",
    "-----",
    "shifted left-arrow key",
    201,
  ).freeze,
  "kMSG" => String.new(
    "key_smessage",
    "kMSG",
    "str",
    "%a",
    "KEY_SMESSAGE",
    "0612",
    "-----",
    "shifted message key",
    202,
  ).freeze,
  "kMOV" => String.new(
    "key_smove",
    "kMOV",
    "str",
    "%b",
    "KEY_SMOVE",
    "0613",
    "-----",
    "shifted move key",
    203,
  ).freeze,
  "kNXT" => String.new(
    "key_snext",
    "kNXT",
    "str",
    "%c",
    "KEY_SNEXT",
    "0614",
    "-----",
    "shifted next key",
    204,
  ).freeze,
  "kOPT" => String.new(
    "key_soptions",
    "kOPT",
    "str",
    "%d",
    "KEY_SOPTIONS",
    "0615",
    "-----",
    "shifted options key",
    205,
  ).freeze,
  "kPRV" => String.new(
    "key_sprevious",
    "kPRV",
    "str",
    "%e",
    "KEY_SPREVIOUS",
    "0616",
    "-----",
    "shifted previous key",
    206,
  ).freeze,
  "kPRT" => String.new(
    "key_sprint",
    "kPRT",
    "str",
    "%f",
    "KEY_SPRINT",
    "0617",
    "-----",
    "shifted print key",
    207,
  ).freeze,
  "kRDO" => String.new(
    "key_sredo",
    "kRDO",
    "str",
    "%g",
    "KEY_SREDO",
    "0620",
    "-----",
    "shifted redo key",
    208,
  ).freeze,
  "kRPL" => String.new(
    "key_sreplace",
    "kRPL",
    "str",
    "%h",
    "KEY_SREPLACE",
    "0621",
    "-----",
    "shifted replace key",
    209,
  ).freeze,
  "kRIT" => String.new(
    "key_sright",
    "kRIT",
    "str",
    "%i",
    "KEY_SRIGHT",
    "0622",
    "-----",
    "shifted right-arrow key",
    210,
  ).freeze,
  "kRES" => String.new(
    "key_srsume",
    "kRES",
    "str",
    "%j",
    "KEY_SRSUME",
    "0623",
    "-----",
    "shifted resume key",
    211,
  ).freeze,
  "kSAV" => String.new(
    "key_ssave",
    "kSAV",
    "str",
    "!1",
    "KEY_SSAVE",
    "0624",
    "-----",
    "shifted save key",
    212,
  ).freeze,
  "kSPD" => String.new(
    "key_ssuspend",
    "kSPD",
    "str",
    "!2",
    "KEY_SSUSPEND",
    "0625",
    "-----",
    "shifted suspend key",
    213,
  ).freeze,
  "kUND" => String.new(
    "key_sundo",
    "kUND",
    "str",
    "!3",
    "KEY_SUNDO",
    "0626",
    "-----",
    "shifted undo key",
    214,
  ).freeze,
  "rfi" => String.new(
    "req_for_input",
    "rfi",
    "str",
    "RF",
    "-",
    "-",
    "-----",
    "send next input char (for ptys)",
    215,
  ).freeze,
  "kf11" => String.new(
    "key_f11",
    "kf11",
    "str",
    "F1",
    "KEY_F(11)",
    "-",
    "----E",
    "F11 function key",
    216,
  ).freeze,
  "kf12" => String.new(
    "key_f12",
    "kf12",
    "str",
    "F2",
    "KEY_F(12)",
    "-",
    "----E",
    "F12 function key",
    217,
  ).freeze,
  "kf13" => String.new(
    "key_f13",
    "kf13",
    "str",
    "F3",
    "KEY_F(13)",
    "-",
    "----E",
    "F13 function key",
    218,
  ).freeze,
  "kf14" => String.new(
    "key_f14",
    "kf14",
    "str",
    "F4",
    "KEY_F(14)",
    "-",
    "----E",
    "F14 function key",
    219,
  ).freeze,
  "kf15" => String.new(
    "key_f15",
    "kf15",
    "str",
    "F5",
    "KEY_F(15)",
    "-",
    "----E",
    "F15 function key",
    220,
  ).freeze,
  "kf16" => String.new(
    "key_f16",
    "kf16",
    "str",
    "F6",
    "KEY_F(16)",
    "-",
    "----E",
    "F16 function key",
    221,
  ).freeze,
  "kf17" => String.new(
    "key_f17",
    "kf17",
    "str",
    "F7",
    "KEY_F(17)",
    "-",
    "----E",
    "F17 function key",
    222,
  ).freeze,
  "kf18" => String.new(
    "key_f18",
    "kf18",
    "str",
    "F8",
    "KEY_F(18)",
    "-",
    "----E",
    "F18 function key",
    223,
  ).freeze,
  "kf19" => String.new(
    "key_f19",
    "kf19",
    "str",
    "F9",
    "KEY_F(19)",
    "-",
    "----E",
    "F19 function key",
    224,
  ).freeze,
  "kf20" => String.new(
    "key_f20",
    "kf20",
    "str",
    "FA",
    "KEY_F(20)",
    "-",
    "----E",
    "F20 function key",
    225,
  ).freeze,
  "kf21" => String.new(
    "key_f21",
    "kf21",
    "str",
    "FB",
    "KEY_F(21)",
    "-",
    "----E",
    "F21 function key",
    226,
  ).freeze,
  "kf22" => String.new(
    "key_f22",
    "kf22",
    "str",
    "FC",
    "KEY_F(22)",
    "-",
    "----E",
    "F22 function key",
    227,
  ).freeze,
  "kf23" => String.new(
    "key_f23",
    "kf23",
    "str",
    "FD",
    "KEY_F(23)",
    "-",
    "----E",
    "F23 function key",
    228,
  ).freeze,
  "kf24" => String.new(
    "key_f24",
    "kf24",
    "str",
    "FE",
    "KEY_F(24)",
    "-",
    "----E",
    "F24 function key",
    229,
  ).freeze,
  "kf25" => String.new(
    "key_f25",
    "kf25",
    "str",
    "FF",
    "KEY_F(25)",
    "-",
    "----E",
    "F25 function key",
    230,
  ).freeze,
  "kf26" => String.new(
    "key_f26",
    "kf26",
    "str",
    "FG",
    "KEY_F(26)",
    "-",
    "----E",
    "F26 function key",
    231,
  ).freeze,
  "kf27" => String.new(
    "key_f27",
    "kf27",
    "str",
    "FH",
    "KEY_F(27)",
    "-",
    "----E",
    "F27 function key",
    232,
  ).freeze,
  "kf28" => String.new(
    "key_f28",
    "kf28",
    "str",
    "FI",
    "KEY_F(28)",
    "-",
    "----E",
    "F28 function key",
    233,
  ).freeze,
  "kf29" => String.new(
    "key_f29",
    "kf29",
    "str",
    "FJ",
    "KEY_F(29)",
    "-",
    "----E",
    "F29 function key",
    234,
  ).freeze,
  "kf30" => String.new(
    "key_f30",
    "kf30",
    "str",
    "FK",
    "KEY_F(30)",
    "-",
    "----E",
    "F30 function key",
    235,
  ).freeze,
  "kf31" => String.new(
    "key_f31",
    "kf31",
    "str",
    "FL",
    "KEY_F(31)",
    "-",
    "----E",
    "F31 function key",
    236,
  ).freeze,
  "kf32" => String.new(
    "key_f32",
    "kf32",
    "str",
    "FM",
    "KEY_F(32)",
    "-",
    "----E",
    "F32 function key",
    237,
  ).freeze,
  "kf33" => String.new(
    "key_f33",
    "kf33",
    "str",
    "FN",
    "KEY_F(33)",
    "-",
    "----E",
    "F33 function key",
    238,
  ).freeze,
  "kf34" => String.new(
    "key_f34",
    "kf34",
    "str",
    "FO",
    "KEY_F(34)",
    "-",
    "----E",
    "F34 function key",
    239,
  ).freeze,
  "kf35" => String.new(
    "key_f35",
    "kf35",
    "str",
    "FP",
    "KEY_F(35)",
    "-",
    "----E",
    "F35 function key",
    240,
  ).freeze,
  "kf36" => String.new(
    "key_f36",
    "kf36",
    "str",
    "FQ",
    "KEY_F(36)",
    "-",
    "----E",
    "F36 function key",
    241,
  ).freeze,
  "kf37" => String.new(
    "key_f37",
    "kf37",
    "str",
    "FR",
    "KEY_F(37)",
    "-",
    "----E",
    "F37 function key",
    242,
  ).freeze,
  "kf38" => String.new(
    "key_f38",
    "kf38",
    "str",
    "FS",
    "KEY_F(38)",
    "-",
    "----E",
    "F38 function key",
    243,
  ).freeze,
  "kf39" => String.new(
    "key_f39",
    "kf39",
    "str",
    "FT",
    "KEY_F(39)",
    "-",
    "----E",
    "F39 function key",
    244,
  ).freeze,
  "kf40" => String.new(
    "key_f40",
    "kf40",
    "str",
    "FU",
    "KEY_F(40)",
    "-",
    "----E",
    "F40 function key",
    245,
  ).freeze,
  "kf41" => String.new(
    "key_f41",
    "kf41",
    "str",
    "FV",
    "KEY_F(41)",
    "-",
    "----E",
    "F41 function key",
    246,
  ).freeze,
  "kf42" => String.new(
    "key_f42",
    "kf42",
    "str",
    "FW",
    "KEY_F(42)",
    "-",
    "----E",
    "F42 function key",
    247,
  ).freeze,
  "kf43" => String.new(
    "key_f43",
    "kf43",
    "str",
    "FX",
    "KEY_F(43)",
    "-",
    "----E",
    "F43 function key",
    248,
  ).freeze,
  "kf44" => String.new(
    "key_f44",
    "kf44",
    "str",
    "FY",
    "KEY_F(44)",
    "-",
    "----E",
    "F44 function key",
    249,
  ).freeze,
  "kf45" => String.new(
    "key_f45",
    "kf45",
    "str",
    "FZ",
    "KEY_F(45)",
    "-",
    "----E",
    "F45 function key",
    250,
  ).freeze,
  "kf46" => String.new(
    "key_f46",
    "kf46",
    "str",
    "Fa",
    "KEY_F(46)",
    "-",
    "----E",
    "F46 function key",
    251,
  ).freeze,
  "kf47" => String.new(
    "key_f47",
    "kf47",
    "str",
    "Fb",
    "KEY_F(47)",
    "-",
    "----E",
    "F47 function key",
    252,
  ).freeze,
  "kf48" => String.new(
    "key_f48",
    "kf48",
    "str",
    "Fc",
    "KEY_F(48)",
    "-",
    "----E",
    "F48 function key",
    253,
  ).freeze,
  "kf49" => String.new(
    "key_f49",
    "kf49",
    "str",
    "Fd",
    "KEY_F(49)",
    "-",
    "----E",
    "F49 function key",
    254,
  ).freeze,
  "kf50" => String.new(
    "key_f50",
    "kf50",
    "str",
    "Fe",
    "KEY_F(50)",
    "-",
    "----E",
    "F50 function key",
    255,
  ).freeze,
  "kf51" => String.new(
    "key_f51",
    "kf51",
    "str",
    "Ff",
    "KEY_F(51)",
    "-",
    "----E",
    "F51 function key",
    256,
  ).freeze,
  "kf52" => String.new(
    "key_f52",
    "kf52",
    "str",
    "Fg",
    "KEY_F(52)",
    "-",
    "----E",
    "F52 function key",
    257,
  ).freeze,
  "kf53" => String.new(
    "key_f53",
    "kf53",
    "str",
    "Fh",
    "KEY_F(53)",
    "-",
    "----E",
    "F53 function key",
    258,
  ).freeze,
  "kf54" => String.new(
    "key_f54",
    "kf54",
    "str",
    "Fi",
    "KEY_F(54)",
    "-",
    "----E",
    "F54 function key",
    259,
  ).freeze,
  "kf55" => String.new(
    "key_f55",
    "kf55",
    "str",
    "Fj",
    "KEY_F(55)",
    "-",
    "----E",
    "F55 function key",
    260,
  ).freeze,
  "kf56" => String.new(
    "key_f56",
    "kf56",
    "str",
    "Fk",
    "KEY_F(56)",
    "-",
    "----E",
    "F56 function key",
    261,
  ).freeze,
  "kf57" => String.new(
    "key_f57",
    "kf57",
    "str",
    "Fl",
    "KEY_F(57)",
    "-",
    "----E",
    "F57 function key",
    262,
  ).freeze,
  "kf58" => String.new(
    "key_f58",
    "kf58",
    "str",
    "Fm",
    "KEY_F(58)",
    "-",
    "----E",
    "F58 function key",
    263,
  ).freeze,
  "kf59" => String.new(
    "key_f59",
    "kf59",
    "str",
    "Fn",
    "KEY_F(59)",
    "-",
    "----E",
    "F59 function key",
    264,
  ).freeze,
  "kf60" => String.new(
    "key_f60",
    "kf60",
    "str",
    "Fo",
    "KEY_F(60)",
    "-",
    "----E",
    "F60 function key",
    265,
  ).freeze,
  "kf61" => String.new(
    "key_f61",
    "kf61",
    "str",
    "Fp",
    "KEY_F(61)",
    "-",
    "----E",
    "F61 function key",
    266,
  ).freeze,
  "kf62" => String.new(
    "key_f62",
    "kf62",
    "str",
    "Fq",
    "KEY_F(62)",
    "-",
    "----E",
    "F62 function key",
    267,
  ).freeze,
  "kf63" => String.new(
    "key_f63",
    "kf63",
    "str",
    "Fr",
    "KEY_F(63)",
    "-",
    "----E",
    "F63 function key",
    268,
  ).freeze,
  "el1" => String.new(
    "clr_bol",
    "el1",
    "str",
    "cb",
    "-",
    "-",
    "-----",
    "Clear to beginning of line",
    269,
  ).freeze,
  "mgc" => String.new(
    "clear_margins",
    "mgc",
    "str",
    "MC",
    "-",
    "-",
    "-----",
    "clear right and left soft margins",
    270,
  ).freeze,
  "smgl" => String.new(
    "set_left_margin",
    "smgl",
    "str",
    "ML",
    "-",
    "-",
    "-----",
    "set left soft margin at current column (not in BSD \\fItermcap\\fP)",
    271,
  ).freeze,
  "smgr" => String.new(
    "set_right_margin",
    "smgr",
    "str",
    "MR",
    "-",
    "-",
    "-----",
    "set right soft margin at current column",
    272,
  ).freeze,
  "fln" => String.new(
    "label_format",
    "fln",
    "str",
    "Lf",
    "-",
    "-",
    "-----",
    "label format",
    273,
  ).freeze,
  "sclk" => String.new(
    "set_clock",
    "sclk",
    "str",
    "SC",
    "-",
    "-",
    "-----",
    "set clock, #1 hrs #2 mins #3 secs",
    274,
  ).freeze,
  "dclk" => String.new(
    "display_clock",
    "dclk",
    "str",
    "DK",
    "-",
    "-",
    "-----",
    "display clock",
    275,
  ).freeze,
  "rmclk" => String.new(
    "remove_clock",
    "rmclk",
    "str",
    "RC",
    "-",
    "-",
    "-----",
    "remove clock",
    276,
  ).freeze,
  "cwin" => String.new(
    "create_window",
    "cwin",
    "str",
    "CW",
    "-",
    "-",
    "-----",
    "define a window #1 from #2,#3 to #4,#5",
    277,
  ).freeze,
  "wingo" => String.new(
    "goto_window",
    "wingo",
    "str",
    "WG",
    "-",
    "-",
    "-----",
    "go to window #1",
    278,
  ).freeze,
  "hup" => String.new(
    "hangup",
    "hup",
    "str",
    "HU",
    "-",
    "-",
    "-----",
    "hang-up phone",
    279,
  ).freeze,
  "dial" => String.new(
    "dial_phone",
    "dial",
    "str",
    "DI",
    "-",
    "-",
    "-----",
    "dial number #1",
    280,
  ).freeze,
  "qdial" => String.new(
    "quick_dial",
    "qdial",
    "str",
    "QD",
    "-",
    "-",
    "-----",
    "dial number #1 without checking",
    281,
  ).freeze,
  "tone" => String.new(
    "tone",
    "tone",
    "str",
    "TO",
    "-",
    "-",
    "-----",
    "select touch tone dialing",
    282,
  ).freeze,
  "pulse" => String.new(
    "pulse",
    "pulse",
    "str",
    "PU",
    "-",
    "-",
    "-----",
    "select pulse dialing",
    283,
  ).freeze,
  "hook" => String.new(
    "flash_hook",
    "hook",
    "str",
    "fh",
    "-",
    "-",
    "-----",
    "flash switch hook",
    284,
  ).freeze,
  "pause" => String.new(
    "fixed_pause",
    "pause",
    "str",
    "PA",
    "-",
    "-",
    "-----",
    "pause for 2-3 seconds",
    285,
  ).freeze,
  "wait" => String.new(
    "wait_tone",
    "wait",
    "str",
    "WA",
    "-",
    "-",
    "-----",
    "wait for dial-tone",
    286,
  ).freeze,
  "u0" => String.new(
    "user0",
    "u0",
    "str",
    "u0",
    "-",
    "-",
    "-----",
    "User string #0",
    287,
  ).freeze,
  "u1" => String.new(
    "user1",
    "u1",
    "str",
    "u1",
    "-",
    "-",
    "-----",
    "User string #1",
    288,
  ).freeze,
  "u2" => String.new(
    "user2",
    "u2",
    "str",
    "u2",
    "-",
    "-",
    "-----",
    "User string #2",
    289,
  ).freeze,
  "u3" => String.new(
    "user3",
    "u3",
    "str",
    "u3",
    "-",
    "-",
    "-----",
    "User string #3",
    290,
  ).freeze,
  "u4" => String.new(
    "user4",
    "u4",
    "str",
    "u4",
    "-",
    "-",
    "-----",
    "User string #4",
    291,
  ).freeze,
  "u5" => String.new(
    "user5",
    "u5",
    "str",
    "u5",
    "-",
    "-",
    "-----",
    "User string #5",
    292,
  ).freeze,
  "u6" => String.new(
    "user6",
    "u6",
    "str",
    "u6",
    "-",
    "-",
    "-----",
    "User string #6",
    293,
  ).freeze,
  "u7" => String.new(
    "user7",
    "u7",
    "str",
    "u7",
    "-",
    "-",
    "-----",
    "User string #7",
    294,
  ).freeze,
  "u8" => String.new(
    "user8",
    "u8",
    "str",
    "u8",
    "-",
    "-",
    "-----",
    "User string #8",
    295,
  ).freeze,
  "u9" => String.new(
    "user9",
    "u9",
    "str",
    "u9",
    "-",
    "-",
    "-----",
    "User string #9",
    296,
  ).freeze,
  "op" => String.new(
    "orig_pair",
    "op",
    "str",
    "op",
    "-",
    "-",
    "-----",
    "Set default pair to its original value",
    297,
  ).freeze,
  "oc" => String.new(
    "orig_colors",
    "oc",
    "str",
    "oc",
    "-",
    "-",
    "-----",
    "Set all color pairs to the original ones",
    298,
  ).freeze,
  "initc" => String.new(
    "initialize_color",
    "initc",
    "str",
    "Ic",
    "-",
    "-",
    "-----",
    "initialize color #1 to (#2,#3,#4)",
    299,
  ).freeze,
  "initp" => String.new(
    "initialize_pair",
    "initp",
    "str",
    "Ip",
    "-",
    "-",
    "-----",
    "Initialize color pair #1 to fg=(#2,#3,#4), bg=(#5,#6,#7)",
    300,
  ).freeze,
  "scp" => String.new(
    "set_color_pair",
    "scp",
    "str",
    "sp",
    "-",
    "-",
    "-----",
    "Set current color pair to #1",
    301,
  ).freeze,
  "setf" => String.new(
    "set_foreground",
    "setf",
    "str",
    "Sf",
    "-",
    "-",
    "-----",
    "Set foreground color #1",
    302,
  ).freeze,
  "setb" => String.new(
    "set_background",
    "setb",
    "str",
    "Sb",
    "-",
    "-",
    "-----",
    "Set background color #1",
    303,
  ).freeze,
  "cpi" => String.new(
    "change_char_pitch",
    "cpi",
    "str",
    "ZA",
    "-",
    "-",
    "-----",
    "Change number of characters per inch to #1",
    304,
  ).freeze,
  "lpi" => String.new(
    "change_line_pitch",
    "lpi",
    "str",
    "ZB",
    "-",
    "-",
    "-----",
    "Change number of lines per inch to #1",
    305,
  ).freeze,
  "chr" => String.new(
    "change_res_horz",
    "chr",
    "str",
    "ZC",
    "-",
    "-",
    "-----",
    "Change horizontal resolution to #1",
    306,
  ).freeze,
  "cvr" => String.new(
    "change_res_vert",
    "cvr",
    "str",
    "ZD",
    "-",
    "-",
    "-----",
    "Change vertical resolution to #1",
    307,
  ).freeze,
  "defc" => String.new(
    "define_char",
    "defc",
    "str",
    "ZE",
    "-",
    "-",
    "-----",
    "Define a character #1, #2 dots wide, descender #3",
    308,
  ).freeze,
  "swidm" => String.new(
    "enter_doublewide_mode",
    "swidm",
    "str",
    "ZF",
    "-",
    "-",
    "-----",
    "Enter double-wide mode",
    309,
  ).freeze,
  "sdrfq" => String.new(
    "enter_draft_quality",
    "sdrfq",
    "str",
    "ZG",
    "-",
    "-",
    "-----",
    "Enter draft-quality mode",
    310,
  ).freeze,
  "sitm" => String.new(
    "enter_italics_mode",
    "sitm",
    "str",
    "ZH",
    "-",
    "-",
    "-----",
    "Enter italic mode",
    311,
  ).freeze,
  "slm" => String.new(
    "enter_leftward_mode",
    "slm",
    "str",
    "ZI",
    "-",
    "-",
    "-----",
    "Start leftward carriage motion",
    312,
  ).freeze,
  "smicm" => String.new(
    "enter_micro_mode",
    "smicm",
    "str",
    "ZJ",
    "-",
    "-",
    "-----",
    "Start micro-motion mode",
    313,
  ).freeze,
  "snlq" => String.new(
    "enter_near_letter_quality",
    "snlq",
    "str",
    "ZK",
    "-",
    "-",
    "-----",
    "Enter NLQ mode",
    314,
  ).freeze,
  "snrmq" => String.new(
    "enter_normal_quality",
    "snrmq",
    "str",
    "ZL",
    "-",
    "-",
    "-----",
    "Enter normal-quality mode",
    315,
  ).freeze,
  "sshm" => String.new(
    "enter_shadow_mode",
    "sshm",
    "str",
    "ZM",
    "-",
    "-",
    "-----",
    "Enter shadow-print mode",
    316,
  ).freeze,
  "ssubm" => String.new(
    "enter_subscript_mode",
    "ssubm",
    "str",
    "ZN",
    "-",
    "-",
    "-----",
    "Enter subscript mode",
    317,
  ).freeze,
  "ssupm" => String.new(
    "enter_superscript_mode",
    "ssupm",
    "str",
    "ZO",
    "-",
    "-",
    "-----",
    "Enter superscript mode",
    318,
  ).freeze,
  "sum" => String.new(
    "enter_upward_mode",
    "sum",
    "str",
    "ZP",
    "-",
    "-",
    "-----",
    "Start upward carriage motion",
    319,
  ).freeze,
  "rwidm" => String.new(
    "exit_doublewide_mode",
    "rwidm",
    "str",
    "ZQ",
    "-",
    "-",
    "-----",
    "End double-wide mode",
    320,
  ).freeze,
  "ritm" => String.new(
    "exit_italics_mode",
    "ritm",
    "str",
    "ZR",
    "-",
    "-",
    "-----",
    "End italic mode",
    321,
  ).freeze,
  "rlm" => String.new(
    "exit_leftward_mode",
    "rlm",
    "str",
    "ZS",
    "-",
    "-",
    "-----",
    "End left-motion mode",
    322,
  ).freeze,
  "rmicm" => String.new(
    "exit_micro_mode",
    "rmicm",
    "str",
    "ZT",
    "-",
    "-",
    "-----",
    "End micro-motion mode",
    323,
  ).freeze,
  "rshm" => String.new(
    "exit_shadow_mode",
    "rshm",
    "str",
    "ZU",
    "-",
    "-",
    "-----",
    "End shadow-print mode",
    324,
  ).freeze,
  "rsubm" => String.new(
    "exit_subscript_mode",
    "rsubm",
    "str",
    "ZV",
    "-",
    "-",
    "-----",
    "End subscript mode",
    325,
  ).freeze,
  "rsupm" => String.new(
    "exit_superscript_mode",
    "rsupm",
    "str",
    "ZW",
    "-",
    "-",
    "-----",
    "End superscript mode",
    326,
  ).freeze,
  "rum" => String.new(
    "exit_upward_mode",
    "rum",
    "str",
    "ZX",
    "-",
    "-",
    "-----",
    "End reverse character motion",
    327,
  ).freeze,
  "mhpa" => String.new(
    "micro_column_address",
    "mhpa",
    "str",
    "ZY",
    "-",
    "-",
    "-----",
    "Like column_address in micro mode",
    328,
  ).freeze,
  "mcud1" => String.new(
    "micro_down",
    "mcud1",
    "str",
    "ZZ",
    "-",
    "-",
    "-----",
    "Like cursor_down in micro mode",
    329,
  ).freeze,
  "mcub1" => String.new(
    "micro_left",
    "mcub1",
    "str",
    "Za",
    "-",
    "-",
    "-----",
    "Like cursor_left in micro mode",
    330,
  ).freeze,
  "mcuf1" => String.new(
    "micro_right",
    "mcuf1",
    "str",
    "Zb",
    "-",
    "-",
    "-----",
    "Like cursor_right in micro mode",
    331,
  ).freeze,
  "mvpa" => String.new(
    "micro_row_address",
    "mvpa",
    "str",
    "Zc",
    "-",
    "-",
    "-----",
    "Like row_address #1 in micro mode",
    332,
  ).freeze,
  "mcuu1" => String.new(
    "micro_up",
    "mcuu1",
    "str",
    "Zd",
    "-",
    "-",
    "-----",
    "Like cursor_up in micro mode",
    333,
  ).freeze,
  "porder" => String.new(
    "order_of_pins",
    "porder",
    "str",
    "Ze",
    "-",
    "-",
    "-----",
    "Match software bits to print-head pins",
    334,
  ).freeze,
  "mcud" => String.new(
    "parm_down_micro",
    "mcud",
    "str",
    "Zf",
    "-",
    "-",
    "-----",
    "Like parm_down_cursor in micro mode",
    335,
  ).freeze,
  "mcub" => String.new(
    "parm_left_micro",
    "mcub",
    "str",
    "Zg",
    "-",
    "-",
    "-----",
    "Like parm_left_cursor in micro mode",
    336,
  ).freeze,
  "mcuf" => String.new(
    "parm_right_micro",
    "mcuf",
    "str",
    "Zh",
    "-",
    "-",
    "-----",
    "Like parm_right_cursor in micro mode",
    337,
  ).freeze,
  "mcuu" => String.new(
    "parm_up_micro",
    "mcuu",
    "str",
    "Zi",
    "-",
    "-",
    "-----",
    "Like parm_up_cursor in micro mode",
    338,
  ).freeze,
  "scs" => String.new(
    "select_char_set",
    "scs",
    "str",
    "Zj",
    "-",
    "-",
    "-----",
    "Select character set, #1",
    339,
  ).freeze,
  "smgb" => String.new(
    "set_bottom_margin",
    "smgb",
    "str",
    "Zk",
    "-",
    "-",
    "-----",
    "Set bottom margin at current line",
    340,
  ).freeze,
  "smgbp" => String.new(
    "set_bottom_margin_parm",
    "smgbp",
    "str",
    "Zl",
    "-",
    "-",
    "-----",
    "Set bottom margin at line #1 or (if smgtp is not given) #2 lines from bottom",
    341,
  ).freeze,
  "smglp" => String.new(
    "set_left_margin_parm",
    "smglp",
    "str",
    "Zm",
    "-",
    "-",
    "-----",
    "Set left (right) margin at column #1",
    342,
  ).freeze,
  "smgrp" => String.new(
    "set_right_margin_parm",
    "smgrp",
    "str",
    "Zn",
    "-",
    "-",
    "-----",
    "Set right margin at column #1",
    343,
  ).freeze,
  "smgt" => String.new(
    "set_top_margin",
    "smgt",
    "str",
    "Zo",
    "-",
    "-",
    "-----",
    "Set top margin at current line",
    344,
  ).freeze,
  "smgtp" => String.new(
    "set_top_margin_parm",
    "smgtp",
    "str",
    "Zp",
    "-",
    "-",
    "-----",
    "Set top (bottom) margin at row #1",
    345,
  ).freeze,
  "sbim" => String.new(
    "start_bit_image",
    "sbim",
    "str",
    "Zq",
    "-",
    "-",
    "-----",
    "Start printing bit image graphics",
    346,
  ).freeze,
  "scsd" => String.new(
    "start_char_set_def",
    "scsd",
    "str",
    "Zr",
    "-",
    "-",
    "-----",
    "Start character set definition #1, with #2 characters in the set",
    347,
  ).freeze,
  "rbim" => String.new(
    "stop_bit_image",
    "rbim",
    "str",
    "Zs",
    "-",
    "-",
    "-----",
    "Stop printing bit image graphics",
    348,
  ).freeze,
  "rcsd" => String.new(
    "stop_char_set_def",
    "rcsd",
    "str",
    "Zt",
    "-",
    "-",
    "-----",
    "End definition of character set #1",
    349,
  ).freeze,
  "subcs" => String.new(
    "subscript_characters",
    "subcs",
    "str",
    "Zu",
    "-",
    "-",
    "-----",
    "List of subscriptable characters",
    350,
  ).freeze,
  "supcs" => String.new(
    "superscript_characters",
    "supcs",
    "str",
    "Zv",
    "-",
    "-",
    "-----",
    "List of superscriptable characters",
    351,
  ).freeze,
  "docr" => String.new(
    "these_cause_cr",
    "docr",
    "str",
    "Zw",
    "-",
    "-",
    "-----",
    "Printing any of these characters causes CR",
    352,
  ).freeze,
  "zerom" => String.new(
    "zero_motion",
    "zerom",
    "str",
    "Zx",
    "-",
    "-",
    "-----",
    "No motion for subsequent character",
    353,
  ).freeze,
  "csnm" => String.new(
    "char_set_names",
    "csnm",
    "str",
    "Zy",
    "-",
    "-",
    "-----",
    "Produce #1'th item from list of character set names",
    354,
  ).freeze,
  "kmous" => String.new(
    "key_mouse",
    "kmous",
    "str",
    "Km",
    "KEY_MOUSE",
    "0631",
    "-----",
    "Mouse event has occurred",
    355,
  ).freeze,
  "minfo" => String.new(
    "mouse_info",
    "minfo",
    "str",
    "Mi",
    "-",
    "-",
    "-----",
    "Mouse status information",
    356,
  ).freeze,
  "reqmp" => String.new(
    "req_mouse_pos",
    "reqmp",
    "str",
    "RQ",
    "-",
    "-",
    "-----",
    "Request mouse position",
    357,
  ).freeze,
  "getm" => String.new(
    "get_mouse",
    "getm",
    "str",
    "Gm",
    "-",
    "-",
    "-----",
    "Curses should get button events, parameter #1 not documented.",
    358,
  ).freeze,
  "setaf" => String.new(
    "set_a_foreground",
    "setaf",
    "str",
    "AF",
    "-",
    "-",
    "-----",
    "Set foreground color to #1, using ANSI escape",
    359,
  ).freeze,
  "setab" => String.new(
    "set_a_background",
    "setab",
    "str",
    "AB",
    "-",
    "-",
    "-----",
    "Set background color to #1, using ANSI escape",
    360,
  ).freeze,
  "pfxl" => String.new(
    "pkey_plab",
    "pfxl",
    "str",
    "xl",
    "-",
    "-",
    "-----",
    "Program function key #1 to type string #2 and show string #3",
    361,
  ).freeze,
  "devt" => String.new(
    "device_type",
    "devt",
    "str",
    "dv",
    "-",
    "-",
    "-----",
    "Indicate language, codeset support",
    362,
  ).freeze,
  "csin" => String.new(
    "code_set_init",
    "csin",
    "str",
    "ci",
    "-",
    "-",
    "-----",
    "Init sequence for multiple codesets",
    363,
  ).freeze,
  "s0ds" => String.new(
    "set0_des_seq",
    "s0ds",
    "str",
    "s0",
    "-",
    "-",
    "-----",
    "Shift to codeset 0 (EUC set 0, ASCII)",
    364,
  ).freeze,
  "s1ds" => String.new(
    "set1_des_seq",
    "s1ds",
    "str",
    "s1",
    "-",
    "-",
    "-----",
    "Shift to codeset 1",
    365,
  ).freeze,
  "s2ds" => String.new(
    "set2_des_seq",
    "s2ds",
    "str",
    "s2",
    "-",
    "-",
    "-----",
    "Shift to codeset 2",
    366,
  ).freeze,
  "s3ds" => String.new(
    "set3_des_seq",
    "s3ds",
    "str",
    "s3",
    "-",
    "-",
    "-----",
    "Shift to codeset 3",
    367,
  ).freeze,
  "smglr" => String.new(
    "set_lr_margin",
    "smglr",
    "str",
    "ML",
    "-",
    "-",
    "-----",
    "Set both left and right margins to #1, #2.  (ML is not in BSD termcap).",
    368,
  ).freeze,
  "smgtb" => String.new(
    "set_tb_margin",
    "smgtb",
    "str",
    "MT",
    "-",
    "-",
    "-----",
    "Sets both top and bottom margins to #1, #2",
    369,
  ).freeze,
  "birep" => String.new(
    "bit_image_repeat",
    "birep",
    "str",
    "Xy",
    "-",
    "-",
    "-----",
    "Repeat bit image cell #1 #2 times",
    370,
  ).freeze,
  "binel" => String.new(
    "bit_image_newline",
    "binel",
    "str",
    "Zz",
    "-",
    "-",
    "-----",
    "Move to next row of the bit image",
    371,
  ).freeze,
  "bicr" => String.new(
    "bit_image_carriage_return",
    "bicr",
    "str",
    "Yv",
    "-",
    "-",
    "-----",
    "Move to beginning of same row",
    372,
  ).freeze,
  "colornm" => String.new(
    "color_names",
    "colornm",
    "str",
    "Yw",
    "-",
    "-",
    "-----",
    "Give name for color #1",
    373,
  ).freeze,
  "defbi" => String.new(
    "define_bit_image_region",
    "defbi",
    "str",
    "Yx",
    "-",
    "-",
    "-----",
    "Define rectangular bit image region",
    374,
  ).freeze,
  "endbi" => String.new(
    "end_bit_image_region",
    "endbi",
    "str",
    "Yy",
    "-",
    "-",
    "-----",
    "End a bit-image region",
    375,
  ).freeze,
  "setcolor" => String.new(
    "set_color_band",
    "setcolor",
    "str",
    "Yz",
    "-",
    "-",
    "-----",
    "Change to ribbon color #1",
    376,
  ).freeze,
  "slines" => String.new(
    "set_page_length",
    "slines",
    "str",
    "YZ",
    "-",
    "-",
    "-----",
    "Set page length to #1 lines",
    377,
  ).freeze,
  "dispc" => String.new(
    "display_pc_char",
    "dispc",
    "str",
    "S1",
    "-",
    "-",
    "-----",
    "Display PC character #1",
    378,
  ).freeze,
  "smpch" => String.new(
    "enter_pc_charset_mode",
    "smpch",
    "str",
    "S2",
    "-",
    "-",
    "-----",
    "Enter PC character display mode",
    379,
  ).freeze,
  "rmpch" => String.new(
    "exit_pc_charset_mode",
    "rmpch",
    "str",
    "S3",
    "-",
    "-",
    "-----",
    "Exit PC character display mode",
    380,
  ).freeze,
  "smsc" => String.new(
    "enter_scancode_mode",
    "smsc",
    "str",
    "S4",
    "-",
    "-",
    "-----",
    "Enter PC scancode mode",
    381,
  ).freeze,
  "rmsc" => String.new(
    "exit_scancode_mode",
    "rmsc",
    "str",
    "S5",
    "-",
    "-",
    "-----",
    "Exit PC scancode mode",
    382,
  ).freeze,
  "pctrm" => String.new(
    "pc_term_options",
    "pctrm",
    "str",
    "S6",
    "-",
    "-",
    "-----",
    "PC terminal options",
    383,
  ).freeze,
  "scesc" => String.new(
    "scancode_escape",
    "scesc",
    "str",
    "S7",
    "-",
    "-",
    "-----",
    "Escape for scancode emulation",
    384,
  ).freeze,
  "scesa" => String.new(
    "alt_scancode_esc",
    "scesa",
    "str",
    "S8",
    "-",
    "-",
    "-----",
    "Alternate escape for scancode emulation",
    385,
  ).freeze,
  "ehhlm" => String.new(
    "enter_horizontal_hl_mode",
    "ehhlm",
    "str",
    "Xh",
    "-",
    "-",
    "-----",
    "Enter horizontal highlight mode",
    386,
  ).freeze,
  "elhlm" => String.new(
    "enter_left_hl_mode",
    "elhlm",
    "str",
    "Xl",
    "-",
    "-",
    "-----",
    "Enter left highlight mode",
    387,
  ).freeze,
  "elohlm" => String.new(
    "enter_low_hl_mode",
    "elohlm",
    "str",
    "Xo",
    "-",
    "-",
    "-----",
    "Enter low highlight mode",
    388,
  ).freeze,
  "erhlm" => String.new(
    "enter_right_hl_mode",
    "erhlm",
    "str",
    "Xr",
    "-",
    "-",
    "-----",
    "Enter right highlight mode",
    389,
  ).freeze,
  "ethlm" => String.new(
    "enter_top_hl_mode",
    "ethlm",
    "str",
    "Xt",
    "-",
    "-",
    "-----",
    "Enter top highlight mode",
    390,
  ).freeze,
  "evhlm" => String.new(
    "enter_vertical_hl_mode",
    "evhlm",
    "str",
    "Xv",
    "-",
    "-",
    "-----",
    "Enter vertical highlight mode",
    391,
  ).freeze,
  "sgr1" => String.new(
    "set_a_attributes",
    "sgr1",
    "str",
    "sA",
    "-",
    "-",
    "-----",
    "Define second set of video attributes #1-#6",
    392,
  ).freeze,
  "slength" => String.new(
    "set_pglen_inch",
    "slength",
    "str",
    "YI",
    "-",
    "-",
    "-----",
    "Set page length to #1 hundredth of an inch (some implementations use sL for termcap).",
    393,
  ).freeze,
}.freeze
STRING_LIST =
STRINGS.values