i18n: New function uc_name().
authorBen Pfaff <blp@cs.stanford.edu>
Sun, 12 Dec 2010 04:58:32 +0000 (20:58 -0800)
committerBen Pfaff <blp@cs.stanford.edu>
Sun, 20 Mar 2011 16:41:55 +0000 (09:41 -0700)
src/libpspp/i18n.c
src/libpspp/i18n.h

index cb155723b3e8bc9867c848bc12a9ab8c85fb42c3..13a46a53c46cc86a19ac80228b4ebd14c035d7e5 100644 (file)
@@ -377,3 +377,12 @@ get_system_decimal (void)
   return radix_char;
 }
 
+const char *
+uc_name (ucs4_t uc, char buffer[16])
+{
+  if (uc >= 0x20 && uc < 0x7f)
+    snprintf (buffer, 16, "`%c'", uc);
+  else
+    snprintf (buffer, 16, "U+%04X", uc);
+  return buffer;
+}
index e016eab4a557437f343acb6a8fae5dccfab275f8..2f55a6903d3848617ded2744ee1f5426c22d9805 100644 (file)
@@ -18,6 +18,7 @@
 #define I18N_H
 
 #include <stdbool.h>
+#include <unistr.h>
 
 void  i18n_done (void);
 void  i18n_init (void);
@@ -49,5 +50,6 @@ void set_default_encoding (const char *enc);
 
 bool set_encoding_from_locale (const char *loc);
 
+const char *uc_name (ucs4_t uc, char buffer[16]);
 
 #endif /* i18n.h */