ao-mud is a spellbook of well-commented atomic bash scripts that each do one thing. we are building semantic building blocks for an autonomously-evolving digital spellcasting language.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1017 B

#!/bin/sh
# A cantrip to clear the user's current input lines in the terminal, including
# the terminal prompt.
#
# Cast this spell to erase the user's current input lines, leaving the terminal
# ready for a new command.
# todo: modify this to use our cursor file
clear_input_lines() {
# Save the current cursor position
printf '\033[s'
# Move the cursor to the beginning of the line
printf '\033[1G'
# Clear the current line
printf '\033[2K'
# Calculate the number of lines used by the user's input
lines="$(current_input_lines)"
# Clear the remaining lines
i=1
while [ "$i" -lt "$lines" ]; do
# Move the cursor down one line
printf '\033[1B'
# Clear the current line
printf '\033[2K'
# Increment the counter
i=$(( i + 1 ))
done
# Restore the cursor position
printf '\033[u'
}
# Check if the script is being executed or sourced
if [ "$0" = "$BASH_SOURCE" ]; then
# Script is being executed, call the clear_input_lines function
clear_input_lines
fi