Explorar el Código

Revert "Ascii: Glob match ascii art"

This reverts commit af97d1a645d4b8a6345a7e49cd204401975e35df.
Dylan Araps hace 8 años
padre
commit
c41babb6f9
Se han modificado 1 ficheros con 22 adiciones y 16 borrados
  1. 22 16
      neofetch

+ 22 - 16
neofetch

@@ -20,7 +20,7 @@ export LANG=C
 export PATH="/usr/sbin:/sbin:${PATH}"
 
 # Set no case match.
-shopt -s nocasematch nocaseglob
+shopt -s nocasematch
 
 # Reset colors and bold.
 reset="\033[0m"
@@ -1922,28 +1922,34 @@ get_ascii() {
         [[ "$ascii" != "distro" && ! -f "$ascii" ]] && \
             err "Ascii: Ascii file not found, using distro ascii."
 
-        # Find ascii art dir.
-        if [[ -d "/usr/share/neofetch/ascii/distro" ]]; then
-            ascii_dir="/usr/share/neofetch/ascii/distro"
+        # Lowercase the distro name so we can match it to a file.
+        if (("$bash_version" <= 3)); then
+            ascii="$(tr '[:upper:]' '[:lower:]' <<< "$ascii_distro")"
+        else
+            ascii="${ascii_distro,,}"
+        fi
+
+        if [[ -f "/usr/share/neofetch/ascii/distro/${ascii/ *}" ]]; then
+            ascii="/usr/share/neofetch/ascii/distro/${ascii/ *}"
 
-        elif [[ -d "/usr/local/share/neofetch/ascii/distro" ]]; then
-            ascii_dir="/usr/local/share/neofetch/ascii/distro"
+        elif [[ -f "/usr/local/share/neofetch/ascii/distro/${ascii/ *}" ]]; then
+            ascii="/usr/local/share/neofetch/ascii/distro/${ascii/ *}"
 
-        elif [[ -d "/data/data/com.termux/files/usr/share/neofetch/ascii/distro" ]]; then
-            ascii_dir="/data/data/com.termux/files/usr/share/neofetch/ascii/distro"
+        elif [[ -f "/data/data/com.termux/files/usr/share/neofetch/ascii/distro/${ascii/ *}" ]]; then
+            ascii="/data/data/com.termux/files/usr/share/neofetch/ascii/distro/${ascii/ *}"
 
         else
             get_script_dir 2>/dev/null
-            ascii_dir="${script_dir}/ascii/distro"
-        fi
 
-        # Remove 'linux' from 'linux mint'.
-        [[ "$ascii_distro" =~ ^linux ]] && ascii_distro="${ascii_distro/linux }"
+            # If the ascii file doesn't exist fallback to text mode.
+            if [[ -f "$script_dir/ascii/distro/${ascii/ *}" ]]; then
+                ascii="$script_dir/ascii/distro/${ascii/ *}"
 
-        # ascii_dir/first_letter (example: 'ascii_dir/m'*)
-        for art in "${ascii_dir}/${ascii_distro:0:1}"*; do
-            [[ "$ascii_distro" =~ ${art/*\/} ]] && { ascii="$art"; break; }
-        done
+            else
+                to_off "Ascii: Ascii file not found, falling back to text mode."
+                return
+            fi
+        fi
     fi
 
     # Set locale to get correct padding.