The curses module defines the following data members:
Several constants are available to specify character cell attributes:
| Attribute | Meaning | 
|---|---|
| A_ALTCHARSET | Alternate character set mode. | 
| A_BLINK | Blink mode. | 
| A_BOLD | Bold mode. | 
| A_DIM | Dim mode. | 
| A_NORMAL | Normal attribute. | 
| A_STANDOUT | Standout mode. | 
| A_UNDERLINE | Underline mode. | 
Keys are referred to by integer constants with names starting with "KEY_". The exact keycaps available are system dependent.
| Key constant | Key | 
|---|---|
| KEY_MIN | Minimum key value | 
| KEY_BREAK | Break key (unreliable) | 
| KEY_DOWN | Down-arrow | 
| KEY_UP | Up-arrow | 
| KEY_LEFT | Left-arrow | 
| KEY_RIGHT | Right-arrow | 
| KEY_HOME | Home key (upward+left arrow) | 
| KEY_BACKSPACE | Backspace (unreliable) | 
| KEY_F0 | Function keys. Up to 64 function keys are supported. | 
| KEY_Fn | Value of function key n | 
| KEY_DL | Delete line | 
| KEY_IL | Insert line | 
| KEY_DC | Delete character | 
| KEY_IC | Insert char or enter insert mode | 
| KEY_EIC | Exit insert char mode | 
| KEY_CLEAR | Clear screen | 
| KEY_EOS | Clear to end of screen | 
| KEY_EOL | Clear to end of line | 
| KEY_SF | Scroll 1 line forward | 
| KEY_SR | Scroll 1 line backward (reverse) | 
| KEY_NPAGE | Next page | 
| KEY_PPAGE | Previous page | 
| KEY_STAB | Set tab | 
| KEY_CTAB | Clear tab | 
| KEY_CATAB | Clear all tabs | 
| KEY_ENTER | Enter or send (unreliable) | 
| KEY_SRESET | Soft (partial) reset (unreliable) | 
| KEY_RESET | Reset or hard reset (unreliable) | 
| KEY_PRINT | |
| KEY_LL | Home down or bottom (lower left) | 
| KEY_A1 | Upper left of keypad | 
| KEY_A3 | Upper right of keypad | 
| KEY_B2 | Center of keypad | 
| KEY_C1 | Lower left of keypad | 
| KEY_C3 | Lower right of keypad | 
| KEY_BTAB | Back tab | 
| KEY_BEG | Beg (beginning) | 
| KEY_CANCEL | Cancel | 
| KEY_CLOSE | Close | 
| KEY_COMMAND | Cmd (command) | 
| KEY_COPY | Copy | 
| KEY_CREATE | Create | 
| KEY_END | End | 
| KEY_EXIT | Exit | 
| KEY_FIND | Find | 
| KEY_HELP | Help | 
| KEY_MARK | Mark | 
| KEY_MESSAGE | Message | 
| KEY_MOVE | Move | 
| KEY_NEXT | Next | 
| KEY_OPEN | Open | 
| KEY_OPTIONS | Options | 
| KEY_PREVIOUS | Prev (previous) | 
| KEY_REDO | Redo | 
| KEY_REFERENCE | Ref (reference) | 
| KEY_REFRESH | Refresh | 
| KEY_REPLACE | Replace | 
| KEY_RESTART | Restart | 
| KEY_RESUME | Resume | 
| KEY_SAVE | Save | 
| KEY_SBEG | Shifted Beg (beginning) | 
| KEY_SCANCEL | Shifted Cancel | 
| KEY_SCOMMAND | Shifted Command | 
| KEY_SCOPY | Shifted Copy | 
| KEY_SCREATE | Shifted Create | 
| KEY_SDC | Shifted Delete char | 
| KEY_SDL | Shifted Delete line | 
| KEY_SELECT | Select | 
| KEY_SEND | Shifted End | 
| KEY_SEOL | Shifted Clear line | 
| KEY_SEXIT | Shifted Dxit | 
| KEY_SFIND | Shifted Find | 
| KEY_SHELP | Shifted Help | 
| KEY_SHOME | Shifted Home | 
| KEY_SIC | Shifted Input | 
| KEY_SLEFT | Shifted Left arrow | 
| KEY_SMESSAGE | Shifted Message | 
| KEY_SMOVE | Shifted Move | 
| KEY_SNEXT | Shifted Next | 
| KEY_SOPTIONS | Shifted Options | 
| KEY_SPREVIOUS | Shifted Prev | 
| KEY_SPRINT | Shifted Print | 
| KEY_SREDO | Shifted Redo | 
| KEY_SREPLACE | Shifted Replace | 
| KEY_SRIGHT | Shifted Right arrow | 
| KEY_SRSUME | Shifted Resume | 
| KEY_SSAVE | Shifted Save | 
| KEY_SSUSPEND | Shifted Suspend | 
| KEY_SUNDO | Shifted Undo | 
| KEY_SUSPEND | Suspend | 
| KEY_UNDO | Undo | 
| KEY_MOUSE | Mouse event has occurred | 
| KEY_RESIZE | Terminal resize event | 
| KEY_MAX | Maximum key value | 
On VT100s and their software emulations, such as X terminal emulators, there are normally at least four function keys (KEY_F1, KEY_F2, KEY_F3, KEY_F4) available, and the arrow keys mapped to KEY_UP, KEY_DOWN, KEY_LEFT and KEY_RIGHT in the obvious way. If your machine has a PC keybboard, it is safe to expect arrow keys and twelve function keys (older PC keyboards may have only ten function keys); also, the following keypad mappings are standard:
| Keycap | Constant | 
|---|---|
| Insert | KEY_IC | 
| Delete | KEY_DC | 
| Home | KEY_HOME | 
| End | KEY_END | 
| Page Up | KEY_NPAGE | 
| Page Down | KEY_PPAGE | 
The following table lists characters from the alternate character set. These are inherited from the VT100 terminal, and will generally be available on software emulations such as X terminals. When there is no graphic available, curses falls back on a crude printable ASCII approximation. Note: These are available only after initscr() has been called.
| ACS code | Meaning | 
|---|---|
| ACS_BBSS | alternate name for upper right corner | 
| ACS_BLOCK | solid square block | 
| ACS_BOARD | board of squares | 
| ACS_BSBS | alternate name for horizontal line | 
| ACS_BSSB | alternate name for upper left corner | 
| ACS_BSSS | alternate name for top tee | 
| ACS_BTEE | bottom tee | 
| ACS_BULLET | bullet | 
| ACS_CKBOARD | checker board (stipple) | 
| ACS_DARROW | arrow pointing down | 
| ACS_DEGREE | degree symbol | 
| ACS_DIAMOND | diamond | 
| ACS_GEQUAL | greater-than-or-equal-to | 
| ACS_HLINE | horizontal line | 
| ACS_LANTERN | lantern symbol | 
| ACS_LARROW | left arrow | 
| ACS_LEQUAL | less-than-or-equal-to | 
| ACS_LLCORNER | lower left-hand corner | 
| ACS_LRCORNER | lower right-hand corner | 
| ACS_LTEE | left tee | 
| ACS_NEQUAL | not-equal sign | 
| ACS_PI | letter pi | 
| ACS_PLMINUS | plus-or-minus sign | 
| ACS_PLUS | big plus sign | 
| ACS_RARROW | right arrow | 
| ACS_RTEE | right tee | 
| ACS_S1 | scan line 1 | 
| ACS_S3 | scan line 3 | 
| ACS_S7 | scan line 7 | 
| ACS_S9 | scan line 9 | 
| ACS_SBBS | alternate name for lower right corner | 
| ACS_SBSB | alternate name for vertical line | 
| ACS_SBSS | alternate name for right tee | 
| ACS_SSBB | alternate name for lower left corner | 
| ACS_SSBS | alternate name for bottom tee | 
| ACS_SSSB | alternate name for left tee | 
| ACS_SSSS | alternate name for crossover or big plus | 
| ACS_STERLING | pound sterling | 
| ACS_TTEE | top tee | 
| ACS_UARROW | up arrow | 
| ACS_ULCORNER | upper left corner | 
| ACS_URCORNER | upper right corner | 
| ACS_VLINE | vertical line | 
The following table lists the predefined colors:
| Constant | Color | 
|---|---|
| COLOR_BLACK | Black | 
| COLOR_BLUE | Blue | 
| COLOR_CYAN | Cyan (light greenish blue) | 
| COLOR_GREEN | Green | 
| COLOR_MAGENTA | Magenta (purplish red) | 
| COLOR_RED | Red | 
| COLOR_WHITE | White | 
| COLOR_YELLOW | Yellow |