You want to control the screen layout or highlighting, detect when special keys are pressed, or present full-screen menus, but you don’t want to think about what kind of display device the user has.
Use the Curses module from CPAN, which makes use of your native curses (3) library.
The curses library provides easy access to the
full screen display in an efficient and device-independent fashion.
(By display, we mean any cursor-addressable monitor.) With Curses,
you write high-level code to put data on the logical display,
building it up character by character or string by string. When you
want output to show up, call the
The library generates output consisting only of the changes on the
virtual display since the last call to
This is particularly appreciated on a slow connection.
The example program in Example 15.5, called rep , demonstrates this. Call it with arguments of the program to run, like any of these:
% rep ps aux % rep netstat % rep -2.5 lpq
The rep script will repeatedly call the listed command, printing its output to the screen, updating only what has changed since the previous run. This is most effective when the changes between runs are small. It maintains the current date in reverse video at the bottom-right corner of your screen.
By default, rep waits 10 seconds before rerunning the command. You can change this delay period by calling it an optional number of seconds (which can be a decimal number) ...