summaryrefslogtreecommitdiff
path: root/bin/mw
diff options
context:
space:
mode:
Diffstat (limited to 'bin/mw')
-rwxr-xr-xbin/mw8
1 files changed, 6 insertions, 2 deletions
diff --git a/bin/mw b/bin/mw
index c83274f..9f39cc4 100755
--- a/bin/mw
+++ b/bin/mw
@@ -14,7 +14,7 @@ muttdir="$HOME/.config/mutt" # Main mutt config location
accdir="$muttdir/accounts" # Directory for account settings
maildir="$HOME/.local/share/mail" # Location of mail storage
namere="^[a-z_][a-z0-9_-]*$" # Regex to ensure viable username
-emailre=".\+@.\+\\..\+" # Regex to confirm valid email address
+emailre=".+@.+\..+" # Regex to confirm valid email address
muttshare="$prefix/share/mutt-wizard"
mbsyncrc="$HOME/.mbsyncrc"
mwconfig="$muttshare/mutt-wizard.muttrc"
@@ -127,7 +127,7 @@ askinfo() { \
printf "Insert the \033[31memail address\033[0m that you want to autoconfigure for mutt/mbsync\\n\tEmail: \033[36m"
read -r fulladdr
printf "\033[0m"
- while ! echo "$fulladdr" | grep "$emailre" >/dev/null; do
+ while ! echo "$fulladdr" | grep -E "$emailre" >/dev/null; do
printf "That is not a valid \033[31memail address\033[0m, please retype the desired email.\\n\\nEmail: \033[36m\t"
read -r fulladdr
printf "\033[0m"
@@ -150,6 +150,10 @@ askinfo() { \
printf "\\nSearching for \033[32m%s\033[0m in \033[34m\`domains.csv\`\033[0m..." "$domain"
serverinfo="$(grep "^$search_query" "$muttshare/domains.csv" 2>/dev/null)"
if [ -z "$serverinfo" ]; then
+ search_query=$(echo "$search_query" | sed "s/\.[^\.]*$/\.\\\*/")
+ serverinfo="$(grep "^$search_query" "$muttshare/domains.csv" 2>/dev/null)"
+ fi
+ if [ -z "$serverinfo" ]; then
printf "Your email domain is not in mutt-wizard's database yet.\\nmutt-wizard will still autoconfigure everything, but you will have to manually type in your service's IMAP and SMTP server information.\\nYou can usually quickly find this by internet searching for it.\\n"
printf "Insert the IMAP server for your email provider (excluding the port number)\\n\033[36m\t"
read -r imap