diff options
author | Sigrid Solveig Haflínudóttir <ftrvxmtrx@gmail.com> | 2021-11-14 14:27:15 +0000 |
---|---|---|
committer | Sigrid Solveig Haflínudóttir <ftrvxmtrx@gmail.com> | 2021-11-14 14:27:15 +0000 |
commit | 0f50c54b5ec2c8d2ca681021deaedc0cffdf7f1a (patch) | |
tree | 3ef26e2126bc71a294dee3d42490c9eefa63736c /sys/src/cmd/aux/kbdfs | |
parent | 2ab25e3ec07a11f18066e37c2841b6d294091fcb (diff) |
kbdfs: allow X and x to be used not just for hex composition
Diffstat (limited to 'sys/src/cmd/aux/kbdfs')
-rw-r--r-- | sys/src/cmd/aux/kbdfs/kbdfs.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/sys/src/cmd/aux/kbdfs/kbdfs.c b/sys/src/cmd/aux/kbdfs/kbdfs.c index 3d64e1564..c0b87b2bf 100644 --- a/sys/src/cmd/aux/kbdfs/kbdfs.c +++ b/sys/src/cmd/aux/kbdfs/kbdfs.c @@ -787,6 +787,7 @@ Forward: if(r == 'x' || r == 'X'){ i = (r == 'X') ? 4 : 6; + j = i; r = 0; do { if(nextrune(rawchan, &rr)) @@ -797,14 +798,20 @@ Forward: r = (r << 4) | (10 + (rr - 'a')); else if(rr >= 'A' && rr <= 'F') r = (r << 4) | (10 + (rr - 'A')); - else + else{ + if(i == j && rr != ';'){ + r = j == 6 ? 'x' : 'X'; + goto Nothex; + } break; + } } while(--i > 0); if((i == 0 || rr == ';') && r != 0 && r <= Runemax) goto Forward; } else { if(nextrune(rawchan, &rr)) continue; +Nothex: for(i = 0; i<nelem(tab); i++){ if(tab[i].ld[0] != r) continue; |