diff options
| author | auric <auric7@protonmail.com> | 2025-09-08 21:27:55 -0500 |
|---|---|---|
| committer | auric <auric7@protonmail.com> | 2025-09-08 21:27:55 -0500 |
| commit | de07b49b3249da05605f8c802b991a8588ab63b3 (patch) | |
| tree | 295d6003f08dfce1d1b779892ce9c0be97d426a3 /archive/st/patch/iso14755.c | |
| parent | 04cfeeb799b4ee6ac990e5d6e1b5302251133d77 (diff) | |
| parent | e61da07522a060da98fa3a56db3d0360469b26cf (diff) | |
Resolved conflict, indulging new file layout
Diffstat (limited to 'archive/st/patch/iso14755.c')
| -rw-r--r-- | archive/st/patch/iso14755.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/archive/st/patch/iso14755.c b/archive/st/patch/iso14755.c new file mode 100644 index 0000000..a2fbd79 --- /dev/null +++ b/archive/st/patch/iso14755.c @@ -0,0 +1,21 @@ +void +iso14755(const Arg *arg) +{ + FILE *p; + char *us, *e, codepoint[9], uc[UTF_SIZ]; + unsigned long utf32; + + if (!(p = popen(ISO14755CMD, "r"))) + return; + + us = fgets(codepoint, sizeof(codepoint), p); + pclose(p); + + if (!us || *us == '\0' || *us == '-' || strlen(us) > 7) + return; + if ((utf32 = strtoul(us, &e, 16)) == ULONG_MAX || + (*e != '\n' && *e != '\0')) + return; + + ttywrite(uc, utf8encode(utf32, uc), 1); +}
\ No newline at end of file |
