icleaner code - iomenu - interactive terminal-based selection menu Err bitreich.org 70
hgit clone git://bitreich.org/iomenu git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/iomenu URL:git://bitreich.org/iomenu git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/iomenu bitreich.org 70
1Log /scm/iomenu/log.gph bitreich.org 70
1Files /scm/iomenu/files.gph bitreich.org 70
1Refs /scm/iomenu/refs.gph bitreich.org 70
1Tags /scm/iomenu/tag bitreich.org 70
1README /scm/iomenu/file/README.gph bitreich.org 70
1LICENSE /scm/iomenu/file/LICENSE.gph bitreich.org 70
i--- Err bitreich.org 70
1commit 277ca72956b6deb921cbe96f981214602624c6ac /scm/iomenu/commit/277ca72956b6deb921cbe96f981214602624c6ac.gph bitreich.org 70
1parent cf83d371853dced03fb2db5af7f2b8e04e48f469 /scm/iomenu/commit/cf83d371853dced03fb2db5af7f2b8e04e48f469.gph bitreich.org 70
hAuthor: Josuah Demangeon <mail@josuah.net> URL:mailto:mail@josuah.net bitreich.org 70
iDate: Tue, 31 Oct 2017 15:59:42 +0100 Err bitreich.org 70
i Err bitreich.org 70
icleaner code Err bitreich.org 70
i Err bitreich.org 70
iDiffstat: Err bitreich.org 70
i M buffer.c | 28 ++++++++++++++++------------ Err bitreich.org 70
i M main.c | 2 +- Err bitreich.org 70
i Err bitreich.org 70
i2 files changed, 17 insertions(+), 13 deletions(-) Err bitreich.org 70
i--- Err bitreich.org 70
1diff --git a/buffer.c b/buffer.c /scm/iomenu/file/buffer.c.gph bitreich.org 70
i@@ -79,29 +79,33 @@ read_stdin(void) Err bitreich.org 70
i void Err bitreich.org 70
i filter(void) Err bitreich.org 70
i { Err bitreich.org 70
i- int tokc = 0; Err bitreich.org 70
i- int n = 0; Err bitreich.org 70
i- int i; Err bitreich.org 70
i- char **tokv = NULL; Err bitreich.org 70
i- char *s; Err bitreich.org 70
i- char buffer[sizeof (input)]; Err bitreich.org 70
i extern char **linev; Err bitreich.org 70
i- extern current; Err bitreich.org 70
i+ extern int current; Err bitreich.org 70
i+ int tokc; Err bitreich.org 70
i+ int n; Err bitreich.org 70
i+ char **tokv = NULL; Err bitreich.org 70
i+ char *s; Err bitreich.org 70
i+ char buf[sizeof (input)]; Err bitreich.org 70
i Err bitreich.org 70
i current = offset = next = 0; Err bitreich.org 70
i- strcpy(buffer, input); Err bitreich.org 70
i- for (s = strtok(buffer, " "); s; s = strtok(NULL, " "), tokc++) { Err bitreich.org 70
i+ strcpy(buf, input); Err bitreich.org 70
i+ tokc = 0; Err bitreich.org 70
i+ n = 0; Err bitreich.org 70
i+ s = strtok(buf, " "); Err bitreich.org 70
i+ while (s) { Err bitreich.org 70
i if (tokc >= n) { Err bitreich.org 70
i tokv = realloc(tokv, ++n * sizeof (*tokv)); Err bitreich.org 70
i if (tokv == NULL) Err bitreich.org 70
i die("realloc"); Err bitreich.org 70
i } Err bitreich.org 70
i tokv[tokc] = s; Err bitreich.org 70
i+ s = strtok(NULL, " "); Err bitreich.org 70
i+ tokc++; Err bitreich.org 70
i } Err bitreich.org 70
i matchc = 0; Err bitreich.org 70
i- for (i = 0; i < linec; i++) Err bitreich.org 70
i- if (match_line(linev[i], tokv, tokc)) Err bitreich.org 70
i- matchv[matchc++] = linev[i]; Err bitreich.org 70
i+ for (n = 0; n < linec; n++) Err bitreich.org 70
i+ if (match_line(linev[n], tokv, tokc)) Err bitreich.org 70
i+ matchv[matchc++] = linev[n]; Err bitreich.org 70
i free(tokv); Err bitreich.org 70
i if (opt['#'] && matchv[current][0] == '#') Err bitreich.org 70
i move(+1); Err bitreich.org 70
1diff --git a/main.c b/main.c /scm/iomenu/file/main.c.gph bitreich.org 70
i@@ -47,7 +47,7 @@ set_terminal(void) Err bitreich.org 70
i { Err bitreich.org 70
i struct termios new; Err bitreich.org 70
i Err bitreich.org 70
i- fputs("\x1b[s\x1b[?1049h", stderr); Err bitreich.org 70
i+ fputs("\x1b[s\x1b[?1049h\x1b[H", stderr); Err bitreich.org 70
i if (tcgetattr(ttyfd, &termios) < 0 || tcgetattr(ttyfd, &new) < 0) { Err bitreich.org 70
i perror("tcgetattr"); Err bitreich.org 70
i exit(EXIT_FAILURE); Err bitreich.org 70
.
Response:
text/plain