tSimplify tdeftrans - st - [fork] customized build of st, the simple terminal | |
git clone git://src.adamsgaard.dk/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 93661042a2a0cf6f3655360f5c52215c684a4211 | |
parent 18a05fdf4326ac1c7165de8cad0895b5c44fac83 | |
Author: Roberto E. Vargas Caballero <[email protected]> | |
Date: Sat, 7 Jun 2014 13:23:45 +0200 | |
Simplify tdeftrans | |
Diffstat: | |
M st.c | 15 +++++---------- | |
1 file changed, 5 insertions(+), 10 deletions(-) | |
--- | |
diff --git a/st.c b/st.c | |
t@@ -2315,19 +2315,14 @@ techo(char *buf, int len) { | |
void | |
tdeftran(char ascii) { | |
- char c, (*bp)[2]; | |
- static char tbl[][2] = { | |
- {'0', CS_GRAPHIC0}, {'B', CS_USA}, | |
- {0, 0} | |
- }; | |
- | |
- for (bp = &tbl[0]; (c = (*bp)[0]) && c != ascii; ++bp) | |
- /* nothing */; | |
+ static char cs[] = "0B"; | |
+ static int vcs[] = {CS_GRAPHIC0, CS_USA}; | |
+ char *p; | |
- if (c == 0) | |
+ if((p = strchr(cs, ascii)) == NULL) | |
fprintf(stderr, "esc unhandled charset: ESC ( %c\n", ascii); | |
else | |
- term.trantbl[term.icharset] = (*bp)[1]; | |
+ term.trantbl[term.icharset] = vcs[p - cs]; | |
} | |
void |