ui_ti: Use tiparm instead of tparm - sacc - sacc(omys), simple console gopher client
(HTM) git clone git://bitreich.org/sacc/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/sacc/
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Tags
(DIR) LICENSE
---
(DIR) commit e6daee96e9c73d29f6e51e8400d66a3511d36526
(DIR) parent cef484cbcf0ba83757f853f235a6cc7497448fa2
(HTM) Author: Quentin Rameau <quinq@fifth.space>
Date: Fri, 3 Jan 2025 14:24:02 +0100
ui_ti: Use tiparm instead of tparm
The tparm interface was deprecated,
and has definitely been removed in SUSv5.
It's not entirely clear anymore why tparm
was favored in the first place,
due to bad (incomplete) commit message.
Supposedly that was for bad implementations of curses.
Diffstat:
M ui_ti.c | 108 +++++++++++++++----------------
1 file changed, 52 insertions(+), 56 deletions(-)
---
(DIR) diff --git a/ui_ti.c b/ui_ti.c
@@ -40,10 +40,10 @@ uisetup(void)
if (termset != OK)
/* setupterm call exits on error */
termset = setupterm(NULL, 1, NULL);
- putp(tparm(clear_screen, 0, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(change_scroll_region, 0, lines-2, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(clear_screen));
+ putp(tiparm(save_cursor));
+ putp(tiparm(change_scroll_region, 0, lines-2));
+ putp(tiparm(restore_cursor, 0));
fflush(stdout);
}
@@ -55,8 +55,8 @@ uicleanup(void)
if (termset != OK)
return;
- putp(tparm(change_scroll_region, 0, lines-1, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(clear_screen, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(change_scroll_region, 0, lines-1));
+ putp(tiparm(clear_screen));
fflush(stdout);
}
@@ -68,11 +68,11 @@ uiprompt(char *fmt, ...)
size_t n;
ssize_t r;
- putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(save_cursor));
- putp(tparm(cursor_address, lines-1, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(clr_eol, 0, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(enter_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(cursor_address, lines-1, 0));
+ putp(tiparm(clr_eol));
+ putp(tiparm(enter_standout_mode));
va_start(ap, fmt);
vsnprintf(bufout, sizeof(bufout), fmt, ap);
@@ -80,10 +80,10 @@ uiprompt(char *fmt, ...)
n = mbsprint(bufout, columns);
- putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(clr_eol, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(exit_standout_mode));
+ putp(tiparm(clr_eol));
- putp(tparm(cursor_address, lines-1, n, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(cursor_address, lines-1, n));
tsacc.c_lflag |= (ECHO|ICANON);
tcsetattr(0, TCSANOW, &tsacc);
@@ -94,7 +94,7 @@ uiprompt(char *fmt, ...)
tsacc.c_lflag &= ~(ECHO|ICANON);
tcsetattr(0, TCSANOW, &tsacc);
- putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(restore_cursor));
fflush(stdout);
if (r == -1 || feof(stdin)) {
@@ -155,10 +155,10 @@ uistatus(char *fmt, ...)
va_list ap;
size_t n;
- putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(save_cursor));
- putp(tparm(cursor_address, lines-1, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(enter_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(cursor_address, lines-1, 0));
+ putp(tiparm(enter_standout_mode));
va_start(ap, fmt);
n = vsnprintf(bufout, sizeof(bufout), fmt, ap);
@@ -171,10 +171,10 @@ uistatus(char *fmt, ...)
mbsprint(bufout, columns);
- putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(clr_eol, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(exit_standout_mode));
+ putp(tiparm(clr_eol));
- putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(restore_cursor));
fflush(stdout);
getchar();
@@ -188,10 +188,10 @@ displaystatus(Item *item)
size_t nitems = dir ? dir->nitems : 0;
unsigned long long printoff = dir ? dir->printoff : 0;
- putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(save_cursor));
- putp(tparm(cursor_address, lines-1, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(enter_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(cursor_address, lines-1, 0));
+ putp(tiparm(enter_standout_mode));
fmt = (strcmp(item->port, "70") && strcmp(item->port, "gopher")) ?
"%1$3lld%%| %2$s:%5$s/%3$c%4$s" : "%3lld%%| %s/%c%s";
@@ -202,10 +202,10 @@ displaystatus(Item *item)
mbsprint(bufout, columns);
- putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(clr_eol, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(exit_standout_mode));
+ putp(tiparm(clr_eol));
- putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(restore_cursor));
fflush(stdout);
}
@@ -215,19 +215,19 @@ displayuri(Item *item)
if (item->type == 0 || item->type == 'i')
return;
- putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(save_cursor));
- putp(tparm(cursor_address, lines-1, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(enter_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(cursor_address, lines-1, 0));
+ putp(tiparm(enter_standout_mode));
itemuri(item, bufout, sizeof(bufout));
mbsprint(bufout, columns);
- putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(clr_eol, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(exit_standout_mode));
+ putp(tiparm(clr_eol));
- putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(restore_cursor));
fflush(stdout);
}
@@ -244,13 +244,13 @@ uidisplay(Item *entry)
curentry = entry;
- putp(tparm(clear_screen, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(clear_screen));
displaystatus(entry);
if (!(dir = entry->dat))
return;
- putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(save_cursor));
items = dir->items;
nitems = dir->nitems;
@@ -260,20 +260,18 @@ uidisplay(Item *entry)
for (i = printoff; i < nitems && i < lastln; ++i) {
if (i != printoff)
- putp(tparm(cursor_down, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(cursor_down));
if (i == curln) {
- putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(enter_standout_mode,
- 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(save_cursor));
+ putp(tiparm(enter_standout_mode));
}
printitem(&items[i]);
- putp(tparm(column_address, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(column_address, 0));
if (i == curln)
- putp(tparm(exit_standout_mode,
- 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(exit_standout_mode));
}
- putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(restore_cursor));
fflush(stdout);
}
@@ -299,36 +297,34 @@ movecurline(Item *item, int l)
if (l > 0) {
offline = dir->printoff + lines-1;
if (curline - dir->printoff >= plines / 2 && offline < nitems) {
- putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(save_cursor));
- putp(tparm(cursor_address, plines,
- 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(scroll_forward, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(cursor_address, plines, 0));
+ putp(tiparm(scroll_forward));
printitem(&dir->items[offline]);
- putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(restore_cursor));
dir->printoff += l;
}
} else {
offline = dir->printoff + l;
if (curline - offline <= plines / 2 && offline >= 0) {
- putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(save_cursor));
- putp(tparm(cursor_address, 0, 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(scroll_reverse, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(cursor_address, 0, 0));
+ putp(tiparm(scroll_reverse));
printitem(&dir->items[offline]);
putchar('\n');
- putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(restore_cursor));
dir->printoff += l;
}
}
- putp(tparm(cursor_address, curline - dir->printoff,
- 0, 0, 0, 0, 0, 0, 0, 0));
- putp(tparm(enter_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(cursor_address, curline - dir->printoff, 0));
+ putp(tiparm(enter_standout_mode));
printitem(&dir->items[curline]);
- putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(exit_standout_mode));
displaystatus(item);
fflush(stdout);
}
@@ -572,7 +568,7 @@ uisigwinch(int signal)
if (termset == OK)
del_curterm(cur_term);
termset = setupterm(NULL, 1, NULL);
- putp(tparm(change_scroll_region, 0, lines-2, 0, 0, 0, 0, 0, 0, 0));
+ putp(tiparm(change_scroll_region, 0, lines-2));
if (!curentry || !(dir = curentry->dat))
return;