libbb/lineedit: add support for preserving "broken" (non-unicode) chars

Signed-off-by: Tomas Heinrich <heinrich.tomas@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/libbb/unicode.c b/libbb/unicode.c
index 83e70b4..d1c6167 100644
--- a/libbb/unicode.c
+++ b/libbb/unicode.c
@@ -423,7 +423,6 @@
 # if LAST_SUPPORTED_WCHAR >= 0x300
 	/* sorted list of non-overlapping intervals of non-spacing characters */
 	/* generated by "uniset +cat=Me +cat=Mn +cat=Cf -00AD +1160-11FF +200B c" */
-	static const struct interval combining[] = {
 #  define BIG_(a,b) { a, b },
 #  define PAIR(a,b)
 #  define ARRAY /* PAIR if < 0x4000 and no more than 4 chars big */ \
@@ -557,10 +556,9 @@
 		BIG_(0xFE20, 0xFE23) \
 		BIG_(0xFEFF, 0xFEFF) \
 		BIG_(0xFFF9, 0xFFFB)
-		ARRAY
+	static const struct interval combining[] = { ARRAY };
 #  undef BIG_
 #  undef PAIR
-	};
 #  define BIG_(a,b)
 #  define PAIR(a,b) (a << 2) | (b-a),
 	static const uint16_t combining1[] = { ARRAY };
@@ -668,7 +666,6 @@
 	 * http://www.unicode.org/Public/5.2.0/ucd/extracted/DerivedBidiClass.txt
 	 * Bidi_Class=Left_To_Right | Bidi_Class=Arabic_Letter
 	 */
-	static const struct interval rtl_b[] = {
 #  define BIG_(a,b) { a, b },
 #  define PAIR(a,b)
 #  define ARRAY \
@@ -723,10 +720,9 @@
 		{0x10E7F, 0x10FFF},
 		{0x1E800, 0x1EFFF}
 		*/
-		ARRAY
+	static const struct interval rtl_b[] = { ARRAY };
 #  undef BIG_
 #  undef PAIR
-	};
 #  define BIG_(a,b)
 #  define PAIR(a,b) (a << 2) | (b-a),
 	static const uint16_t rtl_p[] = { ARRAY };
@@ -755,7 +751,6 @@
 	 * White_Space, Other_Neutral, European_Number, European_Separator,
 	 * European_Terminator, Arabic_Number, Common_Separator
 	 */
-	static const struct interval neutral_b[] = {
 #  define BIG_(a,b) { a, b },
 #  define PAIR(a,b)
 #  define ARRAY \
@@ -929,10 +924,9 @@
 		{0x1F030, 0x1F093},
 		{0x1F100, 0x1F10A}
 		*/
-		ARRAY
+	static const struct interval neutral_b[] = { ARRAY };
 #  undef BIG_
 #  undef PAIR
-	};
 #  define BIG_(a,b)
 #  define PAIR(a,b) (a << 2) | (b-a),
 	static const uint16_t neutral_p[] = { ARRAY };