iFree the token! - 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 196463eca4a85a841ad1cce147e44536bc2887cc /scm/iomenu/commit/196463eca4a85a841ad1cce147e44536bc2887cc.gph bitreich.org 70 1parent 5560f1aa53d966db28605a88f844b786011145bf /scm/iomenu/commit/5560f1aa53d966db28605a88f844b786011145bf.gph bitreich.org 70 hAuthor: Josuah Demangeonā  ā µ URL:mailto:mail@josuah.net bitreich.org 70 iDate: Sat, 18 Mar 2017 15:02:46 +0100 Err bitreich.org 70 i Err bitreich.org 70 iFree the token! Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M Makefile | 2 +- Err bitreich.org 70 i M iomenu.c | 10 +++++++--- Err bitreich.org 70 i Err bitreich.org 70 i2 files changed, 8 insertions(+), 4 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/Makefile b/Makefile /scm/iomenu/file/Makefile.gph bitreich.org 70 i@@ -8,5 +8,5 @@ clean: Err bitreich.org 70 i Err bitreich.org 70 i install: iomenu Err bitreich.org 70 i mkdir -p $(PREFIX)/bin $(PREFIX)/man/man1 Err bitreich.org 70 i- cp *.1 $(PREFIX)/man/man1/ Err bitreich.org 70 i+ # cp *.1 $(PREFIX)/man/man1/ Err bitreich.org 70 i cp iomenu $(PREFIX)/bin/ Err bitreich.org 70 1diff --git a/iomenu.c b/iomenu.c /scm/iomenu/file/iomenu.c.gph bitreich.org 70 i@@ -138,6 +138,8 @@ filter_lines(void) Err bitreich.org 70 i Err bitreich.org 70 i for (size_t i = 0, matching = 0; i < linec; i++) Err bitreich.org 70 i matching += linev[i]->match = match_line(linev[i], tokv, tokc); Err bitreich.org 70 i+ Err bitreich.org 70 i+ free(tokv); Err bitreich.org 70 i } Err bitreich.org 70 i Err bitreich.org 70 i Err bitreich.org 70 i@@ -192,6 +194,8 @@ print_lines(size_t count, size_t cols) Err bitreich.org 70 i { Err bitreich.org 70 i size_t printed = 0; Err bitreich.org 70 i Err bitreich.org 70 i+ offset = current / count * count; Err bitreich.org 70 i+ Err bitreich.org 70 i for (size_t i = offset; printed < count && i < linec; i++) { Err bitreich.org 70 i if (linev[i]->match) { Err bitreich.org 70 i fputc('\n', stderr); Err bitreich.org 70 i@@ -208,7 +212,7 @@ print_lines(size_t count, size_t cols) Err bitreich.org 70 i void Err bitreich.org 70 i print_columns(size_t cols) Err bitreich.org 70 i { Err bitreich.org 70 i- size_t col = 20; Err bitreich.org 70 i+ size_t col = 30; Err bitreich.org 70 i Err bitreich.org 70 i for (size_t i = offset; col < cols && i < linec; i++) { Err bitreich.org 70 i if (linev[i]->match) Err bitreich.org 70 i@@ -220,7 +224,7 @@ print_columns(size_t cols) Err bitreich.org 70 i void Err bitreich.org 70 i print_prompt(size_t cols) Err bitreich.org 70 i { Err bitreich.org 70 i- size_t limit = opt_lines ? cols : 20; Err bitreich.org 70 i+ size_t limit = opt_lines ? cols : 30; Err bitreich.org 70 i Err bitreich.org 70 i fputc('\r', stderr); Err bitreich.org 70 i for (size_t i = 0; i < limit; i++) Err bitreich.org 70 i@@ -247,7 +251,7 @@ print_screen(int tty_fd) Err bitreich.org 70 i print_lines(count, w.ws_col); Err bitreich.org 70 i fprintf(stderr, "\033[%ldA", count); Err bitreich.org 70 i } else { Err bitreich.org 70 i- fputs("\033[20C", stderr); Err bitreich.org 70 i+ fputs("\033[30C", stderr); Err bitreich.org 70 i print_columns(w.ws_col); Err bitreich.org 70 i } Err bitreich.org 70 i Err bitreich.org 70 .