Ascii2Binary Full Change Log
- Replaced pipe with comma as separator for short and long options in man pages.
- Renamed endian.h to a2b_endian.h to avoid conflict with external endian.h
- The -s flag now provides max and min information about each type. The information
has been reformatted, and information about wchar_t added.
- The -s flag, which lists the numeric types available and their sizes, is now
autoconfigured to include types such as long double if they are available.
- A new command line flag, -L has been added to both ascii2binary and
binary2ascii. It sets the locale for the LC_NUMERIC facet to its argument.
In the case of ascii2binary, this determines what character will be interpreted
as the thousands separator. In the case of binary2ascii, this determines the
format of the output, both thousands separation and decimal point. Among other
things, this means that a pipeline of ascii2binary followed by binary2ascii
can be used to convert numeric strings from one locale's format to that of another.
Naturally this is available only on systems that support locales via glibc or an equivalent.
- ascii2binary can now handle delimited numbers (numbers with thousands separators).
- In binary2ascii floating point numbers are no longer zero-padded by default.
- A new flag -Z to binary2ascii disables zero-padding.
- binary2ascii now delimits its output by default.
- The flag -D has been added for suppressing delimitation.
- A few long options that had been omitted have been added to the manual pages.
- Added to binary2ascii the option -l to add a linefeed after every 0x0A where the
size is char, byte, short, or int, that is, the sizes where 0x0A might represent
- Long options are now provided if getopt_long is available.
- Added to binary2ascii the option -d to delimit the output as per the locale (e.g. inserting
commas every three digits).
- In binary2ascii a precision of 0 that was incorrectly treated as an error is now permitted.
In some cases the results for long double conversions will be incorrect
without this patch. (A one-line addition to ascii2binary.c.)
Support for the long double type was added, for those systems that support it.
The exit codes returned by both programs have been redefined to provide a
fine-grained indication of the nature of the error. This makes them
more useful in scripts, which can now distinguish errors arising from
ill-formed or out of range input from invalid command-line arguments and
system errors. The new exit codes are described in the man pages
and are produced by both programs if given the -X command line flag.
This version fixes a number of bugs in binary2ascii.
One bug interfered with the use of the byte offset option.
The others appear to be inoccuous on most architectures.
The makefile has been revised to eliminate problems that arose on some systems
and internationalization has been made optional due to unforseen variation
in its availability. If internationalization is disabled, the programs should
compile and run on any POSIX-compliant system. With internationalization they are
known to run under GNU/Linux but problems may arise on other systems.
The -s option now reports the endianness of the machine along with the sizes of the
types on that machine.
Both programs are now fully internationalized. A French translation is provided.
Added ability to specify base symbolically as well as numerically to ascii2binary.
Added ability to specify base numerically as well as symbolically to binary2ascii.
Added warnings for incompatible options to binary2ascii.
binary2ascii now defaults to prefixing '0x' to hexadecimal output. The -x flag
now turns this off.
Adds binary2ascii to the package and fixes a bug in
ascii2binary that prevented it from handling doubles.
Added support for long and long long integers.