Simplified option variables for greater flexibility.

This commit is contained in:
Sorin Ionescu 2011-09-05 15:39:37 -04:00
parent 8619dd28bc
commit 05c94e2dd5
10 changed files with 25 additions and 25 deletions

View file

@ -2,7 +2,7 @@ setopt correct # Correct commands.
setopt correct_all # Correct all arguments.
# The 'ls' Family
if ! check-bool "$DISABLE_COLOR"; then
if check-bool "$COLOR"; then
if [[ -f "$HOME/.dir_colors" ]] && ( (( $+commands[dircolors] )) || ( (( $+plugins[(er)gnu-utils] )) && (( $+commands[gdircolors] )) ) ); then
eval $("${commands[dircolors]:-$commands[gdircolors]}" "$HOME/.dir_colors")
alias ls='ls -hF --group-directories-first --color=auto'
@ -80,7 +80,7 @@ else
fi
# Diff/Make
if ! check-bool "$DISABLE_COLOR"; then
if check-bool "$COLOR"; then
if (( $+commands[colordiff] )); then
alias diff='colordiff -u'
compdef colordiff=diff

View file

@ -64,7 +64,7 @@ export VISUAL="vim"
export PAGER='less'
# Grep
if ! check-bool "$DISABLE_COLOR"; then
if check-bool "$COLOR"; then
export GREP_COLOR='37;45'
export GREP_OPTIONS='--color=auto'
fi
@ -89,7 +89,7 @@ if (( $+commands[lesspipe.sh] )); then
fi
# Termcap
if ! check-bool "$DISABLE_COLOR"; then
if check-bool "$COLOR"; then
export LESS_TERMCAP_mb=$'\E[01;31m' # begin blinking
export LESS_TERMCAP_md=$'\E[01;31m' # begin bold
export LESS_TERMCAP_me=$'\E[0m' # end mode

View file

@ -67,7 +67,7 @@ if [[ "$KEYMAP" == (emacs|) ]]; then
bindkey "${keys[Control]}x${keys[Control]}e" edit-command-line
# Expand .... to ../..
if ! check-bool "$DISABLE_DOT_EXPANSION"; then
if check-bool "$DOT_EXPANSION"; then
bindkey "." expand-dot-to-parent-directory-path
fi
@ -132,7 +132,7 @@ elif [[ "$KEYMAP" == 'vi' ]]; then
bindkey -M vicmd "${keys[Control]}r" redo
# Expand .... to ../..
if ! check-bool "$DISABLE_DOT_EXPANSION"; then
if check-bool "$DOT_EXPANSION"; then
bindkey -M viins "." expand-dot-to-parent-directory-path
fi
@ -233,7 +233,7 @@ bindkey '^[[Z' reverse-menu-complete
bindkey "${keys[Control]}i" expand-or-complete-prefix
# Convert .... to ../.. automatically.
if ! check-bool "$DISABLE_DOT_EXPANSION"; then
if check-bool "$DOT_EXPANSION"; then
function expand-dot-to-parent-directory-path() {
if [[ $LBUFFER = *.. ]]; then
LBUFFER+=/..
@ -247,7 +247,7 @@ if ! check-bool "$DISABLE_DOT_EXPANSION"; then
fi
# Display an indicator when completing.
if ! check-bool "$DISABLE_COMPLETION_INDICATOR"; then
if check-bool "$COMPLETION_INDICATOR"; then
function expand-or-complete-prefix-with-indicator() {
echo -n "\e[31m...\e[0m"
zle expand-or-complete-prefix

View file

@ -69,7 +69,7 @@ autoload -Uz add-zsh-hook
# Sets the tab and window titles before the prompt is displayed.
function set-title-precmd {
if ! check-bool "$DISABLE_AUTO_TITLE"; then
if check-bool "$AUTO_TITLE"; then
set-window-title "${(%):-%~}"
for kind in tab screen; do
# Left-truncate the current working directory to 15 characters.
@ -81,7 +81,7 @@ add-zsh-hook precmd set-title-precmd
# Sets the tab and window titles before command execution.
function set-title-preexec {
if ! check-bool "$DISABLE_AUTO_TITLE"; then
if check-bool "$AUTO_TITLE"; then
set-title-by-command "$2"
fi
}

View file

@ -2,7 +2,7 @@
# Disable color in dumb terminals.
if [[ "$TERM" == 'dumb' ]]; then
DISABLE_COLOR='true'
COLOR='false'
fi
# Add functions to fpath.

View file

@ -2,11 +2,11 @@
source "${0:r:r}.zsh"
if test "$CASE_SENSITIVE" = true; then
if check-bool "$CASE_SENSITIVE"; then
unset HISTORY_SUBSTRING_SEARCH_GLOBBING_FLAGS
fi
if test "$DISABLE_COLOR" = true; then
if ! check-bool "$COLOR"; then
unset HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND
unset HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND
fi

View file

@ -11,7 +11,7 @@ alias sn="screen -U -S"
alias sr="screen -a -A -U -D -R"
# Auto
if (( $SHLVL == 1 )) && ! check-bool "$DISABLE_AUTO_SCREEN"; then
if (( $SHLVL == 1 )) && check-bool "$AUTO_SCREEN"; then
(( SHLVL += 1 )) && export SHLVL
session="$(screen -list 2> /dev/null | sed '1d;$d' | awk '{print $1}' | head -1)"
if [[ -n "$session" ]]; then

View file

@ -40,7 +40,7 @@ function _ssh-agent-start() {
# Test if agent-forwarding is enabled.
zstyle -b :omz:plugins:ssh-agent agent-forwarding _ssh_agent_forwarding
if [[ "${_ssh_agent_forwarding}" == "yes" && -n "$SSH_AUTH_SOCK" ]]; then
if check-bool "${_ssh_agent_forwarding}" && [[ -n "$SSH_AUTH_SOCK" ]]; then
# Add a nifty symlink for screen/tmux if agent forwarding.
[[ -L "$SSH_AUTH_SOCK" ]] || ln -sf "$SSH_AUTH_SOCK" /tmp/ssh-agent-$USER-screen
elif [ -f "${_ssh_agent_env}" ]; then

View file

@ -10,7 +10,7 @@ alias ta="tmux attach-session"
alias tl="tmux list-sessions"
# Auto
if (( $SHLVL == 1 )) && ! check-bool "$DISABLE_AUTO_TMUX"; then
if (( $SHLVL == 1 )) && check-bool "$AUTO_TMUX"; then
(( SHLVL += 1 )) && export SHLVL
session="$(tmux list-sessions 2> /dev/null | cut -d':' -f1 | head -1)"
if [[ -n "$session" ]]; then

View file

@ -4,20 +4,20 @@ OMZ="$HOME/.oh-my-zsh"
# Set the key mapping style to 'emacs' or 'vi'.
KEYMAP='emacs'
# Set to 'true' to enable case-sensitivity.
# Set case-sensitivity for completion, history lookup, etc.
CASE_SENSITIVE='false'
# Set to 'true' to disable color (auto set on dumb terminals).
DISABLE_COLOR='false'
# Color output (auto set to 'false' on dumb terminals).
COLOR='true'
# Set to 'true' to disable auto setting the tab and window titles.
DISABLE_AUTO_TITLE='false'
# Auto set the tab and window titles.
AUTO_TITLE='true'
# Set to 'false' to enable converting .... to ../.. automatically.
DISABLE_DOT_EXPANSION='true'
# Auto convert .... to ../..
DOT_EXPANSION='false'
# Set to 'false' to enable the completion indicator.
DISABLE_COMPLETION_INDICATOR='true'
# Indicate that completions are being generated.
COMPLETION_INDICATOR='false'
# Set the plugins to load (see $OMZ/plugins/).
# Example: plugins=(git lighthouse rails ruby textmate)