diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2010-03-22 19:46:53 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2010-03-22 19:46:53 +0000 |
commit | b16923b096b7678bbaa3cc28b216049d12563528 (patch) | |
tree | e62c1073528d0ace6717fe47c6b7643f6921dbd6 /Src/Zle/zle.h | |
parent | 08dec290d4d6558f95df9e22daf3a9940547442a (diff) | |
download | zsh-b16923b096b7678bbaa3cc28b216049d12563528.tar.gz zsh-b16923b096b7678bbaa3cc28b216049d12563528.tar.xz zsh-b16923b096b7678bbaa3cc28b216049d12563528.zip |
27812: display invalid bytes in multibyte characters specially
Diffstat (limited to 'Src/Zle/zle.h')
-rw-r--r-- | Src/Zle/zle.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Src/Zle/zle.h b/Src/Zle/zle.h index 577a4442f..32f3e59f6 100644 --- a/Src/Zle/zle.h +++ b/Src/Zle/zle.h @@ -419,6 +419,20 @@ typedef struct { typedef REFRESH_ELEMENT *REFRESH_STRING; +#if defined(MULTIBYTE_SUPPORT) && defined(__STDC_ISO_10646__) +#define ZSH_INVALID_WCHAR_BASE (0xe000U) +#define ZSH_INVALID_WCHAR_TEST(x) \ + ((unsigned)(x) >= ZSH_INVALID_WCHAR_BASE && \ + (unsigned)(x) <= (ZSH_INVALID_WCHAR_BASE + 255u)) +#define ZSH_INVALID_WCHAR_TO_CHAR(x) \ + ((char)((unsigned)(x) - ZSH_INVALID_WCHAR_BASE)) +#define ZSH_INVALID_WCHAR_TO_INT(x) \ + ((int)((unsigned)(x) - ZSH_INVALID_WCHAR_BASE)) +#define ZSH_CHAR_TO_INVALID_WCHAR(x) \ + ((wchar_t)(STOUC(x) + ZSH_INVALID_WCHAR_BASE)) +#endif + + #ifdef DEBUG #define METACHECK() \ DPUTS(zlemetaline == NULL, "line not metafied") |