Sam Hocevar
019938c9ae
* Changed cucul_set_attr() so that only setting the style does not change
the colour.
vor 18 Jahren
Sam Hocevar
111447fe27
* Blink/Underline/Bold/Italics support in the HTML exporters.
* Underline support in the X11 driver.
vor 18 Jahren
Sam Hocevar
142a830571
* Fix IRC and term transparency (again).
vor 18 Jahren
Sam Hocevar
0b37a307dd
* Get rid of cucul_set_attr_ansi() and cucul_set_attr_argb and merge the
functionality into cucul_set_attr().
* Add cucul_ansi_to_attr() and cucul_argb_to_attr().
* Rename CUCUL_COLOR_* to CUCUL_*.
vor 18 Jahren
Sam Hocevar
86301dd48c
* Use the LSB of alpha and blue components to encode additional flags such
as bold or underline. No higher level support for these yet, but at
least everything is consistent.
* Created cucul_set_attr_ansi() and cucul_set_attr_argb() which are bound
to replace cucul_set_color() and cucul_set_truecolor().
vor 18 Jahren
Sam Hocevar
b8641f0435
* Put at least one space in empty IRC lines otherwise most clients won't
output them.
vor 18 Jahren
Sam Hocevar
89bbe6b93e
* Support export of zero-sized canvases.
vor 18 Jahren
Sam Hocevar
5f9d557f2f
* Do not output \r in the UTF-8 exporter.
vor 18 Jahren
Sam Hocevar
df13e2a2e1
* Updated documentation of fullwidth-aware functions.
* Fullwidth support in all exporters.
vor 18 Jahren
Sam Hocevar
d0370af6d3
* Fixed a bug in the IRC exporter that could break the output when there
were commas in the canvas.
vor 18 Jahren
Sam Hocevar
78c6fc2e6e
* Support transparency in the colour UTF-8 exporter.
vor 18 Jahren
Sam Hocevar
23afd54c7c
* Fix enumeration layout in the manpage documentation.
vor 18 Jahren
Sam Hocevar
a984440ecc
* Handle transparency in the IRC export.
vor 18 Jahren
Sam Hocevar
1372caac6c
* Really export IRC as UTF-8, as advertised in the documentation.
vor 18 Jahren
Sam Hocevar
a2e45e47da
* Fix warnings in a few exporters. Do not assume %d accepts uint32_t without
an explicit cast.
vor 18 Jahren
Sam Hocevar
9137c0a059
* Export the UTF-8 / UTF-32 / CP437 character conversions to applications.
vor 18 Jahren
Sam Hocevar
ca5c87ae1b
* Add linebreaks to the ANSI exporter for better readability, and use
the save/load cursor position trick to ignore them.
vor 18 Jahren
Jean-Yves Lamoureux
5612b86ce6
* Fixed postscript exporter, image in not at the bottom of the page anymore
vor 18 Jahren
Sam Hocevar
7d75811a8b
* Use _cucul_utf32_to_utf8() instead of the inline code in the UTF-8 and
SVG exporters.
vor 18 Jahren
Sam Hocevar
9091804367
* Exporter now generates valid ANSI, with CP437 characters.
vor 18 Jahren
Sam Hocevar
9d482f7762
* Added "utf8" export that is like ANSI but exports UTF-8 encoded coloured
text.
vor 18 Jahren
Sam Hocevar
0a53a92195
* Completed return value and errno handling in libcucul API.
vor 18 Jahren
Sam Hocevar
38c4a8b608
* Implemented cucul_load_file() and cucul_load_memory() to load respectively
a file and a memory area into a libcucul buffer.
* Changed the cucul_import_canvas() prototype so that it uses libcucul
buffers instead of simple memory areas.
vor 18 Jahren
Sam Hocevar
5cb4d4dedf
* Removed duplicate uint*_t defines from *_internal.h and included common.h
in all .c files that needed it.
vor 18 Jahren
Sam Hocevar
43e1514520
* Print '?' for Unicode characters in the ANSI export. We'll decide later
whether we want plain ASCII, UTF-8, or CP437.
vor 18 Jahren
Sam Hocevar
e68c0f92b8
* Disabled the foreground/background optimisation in the IRC export because
it breaks on too many IRC clients.
vor 18 Jahren
Sam Hocevar
2401f2c732
* Moved cucul_load_canvas() into cucul/import.c and renamed it into
cucul_import_canvas().
* Renamed cucul_create_export() into cucul_export_canvas() for consistency.
vor 18 Jahren
Sam Hocevar
2353ad9215
* Minor documentation improvements.
vor 18 Jahren
Sam Hocevar
ea3bde92a4
* Added a new "caca" exporter.
* Removed most code from the raw driver and replaced it with a call to the
caca exporter.
* Slightly changed the caca export format and updated code accordingly.
* Improved cacaserver error reporting.
vor 18 Jahren
Sam Hocevar
18f6532dbc
* Renamed main canvas-related functions so that they have "canvas" in
their name, eg. cucul_create() -> cucul_create_canvas() etc.
* Moved buffer-related functions to cucul/buffer.c.
vor 18 Jahren
Sam Hocevar
687a2c43f6
* Renamed caca_t into caca_display_t.
* Renamed canvas handle variables from "c" to "cv". Eh ouais mon gros.
vor 18 Jahren
Sam Hocevar
246c5b4d67
* Renamed cucul_t into cucul_canvas_t. Eh ouais mon con.
vor 18 Jahren
Sam Hocevar
8e12dbeba6
* Truecolor support for the HTML and HTMLv3 exporters.
vor 18 Jahren
Sam Hocevar
ac3283f07f
* Cosmetic code changes and minor optimisations.
vor 18 Jahren
Sam Hocevar
66e06a687c
* Merged again all export functions into cucul/export.c. They're all the
same and they're very short (50-100 lines).
vor 18 Jahren
Jean-Yves Lamoureux
1971191c09
* Exploded cucul/export.c
vor 18 Jahren
Jean-Yves Lamoureux
325211d7c4
* Added tests for malloc()'s
vor 18 Jahren
Jean-Yves Lamoureux
5a09b684fe
* Updated README for network driver, fixed remaining exporters
vor 18 Jahren
Sam Hocevar
15ac34a918
* Added glue code to compile libcaca without a libc and build applications
as multiboot kernels.
vor 18 Jahren
Jean-Yves Lamoureux
a676487863
* Changed way temporary buffer of ansi export was handled. Need to do that for other exporters as well.
vor 18 Jahren
Jean-Yves Lamoureux
b9ab5e0e5a
* Exporters now return size of generated data
vor 18 Jahren
Sam Hocevar
70d96c811b
* Polished the driver split a bit (still no events, except resize events),
properly credited authors and documented a few things.
vor 19 Jahren
Sam Hocevar
4f59010b4c
* Moved stuff around to differenciate between libcucul and libcaca.
vor 19 Jahren
Sam Hocevar
6c6beb3541
* Use 32 bit integers for the character array. No visible difference for
now because we only do ASCII, but that will let us do Unicode later.
vor 19 Jahren
Sam Hocevar
6d99c79d26
* All output plugins should now work again.
* Renamed caca_refresh() into caca_display() which makes more sense.
* Optimised gl_bgpal by directly storing floats instead of doing the
conversion at runtime.
* Handle resizing in cucul_set_size() and try to keep as much information
as possible from the previous canvas.
* Moved most global variables into cucul_t or caca_t contexts.
* Moved time.c into libcaca.
vor 19 Jahren
Sam Hocevar
4c72df99aa
A new low-level text management library (canvas for ultrafast compositing
of unicode letters) is now separated from the higher level rendering and I/O
(that is, libcaca). This commit totally breaks the API, but once everything
is polished I will think about source-level backward compatibility. Most
drivers are broken, but X11 still sorta works.
The new design is much more object-oriented and allows having several
active renderers at the same time, changing renderers on the fly, and more
important, having no renderer at all (useful for converters, or when you
want to do your own renderer).
And in case you are still wondering, the libcucul acronym has "Unicode"
because I want to support at least a subset of Unicode. There are awesome
glyphs in it, including the ones inherited from Codepage 437 such as
"gray 25%" that are used in DOS and Win32 ANSI art.
vor 19 Jahren