to terminal charset.
src/strutil.h: added conv_gerror_message member to str_class structure.
Added str_conv_gerror_message function declaration.
src/strutil.c (str_conv_gerror_message): new function to convert GError
message to terminal charset.
src/strutil8bit.c (str_8bit_conv_gerror_message): new function to convert GError
message to terminal charset for 8-bit locales.
src/strutilascii.c (str_ascii_conv_gerror_message): new function to convert GError
message to terminal charset for 7-bit locales.
src/strutilutf8.c (str_utf8_conv_gerror_message): new function to convert GError
message to terminal charset for utf-8 locales.
Changed type of related function arguments.
src/strutil.c (str_fit_to_term): changed type of 3rd argument
from int to align_crt_t.
src/strutil8bit.c (str_8bit_fit_to_term): likewise.
src/strutilascii.c (str_ascii_fit_to_term): likewise.
src/strutilutf8.c (str_utf8_fit_to_term): likewise.
src/screen.c: changed type of alignment variables and structure fields
Modified descriptions.
src/strutil.c (_str_convert): return value of estr_t type instead of int.
Check coder first. Removed redundant code.
(str_convert): simplified. Changed returned type to estr_t.
(str_nconvet): likewise.
(str_vfs_convert_to): likewise.
(str_vfs_convert_from): likewise. Used symbolic names instead of hardcoded values.
(str_translate_char): likewise.
src/strutil8bit.c (str_8bit_vfs_convert_to): likewise. Made function static.
src/strutilascii.c (str_ascii_vfs_convert_to): likewise.
src/strutilutf8.c: (str_utf8_vfs_convert_to): Used symbolic names
instead of hardcoded values.
src/charsets.c (convert_from_utf_to_current): likewise.
(convert_from_utf_to_current_c): likewise.
(convert_from_8bit_to_utf_c): likewise.
(convert_from_8bit_to_utf_c2): likewise.
src/view.c (view_get_char): likewise.
vfs/vfs.c (_vfs_translate_path): Changed returned type to estr_t.
Used symbolic names instead of hardcoded values.
(vfs_translate_path): likewise.
add functions for working with strings
some functions are implemented directlu in strutil.c, others have ascii, 8bit
or utf-8 variant. (8bit means singlebyte encodings, where all characters have
width one). Mc autodetects terminal encoding at start and chooses right
variant. If does not know terminal encoding, chooses ascii variant.
contains functions:
1. for translation strings and growing strings
2. for working with characters (next char, prev char, length in
characters, isspace, isalnum, ...)
3. prepeare for display, replace invalid characters with questionmark,
unprintable with dot, left / right / center align
4. comparing strings
in future all string function from util should be moved into strutil, some
function from util have new variant in strutil.