diff --git a/install/languagetool-install.sh b/install/languagetool-install.sh index 2797151fc..c3285a716 100644 --- a/install/languagetool-install.sh +++ b/install/languagetool-install.sh @@ -27,8 +27,32 @@ mv /opt/LanguageTool-*/ /opt/LanguageTool/ download_file "https://dl.fbaipublicfiles.com/fasttext/supervised-models/lid.176.bin" /opt/lid.176.bin msg_ok "" -read -r -p "${TAB3}Enter language code (en, de, es, fr, nl) to download ngrams or press ENTER to skip: " lang_code ngram_dir="" +lang_code="" +max_attempts=3 +attempt=0 + +while [[ $attempt -lt $max_attempts ]]; do + read -r -p "${TAB3}Enter language code (en, de, es, fr, nl) to download ngrams or press ENTER to skip: " lang_code + + if [[ -z "$lang_code" ]]; then + break + fi + + if [[ "$lang_code" =~ [[:space:]] ]]; then + ((attempt++)) + remaining=$((max_attempts - attempt)) + if [[ $remaining -gt 0 ]]; then + msg_error "Please enter only ONE language code. You have $remaining attempt(s) remaining." + else + msg_error "Maximum attempts reached. Continuing without ngrams." + lang_code="" + fi + continue + fi + break +done + if [[ -n "$lang_code" ]]; then if [[ "$lang_code" =~ ^(en|de|es|fr|nl)$ ]]; then msg_info "Searching for $lang_code ngrams..."