diff options
author | Jakob Kaivo <jkk@ung.org> | 2022-04-13 19:51:54 -0400 |
---|---|---|
committer | Jakob Kaivo <jkk@ung.org> | 2022-04-13 19:51:54 -0400 |
commit | fa799768c4f6d97c5f60a37829ad1b457b7c0096 (patch) | |
tree | ed28b64735a6a79b10ecf1a87296f36e88745f4e /term/tgetflag.c |
separate from libc
Diffstat (limited to 'term/tgetflag.c')
-rw-r--r-- | term/tgetflag.c | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/term/tgetflag.c b/term/tgetflag.c new file mode 100644 index 0000000..844f142 --- /dev/null +++ b/term/tgetflag.c @@ -0,0 +1,61 @@ +#include <term.h> + +int tgetflag(char id[2]) +{ + const struct { + char tc[3]; + char ti[8]; + } map[] = { + { "bw", "bw" }, + { "am", "am" }, + { "ut", "bce" }, + { "cc", "ccc" }, + { "xs", "xhp" }, + { "YA", "xhpa" }, + { "YF", "cpix" }, + { "YB", "crxm" }, + { "xt", "xt" }, + { "xn", "xenl" }, + { "eo", "eo" }, + { "gn", "gn" }, + { "hc", "hc" }, + { "HC", "chts" }, + { "km", "km" }, + { "YC", "daisy" }, + { "hs", "hs" }, + { "hl", "hls" }, + { "in", "in" }, + { "YG", "lpix" }, + { "da", "da" }, + { "db", "db" }, + { "mi", "mir" }, + { "ms", "msgr" }, + { "nx", "nxon" }, + { "xb", "xsb" }, + { "NP", "npc" }, + { "ND", "ndscr" }, + { "NR", "nrrmc" }, + { "os", "os" }, + { "5i", "mc5i" }, + { "YD", "xvpa" }, + { "YE", "sam" }, + { "es", "eslok" }, + { "hz", "hz" }, + { "ul", "ul" }, + { "xo", "xon" }, + }; + size_t i = 0; + + for (i = 0; i < sizeof(map) / sizeof(map[0]); i++) { + if (map[i].tc[0] == id[0] && map[i].tc[1] == 1) { + return tigetflag(map[i].ti); + } + } + + return -1; +} + +/* +XOPEN(400, 700) +LINK(curses) +*/ |