/* $Id$ */ /** \page libcaca-todo Libcaca TODO list \section libcucul libcucul \subsection dep API-dependent stuff - big change: support several internal formats for canvases, for instance support the old ASCII canvas that only has 8-bit values, support the old ANSI color-only canvas, and add features to canvases, such as auto-adapt so that the canvas' format is automatically upgraded. Also, separate attribute stuff from colour stuff. List of attributes we support: - bold - blink - underline - italics list of attributes we may want to support: - faint - concealed - double underline - strike through - inverse video (not that stupid, canceling it is a bitwise op) - rapidly blinking / slowly blinking - fraktur (gothic) (wtf is that?) - alternate fonts 1 to 9 (wtf is that?) (probably not wanted) - proportional spacing (yeah) - framed - encircled - overlined - add a caca_unset_attr() and a caca_toggle_attr() ? - support for holes in canvas (eg. not full EOL) - support for TAB - allow to change the canvas size in a per-frame basis. - add attributes such as "can grow X-wise" to frames. - handle frame name in caca export \subsection indep API-independent stuff - Brightness, contrast support for bitmaps (the functions are here, we just need to fill them) - Implement other error distribution dithering algorithms - Add a random factor to the random ditherer. No need to change the API for that, we can just pass \c "random:10" instead of \c "random" to the cucul_set_bitmap_dithering() function. - Implement the colour modes set in cucul_set_bitmap_color(). For the moment only \c "full16" and \c "16" are implemented. - Fix the thin ellipse rendering (currently it's only |s and -s, we could make them smoother by using ' ` , etc). - better mask support in cucul_blit() - optimise exporters so that they do not allocate huge blocks of memory when they only need half of it. \section libcaca libcaca \subsection dep API-dependent stuff - beep support \subsection indep API-independent stuff - Write a Linux console output - Better keyboard driver in an X terminal, see http://groups.yahoo.com/group/zepp/message/381 - Unicode support for X11 (maybe through Xft) - fix Unicode support for ncurses (look at the nano source, it gets it right) - and Jylam wants a framebuffer output - write sample code for a text edit widget with cursor support - optimise renderers by having dirty lines support (requires libcucul changes) \section bindings Language bindings \subsection needed Needed - Fix Python - Fix Perl - PHP (together with the HTML output it would allow for nice web applications) \subsection notimp Not that important - Java \section kernel Kernel mode - keyboard support - printf/fprintf are missing - Improve malloc/free so that we can reuse freed memory \section doc Documentation - Write a tutorial. - Draw a nicer logo \section apps Applications \section cacaview cacaview - File browser - open ANSI files - save in different formats \section cacadraw cacadraw - Only a skeleton exists yet. A modern ANSI editor that can also do Unicode. */