Sam Hocevar
644ee4a78a
Coding style: remove tabs and trailing spaces.
15 vuotta sitten
Pascal Terjan
ac9b1074b4
Fix limits settings in area export
15 vuotta sitten
Sam Hocevar
d3ef2bbecd
Add caca_export_area_to_memory() to export only a selected part of the
current canvas. This is useful to export dirty rectangles. Accordingly,
add caca_import_area_from_memory() and caca_import_area_from_file().
15 vuotta sitten
Sam Hocevar
11428406c1
Split import.c and export.c to create a new text.c codec file in order
to keep source files under 1,000 lines of code.
15 vuotta sitten
Pascal Terjan
d1db2df568
Revert r3478
15 vuotta sitten
Pascal Terjan
33f2264bcd
Import/export dirty rectangles
15 vuotta sitten
Sam Hocevar
fc193a4b99
Fix a few implicit cast related warnings on VC++.
15 vuotta sitten
Ben Wiley Sittler
07d9dcc348
preserve column alignment better by breaking cells at spaces; preserve
readability of fullwidth characters better by not placing cell
boundaries between them unneccessarily
16 vuotta sitten
Ben Wiley Sittler
e434549a4d
force a column alignment after each column containing a fullwidth character.
16 vuotta sitten
Ben Wiley Sittler
d32f8eb7f8
fix foreground-color and quoting bugs in the "html" exporter; also,
the output is now labelled as XHTML 1.0 Strict, since it does conform
to that DTD. also removed spurious cellpadding and cellspacing from
<div /> markup. also handle non-characters by conversion to
replacement character, and handle more control characters by
conversion to no-break space. finally, switch from to the
equivalent   so that a non-validating XML parser (which is most
of them) can correctly parse this document.
16 vuotta sitten
Ben Wiley Sittler
e8756c7c46
do not split a fullwidth character in the middle. yes, in some
degenerate cases this will lead to incorrectly-displayed tables. i
don't yet have a solution.
16 vuotta sitten
Ben Wiley Sittler
567ae29030
do not expand tabs here. instead, importers need to understand '\t'
and fill the canvas up to the tab stop with it. once that works,
support will be added here (treating it as space.) also, fewer columns
are now generated. apparently generating a minimal number of them
fixes a bunch of the table-layout bugs.
16 vuotta sitten
Ben Wiley Sittler
afcad730a8
some unicode characters could overflow the buffer; handle more control
characters and non-unicode codepoints when generating HTML.
16 vuotta sitten
Ben Wiley Sittler
f4b036ef09
optimization: when the canvas is only a single line, we can always
optimize by merging cells
16 vuotta sitten
Ben Wiley Sittler
86a512cf34
work around table layout bugs by ensuring that if there are multiple
cells on any row of the table then the very first row does not use the
cell-merging optimization; this appears to fix the last of the table
layout bugs seen in truecolor.php; also fix the foreground and
background color bugs seen in truecolor.php.
16 vuotta sitten
Ben Wiley Sittler
ef3b597946
add a <table summary="..." /> attribute so screenreader software does not
get hopelessly lost.
16 vuotta sitten
Ben Wiley Sittler
cb49816e2e
use a single table cell for adjacent attribute runs provided the background color will be the same; this allows us to avoid special stylesheets for our example programs
16 vuotta sitten
Ben Wiley Sittler
8cc4c277b3
output valid XHTML (it's valid HTML3 too); note that this drops the COLS=... attribute on the table, but that had previously been calculated incorrectly anyhow so i doubt it mattered
16 vuotta sitten
Ben Wiley Sittler
e6e8418523
fix table border, colors, and quoting of <, ", ', and > in html3 output
16 vuotta sitten
Ben Wiley Sittler
7273a9dbf2
correctly account for tabs in html3 export
16 vuotta sitten
Sam Hocevar
e1562a8d46
libcaca: move codecs and import/export functions into subdirectories.
16 vuotta sitten
Sam Hocevar
319cc69db3
Continue the libcaca/libcucul merge. Source and binary compatibility
are almost there.
16 vuotta sitten
Sam Hocevar
f61816ceb7
Starting refactoring to get rid of libcucul. The initial reason for the
split is rendered moot by the plugin system: when enabled, binaries do
not link directly with libX11 or libGL. I hope this is a step towards
more consisteny and clarity.
16 vuotta sitten
Sam Hocevar
4ea785f818
* Remove all unsigned ints from exported functions. Signed arithmetic is
far better for error checking.
16 vuotta sitten
Sam Hocevar
ec68a634cf
* Get rid of the last long types in the API.
* Use size_t and ssize_t where appropriate.
16 vuotta sitten
Sam Hocevar
f44b5e11fa
* Changed most "unsigned char" variables into "uint8_t", including in
prototypes. As they are equivalent, this does not break the ABI.
16 vuotta sitten
Sam Hocevar
99b5396e8e
* Remove #include <stdint.h> etc. from "common.h". Instead, make sure that
<cucul.h> will provide the C99 types, even if libcaca has been installed.
* Rename what's left of "common.h" to "stubs.h".
* Remove all references to erroneous <inttypes.h> from source files.
16 vuotta sitten
Sam Hocevar
b8d3f71ae8
* Fix canvas export for the caca format. We now export all frames.
* Fix the sprite import/export example.
17 vuotta sitten
Sam Hocevar
ac91d59360
* Add a French BBCode exporter, for use on http://libcaca.skyrock.com/ for
instance.
17 vuotta sitten
Sam Hocevar
9c72677ccf
* Add cucul_get_version() and caca_get_version() and updated C++ bindings
accordingly.
* The C++ test example no longer needs "config.h".
17 vuotta sitten
Sam Hocevar
b519d05bce
* Export cucul_attr_to_rgb12_bg(), cucul_attr_to_rgb12_fg() and
cucul_attr_to_argb64() (previously _cucul_attr_to_rgb12bg,
_cucul_attr_to_rgb12fg and _cucul_attr_to_argb4) in the official
libcucul API.
* Cleanup complete: libcaca no longer depends on "cucul_internals.h".
17 vuotta sitten
Sam Hocevar
2149829bdf
* Added as many "const" qualifiers as possible to the public API.
17 vuotta sitten
Sam Hocevar
9597783308
* Bwarf, typo in the no warranty clause.
18 vuotta sitten
Sam Hocevar
33058757da
* Add a no warranty clause to the code.
18 vuotta sitten
Sam Hocevar
f1f00897c5
* Fix shadowing declarations.
18 vuotta sitten
Sam Hocevar
55765045c8
* Support for CUCUL_DEFAULT and CUCUL_TRANSPARENT in the HTML exporters.
* Updated export test accordingly.
18 vuotta sitten
Sam Hocevar
51936f585c
* Got rid of HAVE_ERRNO_H ifdefs by defining seterrno()/geterrno() functions.
* More debugging information in the import/export and font functions.
18 vuotta sitten
Sam Hocevar
18f1f68be7
* Add a debug() function and a --enable-debug configure flag.
18 vuotta sitten
Sam Hocevar
40aa3b7933
* Documentation updates. Moved the canvas and font format definitions to
the Doxygen documentation.
18 vuotta sitten
Sam Hocevar
aa3e191ccd
* Documentation fixes and TODO updates.
18 vuotta sitten
Sam Hocevar
f61bed2bdb
* Add cursor and handle support to canvases. Unused yet.
18 vuotta sitten
Sam Hocevar
25d0366fe6
* Get rid of _cucul_attr_to_ansi4[fb]g() and replace all calls with
the now official cucul_attr_to_ansi_[fb]g().
18 vuotta sitten
Sam Hocevar
391bc8b493
* Renamed cucul_export() to cucul_export_memory(), paves the way for a
cucul_export_file() but I'm not sure yet this is a good idea.
* Use the new import/export API in libcaca.
18 vuotta sitten
Sam Hocevar
17f272c4c4
* Deprecate buffer management. We're back to standard void* memory areas.
18 vuotta sitten
Sam Hocevar
98ee92b2d0
* Updated the caca export format so that it supports multiple frames.
* Updated the caca importer to reflect that; only one frame is read at the
moment.
* Added an "utf8cr" export format for UTF-8 + CRLF exports.
* Updated cacaserver to reflect file format changes.
18 vuotta sitten
Sam Hocevar
019938c9ae
* Changed cucul_set_attr() so that only setting the style does not change
the colour.
18 vuotta sitten
Sam Hocevar
111447fe27
* Blink/Underline/Bold/Italics support in the HTML exporters.
* Underline support in the X11 driver.
18 vuotta sitten
Sam Hocevar
142a830571
* Fix IRC and term transparency (again).
18 vuotta sitten
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_*.
18 vuotta sitten
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().
18 vuotta sitten