summaryrefslogtreecommitdiff
path: root/tui/termfo/caps/caps.go
diff options
context:
space:
mode:
authorraven <citrons@mondecitronne.com>2026-02-20 13:42:12 -0600
committerraven <citrons@mondecitronne.com>2026-02-20 13:46:59 -0600
commit5b6196ebe67cf954bae8212c1a33b869da723e11 (patch)
treedce33c06621847c3862e64bda914b1e8a450317d /tui/termfo/caps/caps.go
parent05c068749740f9430d1fda7698c433697eef1652 (diff)
support builtin terminfo
copy termfo into the repository and modify it to embed an xterm terminfo to as a fallback
Diffstat (limited to 'tui/termfo/caps/caps.go')
-rw-r--r--tui/termfo/caps/caps.go629
1 files changed, 629 insertions, 0 deletions
diff --git a/tui/termfo/caps/caps.go b/tui/termfo/caps/caps.go
new file mode 100644
index 0000000..b157210
--- /dev/null
+++ b/tui/termfo/caps/caps.go
@@ -0,0 +1,629 @@
+// Code generated by term.h.zsh; DO NOT EDIT.
+
+// Package caps contains a list of all terminfo capabilities.
+package caps
+
+// CursesVersion is the version of curses this data was generated with, as [implementation]-[version].
+const CursesVersion = `ncurses-6.5.20240511`
+
+// Cap represents a capability as listed in a terminfo file.
+type Cap struct {
+ Short string // Short terminfo name
+ Long string // Longer variable name from term.h
+ Desc string // Description from terminfo(5)
+}
+
+var (
+ AutoLeftMargin = &Cap{`bw`, `auto_left_margin`, `cub1 wraps from column 0 to last column`}
+ AutoRightMargin = &Cap{`am`, `auto_right_margin`, `terminal has automatic margins`}
+ NoEscCtlc = &Cap{`xsb`, `no_esc_ctlc`, `beehive (f1=escape, f2=ctrl C)`}
+ CeolStandoutGlitch = &Cap{`xhp`, `ceol_standout_glitch`, `standout not erased by overwriting (hp)`}
+ EatNewlineGlitch = &Cap{`xenl`, `eat_newline_glitch`, `newline ignored after 80 cols (concept)`}
+ EraseOverstrike = &Cap{`eo`, `erase_overstrike`, `can erase overstrikes with a blank`}
+ GenericType = &Cap{`gn`, `generic_type`, `generic line type`}
+ HardCopy = &Cap{`hc`, `hard_copy`, `hardcopy terminal`}
+ HasMetaKey = &Cap{`km`, `has_meta_key`, `Has a meta key (i.e., sets 8th-bit)`}
+ HasStatusLine = &Cap{`hs`, `has_status_line`, `has extra status line`}
+ InsertNullGlitch = &Cap{`in`, `insert_null_glitch`, `insert mode distinguishes nulls`}
+ MemoryAbove = &Cap{`da`, `memory_above`, `display may be retained above the screen`}
+ MemoryBelow = &Cap{`db`, `memory_below`, `display may be retained below the screen`}
+ MoveInsertMode = &Cap{`mir`, `move_insert_mode`, `safe to move while in insert mode`}
+ MoveStandoutMode = &Cap{`msgr`, `move_standout_mode`, `safe to move while in standout mode`}
+ OverStrike = &Cap{`os`, `over_strike`, `terminal can overstrike`}
+ StatusLineEscOk = &Cap{`eslok`, `status_line_esc_ok`, `escape can be used on the status line`}
+ DestTabsMagicSmso = &Cap{`xt`, `dest_tabs_magic_smso`, `tabs destructive, magic so char (t1061)`}
+ TildeGlitch = &Cap{`hz`, `tilde_glitch`, `cannot print ~'s (Hazeltine)`}
+ TransparentUnderline = &Cap{`ul`, `transparent_underline`, `underline character overstrikes`}
+ XonXoff = &Cap{`xon`, `xon_xoff`, `terminal uses xon/xoff handshaking`}
+ NeedsXonXoff = &Cap{`nxon`, `needs_xon_xoff`, `padding will not work, xon/xoff required`}
+ PrtrSilent = &Cap{`mc5i`, `prtr_silent`, `printer will not echo on screen`}
+ HardCursor = &Cap{`chts`, `hard_cursor`, `cursor is hard to see`}
+ NonRevRmcup = &Cap{`nrrmc`, `non_rev_rmcup`, `smcup does not reverse rmcup`}
+ NoPadChar = &Cap{`npc`, `no_pad_char`, `pad character does not exist`}
+ NonDestScrollRegion = &Cap{`ndscr`, `non_dest_scroll_region`, `scrolling region is non-destructive`}
+ CanChange = &Cap{`ccc`, `can_change`, `terminal can re-define existing colors`}
+ BackColorErase = &Cap{`bce`, `back_color_erase`, `screen erased with background color`}
+ HueLightnessSaturation = &Cap{`hls`, `hue_lightness_saturation`, `terminal uses only HLS color notation (Tektronix)`}
+ ColAddrGlitch = &Cap{`xhpa`, `col_addr_glitch`, `only positive motion for hpa/mhpa caps`}
+ CrCancelsMicroMode = &Cap{`crxm`, `cr_cancels_micro_mode`, `using cr turns off micro mode`}
+ HasPrintWheel = &Cap{`daisy`, `has_print_wheel`, `printer needs operator to change character set`}
+ RowAddrGlitch = &Cap{`xvpa`, `row_addr_glitch`, `only positive motion for vpa/mvpa caps`}
+ SemiAutoRightMargin = &Cap{`sam`, `semi_auto_right_margin`, `printing in last column causes cr`}
+ CpiChangesRes = &Cap{`cpix`, `cpi_changes_res`, `changing character pitch changes resolution`}
+ LpiChangesRes = &Cap{`lpix`, `lpi_changes_res`, `changing line pitch changes resolution`}
+ Columns = &Cap{`cols`, `columns`, `number of columns in a line`}
+ InitTabs = &Cap{`it`, `init_tabs`, `tabs initially every # spaces`}
+ Lines = &Cap{`lines`, `lines`, `number of lines on screen or page`}
+ LinesOfMemory = &Cap{`lm`, `lines_of_memory`, `lines of memory if > line. 0 means varies`}
+ MagicCookieGlitch = &Cap{`xmc`, `magic_cookie_glitch`, `number of blank characters left by smso or rmso`}
+ PaddingBaudRate = &Cap{`pb`, `padding_baud_rate`, `lowest baud rate where padding needed`}
+ VirtualTerminal = &Cap{`vt`, `virtual_terminal`, `virtual terminal number (CB/unix)`}
+ WidthStatusLine = &Cap{`wsl`, `width_status_line`, `number of columns in status line`}
+ NumLabels = &Cap{`nlab`, `num_labels`, `number of labels on screen`}
+ LabelHeight = &Cap{`lh`, `label_height`, `rows in each label`}
+ LabelWidth = &Cap{`lw`, `label_width`, `columns in each label`}
+ MaxAttributes = &Cap{`ma`, `max_attributes`, `maximum combined attributes terminal can handle`}
+ MaximumWindows = &Cap{`wnum`, `maximum_windows`, `maximum number of definable windows`}
+ MaxColors = &Cap{`colors`, `max_colors`, `maximum number of colors on screen`}
+ MaxPairs = &Cap{`pairs`, `max_pairs`, `maximum number of color-pairs on the screen`}
+ NoColorVideo = &Cap{`ncv`, `no_color_video`, `video attributes that cannot be used with colors`}
+ BufferCapacity = &Cap{`bufsz`, `buffer_capacity`, `numbers of bytes buffered before printing`}
+ DotVertSpacing = &Cap{`spinv`, `dot_vert_spacing`, `spacing of pins vertically in pins per inch`}
+ DotHorzSpacing = &Cap{`spinh`, `dot_horz_spacing`, `spacing of dots horizontally in dots per inch`}
+ MaxMicroAddress = &Cap{`maddr`, `max_micro_address`, `maximum value in micro_..._address`}
+ MaxMicroJump = &Cap{`mjump`, `max_micro_jump`, `maximum value in parm_..._micro`}
+ MicroColSize = &Cap{`mcs`, `micro_col_size`, `character step size when in micro mode`}
+ MicroLineSize = &Cap{`mls`, `micro_line_size`, `line step size when in micro mode`}
+ NumberOfPins = &Cap{`npins`, `number_of_pins`, `numbers of pins in print-head`}
+ OutputResChar = &Cap{`orc`, `output_res_char`, `horizontal resolution in units per line`}
+ OutputResLine = &Cap{`orl`, `output_res_line`, `vertical resolution in units per line`}
+ OutputResHorzInch = &Cap{`orhi`, `output_res_horz_inch`, `horizontal resolution in units per inch`}
+ OutputResVertInch = &Cap{`orvi`, `output_res_vert_inch`, `vertical resolution in units per inch`}
+ PrintRate = &Cap{`cps`, `print_rate`, `print rate in characters per second`}
+ WideCharSize = &Cap{`widcs`, `wide_char_size`, `character step size when in double wide mode`}
+ Buttons = &Cap{`btns`, `buttons`, `number of buttons on mouse`}
+ BitImageEntwining = &Cap{`bitwin`, `bit_image_entwining`, `number of passes for each bit-image row`}
+ BitImageType = &Cap{`bitype`, `bit_image_type`, `type of bit-image device`}
+ BackTab = &Cap{`cbt`, `back_tab`, `back tab (P)`}
+ Bell = &Cap{`bel`, `bell`, `audible signal (bell) (P)`}
+ CarriageReturn = &Cap{`cr`, `carriage_return`, `carriage return (P*) (P*)`}
+ ChangeScrollRegion = &Cap{`csr`, `change_scroll_region`, `change region to line #1 to line #2 (P)`}
+ ClearAllTabs = &Cap{`tbc`, `clear_all_tabs`, `clear all tab stops (P)`}
+ ClearScreen = &Cap{`clear`, `clear_screen`, `clear screen and home cursor (P*)`}
+ ClrEol = &Cap{`el`, `clr_eol`, `clear to end of line (P)`}
+ ClrEos = &Cap{`ed`, `clr_eos`, `clear to end of screen (P*)`}
+ ColumnAddress = &Cap{`hpa`, `column_address`, `horizontal position #1, absolute (P)`}
+ CommandCharacter = &Cap{`cmdch`, `command_character`, `terminal settable cmd character in prototype !?`}
+ CursorAddress = &Cap{`cup`, `cursor_address`, `move to row #1 columns #2`}
+ CursorDown = &Cap{`cud1`, `cursor_down`, `down one line`}
+ CursorHome = &Cap{`home`, `cursor_home`, `home cursor (if no cup)`}
+ CursorInvisible = &Cap{`civis`, `cursor_invisible`, `make cursor invisible`}
+ CursorLeft = &Cap{`cub1`, `cursor_left`, `move left one space`}
+ CursorMemAddress = &Cap{`mrcup`, `cursor_mem_address`, `memory relative cursor addressing, move to row #1 columns #2`}
+ CursorNormal = &Cap{`cnorm`, `cursor_normal`, `make cursor appear normal (undo civis/cvvis)`}
+ CursorRight = &Cap{`cuf1`, `cursor_right`, `non-destructive space (move right one space)`}
+ CursorToLl = &Cap{`ll`, `cursor_to_ll`, `last line, first column (if no cup)`}
+ CursorUp = &Cap{`cuu1`, `cursor_up`, `up one line`}
+ CursorVisible = &Cap{`cvvis`, `cursor_visible`, `make cursor very visible`}
+ DeleteCharacter = &Cap{`dch1`, `delete_character`, `delete character (P*)`}
+ DeleteLine = &Cap{`dl1`, `delete_line`, `delete line (P*)`}
+ DisStatusLine = &Cap{`dsl`, `dis_status_line`, `disable status line`}
+ DownHalfLine = &Cap{`hd`, `down_half_line`, `half a line down`}
+ EnterAltCharsetMode = &Cap{`smacs`, `enter_alt_charset_mode`, `start alternate character set (P)`}
+ EnterBlinkMode = &Cap{`blink`, `enter_blink_mode`, `turn on blinking`}
+ EnterBoldMode = &Cap{`bold`, `enter_bold_mode`, `turn on bold (extra bright) mode`}
+ EnterCaMode = &Cap{`smcup`, `enter_ca_mode`, `string to start programs using cup`}
+ EnterDeleteMode = &Cap{`smdc`, `enter_delete_mode`, `enter delete mode`}
+ EnterDimMode = &Cap{`dim`, `enter_dim_mode`, `turn on half-bright mode`}
+ EnterInsertMode = &Cap{`smir`, `enter_insert_mode`, `enter insert mode`}
+ EnterSecureMode = &Cap{`invis`, `enter_secure_mode`, `turn on blank mode (characters invisible)`}
+ EnterProtectedMode = &Cap{`prot`, `enter_protected_mode`, `turn on protected mode`}
+ EnterReverseMode = &Cap{`rev`, `enter_reverse_mode`, `turn on reverse video mode`}
+ EnterStandoutMode = &Cap{`smso`, `enter_standout_mode`, `begin standout mode`}
+ EnterUnderlineMode = &Cap{`smul`, `enter_underline_mode`, `begin underline mode`}
+ EraseChars = &Cap{`ech`, `erase_chars`, `erase #1 characters (P)`}
+ ExitAltCharsetMode = &Cap{`rmacs`, `exit_alt_charset_mode`, `end alternate character set (P)`}
+ ExitAttributeMode = &Cap{`sgr0`, `exit_attribute_mode`, `turn off all attributes`}
+ ExitCaMode = &Cap{`rmcup`, `exit_ca_mode`, `strings to end programs using cup`}
+ ExitDeleteMode = &Cap{`rmdc`, `exit_delete_mode`, `end delete mode`}
+ ExitInsertMode = &Cap{`rmir`, `exit_insert_mode`, `exit insert mode`}
+ ExitStandoutMode = &Cap{`rmso`, `exit_standout_mode`, `exit standout mode`}
+ ExitUnderlineMode = &Cap{`rmul`, `exit_underline_mode`, `exit underline mode`}
+ FlashScreen = &Cap{`flash`, `flash_screen`, `visible bell (may not move cursor)`}
+ FormFeed = &Cap{`ff`, `form_feed`, `hardcopy terminal page eject (P*)`}
+ FromStatusLine = &Cap{`fsl`, `from_status_line`, `return from status line`}
+ Init1string = &Cap{`is1`, `init_1string`, `initialization string`}
+ Init2string = &Cap{`is2`, `init_2string`, `initialization string`}
+ Init3string = &Cap{`is3`, `init_3string`, `initialization string`}
+ InitFile = &Cap{`if`, `init_file`, `name of initialization file`}
+ InsertCharacter = &Cap{`ich1`, `insert_character`, `insert character (P)`}
+ InsertLine = &Cap{`il1`, `insert_line`, `insert line (P*)`}
+ InsertPadding = &Cap{`ip`, `insert_padding`, `insert padding after inserted character`}
+ KeyBackspace = &Cap{`kbs`, `key_backspace`, `backspace key`}
+ KeyCatab = &Cap{`ktbc`, `key_catab`, `clear-all-tabs key`}
+ KeyClear = &Cap{`kclr`, `key_clear`, `clear-screen or erase key`}
+ KeyCtab = &Cap{`kctab`, `key_ctab`, `clear-tab key`}
+ KeyDc = &Cap{`kdch1`, `key_dc`, `delete-character key`}
+ KeyDl = &Cap{`kdl1`, `key_dl`, `delete-line key`}
+ KeyDown = &Cap{`kcud1`, `key_down`, `down-arrow key`}
+ KeyEic = &Cap{`krmir`, `key_eic`, `sent by rmir or smir in insert mode`}
+ KeyEol = &Cap{`kel`, `key_eol`, `clear-to-end-of-line key`}
+ KeyEos = &Cap{`ked`, `key_eos`, `clear-to-end-of-screen key`}
+ KeyF0 = &Cap{`kf0`, `key_f0`, `F0 function key`}
+ KeyF1 = &Cap{`kf1`, `key_f1`, `F1 function key`}
+ KeyF10 = &Cap{`kf10`, `key_f10`, `F10 function key`}
+ KeyF2 = &Cap{`kf2`, `key_f2`, `F2 function key`}
+ KeyF3 = &Cap{`kf3`, `key_f3`, `F3 function key`}
+ KeyF4 = &Cap{`kf4`, `key_f4`, `F4 function key`}
+ KeyF5 = &Cap{`kf5`, `key_f5`, `F5 function key`}
+ KeyF6 = &Cap{`kf6`, `key_f6`, `F6 function key`}
+ KeyF7 = &Cap{`kf7`, `key_f7`, `F7 function key`}
+ KeyF8 = &Cap{`kf8`, `key_f8`, `F8 function key`}
+ KeyF9 = &Cap{`kf9`, `key_f9`, `F9 function key`}
+ KeyHome = &Cap{`khome`, `key_home`, `home key`}
+ KeyIc = &Cap{`kich1`, `key_ic`, `insert-character key`}
+ KeyIl = &Cap{`kil1`, `key_il`, `insert-line key`}
+ KeyLeft = &Cap{`kcub1`, `key_left`, `left-arrow key`}
+ KeyLl = &Cap{`kll`, `key_ll`, `lower-left key (home down)`}
+ KeyNpage = &Cap{`knp`, `key_npage`, `next-page key`}
+ KeyPpage = &Cap{`kpp`, `key_ppage`, `previous-page key`}
+ KeyRight = &Cap{`kcuf1`, `key_right`, `right-arrow key`}
+ KeySf = &Cap{`kind`, `key_sf`, `scroll-forward key`}
+ KeySr = &Cap{`kri`, `key_sr`, `scroll-backward key`}
+ KeyStab = &Cap{`khts`, `key_stab`, `set-tab key`}
+ KeyUp = &Cap{`kcuu1`, `key_up`, `up-arrow key`}
+ KeypadLocal = &Cap{`rmkx`, `keypad_local`, `leave keyboard transmit mode`}
+ KeypadXmit = &Cap{`smkx`, `keypad_xmit`, `enter keyboard transmit mode`}
+ LabF0 = &Cap{`lf0`, `lab_f0`, `label on function key f0 if not f0`}
+ LabF1 = &Cap{`lf1`, `lab_f1`, `label on function key f1 if not f1`}
+ LabF10 = &Cap{`lf10`, `lab_f10`, `label on function key f10 if not f10`}
+ LabF2 = &Cap{`lf2`, `lab_f2`, `label on function key f2 if not f2`}
+ LabF3 = &Cap{`lf3`, `lab_f3`, `label on function key f3 if not f3`}
+ LabF4 = &Cap{`lf4`, `lab_f4`, `label on function key f4 if not f4`}
+ LabF5 = &Cap{`lf5`, `lab_f5`, `label on function key f5 if not f5`}
+ LabF6 = &Cap{`lf6`, `lab_f6`, `label on function key f6 if not f6`}
+ LabF7 = &Cap{`lf7`, `lab_f7`, `label on function key f7 if not f7`}
+ LabF8 = &Cap{`lf8`, `lab_f8`, `label on function key f8 if not f8`}
+ LabF9 = &Cap{`lf9`, `lab_f9`, `label on function key f9 if not f9`}
+ MetaOff = &Cap{`rmm`, `meta_off`, `turn off meta mode`}
+ MetaOn = &Cap{`smm`, `meta_on`, `turn on meta mode (8th-bit on)`}
+ Newline = &Cap{`nel`, `newline`, `newline (behave like cr followed by lf)`}
+ PadChar = &Cap{`pad`, `pad_char`, `padding char (instead of null)`}
+ ParmDch = &Cap{`dch`, `parm_dch`, `delete #1 characters (P*)`}
+ ParmDeleteLine = &Cap{`dl`, `parm_delete_line`, `delete #1 lines (P*)`}
+ ParmDownCursor = &Cap{`cud`, `parm_down_cursor`, `down #1 lines (P*)`}
+ ParmIch = &Cap{`ich`, `parm_ich`, `insert #1 characters (P*)`}
+ ParmIndex = &Cap{`indn`, `parm_index`, `scroll forward #1 lines (P)`}
+ ParmInsertLine = &Cap{`il`, `parm_insert_line`, `insert #1 lines (P*)`}
+ ParmLeftCursor = &Cap{`cub`, `parm_left_cursor`, `move #1 characters to the left (P)`}
+ ParmRightCursor = &Cap{`cuf`, `parm_right_cursor`, `move #1 characters to the right (P*)`}
+ ParmRindex = &Cap{`rin`, `parm_rindex`, `scroll back #1 lines (P)`}
+ ParmUpCursor = &Cap{`cuu`, `parm_up_cursor`, `up #1 lines (P*)`}
+ PkeyKey = &Cap{`pfkey`, `pkey_key`, `program function key #1 to type string #2`}
+ PkeyLocal = &Cap{`pfloc`, `pkey_local`, `program function key #1 to execute string #2`}
+ PkeyXmit = &Cap{`pfx`, `pkey_xmit`, `program function key #1 to transmit string #2`}
+ PrintScreen = &Cap{`mc0`, `print_screen`, `print contents of screen`}
+ PrtrOff = &Cap{`mc4`, `prtr_off`, `turn off printer`}
+ PrtrOn = &Cap{`mc5`, `prtr_on`, `turn on printer`}
+ RepeatChar = &Cap{`rep`, `repeat_char`, `repeat char #1 #2 times (P*)`}
+ Reset1string = &Cap{`rs1`, `reset_1string`, `reset string`}
+ Reset2string = &Cap{`rs2`, `reset_2string`, `reset string`}
+ Reset3string = &Cap{`rs3`, `reset_3string`, `reset string`}
+ ResetFile = &Cap{`rf`, `reset_file`, `name of reset file`}
+ RestoreCursor = &Cap{`rc`, `restore_cursor`, `restore cursor to position of last save_cursor`}
+ RowAddress = &Cap{`vpa`, `row_address`, `vertical position #1 absolute (P)`}
+ SaveCursor = &Cap{`sc`, `save_cursor`, `save current cursor position (P)`}
+ ScrollForward = &Cap{`ind`, `scroll_forward`, `scroll text up (P)`}
+ ScrollReverse = &Cap{`ri`, `scroll_reverse`, `scroll text down (P)`}
+ SetAttributes = &Cap{`sgr`, `set_attributes`, `define video attributes #1-#9 (PG9)`}
+ SetTab = &Cap{`hts`, `set_tab`, `set a tab in every row, current columns`}
+ SetWindow = &Cap{`wind`, `set_window`, `current window is lines #1-#2 cols #3-#4`}
+ Tab = &Cap{`ht`, `tab`, `tab to next 8-space hardware tab stop`}
+ ToStatusLine = &Cap{`tsl`, `to_status_line`, `move to status line, column #1`}
+ UnderlineChar = &Cap{`uc`, `underline_char`, `underline char and move past it`}
+ UpHalfLine = &Cap{`hu`, `up_half_line`, `half a line up`}
+ InitProg = &Cap{`iprog`, `init_prog`, `path name of program for initialization`}
+ KeyA1 = &Cap{`ka1`, `key_a1`, `upper left of keypad`}
+ KeyA3 = &Cap{`ka3`, `key_a3`, `upper right of keypad`}
+ KeyB2 = &Cap{`kb2`, `key_b2`, `center of keypad`}
+ KeyC1 = &Cap{`kc1`, `key_c1`, `lower left of keypad`}
+ KeyC3 = &Cap{`kc3`, `key_c3`, `lower right of keypad`}
+ PrtrNon = &Cap{`mc5p`, `prtr_non`, `turn on printer for #1 bytes`}
+ CharPadding = &Cap{`rmp`, `char_padding`, `like ip but when in insert mode`}
+ AcsChars = &Cap{`acsc`, `acs_chars`, `graphics charset pairs, based on vt100`}
+ PlabNorm = &Cap{`pln`, `plab_norm`, `program label #1 to show string #2`}
+ KeyBtab = &Cap{`kcbt`, `key_btab`, `back-tab key`}
+ EnterXonMode = &Cap{`smxon`, `enter_xon_mode`, `turn on xon/xoff handshaking`}
+ ExitXonMode = &Cap{`rmxon`, `exit_xon_mode`, `turn off xon/xoff handshaking`}
+ EnterAmMode = &Cap{`smam`, `enter_am_mode`, `turn on automatic margins`}
+ ExitAmMode = &Cap{`rmam`, `exit_am_mode`, `turn off automatic margins`}
+ XonCharacter = &Cap{`xonc`, `xon_character`, `XON character`}
+ XoffCharacter = &Cap{`xoffc`, `xoff_character`, `XOFF character`}
+ EnaAcs = &Cap{`enacs`, `ena_acs`, `enable alternate char set`}
+ LabelOn = &Cap{`smln`, `label_on`, `turn on soft labels`}
+ LabelOff = &Cap{`rmln`, `label_off`, `turn off soft labels`}
+ KeyBeg = &Cap{`kbeg`, `key_beg`, `begin key`}
+ KeyCancel = &Cap{`kcan`, `key_cancel`, `cancel key`}
+ KeyClose = &Cap{`kclo`, `key_close`, `close key`}
+ KeyCommand = &Cap{`kcmd`, `key_command`, `command key`}
+ KeyCopy = &Cap{`kcpy`, `key_copy`, `copy key`}
+ KeyCreate = &Cap{`kcrt`, `key_create`, `create key`}
+ KeyEnd = &Cap{`kend`, `key_end`, `end key`}
+ KeyEnter = &Cap{`kent`, `key_enter`, `enter/send key`}
+ KeyExit = &Cap{`kext`, `key_exit`, `exit key`}
+ KeyFind = &Cap{`kfnd`, `key_find`, `find key`}
+ KeyHelp = &Cap{`khlp`, `key_help`, `help key`}
+ KeyMark = &Cap{`kmrk`, `key_mark`, `mark key`}
+ KeyMessage = &Cap{`kmsg`, `key_message`, `message key`}
+ KeyMove = &Cap{`kmov`, `key_move`, `move key`}
+ KeyNext = &Cap{`knxt`, `key_next`, `next key`}
+ KeyOpen = &Cap{`kopn`, `key_open`, `open key`}
+ KeyOptions = &Cap{`kopt`, `key_options`, `options key`}
+ KeyPrevious = &Cap{`kprv`, `key_previous`, `previous key`}
+ KeyPrint = &Cap{`kprt`, `key_print`, `print key`}
+ KeyRedo = &Cap{`krdo`, `key_redo`, `redo key`}
+ KeyReference = &Cap{`kref`, `key_reference`, `reference key`}
+ KeyRefresh = &Cap{`krfr`, `key_refresh`, `refresh key`}
+ KeyReplace = &Cap{`krpl`, `key_replace`, `replace key`}
+ KeyRestart = &Cap{`krst`, `key_restart`, `restart key`}
+ KeyResume = &Cap{`kres`, `key_resume`, `resume key`}
+ KeySave = &Cap{`ksav`, `key_save`, `save key`}
+ KeySuspend = &Cap{`kspd`, `key_suspend`, `suspend key`}
+ KeyUndo = &Cap{`kund`, `key_undo`, `undo key`}
+ KeySbeg = &Cap{`kBEG`, `key_sbeg`, `shifted begin key`}
+ KeyScancel = &Cap{`kCAN`, `key_scancel`, `shifted cancel key`}
+ KeyScommand = &Cap{`kCMD`, `key_scommand`, `shifted command key`}
+ KeyScopy = &Cap{`kCPY`, `key_scopy`, `shifted copy key`}
+ KeyScreate = &Cap{`kCRT`, `key_screate`, `shifted create key`}
+ KeySdc = &Cap{`kDC`, `key_sdc`, `shifted delete-character key`}
+ KeySdl = &Cap{`kDL`, `key_sdl`, `shifted delete-line key`}
+ KeySelect = &Cap{`kslt`, `key_select`, `select key`}
+ KeySend = &Cap{`kEND`, `key_send`, `shifted end key`}
+ KeySeol = &Cap{`kEOL`, `key_seol`, `shifted clear-to-end-of-line key`}
+ KeySexit = &Cap{`kEXT`, `key_sexit`, `shifted exit key`}
+ KeySfind = &Cap{`kFND`, `key_sfind`, `shifted find key`}
+ KeyShelp = &Cap{`kHLP`, `key_shelp`, `shifted help key`}
+ KeyShome = &Cap{`kHOM`, `key_shome`, `shifted home key`}
+ KeySic = &Cap{`kIC`, `key_sic`, `shifted insert-character key`}
+ KeySleft = &Cap{`kLFT`, `key_sleft`, `shifted left-arrow key`}
+ KeySmessage = &Cap{`kMSG`, `key_smessage`, `shifted message key`}
+ KeySmove = &Cap{`kMOV`, `key_smove`, `shifted move key`}
+ KeySnext = &Cap{`kNXT`, `key_snext`, `shifted next key`}
+ KeySoptions = &Cap{`kOPT`, `key_soptions`, `shifted options key`}
+ KeySprevious = &Cap{`kPRV`, `key_sprevious`, `shifted previous key`}
+ KeySprint = &Cap{`kPRT`, `key_sprint`, `shifted print key`}
+ KeySredo = &Cap{`kRDO`, `key_sredo`, `shifted redo key`}
+ KeySreplace = &Cap{`kRPL`, `key_sreplace`, `shifted replace key`}
+ KeySright = &Cap{`kRIT`, `key_sright`, `shifted right-arrow key`}
+ KeySrsume = &Cap{`kRES`, `key_srsume`, `shifted resume key`}
+ KeySsave = &Cap{`kSAV`, `key_ssave`, `shifted save key`}
+ KeySsuspend = &Cap{`kSPD`, `key_ssuspend`, `shifted suspend key`}
+ KeySundo = &Cap{`kUND`, `key_sundo`, `shifted undo key`}
+ ReqForInput = &Cap{`rfi`, `req_for_input`, `send next input char (for ptys)`}
+ KeyF11 = &Cap{`kf11`, `key_f11`, `F11 function key`}
+ KeyF12 = &Cap{`kf12`, `key_f12`, `F12 function key`}
+ KeyF13 = &Cap{`kf13`, `key_f13`, `F13 function key`}
+ KeyF14 = &Cap{`kf14`, `key_f14`, `F14 function key`}
+ KeyF15 = &Cap{`kf15`, `key_f15`, `F15 function key`}
+ KeyF16 = &Cap{`kf16`, `key_f16`, `F16 function key`}
+ KeyF17 = &Cap{`kf17`, `key_f17`, `F17 function key`}
+ KeyF18 = &Cap{`kf18`, `key_f18`, `F18 function key`}
+ KeyF19 = &Cap{`kf19`, `key_f19`, `F19 function key`}
+ KeyF20 = &Cap{`kf20`, `key_f20`, `F20 function key`}
+ KeyF21 = &Cap{`kf21`, `key_f21`, `F21 function key`}
+ KeyF22 = &Cap{`kf22`, `key_f22`, `F22 function key`}
+ KeyF23 = &Cap{`kf23`, `key_f23`, `F23 function key`}
+ KeyF24 = &Cap{`kf24`, `key_f24`, `F24 function key`}
+ KeyF25 = &Cap{`kf25`, `key_f25`, `F25 function key`}
+ KeyF26 = &Cap{`kf26`, `key_f26`, `F26 function key`}
+ KeyF27 = &Cap{`kf27`, `key_f27`, `F27 function key`}
+ KeyF28 = &Cap{`kf28`, `key_f28`, `F28 function key`}
+ KeyF29 = &Cap{`kf29`, `key_f29`, `F29 function key`}
+ KeyF30 = &Cap{`kf30`, `key_f30`, `F30 function key`}
+ KeyF31 = &Cap{`kf31`, `key_f31`, `F31 function key`}
+ KeyF32 = &Cap{`kf32`, `key_f32`, `F32 function key`}
+ KeyF33 = &Cap{`kf33`, `key_f33`, `F33 function key`}
+ KeyF34 = &Cap{`kf34`, `key_f34`, `F34 function key`}
+ KeyF35 = &Cap{`kf35`, `key_f35`, `F35 function key`}
+ KeyF36 = &Cap{`kf36`, `key_f36`, `F36 function key`}
+ KeyF37 = &Cap{`kf37`, `key_f37`, `F37 function key`}
+ KeyF38 = &Cap{`kf38`, `key_f38`, `F38 function key`}
+ KeyF39 = &Cap{`kf39`, `key_f39`, `F39 function key`}
+ KeyF40 = &Cap{`kf40`, `key_f40`, `F40 function key`}
+ KeyF41 = &Cap{`kf41`, `key_f41`, `F41 function key`}
+ KeyF42 = &Cap{`kf42`, `key_f42`, `F42 function key`}
+ KeyF43 = &Cap{`kf43`, `key_f43`, `F43 function key`}
+ KeyF44 = &Cap{`kf44`, `key_f44`, `F44 function key`}
+ KeyF45 = &Cap{`kf45`, `key_f45`, `F45 function key`}
+ KeyF46 = &Cap{`kf46`, `key_f46`, `F46 function key`}
+ KeyF47 = &Cap{`kf47`, `key_f47`, `F47 function key`}
+ KeyF48 = &Cap{`kf48`, `key_f48`, `F48 function key`}
+ KeyF49 = &Cap{`kf49`, `key_f49`, `F49 function key`}
+ KeyF50 = &Cap{`kf50`, `key_f50`, `F50 function key`}
+ KeyF51 = &Cap{`kf51`, `key_f51`, `F51 function key`}
+ KeyF52 = &Cap{`kf52`, `key_f52`, `F52 function key`}
+ KeyF53 = &Cap{`kf53`, `key_f53`, `F53 function key`}
+ KeyF54 = &Cap{`kf54`, `key_f54`, `F54 function key`}
+ KeyF55 = &Cap{`kf55`, `key_f55`, `F55 function key`}
+ KeyF56 = &Cap{`kf56`, `key_f56`, `F56 function key`}
+ KeyF57 = &Cap{`kf57`, `key_f57`, `F57 function key`}
+ KeyF58 = &Cap{`kf58`, `key_f58`, `F58 function key`}
+ KeyF59 = &Cap{`kf59`, `key_f59`, `F59 function key`}
+ KeyF60 = &Cap{`kf60`, `key_f60`, `F60 function key`}
+ KeyF61 = &Cap{`kf61`, `key_f61`, `F61 function key`}
+ KeyF62 = &Cap{`kf62`, `key_f62`, `F62 function key`}
+ KeyF63 = &Cap{`kf63`, `key_f63`, `F63 function key`}
+ ClrBol = &Cap{`el1`, `clr_bol`, `Clear to beginning of line`}
+ ClearMargins = &Cap{`mgc`, `clear_margins`, `clear right and left soft margins`}
+ SetLeftMargin = &Cap{`smgl`, `set_left_margin`, `set left soft margin at current column (not in BSD \fItermcap\fP)`}
+ SetRightMargin = &Cap{`smgr`, `set_right_margin`, `set right soft margin at current column`}
+ LabelFormat = &Cap{`fln`, `label_format`, `label format`}
+ SetClock = &Cap{`sclk`, `set_clock`, `set clock, #1 hrs #2 mins #3 secs`}
+ DisplayClock = &Cap{`dclk`, `display_clock`, `display clock`}
+ RemoveClock = &Cap{`rmclk`, `remove_clock`, `remove clock`}
+ CreateWindow = &Cap{`cwin`, `create_window`, `define a window #1 from #2,#3 to #4,#5`}
+ GotoWindow = &Cap{`wingo`, `goto_window`, `go to window #1`}
+ Hangup = &Cap{`hup`, `hangup`, `hang-up phone`}
+ DialPhone = &Cap{`dial`, `dial_phone`, `dial number #1`}
+ QuickDial = &Cap{`qdial`, `quick_dial`, `dial number #1 without checking`}
+ Tone = &Cap{`tone`, `tone`, `select touch tone dialing`}
+ Pulse = &Cap{`pulse`, `pulse`, `select pulse dialing`}
+ FlashHook = &Cap{`hook`, `flash_hook`, `flash switch hook`}
+ FixedPause = &Cap{`pause`, `fixed_pause`, `pause for 2-3 seconds`}
+ WaitTone = &Cap{`wait`, `wait_tone`, `wait for dial-tone`}
+ User0 = &Cap{`u0`, `user0`, `User string #0`}
+ User1 = &Cap{`u1`, `user1`, `User string #1`}
+ User2 = &Cap{`u2`, `user2`, `User string #2`}
+ User3 = &Cap{`u3`, `user3`, `User string #3`}
+ User4 = &Cap{`u4`, `user4`, `User string #4`}
+ User5 = &Cap{`u5`, `user5`, `User string #5`}
+ User6 = &Cap{`u6`, `user6`, `User string #6`}
+ User7 = &Cap{`u7`, `user7`, `User string #7`}
+ User8 = &Cap{`u8`, `user8`, `User string #8`}
+ User9 = &Cap{`u9`, `user9`, `User string #9`}
+ OrigPair = &Cap{`op`, `orig_pair`, `Set default pair to its original value`}
+ OrigColors = &Cap{`oc`, `orig_colors`, `Set all color pairs to the original ones`}
+ InitializeColor = &Cap{`initc`, `initialize_color`, `initialize color #1 to (#2,#3,#4)`}
+ InitializePair = &Cap{`initp`, `initialize_pair`, `Initialize color pair #1 to fg=(#2,#3,#4), bg=(#5,#6,#7)`}
+ SetColorPair = &Cap{`scp`, `set_color_pair`, `Set current color pair to #1`}
+ SetForeground = &Cap{`setf`, `set_foreground`, `Set foreground color #1`}
+ SetBackground = &Cap{`setb`, `set_background`, `Set background color #1`}
+ ChangeCharPitch = &Cap{`cpi`, `change_char_pitch`, `Change number of characters per inch to #1`}
+ ChangeLinePitch = &Cap{`lpi`, `change_line_pitch`, `Change number of lines per inch to #1`}
+ ChangeResHorz = &Cap{`chr`, `change_res_horz`, `Change horizontal resolution to #1`}
+ ChangeResVert = &Cap{`cvr`, `change_res_vert`, `Change vertical resolution to #1`}
+ DefineChar = &Cap{`defc`, `define_char`, `Define a character #1, #2 dots wide, descender #3`}
+ EnterDoublewideMode = &Cap{`swidm`, `enter_doublewide_mode`, `Enter double-wide mode`}
+ EnterDraftQuality = &Cap{`sdrfq`, `enter_draft_quality`, `Enter draft-quality mode`}
+ EnterItalicsMode = &Cap{`sitm`, `enter_italics_mode`, `Enter italic mode`}
+ EnterLeftwardMode = &Cap{`slm`, `enter_leftward_mode`, `Start leftward carriage motion`}
+ EnterMicroMode = &Cap{`smicm`, `enter_micro_mode`, `Start micro-motion mode`}
+ EnterNearLetterQuality = &Cap{`snlq`, `enter_near_letter_quality`, `Enter NLQ mode`}
+ EnterNormalQuality = &Cap{`snrmq`, `enter_normal_quality`, `Enter normal-quality mode`}
+ EnterShadowMode = &Cap{`sshm`, `enter_shadow_mode`, `Enter shadow-print mode`}
+ EnterSubscriptMode = &Cap{`ssubm`, `enter_subscript_mode`, `Enter subscript mode`}
+ EnterSuperscriptMode = &Cap{`ssupm`, `enter_superscript_mode`, `Enter superscript mode`}
+ EnterUpwardMode = &Cap{`sum`, `enter_upward_mode`, `Start upward carriage motion`}
+ ExitDoublewideMode = &Cap{`rwidm`, `exit_doublewide_mode`, `End double-wide mode`}
+ ExitItalicsMode = &Cap{`ritm`, `exit_italics_mode`, `End italic mode`}
+ ExitLeftwardMode = &Cap{`rlm`, `exit_leftward_mode`, `End left-motion mode`}
+ ExitMicroMode = &Cap{`rmicm`, `exit_micro_mode`, `End micro-motion mode`}
+ ExitShadowMode = &Cap{`rshm`, `exit_shadow_mode`, `End shadow-print mode`}
+ ExitSubscriptMode = &Cap{`rsubm`, `exit_subscript_mode`, `End subscript mode`}
+ ExitSuperscriptMode = &Cap{`rsupm`, `exit_superscript_mode`, `End superscript mode`}
+ ExitUpwardMode = &Cap{`rum`, `exit_upward_mode`, `End reverse character motion`}
+ MicroColumnAddress = &Cap{`mhpa`, `micro_column_address`, `Like column_address in micro mode`}
+ MicroDown = &Cap{`mcud1`, `micro_down`, `Like cursor_down in micro mode`}
+ MicroLeft = &Cap{`mcub1`, `micro_left`, `Like cursor_left in micro mode`}
+ MicroRight = &Cap{`mcuf1`, `micro_right`, `Like cursor_right in micro mode`}
+ MicroRowAddress = &Cap{`mvpa`, `micro_row_address`, `Like row_address #1 in micro mode`}
+ MicroUp = &Cap{`mcuu1`, `micro_up`, `Like cursor_up in micro mode`}
+ OrderOfPins = &Cap{`porder`, `order_of_pins`, `Match software bits to print-head pins`}
+ ParmDownMicro = &Cap{`mcud`, `parm_down_micro`, `Like parm_down_cursor in micro mode`}
+ ParmLeftMicro = &Cap{`mcub`, `parm_left_micro`, `Like parm_left_cursor in micro mode`}
+ ParmRightMicro = &Cap{`mcuf`, `parm_right_micro`, `Like parm_right_cursor in micro mode`}
+ ParmUpMicro = &Cap{`mcuu`, `parm_up_micro`, `Like parm_up_cursor in micro mode`}
+ SelectCharSet = &Cap{`scs`, `select_char_set`, `Select character set, #1`}
+ SetBottomMargin = &Cap{`smgb`, `set_bottom_margin`, `Set bottom margin at current line`}
+ SetBottomMarginParm = &Cap{`smgbp`, `set_bottom_margin_parm`, `Set bottom margin at line #1 or (if smgtp is not given) #2 lines from bottom`}
+ SetLeftMarginParm = &Cap{`smglp`, `set_left_margin_parm`, `Set left (right) margin at column #1`}
+ SetRightMarginParm = &Cap{`smgrp`, `set_right_margin_parm`, `Set right margin at column #1`}
+ SetTopMargin = &Cap{`smgt`, `set_top_margin`, `Set top margin at current line`}
+ SetTopMarginParm = &Cap{`smgtp`, `set_top_margin_parm`, `Set top (bottom) margin at row #1`}
+ StartBitImage = &Cap{`sbim`, `start_bit_image`, `Start printing bit image graphics`}
+ StartCharSetDef = &Cap{`scsd`, `start_char_set_def`, `Start character set definition #1, with #2 characters in the set`}
+ StopBitImage = &Cap{`rbim`, `stop_bit_image`, `Stop printing bit image graphics`}
+ StopCharSetDef = &Cap{`rcsd`, `stop_char_set_def`, `End definition of character set #1`}
+ SubscriptCharacters = &Cap{`subcs`, `subscript_characters`, `List of subscriptable characters`}
+ SuperscriptCharacters = &Cap{`supcs`, `superscript_characters`, `List of superscriptable characters`}
+ TheseCauseCr = &Cap{`docr`, `these_cause_cr`, `Printing any of these characters causes CR`}
+ ZeroMotion = &Cap{`zerom`, `zero_motion`, `No motion for subsequent character`}
+ CharSetNames = &Cap{`csnm`, `char_set_names`, `Produce #1'th item from list of character set names`}
+ KeyMouse = &Cap{`kmous`, `key_mouse`, `Mouse event has occurred`}
+ MouseInfo = &Cap{`minfo`, `mouse_info`, `Mouse status information`}
+ ReqMousePos = &Cap{`reqmp`, `req_mouse_pos`, `Request mouse position`}
+ GetMouse = &Cap{`getm`, `get_mouse`, `Curses should get button events, parameter #1 not documented.`}
+ SetAForeground = &Cap{`setaf`, `set_a_foreground`, `Set foreground color to #1, using ANSI escape`}
+ SetABackground = &Cap{`setab`, `set_a_background`, `Set background color to #1, using ANSI escape`}
+ PkeyPlab = &Cap{`pfxl`, `pkey_plab`, `Program function key #1 to type string #2 and show string #3`}
+ DeviceType = &Cap{`devt`, `device_type`, `Indicate language, codeset support`}
+ CodeSetInit = &Cap{`csin`, `code_set_init`, `Init sequence for multiple codesets`}
+ Set0DesSeq = &Cap{`s0ds`, `set0_des_seq`, `Shift to codeset 0 (EUC set 0, ASCII)`}
+ Set1DesSeq = &Cap{`s1ds`, `set1_des_seq`, `Shift to codeset 1`}
+ Set2DesSeq = &Cap{`s2ds`, `set2_des_seq`, `Shift to codeset 2`}
+ Set3DesSeq = &Cap{`s3ds`, `set3_des_seq`, `Shift to codeset 3`}
+ SetLrMargin = &Cap{`smglr`, `set_lr_margin`, `Set both left and right margins to #1, #2. (ML is not in BSD termcap).`}
+ SetTbMargin = &Cap{`smgtb`, `set_tb_margin`, `Sets both top and bottom margins to #1, #2`}
+ BitImageRepeat = &Cap{`birep`, `bit_image_repeat`, `Repeat bit image cell #1 #2 times`}
+ BitImageNewline = &Cap{`binel`, `bit_image_newline`, `Move to next row of the bit image`}
+ BitImageCarriageReturn = &Cap{`bicr`, `bit_image_carriage_return`, `Move to beginning of same row`}
+ ColorNames = &Cap{`colornm`, `color_names`, `Give name for color #1`}
+ DefineBitImageRegion = &Cap{`defbi`, `define_bit_image_region`, `Define rectangular bit image region`}
+ EndBitImageRegion = &Cap{`endbi`, `end_bit_image_region`, `End a bit-image region`}
+ SetColorBand = &Cap{`setcolor`, `set_color_band`, `Change to ribbon color #1`}
+ SetPageLength = &Cap{`slines`, `set_page_length`, `Set page length to #1 lines`}
+ DisplayPcChar = &Cap{`dispc`, `display_pc_char`, `Display PC character #1`}
+ EnterPcCharsetMode = &Cap{`smpch`, `enter_pc_charset_mode`, `Enter PC character display mode`}
+ ExitPcCharsetMode = &Cap{`rmpch`, `exit_pc_charset_mode`, `Exit PC character display mode`}
+ EnterScancodeMode = &Cap{`smsc`, `enter_scancode_mode`, `Enter PC scancode mode`}
+ ExitScancodeMode = &Cap{`rmsc`, `exit_scancode_mode`, `Exit PC scancode mode`}
+ PcTermOptions = &Cap{`pctrm`, `pc_term_options`, `PC terminal options`}
+ ScancodeEscape = &Cap{`scesc`, `scancode_escape`, `Escape for scancode emulation`}
+ AltScancodeEsc = &Cap{`scesa`, `alt_scancode_esc`, `Alternate escape for scancode emulation`}
+ EnterHorizontalHlMode = &Cap{`ehhlm`, `enter_horizontal_hl_mode`, `Enter horizontal highlight mode`}
+ EnterLeftHlMode = &Cap{`elhlm`, `enter_left_hl_mode`, `Enter left highlight mode`}
+ EnterLowHlMode = &Cap{`elohlm`, `enter_low_hl_mode`, `Enter low highlight mode`}
+ EnterRightHlMode = &Cap{`erhlm`, `enter_right_hl_mode`, `Enter right highlight mode`}
+ EnterTopHlMode = &Cap{`ethlm`, `enter_top_hl_mode`, `Enter top highlight mode`}
+ EnterVerticalHlMode = &Cap{`evhlm`, `enter_vertical_hl_mode`, `Enter vertical highlight mode`}
+ SetAAttributes = &Cap{`sgr1`, `set_a_attributes`, `Define second set of video attributes #1-#6`}
+ SetPglenInch = &Cap{`slength`, `set_pglen_inch`, `Set page length to #1 hundredth of an inch (some implementations use sL for termcap).`}
+ TermcapInit2 = &Cap{`OTi2`, `termcap_init2`, `secondary initialization string`}
+ TermcapReset = &Cap{`OTrs`, `termcap_reset`, `terminal reset string`}
+ MagicCookieGlitchUl = &Cap{`OTug`, `magic_cookie_glitch_ul`, `number of blanks left by ul`}
+ BackspacesWithBs = &Cap{`OTbs`, `backspaces_with_bs`, `uses ^H to move left`}
+ CrtNoScrolling = &Cap{`OTns`, `crt_no_scrolling`, `crt cannot scroll`}
+ NoCorrectlyWorkingCr = &Cap{`OTnc`, `no_correctly_working_cr`, `no way to go to start of line`}
+ CarriageReturnDelay = &Cap{`OTdC`, `carriage_return_delay`, `pad needed for CR`}
+ NewLineDelay = &Cap{`OTdN`, `new_line_delay`, `pad needed for LF`}
+ LinefeedIfNotLf = &Cap{`OTnl`, `linefeed_if_not_lf`, `use to move down`}
+ BackspaceIfNotBs = &Cap{`OTbc`, `backspace_if_not_bs`, `move left, if not ^H`}
+ GnuHasMetaKey = &Cap{`OTMT`, `gnu_has_meta_key`, `has meta key`}
+ LinefeedIsNewline = &Cap{`OTNL`, `linefeed_is_newline`, `move down with \n`}
+ BackspaceDelay = &Cap{`OTdB`, `backspace_delay`, `padding required for ^H`}
+ HorizontalTabDelay = &Cap{`OTdT`, `horizontal_tab_delay`, `padding required for ^I`}
+ NumberOfFunctionKeys = &Cap{`OTkn`, `number_of_function_keys`, `count of function keys`}
+ OtherNonFunctionKeys = &Cap{`OTko`, `other_non_function_keys`, `list of self-mapped keycaps`}
+ ArrowKeyMap = &Cap{`OTma`, `arrow_key_map`, `map motion-keys for vi version 2`}
+ HasHardwareTabs = &Cap{`OTpt`, `has_hardware_tabs`, `has 8-char tabs invoked with ^I`}
+ ReturnDoesClrEol = &Cap{`OTxr`, `return_does_clr_eol`, `return clears the line`}
+ AcsUlcorner = &Cap{`OTG2`, `acs_ulcorner`, `single upper left`}
+ AcsLlcorner = &Cap{`OTG3`, `acs_llcorner`, `single lower left`}
+ AcsUrcorner = &Cap{`OTG1`, `acs_urcorner`, `single upper right`}
+ AcsLrcorner = &Cap{`OTG4`, `acs_lrcorner`, `single lower right`}
+ AcsLtee = &Cap{`OTGR`, `acs_ltee`, `tee pointing right`}
+ AcsRtee = &Cap{`OTGL`, `acs_rtee`, `tee pointing left`}
+ AcsBtee = &Cap{`OTGU`, `acs_btee`, `tee pointing up`}
+ AcsTtee = &Cap{`OTGD`, `acs_ttee`, `tee pointing down`}
+ AcsHline = &Cap{`OTGH`, `acs_hline`, `single horizontal line`}
+ AcsVline = &Cap{`OTGV`, `acs_vline`, `single vertical line`}
+ AcsPlus = &Cap{`OTGC`, `acs_plus`, `single intersection`}
+ MemoryLock = &Cap{`meml`, `memory_lock`, `lock memory above cursor`}
+ MemoryUnlock = &Cap{`memu`, `memory_unlock`, `unlock memory`}
+ BoxChars1 = &Cap{`box1`, `box_chars_1`, `box characters primary set`}
+
+ // Extentions
+ CO = &Cap{`CO`, `userdef`, `number of indexed colors overlaying RGB space (ncurses)`}
+ E3 = &Cap{`E3`, `userdef`, `clears the terminal's scrollback buffer. (ncurses)`}
+ NQ = &Cap{`NQ`, `userdef`, `terminal does not support query/response (ncurses)`}
+ RGB = &Cap{`RGB`, `userdef`, `use direct colors with 1/3 of color-pair bits per color. (ncurses)`}
+ TS = &Cap{`TS`, `userdef`, `like "tsl", but uses no parameter. (ncurses)`}
+ U8 = &Cap{`U8`, `userdef`, `terminal does/does not support VT100 SI/SO when processing UTF-8 encoding. (ncurses)`}
+ XM = &Cap{`XM`, `userdef`, `initialize alternate xterm mouse mode (ncurses)`}
+ Grbom = &Cap{`grbom`, `userdef`, `disable real bold (not intensity bright) mode. (ncurses)`}
+ Gsbom = &Cap{`gsbom`, `userdef`, `enable real bold (not intensity bright) mode. (ncurses)`}
+ Xm = &Cap{`xm`, `userdef`, `mouse response, no parameters (ncurses)`}
+ Rmol = &Cap{`Rmol`, `userdef`, `remove overline-mode (mintty)`}
+ Smol = &Cap{`Smol`, `userdef`, `set overline-mode (mintty)`}
+ Blink2 = &Cap{`blink2`, `userdef`, `turn on rapid blinking (mintty)`}
+ Norm = &Cap{`norm`, `userdef`, `turn off bold and half-bright mode (mintty)`}
+ Opaq = &Cap{`opaq`, `userdef`, `turn off blank mode (mintty)`}
+ Setal = &Cap{`setal`, `userdef`, `set underline-color (mintty)`}
+ Smul2 = &Cap{`smul2`, `userdef`, `begin double underline mode (mintty)`}
+ AN = &Cap{`AN`, `userdef`, `turn on autonuke. (screen)`}
+ AX = &Cap{`AX`, `userdef`, `understands ANSI set default fg/bg color (\E[39m / \E[49m). (screen)`}
+ C0 = &Cap{`C0`, `userdef`, `use the string as a conversion table for font '0', like acsc. (screen)`}
+ C8 = &Cap{`C8`, `userdef`, `terminal shows bold as high-intensity colors. (screen)`}
+ CE = &Cap{`CE`, `userdef`, `switch cursor-keys back to normal mode. (screen)`}
+ CS = &Cap{`CS`, `userdef`, `switch cursor-keys to application mode. (screen)`}
+ E0 = &Cap{`E0`, `userdef`, `switch charset 'G0' back to standard charset. Default is '\E(B'. (screen)`}
+ G0 = &Cap{`G0`, `userdef`, `terminal can deal with ISO 2022 font selection sequences. (screen)`}
+ KJ = &Cap{`KJ`, `userdef`, `set the encoding of the terminal. (screen)`}
+ OL = &Cap{`OL`, `userdef`, `set the screen program's output buffer limit. (screen)`}
+ S0 = &Cap{`S0`, `userdef`, `switch charset 'G0' to the specified charset. Default is '\E(%.'. (screen)`}
+ TF = &Cap{`TF`, `userdef`, `add missing capabilities to screen's termcap/info entry. (Set by default). (screen)`}
+ WS = &Cap{`WS`, `userdef`, `resize display. This capability has the desired width and height as arguments. SunView(tm) example: '\E[8;%d;%dt'. (screen)`}
+ XC = &Cap{`XC`, `userdef`, `describe a translation of characters to strings depending on the current font. (screen)`}
+ XT = &Cap{`XT`, `userdef`, `terminal understands special xterm sequences (OSC, mouse tracking). (screen)`}
+ Z0 = &Cap{`Z0`, `userdef`, `change width to 132 columns. (screen)`}
+ Z1 = &Cap{`Z1`, `userdef`, `change width to 80 columns. (screen)`}
+ Cr = &Cap{`Cr`, `userdef`, `restore the default cursor color. (tmux)`}
+ Cs = &Cap{`Cs`, `userdef`, `set the cursor color. (tmux)`}
+ Csr = &Cap{`Csr`, `userdef`, `change the cursor style, overriding Ss. (tmux)`}
+ Ms = &Cap{`Ms`, `userdef`, `store the current buffer in the host terminal's selection (clipboard). (tmux)`}
+ Se = &Cap{`Se`, `userdef`, `reset the cursor style to the terminal initial state. (tmux)`}
+ Smulx = &Cap{`Smulx`, `userdef`, `modify the appearance of underlines in VTE. (tmux)`}
+ Ss = &Cap{`Ss`, `userdef`, `change the cursor style. (tmux)`}
+ Rmxx = &Cap{`rmxx`, `userdef`, `reset ECMA-48 strikeout/crossed-out attributes. (tmux)`}
+ Smxx = &Cap{`smxx`, `userdef`, `set ECMA-48 strikeout/crossed-out attributes. (tmux)`}
+ BD = &Cap{`BD`, `userdef`, `disables bracketed paste (vim)`}
+ BE = &Cap{`BE`, `userdef`, `enables bracketed paste (vim)`}
+ PE = &Cap{`PE`, `userdef`, `is sent after pasted text (vim)`}
+ PS = &Cap{`PS`, `userdef`, `is sent before pasted text (vim)`}
+ RV = &Cap{`RV`, `userdef`, `report terminal secondary device attributes (vim)`}
+ XR = &Cap{`XR`, `userdef`, `report terminal version as a free-format string. (vim)`}
+ XF = &Cap{`XF`, `userdef`, `terminal supports xterm focus in/out (vim)`}
+ Fd = &Cap{`fd`, `userdef`, `disable xterm focus-events (vim)`}
+ Fe = &Cap{`fe`, `userdef`, `enable xterm focus-events (vim)`}
+ Rv = &Cap{`rv`, `userdef`, `response to RV, regular expression (vim)`}
+ Xr = &Cap{`xr`, `userdef`, `response to XR, regular expression (vim)`}
+ Csl = &Cap{`csl`, `userdef`, `clear status line (xterm)`}
+ KDC3 = &Cap{`kDC3`, `userdef`, `alt delete-character (xterm)`}
+ KDC4 = &Cap{`kDC4`, `userdef`, `shift+alt delete-character (xterm)`}
+ KDC5 = &Cap{`kDC5`, `userdef`, `control delete-character (xterm)`}
+ KDC6 = &Cap{`kDC6`, `userdef`, `shift+control delete-character (xterm)`}
+ KDC7 = &Cap{`kDC7`, `userdef`, `alt+control delete-character (xterm)`}
+ KDN = &Cap{`kDN`, `userdef`, `shift down-cursor (xterm)`}
+ KDN3 = &Cap{`kDN3`, `userdef`, `alt down-cursor (xterm)`}
+ KDN4 = &Cap{`kDN4`, `userdef`, `shift+alt down-cursor (xterm)`}
+ KDN5 = &Cap{`kDN5`, `userdef`, `control down-cursor (xterm)`}
+ KDN6 = &Cap{`kDN6`, `userdef`, `shift+control down-cursor (xterm)`}
+ KDN7 = &Cap{`kDN7`, `userdef`, `alt+control down-cursor (xterm)`}
+ KEND3 = &Cap{`kEND3`, `userdef`, `alt end (xterm)`}
+ KEND4 = &Cap{`kEND4`, `userdef`, `shift+alt end (xterm)`}
+ KEND5 = &Cap{`kEND5`, `userdef`, `control end (xterm)`}
+ KEND6 = &Cap{`kEND6`, `userdef`, `shift+control end (xterm)`}
+ KEND7 = &Cap{`kEND7`, `userdef`, `alt+control end (xterm)`}
+ KHOM3 = &Cap{`kHOM3`, `userdef`, `alt home (xterm)`}
+ KHOM4 = &Cap{`kHOM4`, `userdef`, `shift+alt home (xterm)`}
+ KHOM5 = &Cap{`kHOM5`, `userdef`, `control home (xterm)`}
+ KHOM6 = &Cap{`kHOM6`, `userdef`, `shift+control home (xterm)`}
+ KHOM7 = &Cap{`kHOM7`, `userdef`, `alt+control home (xterm)`}
+ KIC3 = &Cap{`kIC3`, `userdef`, `alt insert-character (xterm)`}
+ KIC4 = &Cap{`kIC4`, `userdef`, `shift+alt insert-character (xterm)`}
+ KIC5 = &Cap{`kIC5`, `userdef`, `control insert-character (xterm)`}
+ KIC6 = &Cap{`kIC6`, `userdef`, `shift+control insert-character (xterm)`}
+ KIC7 = &Cap{`kIC7`, `userdef`, `alt+control insert-character (xterm)`}
+ KLFT3 = &Cap{`kLFT3`, `userdef`, `alt left-cursor (xterm)`}
+ KLFT4 = &Cap{`kLFT4`, `userdef`, `shift+alt left-cursor (xterm)`}
+ KLFT5 = &Cap{`kLFT5`, `userdef`, `control left-cursor (xterm)`}
+ KLFT6 = &Cap{`kLFT6`, `userdef`, `shift+control left-cursor (xterm)`}
+ KLFT7 = &Cap{`kLFT7`, `userdef`, `alt+control left-cursor (xterm)`}
+ KNXT3 = &Cap{`kNXT3`, `userdef`, `alt next (xterm)`}
+ KNXT4 = &Cap{`kNXT4`, `userdef`, `shift+alt next (xterm)`}
+ KNXT5 = &Cap{`kNXT5`, `userdef`, `control next (xterm)`}
+ KNXT6 = &Cap{`kNXT6`, `userdef`, `shift+control next (xterm)`}
+ KNXT7 = &Cap{`kNXT7`, `userdef`, `alt+control next (xterm)`}
+ KPRV3 = &Cap{`kPRV3`, `userdef`, `alt previous (xterm)`}
+ KPRV4 = &Cap{`kPRV4`, `userdef`, `shift+alt previous (xterm)`}
+ KPRV5 = &Cap{`kPRV5`, `userdef`, `control previous (xterm)`}
+ KPRV6 = &Cap{`kPRV6`, `userdef`, `shift+control previous (xterm)`}
+ KPRV7 = &Cap{`kPRV7`, `userdef`, `alt+control previous (xterm)`}
+ KRIT3 = &Cap{`kRIT3`, `userdef`, `alt right-cursor (xterm)`}
+ KRIT4 = &Cap{`kRIT4`, `userdef`, `shift+alt right-cursor (xterm)`}
+ KRIT5 = &Cap{`kRIT5`, `userdef`, `control right-cursor (xterm)`}
+ KRIT6 = &Cap{`kRIT6`, `userdef`, `shift+control right-cursor (xterm)`}
+ KRIT7 = &Cap{`kRIT7`, `userdef`, `alt+control right-cursor (xterm)`}
+ KUP = &Cap{`kUP`, `userdef`, `shift up-cursor (xterm)`}
+ KUP3 = &Cap{`kUP3`, `userdef`, `alt up-cursor (xterm)`}
+ KUP4 = &Cap{`kUP4`, `userdef`, `shift+alt up-cursor (xterm)`}
+ KUP5 = &Cap{`kUP5`, `userdef`, `control up-cursor (xterm)`}
+ KUP6 = &Cap{`kUP6`, `userdef`, `shift+control up-cursor (xterm)`}
+ KUP7 = &Cap{`kUP7`, `userdef`, `alt+control up-cursor (xterm)`}
+ Ka2 = &Cap{`ka2`, `userdef`, `vt220-keypad extensions (xterm)`}
+ Kb1 = &Cap{`kb1`, `userdef`, `vt220-keypad extensions (xterm)`}
+ Kb3 = &Cap{`kb3`, `userdef`, `vt220-keypad extensions (xterm)`}
+ Kc2 = &Cap{`kc2`, `userdef`, `vt220-keypad extensions (xterm)`}
+ KxIN = &Cap{`kxIN`, `userdef`, `mouse response on focus-in (xterm)`}
+ KxOUT = &Cap{`kxOUT`, `userdef`, `mouse response on focus-out (xterm)`}
+)