git.fiddlerwoaroof.com
Browse code

No fanciness on dumb terminals

fiddlerwoaroof authored on 23/11/2017 22:42:20
Showing 1 changed files
... ...
@@ -1,46 +1,56 @@
1 1
 # -*- mode: sh; sh-shell: zsh;-*-
2 2
 #zmodload zsh/zprof
3
-PLUGIN_DIR="${PLUGIN_DIR:-$HOME/.zsh.d}"
4 3
 
5
-local script_depends loaded_depends
6
-typeset -A script_depends
7
-typeset -A loaded_depends
8
-get_depends() {
9
-  awk -F: '$0=="###" || $1 != "#" { exit } $1="depends-on" {print $3}' "$1"
10
-}
4
+if [[ "$TERM" == "dumb" ]]; then
5
+  unsetopt zle
6
+  unsetopt prompt_cr
7
+  unsetopt prompt_subst
8
+  unfunction precmd
9
+  unfunction preexec
10
+  PS1='$ '
11
+else 
12
+  PLUGIN_DIR="${PLUGIN_DIR:-$HOME/.zsh.d}"
11 13
 
12
-build_depends() {
13
-  local -a depends
14
-  depends=(${(@f)$(get_depends "$1")})
15
-  for depend in $depends; do
16
-    script_depends[$1]+="$depend:"
17
-  done
18
-}
14
+  local script_depends loaded_depends
15
+  typeset -A script_depends
16
+  typeset -A loaded_depends
17
+  get_depends() {
18
+    awk -F: '$0=="###" || $1 != "#" { exit } $1="depends-on" {print $3}' "$1"
19
+  }
20
+
21
+  build_depends() {
22
+    local -a depends
23
+    depends=(${(@f)$(get_depends "$1")})
24
+    for depend in $depends; do
25
+      script_depends[$1]+="$depend:"
26
+    done
27
+  }
19 28
 
20
-load_depends() {
21
-  for depend in ${(s<:>)script_depends[$1]}; do
22
-    if [[ -z $loaded_depends[$depend] ]]; then
23
-      local fn="$PLUGIN_DIR/dependencies/$depend.zsh"
24
-      if [[ -f $fn ]]; then
25
-        if [[ -z $script_depends[$fn] ]]; then
26
-          build_depends "$fn"
29
+  load_depends() {
30
+    for depend in ${(s<:>)script_depends[$1]}; do
31
+      if [[ -z $loaded_depends[$depend] ]]; then
32
+        local fn="$PLUGIN_DIR/dependencies/$depend.zsh"
33
+        if [[ -f $fn ]]; then
34
+          if [[ -z $script_depends[$fn] ]]; then
35
+            build_depends "$fn"
36
+          fi
37
+          load_depends "$fn"
38
+          source $fn
39
+        else
40
+          echo "$fn missing for $1"
27 41
         fi
28
-        load_depends "$fn"
29
-        source $fn
42
+        loaded_depends[$depend]=1
30 43
       else
31
-        echo "$fn missing for $1"
32 44
       fi
33
-      loaded_depends[$depend]=1
34
-    else
35
-    fi
36
-  done
37
-}
45
+    done
46
+  }
38 47
 
39
-init_scripts=( $PLUGIN_DIR/*.{,z}sh(N) ) 
48
+  init_scripts=( $PLUGIN_DIR/*.{,z}sh(N) ) 
40 49
 
41
-PATH="<<<:$PATH:>>>"
42
-for x in $init_scripts; do
43
-  build_depends "$x"
44
-  load_depends "$x"
45
-  source "$x"
46
-done
50
+  PATH="<<<:$PATH:>>>"
51
+  for x in $init_scripts; do
52
+    build_depends "$x"
53
+    load_depends "$x"
54
+    source "$x"
55
+  done
56
+fi