fold: unicode support. Based on a patch by Tomas Heinrich <heinrich.tomas@gmail.com>
General Unicode support is tweaked to expose unicode_status. function old new delta init_unicode - 77 +77 write2stdout - 19 +19 adjust_column 68 71 +3 unicode_status - 1 +1 unicode_is_enabled 1 - -1 grep_main 780 773 -7 fold_main 619 552 -67 check_unicode_in_env 77 - -77 ------------------------------------------------------------------------------ (add/remove: 3/2 grow/shrink: 1/2 up/down: 100/-152) Total: -52 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
d2b1ba6fde
commit
28055028a7
11 changed files with 185 additions and 107 deletions
|
@ -5,10 +5,17 @@
|
|||
#ifndef UNICODE_H
|
||||
#define UNICODE_H 1
|
||||
|
||||
enum {
|
||||
UNICODE_UNKNOWN = 0,
|
||||
UNICODE_OFF = 1,
|
||||
UNICODE_ON = 2,
|
||||
};
|
||||
|
||||
#if !ENABLE_FEATURE_ASSUME_UNICODE
|
||||
|
||||
# define bb_mbstrlen(string) strlen(string)
|
||||
# define check_unicode_in_env() ((void)0)
|
||||
# define unicode_status UNICODE_OFF
|
||||
# define init_unicode() ((void)0)
|
||||
|
||||
#else
|
||||
|
||||
|
@ -18,16 +25,19 @@ size_t bb_mbstrlen(const char *string) FAST_FUNC;
|
|||
|
||||
# include <wchar.h>
|
||||
# include <wctype.h>
|
||||
# define check_unicode_in_env() ((void)0)
|
||||
extern uint8_t unicode_status;
|
||||
void init_unicode(void) FAST_FUNC;
|
||||
|
||||
# else
|
||||
|
||||
/* Crude "locale support" which knows only C and Unicode locales */
|
||||
|
||||
# if !ENABLE_FEATURE_CHECK_UNICODE_IN_ENV
|
||||
# define check_unicode_in_env() ((void)0)
|
||||
# define unicode_status UNICODE_ON
|
||||
# define init_unicode() ((void)0)
|
||||
# else
|
||||
void check_unicode_in_env(void) FAST_FUNC;
|
||||
extern uint8_t unicode_status;
|
||||
void init_unicode(void) FAST_FUNC;
|
||||
# endif
|
||||
|
||||
# undef MB_CUR_MAX
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue