#!/bin/sh # cl-tty demo launcher # Sets raw terminal mode before starting SBCL, restores on exit. # Raw mode is needed so individual keystrokes are captured instead # of being line-buffered and echoed by the terminal driver. SAVED=$(stty -g 2>/dev/null) if [ -z "$SAVED" ]; then echo "ERROR: Not running in a real terminal." >&2 exit 1 fi cleanup() { stty "$SAVED" 2>/dev/null; } trap cleanup EXIT INT TERM stty raw -echo -isig -icanon min 1 time 0 2>/dev/null sbcl --script "$(dirname "$0")/demo.lisp"