zefie

ansihelper.sh

Apr 16th, 2019
440
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.28 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # examples:
  4. # echo "$(str_color cyan "This") is a $(str_color red "$(str_underline "test")")!"
  5. # bold is str_mod 1 21 but the 21 (reset) doesn't work in my environment
  6. # blink is str_mod 5 25
  7.  
  8. # style convenience handlers
  9. function str_mod() { echo -en "\e[${1}m${3}\e[${2}m"; }
  10. function str_underline() { str_mod 4 24 "${1}"; }
  11. function str_invert() { str_mod 7 27 "${1}"; }
  12. function str_color() {
  13.         case "${1}" in
  14.                "black")
  15.                     str_mod 30 39 "${2}"
  16.                     ;;
  17.                  "red")
  18.                     str_mod 31 39 "${2}"
  19.                     ;;
  20.                "green")
  21.                     str_mod 32 39 "${2}"
  22.                     ;;
  23.               "yellow")
  24.                     str_mod 33 39 "${2}"
  25.                     ;;
  26.                 "blue")
  27.                     str_mod 34 39 "${2}"
  28.                     ;;
  29.              "magenta")
  30.                     str_mod 35 39 "${2}"
  31.                     ;;
  32.                 "cyan")
  33.                     str_mod 36 39 "${2}"
  34.                     ;;
  35.                "lgrey")
  36.                     str_mod 37 39 "${2}"
  37.                     ;;
  38.                "dgrey")
  39.                     str_mod 90 39 "${2}"
  40.                     ;;
  41.                 "lred")
  42.                     str_mod 31 39 "${2}"
  43.                     ;;
  44.               "lgreen")
  45.                     str_mod 32 39 "${2}"
  46.                     ;;
  47.              "lyellow")
  48.                     str_mod 33 39 "${2}"
  49.                     ;;
  50.                "lblue")
  51.                     str_mod 34 39 "${2}"
  52.                     ;;
  53.             "lmagenta")
  54.                     str_mod 35 39 "${2}"
  55.                     ;;
  56.                "lcyan")
  57.                     str_mod 36 39 "${2}"
  58.                     ;;
  59.                "white")
  60.                     str_mod 37 39 "${2}"
  61.                     ;;
  62.                      *)
  63.                     echo "${2}"
  64.                     ;;
  65.         esac
  66. }
Add Comment
Please, Sign In to add comment