summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2020-04-17 18:55:19 -0700
committerKaz Kylheku <kaz@kylheku.com>2020-04-17 18:55:19 -0700
commit2e0ef76738c3d757c6311d27f69716b156a6bd9e (patch)
tree54f3137827c9302cf3175c58b62f22a6d2924054
parent5191dba44c384fcb5a87f5fec8262b0d0bc6d369 (diff)
downloadtxr-2e0ef76738c3d757c6311d27f69716b156a6bd9e.tar.gz
txr-2e0ef76738c3d757c6311d27f69716b156a6bd9e.tar.bz2
txr-2e0ef76738c3d757c6311d27f69716b156a6bd9e.zip
listener: completion for Unicode identifiers.
* parser.c (provide_completions): Recognize U+0080 and higer characters as token constituents, allowing completion to work for symbols which use these characters.
-rw-r--r--parser.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/parser.c b/parser.c
index ad892e91..b1dfc693 100644
--- a/parser.c
+++ b/parser.c
@@ -995,7 +995,8 @@ static void provide_completions(const wchar_t *data,
if (!ptr)
goto out;
- while ((iswalnum(convert(wint_t, *ptr)) || wcschr(gly, *ptr)) &&
+ while ((iswalnum(convert(wint_t, *ptr)) || wcschr(gly, *ptr) ||
+ *ptr >= 0x80) &&
(sym = ptr) && ptr > data)
ptr--;
@@ -1010,7 +1011,8 @@ static void provide_completions(const wchar_t *data,
} else {
ptr--;
- while ((iswalnum(convert(wint_t, *ptr)) || wcschr(gly, *ptr)) &&
+ while ((iswalnum(convert(wint_t, *ptr)) || wcschr(gly, *ptr) ||
+ *ptr >= 0x80) &&
(pkg = ptr) && ptr > data)
ptr--;