A small CLI tool that takes piped output and displays it in a fixed scrolling window, showing only the last N lines in-place instead of flooding your terminal.
some-command | scrollti -n 10gcc -Wall -o scrollti scrollti.csudo mv scrollti /usr/local/bin/scrollti| Flag | Default | Description |
|---|---|---|
-n, --lines |
10 | Number of lines to show in the window |
-highlight <regex> |
— | Highlight matching text using a regex |
-hcolor <color> |
green | Highlight color (green, red, yellow) |
make | scrollti -n 15make | scrollti -n 15 -highlight "error"make | scrollti -n 15 -highlight "warning|error" -hcolor yellowfor i in $(seq 1 100); do
echo "STEP $i processing..."
sleep 0.02
done | scrollti -n 10 -highlight "STEP [0-9]+" -hcolor green- Designed for streaming logs and command output
- Works best with line-buffered input
- Output from parallel processes (e.g. Docker/Podman builds) may appear interleaved
- Keeps memory bounded by a fixed internal limit
MIT