dl-fldigi/src/libtiniconv/README

8 wiersze
346 B
Plaintext
Czysty Zwykły widok Historia

UTF-8 overhaul * Refactor get_tx_char() * Reset to stock version, call byte_at() The class Fl_Text_Buffer_mod (borrowed from FLTK) contained a modified version of the method char_at() that effectively made it behave as byte_at(). Silently modifying a library-provided method not only disables the access to a certain functionality of the library, but can also cause other unforeseen consequences. The method was thus reverted to the stock version and the code that previously called the modified version was changed to call byte_at() instead. * Remove unneeded code in FTextTX::nextChar() * Libtiniconv - Added libtiniconv (charset conversion library) - Library Version 1.0.1 fetched from http://tiniconv.sf.net A small fix made to change a misspelled macro name. Build system adapted to fit into the fldigi build model. * Added CharsetDistiller class - Sanitize input data and convert it into UTF-8 - CharsetDistiller receives input data one byte at a time and converts this data stream from a particular character set into UTF-8. Invalid input data is treated as if it was encoded in CP1252. Character set conversion is performed as soon as possible, i.e., when enough input is received to constitute a valid character in the input character set, this character is immediatly converted into UTF-8 and made available at the output. * Make put_rx_char_flmain() use charsetDistiller * Make put_echo_char() use CharsetDistiller * Make pskBrowser use CharsetDistiller * Added OutputEncoder class - Used for encoding transmitted data - OutputEncoder accepts UTF-8 strings at input, converts them to the selected encoding and outputs them one byte at a time. * TX character set conversion using OutputEncoder * Fix backspace for >2byte UTF-8 characters * Global setting for RX/TX charset * Cleanup modem UTF-8 code - PSK, Olivia, MT63 and MFSK modems: cleanup of unneeded UTF-8 handling code - Everything that deals with output character set conversion and data sequencing is now done using OutputEncoder, so the modems can become completely agnostic about the character set used. As far as they are concerned, everything is just byte-sized data. * Added an array of character set names and identifiers * UTF-8 code cleanup - Cleanup of unneeded UTF-8 handling code in add_rxtx_char() and family * Character set selection menu - Add menu button to select the active TX/RX charset to the colors-fonts configure dialog. The setting defaults to UTF-8 (selected at program startup). The selection is saved to the program defaults configuration file when "Config/Save" is executed.
2012-10-29 17:24:49 +00:00
tiniconv - is a charset conversion library, based on libiconv (uses it's converters).
Intended to be used in embedded systems and other resource-critical facilities.
Doesn't use any memory management/file system calls, any OS calls at all -
COPMPLETELY OS-INDEPENDENT
(supposed to be, at least;).
Tested on LE x32 and x64 8086-like systems.