summaryrefslogtreecommitdiff
path: root/libguile/chars.h
diff options
context:
space:
mode:
authorMichael Gran <spk121@yahoo.com>2009-09-03 07:47:26 -0700
committerMichael Gran <spk121@yahoo.com>2009-09-03 07:47:26 -0700
commit0dcd7e61534c9d1e33de904196cb505daf320a42 (patch)
tree69422df6efe24318f3dc72f8a3d49366eff6a67c /libguile/chars.h
parentaa2cba9c882ba8bd69750b120d2b7ccd7250b562 (diff)
downloadguile-0dcd7e61534c9d1e33de904196cb505daf320a42.tar.gz
Modify read and print of combining characters
Since combining characters, such as accents, modify the appearance of the previous letter, it looks awkward in its character literal form (#\name) since it modified the backslash. This instead prints the combining character on a small circle. * libguile/chars.h (SCM_CODEPOINT_DOTTED_CIRCLE): new #define * libguile/print.c (iprint1): print combining characters on dotted circles * libguile/read.c (scm_read_character): parse the combination of combining characters and dotted circles
Diffstat (limited to 'libguile/chars.h')
-rw-r--r--libguile/chars.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/libguile/chars.h b/libguile/chars.h
index 69ef8d005..04eb9f09f 100644
--- a/libguile/chars.h
+++ b/libguile/chars.h
@@ -47,9 +47,10 @@ typedef scm_t_int32 scm_t_wchar;
? SCM_MAKE_ITAG8 ((scm_t_bits) (unsigned char) (x), scm_tc8_char) \
: SCM_MAKE_ITAG8 ((scm_t_bits) (x), scm_tc8_char))
-#define SCM_CODEPOINT_MAX (0x10ffff)
+#define SCM_CODEPOINT_DOTTED_CIRCLE (0x25cc)
#define SCM_CODEPOINT_SURROGATE_START (0xd800)
#define SCM_CODEPOINT_SURROGATE_END (0xdfff)
+#define SCM_CODEPOINT_MAX (0x10ffff)
#define SCM_IS_UNICODE_CHAR(c) \
(((scm_t_wchar) (c) >= 0 \
&& (scm_t_wchar) (c) < SCM_CODEPOINT_SURROGATE_START) \