caca_attr(3caca)

πŸ’… caca_attr β€” libcaca attribute definitions ✨

okay so bestie, welcome to caca_attr(3caca), straight out of the libcaca manual πŸ’– this page is literally the vibe check for colours, styles, events and keys β€” all the little constants that make text-mode graphics look gorgeous. no cap, it's iconic.


🌸 SYNOPSIS 🌸

πŸŽ€ Topics

  • libcaca basic functions β€” the starter pack, iykyk 🫢

πŸ¦‹ Data Structures

  • struct caca_event β€” Handling of user events. πŸ‘€
  • struct caca_option β€” Option parsing. 🧾

🌈 Enumerations

  • enum caca_color β€” { CACA_BLACK = 0x00, CACA_BLUE = 0x01, CACA_GREEN = 0x02, CACA_CYAN = 0x03, CACA_RED = 0x04, CACA_MAGENTA = 0x05, CACA_BROWN = 0x06, CACA_LIGHTGRAY = 0x07, CACA_DARKGRAY = 0x08, CACA_LIGHTBLUE = 0x09, CACA_LIGHTGREEN = 0x0a, CACA_LIGHTCYAN = 0x0b, CACA_LIGHTRED = 0x0c, CACA_LIGHTMAGENTA = 0x0d, CACA_YELLOW = 0x0e, CACA_WHITE = 0x0f, CACA_DEFAULT = 0x10, CACA_TRANSPARENT = 0x20 } 🎨
  • enum caca_style β€” { CACA_BOLD = 0x01, CACA_ITALICS = 0x02, CACA_UNDERLINE = 0x04, CACA_BLINK = 0x08 } ✨
  • enum caca_event_type β€” { CACA_EVENT_NONE = 0x0000, CACA_EVENT_KEY_PRESS = 0x0001, CACA_EVENT_KEY_RELEASE = 0x0002, CACA_EVENT_MOUSE_PRESS = 0x0004, CACA_EVENT_MOUSE_RELEASE = 0x0008, CACA_EVENT_MOUSE_MOTION = 0x0010, CACA_EVENT_RESIZE = 0x0020, CACA_EVENT_QUIT = 0x0040, CACA_EVENT_ANY = 0xffff } β€” User event type enumeration. πŸ–±οΈ
  • enum caca_key β€” { CACA_KEY_UNKNOWN = 0x00, CACA_KEY_CTRL_A = 0x01, CACA_KEY_CTRL_B = 0x02, CACA_KEY_CTRL_C = 0x03, CACA_KEY_CTRL_D = 0x04, CACA_KEY_CTRL_E = 0x05, CACA_KEY_CTRL_F = 0x06, CACA_KEY_CTRL_G = 0x07, CACA_KEY_BACKSPACE = 0x08, CACA_KEY_TAB = 0x09, CACA_KEY_CTRL_J = 0x0a, CACA_KEY_CTRL_K = 0x0b, CACA_KEY_CTRL_L = 0x0c, CACA_KEY_RETURN = 0x0d, CACA_KEY_CTRL_N = 0x0e, CACA_KEY_CTRL_O = 0x0f, CACA_KEY_CTRL_P = 0x10, CACA_KEY_CTRL_Q = 0x11, CACA_KEY_CTRL_R = 0x12, CACA_KEY_PAUSE = 0x13, CACA_KEY_CTRL_T = 0x14, CACA_KEY_CTRL_U = 0x15, CACA_KEY_CTRL_V = 0x16, CACA_KEY_CTRL_W = 0x17, CACA_KEY_CTRL_X = 0x18, CACA_KEY_CTRL_Y = 0x19, CACA_KEY_CTRL_Z = 0x1a, CACA_KEY_ESCAPE = 0x1b, CACA_KEY_DELETE = 0x7f, CACA_KEY_UP = 0x111, CACA_KEY_DOWN = 0x112, CACA_KEY_LEFT = 0x113, CACA_KEY_RIGHT = 0x114, CACA_KEY_INSERT = 0x115, CACA_KEY_HOME = 0x116, CACA_KEY_END = 0x117, CACA_KEY_PAGEUP = 0x118, CACA_KEY_PAGEDOWN = 0x119, CACA_KEY_F1 = 0x11a, CACA_KEY_F2 = 0x11b, CACA_KEY_F3 = 0x11c, CACA_KEY_F4 = 0x11d, CACA_KEY_F5 = 0x11e, CACA_KEY_F6 = 0x11f, CACA_KEY_F7 = 0x120, CACA_KEY_F8 = 0x121, CACA_KEY_F9 = 0x122, CACA_KEY_F10 = 0x123, CACA_KEY_F11 = 0x124, CACA_KEY_F12 = 0x125, CACA_KEY_F13 = 0x126, CACA_KEY_F14 = 0x127, CACA_KEY_F15 = 0x128 } β€” Special key values. ⌨️

πŸ’œ Detailed Description πŸ’œ

Colours and styles that you can use with caca_set_attr(). that's it, that's the whole thing β€” but like, it's everything. 🎨✨


πŸ‘‘ Enumeration Type Documentation πŸ‘‘

πŸ“ enum caca_color

libcaca colour keyword πŸ’–

Enumerator

  • CACA_BLACK β€” The colour index for black. πŸ–€
  • CACA_BLUE β€” The colour index for blue. πŸ’™
  • CACA_GREEN β€” The colour index for green. πŸ’š
  • CACA_CYAN β€” The colour index for cyan. 🩡
  • CACA_RED β€” The colour index for red. ❀️
  • CACA_MAGENTA β€” The colour index for magenta. πŸ’œ
  • CACA_BROWN β€” The colour index for brown. 🀎
  • CACA_LIGHTGRAY β€” The colour index for light gray. 🀍
  • CACA_DARKGRAY β€” The colour index for dark gray. 🩢
  • CACA_LIGHTBLUE β€” The colour index for blue. (yes bestie, the page literally says blue here β€” not my typo, that's the doc πŸ™ˆ)
  • CACA_LIGHTGREEN β€” The colour index for light green. πŸ€
  • CACA_LIGHTCYAN β€” The colour index for light cyan. 🧊
  • CACA_LIGHTRED β€” The colour index for light red. πŸ“
  • CACA_LIGHTMAGENTA β€” The colour index for light magenta. 🌸
  • CACA_YELLOW β€” The colour index for yellow. πŸ’›
  • CACA_WHITE β€” The colour index for white. 🀍
  • CACA_DEFAULT β€” The output driver's default colour. ✨
  • CACA_TRANSPARENT β€” The transparent colour. πŸ«₯

πŸ¦‹ enum caca_style

libcaca style keyword ✨

Enumerator

  • CACA_BOLD β€” The style mask for bold. 🫢
  • CACA_ITALICS β€” The style mask for italics. πŸ’«
  • CACA_UNDERLINE β€” The style mask for underline. 〰️
  • CACA_BLINK β€” The style mask for blink. πŸ‘οΈβœ¨

🌈 enum caca_event_type

This enum serves two purposes, and honestly? multitasking queen πŸ‘‘:

  • Build listening masks for caca_get_event(). 🎧
  • Define the type of a caca_event_t. 🏷️

Enumerator

  • CACA_EVENT_NONE β€” No event. πŸ’€
  • CACA_EVENT_KEY_PRESS β€” A key was pressed. ⌨️
  • CACA_EVENT_KEY_RELEASE β€” A key was released. 🫳
  • CACA_EVENT_MOUSE_PRESS β€” A mouse button was pressed. πŸ–±οΈ
  • CACA_EVENT_MOUSE_RELEASE β€” A mouse button was released. πŸ–±οΈπŸ’¨
  • CACA_EVENT_MOUSE_MOTION β€” The mouse was moved. 🐭
  • CACA_EVENT_RESIZE β€” The window was resized. πŸ“
  • CACA_EVENT_QUIT β€” The user requested to quit. πŸšͺ
  • CACA_EVENT_ANY β€” Bitmask for any event. 🌟

⌨️ enum caca_key

Special key values returned by caca_get_event() for which there is no printable ASCII equivalent β€” like, they're too special for plain text, periodt πŸ’…

Enumerator

  • CACA_KEY_UNKNOWN β€” Unknown key. ❓
  • CACA_KEY_CTRL_A β€” The Ctrl-A key. πŸ…°οΈ
  • CACA_KEY_CTRL_B β€” The Ctrl-B key. πŸ…±οΈ
  • CACA_KEY_CTRL_C β€” The Ctrl-C key. 🫒
  • CACA_KEY_CTRL_D β€” The Ctrl-D key. 🍩
  • CACA_KEY_CTRL_E β€” The Ctrl-E key. 🐘
  • CACA_KEY_CTRL_F β€” The Ctrl-F key. 🦩
  • CACA_KEY_CTRL_G β€” The Ctrl-G key. πŸ‡
  • CACA_KEY_BACKSPACE β€” The backspace key. ⬅️
  • CACA_KEY_TAB β€” The tabulation key. β†Ή
  • CACA_KEY_CTRL_J β€” The Ctrl-J key. πŸ§ƒ
  • CACA_KEY_CTRL_K β€” The Ctrl-K key. πŸ”‘
  • CACA_KEY_CTRL_L β€” The Ctrl-L key. πŸ‹
  • CACA_KEY_RETURN β€” The return key. ↩️
  • CACA_KEY_CTRL_N β€” The Ctrl-N key. πŸ₯œ
  • CACA_KEY_CTRL_O β€” The Ctrl-O key. 🍊
  • CACA_KEY_CTRL_P β€” The Ctrl-P key. 🐼
  • CACA_KEY_CTRL_Q β€” The Ctrl-Q key. πŸ‘Έ
  • CACA_KEY_CTRL_R β€” The Ctrl-R key. 🌹
  • CACA_KEY_PAUSE β€” The pause key. ⏸️
  • CACA_KEY_CTRL_T β€” The Ctrl-T key. πŸŽ‹
  • CACA_KEY_CTRL_U β€” The Ctrl-U key. β˜‚οΈ
  • CACA_KEY_CTRL_V β€” The Ctrl-V key. 🎻
  • CACA_KEY_CTRL_W β€” The Ctrl-W key. 🌊
  • CACA_KEY_CTRL_X β€” The Ctrl-X key. ❌
  • CACA_KEY_CTRL_Y β€” The Ctrl-Y key. πŸ’›
  • CACA_KEY_CTRL_Z β€” The Ctrl-Z key. πŸ’€
  • CACA_KEY_ESCAPE β€” The escape key. πŸƒβ€β™€οΈπŸ’¨
  • CACA_KEY_DELETE β€” The delete key. πŸ—‘οΈ
  • CACA_KEY_UP β€” The up arrow key. ⬆️
  • CACA_KEY_DOWN β€” The down arrow key. ⬇️
  • CACA_KEY_LEFT β€” The left arrow key. ⬅️
  • CACA_KEY_RIGHT β€” The right arrow key. ➑️
  • CACA_KEY_INSERT β€” The insert key. πŸ“₯
  • CACA_KEY_HOME β€” The home key. 🏠
  • CACA_KEY_END β€” The end key. πŸ”š
  • CACA_KEY_PAGEUP β€” The page up key. πŸ“„β¬†οΈ
  • CACA_KEY_PAGEDOWN β€” The page down key. πŸ“„β¬‡οΈ
  • CACA_KEY_F1 β€” The F1 key. 🎹
  • CACA_KEY_F2 β€” The F2 key. 🎹
  • CACA_KEY_F3 β€” The F3 key. 🎹
  • CACA_KEY_F4 β€” The F4 key. 🎹
  • CACA_KEY_F5 β€” The F5 key. 🎹
  • CACA_KEY_F6 β€” The F6 key. 🎹
  • CACA_KEY_F7 β€” The F7 key. 🎹
  • CACA_KEY_F8 β€” The F8 key. 🎹
  • CACA_KEY_F9 β€” The F9 key. 🎹
  • CACA_KEY_F10 β€” The F10 key. 🎹
  • CACA_KEY_F11 β€” The F11 key. 🎹
  • CACA_KEY_F12 β€” The F12 key. 🎹
  • CACA_KEY_F13 β€” The F13 key. 🎹
  • CACA_KEY_F14 β€” The F14 key. 🎹
  • CACA_KEY_F15 β€” The F15 key. 🎹

🫢 Author 🫢

Generated automatically by Doxygen for libcaca from the source code. so not me writing it by hand, the robots did that πŸ’…πŸ€–


the cute lil sign-off: this page is Version 0.99.beta20, dated Wed May 13 2026 09:45:08 β€” love that for us. stay colourful, bestie. πŸŽ€πŸ¦‹βœ¨
πŸ“¦ where this page comes from