From 7f8c40fe4b6aefba50bb771400c522375161beeb Mon Sep 17 00:00:00 2001 From: Sorin Ionescu Date: Sun, 27 Feb 2011 10:13:57 -0500 Subject: [PATCH] Fix for dumb terminals like Vim's. --- lib/completion.zsh | 1 + lib/grep.zsh | 10 ++++------ lib/misc.zsh | 4 ++-- lib/termsupport.zsh | 2 ++ lib/theme-and-appearance.zsh | 5 ++--- oh-my-zsh.sh | 11 ++++++++--- templates/zshrc.zsh-template | 2 +- themes/sorin.zsh-theme | 4 ++-- 8 files changed, 22 insertions(+), 17 deletions(-) diff --git a/lib/completion.zsh b/lib/completion.zsh index 9c2dfecc..b47c63e9 100644 --- a/lib/completion.zsh +++ b/lib/completion.zsh @@ -1,4 +1,5 @@ # fixme - the load process here seems a bit bizarre +[[ "$TERM" == "dumb" ]] && return unsetopt menu_complete # do not autoselect the first completion entry unsetopt flowcontrol diff --git a/lib/grep.zsh b/lib/grep.zsh index 93c4270b..714ac9cc 100644 --- a/lib/grep.zsh +++ b/lib/grep.zsh @@ -1,6 +1,4 @@ -# -# Color grep results -# Examples: http://rubyurl.com/ZXv -# -export GREP_OPTIONS='--color=auto' -export GREP_COLOR='1;32' \ No newline at end of file +if [[ "$DISABLE_COLOR" != "true" ]]; then + [[ -z "$GREP_OPTIONS" ]] && export GREP_OPTIONS='--color=auto' + [[ -z "$GREP_COLOR" ]] && export GREP_COLOR='1;32' +fi diff --git a/lib/misc.zsh b/lib/misc.zsh index 4c174365..364ad879 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -9,5 +9,5 @@ bindkey "^[m" copy-prev-shell-word setopt long_list_jobs ## pager -export PAGER=less -export LC_CTYPE=en_US.UTF-8 +[[ -z "$PAGER" ]] && export PAGER=less +[[ -z "$LC_CTYPE" ]] && export LC_CTYPE=en_US.UTF-8 diff --git a/lib/termsupport.zsh b/lib/termsupport.zsh index 3152751e..f3a832e2 100644 --- a/lib/termsupport.zsh +++ b/lib/termsupport.zsh @@ -1,3 +1,5 @@ +[[ "$TERM" == "dumb" ]] && return + #usage: title short_tab_title looooooooooooooooooooooggggggg_windows_title #http://www.faqs.org/docs/Linux-mini/Xterm-Title.html#ss3.1 #Fully support screen, iterm, and probably most modern xterm and rxvt diff --git a/lib/theme-and-appearance.zsh b/lib/theme-and-appearance.zsh index aec67721..ab5aba4d 100644 --- a/lib/theme-and-appearance.zsh +++ b/lib/theme-and-appearance.zsh @@ -1,10 +1,9 @@ # ls colors autoload colors; colors; -export LSCOLORS="Gxfxcxdxbxegedabagacad" -#export LS_COLORS +[[ -z "$LSCOLORS" ]] && export LSCOLORS="Gxfxcxdxbxegedabagacad" # Enable ls colors -if [ "$DISABLE_LS_COLORS" != "true" ] +if [ "$DISABLE_COLOR" != "true" ] then # Find the option for using colors in ls, depending on the version: Linux or BSD ls --color -d . &>/dev/null 2>&1 && alias ls='ls --color=tty' || alias ls='ls -G' diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh index 291772df..4de17d50 100644 --- a/oh-my-zsh.sh +++ b/oh-my-zsh.sh @@ -1,5 +1,10 @@ # Initializes Oh My Zsh +# Disable colors on dumb terminals +if [ "$TERM" = "dumb" ]; then + DISABLE_COLOR="true" +fi + # add a function path fpath=($ZSH/functions $fpath) @@ -7,9 +12,6 @@ fpath=($ZSH/functions $fpath) # TIP: Add files you don't want in git to .gitignore for config_file ($ZSH/lib/*.zsh) source $config_file -# Load all of your custom configurations from custom/ -for config_file ($ZSH/custom/*.zsh) source $config_file - # Load all of the plugins that were defined in ~/.zshrc plugin=${plugin:=()} for plugin ($plugins) source $ZSH/plugins/$plugin/$plugin.plugin.zsh @@ -17,6 +19,9 @@ for plugin ($plugins) source $ZSH/plugins/$plugin/$plugin.plugin.zsh # Load the theme source "$ZSH/themes/$ZSH_THEME.zsh-theme" +# Load all of your custom configurations from custom/ +for config_file ($ZSH/custom/*.zsh) source $config_file + # Check for updates on initial load... if [ "$DISABLE_AUTO_UPDATE" = "true" ] then diff --git a/templates/zshrc.zsh-template b/templates/zshrc.zsh-template index 506daa9a..2b6e0b7f 100644 --- a/templates/zshrc.zsh-template +++ b/templates/zshrc.zsh-template @@ -12,7 +12,7 @@ export ZSH_THEME="robbyrussell" # export DISABLE_AUTO_UPDATE="true" # Uncomment following line if you want to disable colors in ls -# export DISABLE_LS_COLORS="true" +# export DISABLE_COLOR="true" # Uncomment following line if you want to disable autosetting terminal title. # export DISABLE_AUTO_TITLE="true" diff --git a/themes/sorin.zsh-theme b/themes/sorin.zsh-theme index 601dbe5d..33ca9c1e 100644 --- a/themes/sorin.zsh-theme +++ b/themes/sorin.zsh-theme @@ -2,12 +2,12 @@ # FILE: sorin.zsh-theme # DESCRIPTION: oh-my-zsh theme file. # AUTHOR: Sorin Ionescu (sorin.ionescu@gmail.com) -# VERSION: 1.0.2 +# VERSION: 1.0.3 # SCREENSHOT: http://i.imgur.com/aipDQ.png # ------------------------------------------------------------------------------ -if [[ "$TERM" != "dumb" ]] && [[ "$DISABLE_LS_COLORS" != "true" ]]; then +if [[ "$DISABLE_COLOR" != "true" ]]; then MODE_INDICATOR="%{$fg_bold[red]%}❮%{$reset_color%}%{$fg[red]%}❮❮%{$reset_color%}" local return_status="%{$fg[red]%}%(?..⏎)%{$reset_color%}"