Kd#      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"None :BMNone :BM#$%&'()*+,-./0 #$%&'()*+,-.#$%&'()*+,-./0None :BM123456789:;<=>?@ABCD123456789:;<=>?@ABCD123456789:;<=>?@ABCDNone :BM6"Map curses keys to key abstraction ^ The getch, wgetch, mvgetch and mvwgetch, routines read a character from the window.EBGet the current cursor coords, written into the two argument ints. r The getyx macro places the current cursor position of the given window in the two integer variables y and x.&void getyx(WINDOW *win, int y, int x);Raw NCurses routine.Raw NCurses routine.Raw NCurses routine. initCurses fn? does all initialization necessary for a Curses application.The standard screencinitscr is normally the first curses routine to call when initializing a program. curs_initscr(3):  To initialize the routines, the routine initscr or newterm must be called before any of the other routines that deal with windows and screens are used. I The initscr code determines the terminal type and initial- izes all curses data structures. initscr also causes the first call to refresh to clear the screen. If errors occur, initscr writes an appropriate error message to standard error and exits; otherwise, a pointer is returned to stdscr. $The cbreak routine disables line buffering and erase/kill character-process- ing (interrupt and flow control characters are unaf- fected), making characters typed by the user immediately available to the program. The nocbreak routine returns the terminal to normal (cooked) mode.  The raw and noraw routines place the terminal into or out of raw mode. Raw mode is similar to cbreak mode, in that characters typed are immediately passed through to the user program. The differences are that in raw mode, the interrupt, quit, suspend, and flow control characters are all passed through uninterpreted, instead of generating a signal. The behavior of the BREAK key depends on other bits in the tty driver that are not set by curses. : The echo and noecho routines control whether characters typed by the user are echoed by getch as they are typed. Echoing by the tty driver is always disabled, but ini- tially getch is in echo mode, so characters typed are echoed. Authors of most interactive programs prefer to do their own echoing in a controlled area of the screen, or not to echo at all, so they disable echoing by calling noecho. [See curs_getch(3) for a discussion of how these routines interact with cbreak and nocbreak.] h The nl and nonl routines control whether the underlying display device translates the return key into newline on input, and whether it translates newline into return and line-feed on output (in either case, the call addch('\n') does the equivalent of return and line feed on the virtual screen). Initially, these translations do occur. If you disable them using nonl, curses will be able to make bet- ter use of the line-feed capability, resulting in faster cursor motion. Also, curses will then be able to detect the return key.  If the intrflush option is enabled, (bf is TRUE), when an interrupt key is pressed on the keyboard (interrupt, break, quit) all output in the tty driver queue will be flushed, giving the effect of faster response to the interrupt, but causing curses to have the wrong idea of what is on the screen. Disabling (bf is FALSE), the option prevents the flush. )Enable the keypad of the user's terminal.Normally, the hardware cursor is left at the location of the window cursor being refreshed. The leaveok option allows the cursor to be left wherever the update happens to leave it. It is useful for applications where the cur- sor is not used, since it reduces the need for cursor motions. If possible, the cursor is made invisible when this option is enabled. W The program must call endwin for each terminal being used before exiting from curses.-get the dimensions of the screen (lines,cols)1refresh curses windows and lines. curs_refresh(3)lwRefresh refreshes the specified window, copying the data | from the virtual screen to the physical screen.Stage an update to a window, but don't actually do the refresh until update is called. This allows multiple windows to be updated together more smoothly.GDo an actual update. Used after endWin on linux to restore the terminalSet a delay in milliseconds.[Initialise the color settings, also sets the screen to the default colors (white on black)PcolorPairs defines the maximum number of color-pairs the terminal can support)./curses support color attributes on terminals with that capability. To use these routines start_color must be called, usually right after initscr. Colors are always used in pairs (referred to as color-pairs). A color-pair consists of a foreground color (for characters) and a background color (for the blank field on which the charac- ters are displayed). A programmer initializes a color- pair with the routine init_pair. After it has been ini- tialized, COLOR_PAIR(n), a macro defined in  curses.h,, can be used as a new video attribute.If a terminal is capable of redefining colors, the pro- grammer can use the routine init_color to change the defi- nition of a color.The init_pair routine changes the definition of a color- pair. It takes three arguments: the number of the color- pair to be changed, the foreground color number, and the background color number. For portable applications:NThe value of the first argument must be between 1 and COLOR_PAIRS-1.The value of the second and third arguments must be between 0 and COLORS (the 0 color pair is wired to white on black and cannot be changed).Gmanipulate the current attributes of the named window. see curs_attr(3)Normal display (no highlight)Setting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesSetting attributesanormalise the string, stripping \r and making control chars printable. Called over all output(?),Copy blanks to every position in the screen.*Copy blanks to every position in a window.8Copy blanks to a window and set clearOk for that window.  move the cursor associated with the window to line y and column x. This routine does not move the physical cursor of the terminal until refresh is called. The position specified is relative to the upper left-hand corner of the window, which is (0,0). Note that F may be a macro.  move the cursor associated with the window to line y and column x. This routine does not move the physical cursor of the terminal until refresh is called. The position specified is relative to the upper left-hand corner of the window, which is (0,0).Set the cursor state / The curs_set routine sets the cursor state is set to invisible, normal, or very visible for visibility equal to 0, 1, or 2 respectively. If the terminal supports the visibility requested, the previous cursor state is returned; otherwise, ERR is returned."Get the current cursor coordinates v Draw a border around the edges of a window. defaultBorder is a record representing all 0 parameters to wrecord. read a character from the windowThe SIGWINCH signal is sent whenever the terminal size changes. This signal is not available on all platforms, so it is a |Maybe| value.o GHI !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~JKLMNOPQRSTUEVWFXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$#  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$#pqrstuvwxyz}|{~  onmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"!       !"#$   GIH]onmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! p qrstuvwxyz}|{~JKLMNOPQRSTUEVWFXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$None :BM%TA style which uses the internal curses representations for attributes and colors.&A humand-readable style.*/Abstractions for some commonly used attributes.0Background colors.:Foreground colors.Lstart+ initializes the UI and grabs the keyboard.This function installs a handler for the SIGWINCH signal which writes the KEY_RESIZE key to the input queue (if KEY_RESIZE and and SIGWINCH are both available).MClean up and go home.NSuspend the program.OgetKey refresh reads a key.The refresh` function is used to redraw the screen when the terminal size changes (see the documentatio of start" for a discussion of the problem).P drawLine n s draws n characters of string s.Q&Draw the cursor at the given position.R Move cursor to origin of stdScr.SbResize the window From "Writing Programs with NCURSES", by Eric S. Raymond and Zeyd M. Ben-HalimT Basic colors.Converts a list of Q pairs (foreground color and background color) into the curses representation .CYou should call this function exactly once, at application startup.!(not visible outside this module):Mapping abstract colours to ncurses attributes and colours!(not visible outside this module)]CConverts an abstract attribute list into its curses representation.`0Changes the attributes of the given CursesStyle.b!Reset the screen to normal valuesd3Manipulate the current style of the standard screenhYConverts a list of human-readable styles into the corresponding curses representation.hThis function should be called exactly once at application startup for all styles of the application.i*Converting keys to humand-readable stringsj Other helpersset the cursor, and do actionQ%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkG%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkGLMNSOPQR:KJIHGFEDCBA@?>=<;0987654321TUVWXYZ[\*/.-,+]&)('%_`debch^afgijk-%&)('*/.-,+0 987654321:KJIHGFEDCBA@?>=<;LMNOPQRSTUVWXYZ[\]^_`abcdefghijkNone :BMJoin a list by some delimiterSplit a list by some delimiterlmnopqrstuvwxyz{|}~      !"lmnopqrstuvwxyz{|}~     "! }~wxyz{|lmnopqrstuv     rl mnopqrstuvwxyz{|}~      !"      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvvwxyz{|}~      !"#$%&'()*+),-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(hscurses-1.4.2.0UI.HSCurses.LoggingUI.HSCurses.CursesUI.HSCurses.CursesHelperUI.HSCurses.WidgetsUI.HSCurses.CWStringUI.HSCurses.IConvtracedebug ButtonEvent ButtonAlt ButtonControl ButtonShiftButtonTripleClickedButtonDoubleClicked ButtonClickedButtonReleased ButtonPressed MouseEvent mouseEventId mouseEventX mouseEventY mouseEventZmouseEventButtonKey KeyUnknownKeyMouse KeyResizeKeyUndo KeySuspendKeySUndo KeySSuspendKeySSave KeySRsume KeySRight KeySReplaceKeySRedo KeySPrint KeySPrevious KeySOptionsKeySNextKeySMove KeySMessageKeySLeftKeySICKeySHomeKeySHelpKeySFindKeySExitKeySEOLKeySEnd KeySelectKeySDLKeySDC KeySCreateKeySCopy KeySCommand KeySCancelKeySBegKeySave KeyResume KeyRestart KeyReplace KeyRefresh KeyReferenceKeyRedo KeyPrevious KeyOptionsKeyOpenKeyNextKeyMove KeyMessageKeyMarkKeyHelpKeyFindKeyExitKeyEnd KeyCreateKeyCopy KeyCommandKeyClose KeyCancelKeyBegKeyBTabKeyC3KeyC1KeyB2KeyA3KeyA1KeyLLKeyPrintKeyReset KeySResetKeyEnterKeyCATabKeyCTabKeySTabKeyPPageKeyNPageKeySRKeySFKeyEOLKeyEOSKeyClearKeyEICKeyICKeyDCKeyILKeyDLKeyF KeyBackspaceKeyHomeKeyRightKeyLeftKeyUpKeyDownKeyBreakKeyCharBorderlsrstsbstltrblbrCursorVisibilityCursorVeryVisible CursorVisibleCursorInvisibleAttrColorPairNBoolChTypeWindow noqiflushflushinpgetchvline waddchnstrwinschwaddchstandendstandoutuseDefaultColors initCurses resetParams throwIfErr throwIfErr_errIstdScrinitScrcBreakrawechonl intrFlushkeypadnoDelayleaveOkclearOkdefaultBackgrounddefaultForegroundendWinscrSizerefreshwRefresh wnoutRefreshupdatetimeout hasColors startColor colorPairscolorscolorinitPair pairContentcanChangeColor initColor colorContentwAttrSetwAttrGetattr0 isAltCharsetisBlinkisBoldisDim isHorizontalisInvisisLeftisLow isProtect isReverseisRight isStandoutisTop isUnderline isVertical setAltCharsetsetBlinksetBoldsetDim setHorizontalsetInvissetLeftsetLow setProtect setReversesetRight setStandoutsetTop setUnderline setVerticalattrPlusattrSetattrOnattrOffwAttrOnwAttrOff attrDimOn attrDimOff attrBoldOn attrBoldOffattrDimattrBold mvWAddStrmvAddChaddLnwAddStr bkgrndSeterasewerasewclearclrToEolmovewMovecursSetgetYXtouchWinnewPadpRefreshdelWin defaultBorderwBordernewWin wClrToEolbeep decodeKey keyResizeCodecERRcKEY_UP cKEY_DOWN cKEY_LEFT cKEY_RIGHTcTRUEungetChgetChresizeTerminalcursesSigWinch cursesTestwithMouseEventMaskulCornerllCornerurCornerlrCornerrTeelTeebTeetTeehLinevLinepluss1s9diamondckBoarddegreeplMinusbulletlArrowrArrowdArrowuArrowboardlanternblocks3s7lEqualgEqualpinEqualsterling recognize CursesStyleStyleColorlessStyleAttributeStyle AttributeBlinkReverseDim UnderlineBoldBackgroundColorDefaultBWhiteB DarkCyanBPurpleB DarkBlueBBrownB DarkGreenBDarkRedBBlackBForegroundColorDefaultF BrightWhiteFWhiteFCyanF DarkCyanFMagentaFPurpleFBlueF DarkBlueFYellowFBrownFGreenF DarkGreenFRedFDarkRedFGreyFBlackFstartendsuspendgetKeydrawLine drawCursorgotoTopresizeui defaultColorblackredgreenyellowbluemagentacyanwhiteconvertAttributes defaultStyle mkCursesStylechangeCursesStyledefaultCursesStyle resetStyle wResetStylesetStyle wSetStyle withStyle wWithStyle convertStyles displayKey withCursor withProgramTableWidgetDisplayInfoTBWDisplayInfotbwdisp_height tbwdisp_widthtbwdisp_firstVistbwdisp_lastVis tbwdisp_rows tbwdisp_nrowstbwdisp_heightstbwdisp_widthstbwdisp_rightMarginTableWidgetOptions TBWOptionstbwopt_fillColtbwopt_fillRowtbwopt_activeColstbwopt_minSizeFillRowNoneLastFirst TableWidgettbw_rows tbw_colOffsettbw_pos tbw_optionsRow TableCellActiveTableCellTextWidgetOptions TWOptions twopt_size twopt_style twopt_halignTextWidgetSize TWSizeFixed TWSizeDefault TextWidgettw_text tw_yoffset tw_xoffset tw_optionsEditWidgetOptions EWOptionsewopt_keyHandlersewopt_minWidth ewopt_style EditWidget ew_content ew_xoffset ew_xcursor ew_historyew_historyIndexew_historySavedContent ew_options OpaqueWidget EmptyWidget DrawingStyleDStyle dstyle_normal dstyle_focus dstyle_active DrawingHintDHActiveDHFocusDHNormal KeyHandler ActiveWidgetactivateWidgetdrawminSizeContDone HAlignment AlignRight AlignCenter AlignLeft DirectionDirDownDirUpDirRightDirLeftSizeOffsetPos getHeightgetWidth getYOffset getXOffsetgetYPosgetXPos mkKeyHandlermkDrawingStyledefaultDrawingStyle_draw scrollFactorscrollBy scrollForwardscrollBackward ew_contentPosdefaultEWOptions newEditWidgeteditWidgetGoLefteditWidgetGoRighteditWidgetDeleteLefteditWidgetDeleteUnderCursoreditWidgetDeleteToEndeditWidgetGoHomeeditWidgetGoEndeditWidgetHistoryUpeditWidgetHistoryDowneditWidgetKeyHandlerseditWidgetGetContenteditWidgetSetContenteditWidgetGetOptionseditWidgetSetOptionsdrawEditWidgetactivateEditWidgeteditWidgetGoLeft'editWidgetGoRight'editWidgetDeleteLeft'editWidgetDeleteUnderCursor'editWidgetDeleteToEnd'editWidgetGoHome'editWidgetGoEnd'editWidgetFinishmaxHistoryLength addToHistoryeditWidgetHistoryUp'editWidgetHistoryDown'editWidgetHistorydefaultTWOptions newTextWidgetdrawTextWidgettextWidgetGetTexttextWidgetSetTexttextWidgetScrollDowntextWidgetScrollUptextWidgetScrollLefttextWidgetScrollRightisActive_activateTableCell singletonRow getCellWidget setCellWidgetdefaultTBWOptionsnewTableWidgettableWidgetDisplayInfo getCellInfodrawTableWidgettableWidgetScrollDowntableWidgetScrollUptableWidgetActivateCurrenttableWidgetGoLefttableWidgetGoRighttableWidgetGoUptableWidgetGoDowntableWidgetMovetableWidgetMakeVisiblefindFirstActiveCellfindNextActiveCelltableWidgetDeleteRow joinLists splitList listReplace alignRowsaligndeleteAt$fWidgetTableWidget$fWidgetTableCell$fWidgetTextWidget$fActiveWidgetEditWidget$fWidgetEditWidget$fWidgetOpaqueWidget$fWidgetEmptyWidget withLCStringwithLCStringLen newLCStringnewLCStringLen peekLCStringpeekLCStringLenwithUTF8StringwithUTF8StringLen newUTF8StringnewUTF8StringLenpeekUTF8StringpeekUTF8StringLentoUTFfromUTFIConvc_iconv c_iconv_close c_iconv_openerr_ptrthrow_if_not_2_big iconv_open iconv_close outbuf_sizedo_iconv with_iconviconv_iconv cuni_charset peek_cuni with_cuni to_unicode_ to_unicode from_unicode_ from_unicode nomacro_getyxmove_cBufData DataViaGetch BufDirect WindowTag mousemaskc_flashc_beep wclrtoeolnewwinwborderdelwinnewpadprefreshtouchwincurs_setwmoveclrtoeolwclear_cwerase_cbkgdsetwaddnstr mvaddch_cwattroffwattronattroffattronattr_offattr_on wattr_get wattr_setattr_set colorPair color_content init_colorcan_change_color pair_content init_pair colorsPtr colorPairsPtr start_color has_colors timeout_cupdate_cwnoutrefresh_c wrefresh_c refresh_cgetMaxYXendwin define_key clearok_c leaveok_cnodelaykeypad_c intrflushnonlnl_cecho_cnoechoraw_cnorawnocbreakcbreakinitscrstdscrfi defineKeyisAttrsetAttrvis_cc_visinputBufgetchToInputBufbesToMouseMask colorsToPairs convertBgColorlessCursesStyle convertFgsetBoldA setUnderlineAsetDimA setReverseA setBlinkA