home · contact · privacy
Fix for 'tput: No value for $TERM and no -T specified' on ssh.
authorChristian Heller <c.heller@plomlompom.de>
Tue, 26 Apr 2016 21:04:51 +0000 (23:04 +0200)
committerChristian Heller <c.heller@plomlompom.de>
Tue, 26 Apr 2016 21:04:51 +0000 (23:04 +0200)
dotfiles/minimal/shinit

index c80a6bcc148f375d4802382e8be61cfe1be07c78..25d13961f8a159b9b7fed3cbb9c1e2b4b6fae4dd 100644 (file)
@@ -1,32 +1,37 @@
 # Settings for interactive shells.
 
-# Fancy colors for ls.
-alias ls="ls --color=auto"
+# Ensure shell truly is interactive to avoid confusing non-interactive shells.
+if [[ $- == *i* ]]; then
 
-# Use vim as default editor for anything.
-export VISUAL=vim
-export EDITOR=$VISUAL
+    # Fancy colors for ls.
+    alias ls="ls --color=auto"
 
-# Colored prompt with username, hostname, date/time, directory.
-colornumber=7 # Default to white if no color set via colornumber dotfile.
-colornumber_file=~/.shinit_color
-if [ -f $colornumber_file ]; then
-    colornumber=`cat $colornumber_file` 
-fi
-tput_color="$(tput setaf $colornumber)$(tput bold)"
-tput_reset="$(tput sgr0)"
-# Bash confuses the line length when not told to not count escape sequences.
-if [ ! "$BASH" = "" ]; then
-    tput_color="\[$tput_color\]"
-    tput_reset="\[$tput_reset\]"
-fi
-PS1="${tput_color}["\$\(date\ +%Y-%m-%d/%H:%M:%S/%Z\)" $USER@$(hostname):"\$\(pwd\)"]$ $tput_reset"
-PS2="${tput_color}> $tput_reset"
-PS3="${tput_color}select: $tput_reset"
-PS4="${tput_color}+ $tput_reset"
+    # Use vim as default editor for anything.
+    export VISUAL=vim
+    export EDITOR=$VISUAL
+
+    # Colored prompt with username, hostname, date/time, directory.
+    colornumber=7 # Default to white if no color set via colornumber dotfile.
+    colornumber_file=~/.shinit_color
+    if [ -f $colornumber_file ]; then
+        colornumber=`cat $colornumber_file`
+    fi
+    tput_color="$(tput setaf $colornumber)$(tput bold)"
+    tput_reset="$(tput sgr0)"
+    # Bash confuses the line length when not told to not count escape sequences.
+    if [ ! "$BASH" = "" ]; then
+        tput_color="\[$tput_color\]"
+        tput_reset="\[$tput_reset\]"
+    fi
+    PS1="${tput_color}["\$\(date\ +%Y-%m-%d/%H:%M:%S/%Z\)" $USER@$(hostname):"\$\(pwd\)"]$ $tput_reset"
+    PS2="${tput_color}> $tput_reset"
+    PS3="${tput_color}select: $tput_reset"
+    PS4="${tput_color}+ $tput_reset"
+
+    # Add local additions.
+    local_shinit_file=~/.shinit_add
+    if [ -f $local_shinit_file ]; then
+        . $local_shinit_file
+    fi
 
-# Add local additions.
-local_shinit_file=~/.shinit_add
-if [ -f $local_shinit_file ]; then 
-    . $local_shinit_file 
 fi