| 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 |