Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using more lines than the window has with ncurses

I have recently been introduced to ncurses for asynchronous keyboard key listening, and getting on well with it. One issue i'm facing is that you can only have text on the visible screen, no scrollbars. I was wondering if its possible to keep using ncurses as it is so lovely, but have the program still keep the scrollbars rather than getting to the last line and staying there.

like image 556
topherg Avatar asked Dec 22 '22 05:12

topherg


1 Answers

scroll(). You have to set scrollok(win, TRUE) first. Actually if you just want to spew data like a normal terminal you only need to set scrollok() by itself.

#include <ncurses.h>

int main(void)
{
    int i = 0;

    initscr();

    scrollok(stdscr,TRUE);

    while(1)
    {
        printw("%d - lots and lots of lines flowing down the terminal\n", i);
        ++i;
        refresh();
    }

    endwin();
    return 0;
}
like image 198
Duck Avatar answered Dec 24 '22 00:12

Duck