diff options
| -rwxr-xr-x | utils/installer/install.sh | 39 | 
1 files changed, 28 insertions, 11 deletions
| diff --git a/utils/installer/install.sh b/utils/installer/install.sh index b44880bd..0d56fe30 100755 --- a/utils/installer/install.sh +++ b/utils/installer/install.sh @@ -85,6 +85,25 @@ function msg() {    printf "%s\n" "$text"  } +function confirm() { +  local question="$1" +  while true; do +    msg "$question" +    read -p "[y]es or [n]o (default: no) : " -r answer +    case "$answer" in +      y | Y | yes | YES | Yes) +        return 0 +        ;; +      n | N | no | NO | No | *[[:blank:]]* | "") +        return 1 +        ;; +      *) +        msg "Please answer [y]es or [n]o." +        ;; +    esac +  done +} +  function main() {    parse_arguments "$@" @@ -97,17 +116,15 @@ function main() {    if [ "$ARGS_INSTALL_DEPENDENCIES" -eq 1 ]; then      if [ "$INTERACTIVE_MODE" -eq 1 ]; then -      msg "Would you like to install LunarVim's NodeJS dependencies?" -      read -p "[y]es or [n]o (default: no) : " -r answer -      [ "$answer" != "${answer#[Yy]}" ] && install_nodejs_deps - -      msg "Would you like to install LunarVim's Python dependencies?" -      read -p "[y]es or [n]o (default: no) : " -r answer -      [ "$answer" != "${answer#[Yy]}" ] && install_python_deps - -      msg "Would you like to install LunarVim's Rust dependencies?" -      read -p "[y]es or [n]o (default: no) : " -r answer -      [ "$answer" != "${answer#[Yy]}" ] && install_rust_deps +      if confirm "Would you like to install LunarVim's NodeJS dependencies?"; then +        install_nodejs_deps +      fi +      if confirm "Would you like to install LunarVim's Python dependencies?"; then +        install_python_deps +      fi +      if confirm "Would you like to install LunarVim's Rust dependencies?"; then +        install_rust_deps +      fi      else        install_nodejs_deps        install_python_deps | 
