From ffd9d95b6adf5982448e1685a8c79c74b148cb00 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Wed, 18 Jan 2017 17:17:33 +1300 Subject: Color ed(1) prompt if possible --- sh/shrc.d/ed.sh | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/sh/shrc.d/ed.sh b/sh/shrc.d/ed.sh index d7d3fa2f..3e544c74 100644 --- a/sh/shrc.d/ed.sh +++ b/sh/shrc.d/ed.sh @@ -11,8 +11,20 @@ ed() { [ -e "$HOME"/.cache/ed/verbose ] && set -- --verbose "$@" - # Add an asterisk prompt (POSIX feature) - set -- -p\* "$@" + # Add an asterisk prompt (POSIX feature); color it dark green if we can + set -- -p "$( + if [ "$(tput colors || tput Co)" -gt 8 ] ; then + ec=${ED_PROMPT_COLOR:-2} + tput setaf "$ec" || + tput setaf "$ec" 0 0 || + tput AF "$ec" || + tput AF "$ec" 0 0 + printf %s "${ED_PROMPT:-'*'}" + tput sgr0 || tput me + else + printf %s "${ED_PROMPT:-'*'}" + fi 2>/dev/null + )" "$@" # Run in rlwrap(1) if available set -- ed "$@" -- cgit v1.2.3