TODO

* Documentation lacks subject index entries.

* Terminfo and termcap functions have not been wrapped

* For each

  1. Validate type from curses.h.in or curses.wide

  2. Check ncurses to see if return has meaning.
  - If ret val only depends
    on a Window null pointer check, return *unspecified*

  Validate gsubr decl
  Validate scm decl
  Validate ref doc
  Validate test

* core ncurses API
** DONE COLOR_PAIR -> color-pair
** DONE PAIR_NUMBER -> pair-number
** TODO _nc_free_and_exit
** TODO _nc_freall
** TODO _nc_tracebits
** TODO _traceattr
** TODO _tracechar
** TODO _tracechtype
** TODO _tracechtype2
** TODO _tracedump
** TODO _tracef
** TODO _tracemouse
** add_wch => wadd_wch
** add_wchnstr => wadd_wchnstr
** add_wchstr => wadd_wchnstr
** addch => waddch
** addchnstr => waddchnstr
** addchstr => waddchnstr
** addnstr => waddnstr
** addstr => waddnstr
** addwstr => waddnwstr
** DONE assume_default_colors -> assume-default-colors
** attr_get => wattr_get
** attr_off => wattr_off
** attr_on => wattr_on
** attr_set => wattr_set
** attroff => wattroff
** attron => wattron
** attrset => wattrset
** DONE baudrate
** DONE beep
** bkgd => wbkgd
** bkgdset => wbkgdset
** bkgrnd => wbkgrnd
** bkgrndset => wbkgrndset
** border => wborder
** border_set => wborder_set
** box => wborder
** box_set => wborder_set
** DONE can_change_color -> can-change-color?
** DONE cbreak -> cbreak!
** chgat => wchgat
** clear => wclear
** DONE clearok -> clearok!
** clrtobot => wclrtobot
** clrtoeol => wclrtoeol
** DONE color_content -> color-content
** color_set => wcolor_set
** DONE copywin
** DONE curs_set -> curs-set
** DONE curses_version
** DONE def_prog_mode -> def-prog-mode
** DONE def_shell_mode -> def-shell-mode
** DONE define_key -> define-key
** TODO del_curterm
** DONE delay_output -> delay-output
** delch => delch
** deleteln => winsdelln
** DONE delscreen
** DONE delwin
** DONE derwin
** DONE doupdate
** TODO dupwin
   - needs test
** DONE echo
** echo_wchar => wecho_wchar
** echochar => wechochar
** DONE endwin
** erase => werase
** DONE erasechar
** erasewchar => erasechar
** DONE filter -> %filter
** DONE flash
** DONE flushinp
** DONE filter
** DONE flash
** flushinp
** get_wch
** get_wstr
** getattrs
** getbegx
** getbegy
** getbegyx
** getbkgd
** getbkgrnd
** getcchar
** getch
** getcurx
** getcury
** getmaxx
** getmaxy
** getmaxyx
** getmouse
** getn_wstr
** getnstr
** getparx
** getpary
** getparyx
** getstr
** getsyx
** getwin
** getyx
** halfdelay
** has_colors
** has_ic

** has_il
** has_key
** hline
** hline_set
** idcok
** idlok
** immedok
** in_wch
** in_wchnstr
** in_wchstr
** inch
** inchnstr
** inchstr
** init_color
** init_pair
** initscr
** innstr
** innwstr
** ins_nwstr
** ins_wch
** ins_wstr
** insch
** insdelln
** insertln
** insnstr
** insstr
** instr
** intrflush
** inwstr
** is_cleared
** is_idcok
** is_idlok
** is_immedok
** is_keypad
** is_leaveok
** is_linetouched
** is_nodelay
** is_notimeout
** is_scrollok
** is_syncok
** is_term_resized
** is_wintouched
** isendwin
** key_defined
** key_name
** keybound
** keyname
** keyok
** keypad
** killchar
** killwchar
** leaveok
** longname
** mcprint
** meta
** mouse_trafo
** mouseinterval
** mousemask
** move
** mvadd_wch
** mvadd_wchnstr
** mvadd_wchstr
** mvaddch
** mvaddchnstr
** mvaddchstr
** mvaddnstr

** mvaddnwstr
** mvaddstr
** mvaddwstr
** mvchgat
** mvcur
** mvdelch
** mvderwin
** mvget_wch
** mvget_wstr
** mvgetch
** mvgetn_wstr
** mvgetnstr
** mvgetstr
** mvhline
** mvhline_set
** mvin_wch
** mvin_wchnstr
** mvin_wchstr
** mvinch
** mvinchnstr
** mvinchstr
** mvinnstr
** mvinnwstr
** mvins_nwstr
** mvins_wch
** mvins_wstr
** mvinsch
** mvinsnstr
** mvinsstr
** mvinstr
** mvinwstr
** mvprintw
** mvscanw
** mvvline
** mvvline_set
** mvwadd_wch
** mvwadd_wchnstr
** mvwadd_wchstr
** mvwaddch
** mvwaddchnstr
** mvwaddchstr
** mvwaddnstr
** mvwaddnwstr
** mvwaddstr
** mvwaddwstr
** mvwchgat
** mvwdelch
** mvwget_wch
** mvwget_wstr
** mvwgetch
** mvwgetn_wstr
** mvwgetnstr
** mvwgetstr
** mvwhline
** mvwhline_set
** mvwin
** mvwin_wch
** mvwin_wchnstr
** mvwin_wchstr
** mvwinch
** mvwinchnstr
** mvwinchstr
** mvwinnstr
** mvwinnwstr
** mvwins_nwstr
** mvwins_wch

** mvwins_wstr
** mvwinsch
** mvwinsnstr
** mvwinsstr
** mvwinstr
** mvwinwstr
** mvwprintw
** mvwscanw
** mvwvline
** mvwvline_set
** napms
** newpad
** newterm
** newwin
** nl
** nocbreak
** nodelay
** noecho
** nofilter
** nonl
** noqiflush
** noraw
** notimeout
** overlay
** overwrite
** pair_content
** pechochar
** pnoutrefresh
** prefresh
** printw
** putp
** putwin
** qiflush
** raw
** redrawwin
** refresh
** reset_prog_mode
** reset_shell_mode
** resetty
** resizeterm
** restartterm
** ripoffline
** savetty
** scanw
** scr_dump
** scr_init
** scr_restore
** scr_set
** scrl
** scroll
** scrollok
** set_curterm
** set_term
** setcchar
** setscrreg
** setsyx
** setterm
** setupterm
** slk_attr
** slk_attr_off
** slk_attr_on
** slk_attr_set
** slk_attroff
** slk_attron
** slk_attrset
** slk_clear

** slk_color
** slk_init
** slk_label
** slk_noutrefresh
** slk_refresh
** slk_restore
** slk_set
** slk_touch
** standend
** standout
** start_color
** subpad
** subwin
** syncok
** term_attrs
** termattrs
** termname
** tgetent
** tgetflag
** tgetnum
** tgetstr
** tgoto
** tigetflag
** tigetnum
** tigetstr
** timeout
** touchline
** touchwin
** tparm
** tputs
** tputs
** trace
** typeahead
** unctrl
** unget_wch
** ungetch
** ungetmouse
** untouchwin
** use_default_colors
** use_env
** use_extended_names
** use_legacy_coding
** vid_attr
** vid_puts
** vidattr
** vidputs
** vline
** vline_set
** vw_printw
** vw_scanw
** vwprintw
** vwscanw
** wadd_wch
** wadd_wchnstr
** wadd_wchstr
** waddch
** waddchnstr
** waddchstr
** waddnstr
** waddnwstr
** waddstr
** waddwstr
** wattr_get
** wattr_off
** wattr_on
** wattr_set

** wattroff
** wattron
** wattrset
** wbkgd
** wbkgdset
** wbkgrnd
** wbkgrndset
** wborder
** wborder_set
** wchgat
** wclear
** wclrtobot
** wclrtoeol
** wcolor_set
** wcursyncup
** wdelch
** wdeleteln
** wecho_wchar
** wechochar
** wenclose
** werase
** wget_wch
** wget_wstr
** wgetbkgrnd
** wgetch
** wgetn_wstr
** wgetnstr
** wgetstr
** whline
** whline_set
** win_wch
** win_wchnstr
** win_wchstr
** winch
** winchnstr
** winchstr
** winnstr
** winnwstr
** wins_nwstr
** wins_wch
** wins_wstr
** winsch
** winsdelln
** winsertln
** winsnstr
** winsstr
** winstr
** winwstr
** wmouse_trafo
** wmove
** wnoutrefresh
** wprintw
** wredrawln
** wrefresh
** wresize
** wscanw
** wscrl
** wsetscrreg
** wstandend
** wstandout
** wsyncdown
** wsyncup
** wtimeout
** wtouchln
** wunctrl
** wvline

** wvline_set
