summaryrefslogtreecommitdiff
path: root/.zsh
diff options
context:
space:
mode:
authorRené 'Necoro' Neumann <necoro@necoro.net>2013-10-22 16:33:53 +0200
committerRené 'Necoro' Neumann <necoro@necoro.net>2013-10-22 16:36:26 +0200
commit183835aa74e66f886a458ea21aeb9a7695e34a45 (patch)
treeaa72262e0b988ce23e5c9b5e19d58322e0e0a398 /.zsh
parent0622305cc657a2cd1f62bd72843446e0fe7ffad8 (diff)
downloaddotfiles-183835aa74e66f886a458ea21aeb9a7695e34a45.tar.gz
dotfiles-183835aa74e66f886a458ea21aeb9a7695e34a45.tar.bz2
dotfiles-183835aa74e66f886a458ea21aeb9a7695e34a45.zip
Use chpwd_functions and precmd_functions instead of putting everything in
precmd().
Diffstat (limited to '.zsh')
-rw-r--r--.zsh/zshrc42
1 files changed, 23 insertions, 19 deletions
diff --git a/.zsh/zshrc b/.zsh/zshrc
index 0165fab..74974fd 100644
--- a/.zsh/zshrc
+++ b/.zsh/zshrc
@@ -173,34 +173,38 @@ else
vcs_info () {} # dummy
fi
+autoload promptnl
+precmd_functions=( ${precmd_functions} promptnl vcs_info )
+
# }}}
# XTerm Window Title {{{
#################################################
-autoload promptnl
-
-_pre_zshrc () {
- echo -ne "${1}${USER}@${HOST}:${PWD/$HOME/~}${2}"
- promptnl
- vcs_info
+_set_title () {
+ local pre post
+
+ case $TERM in
+ xterm*|*rxvt*)
+ pre="\033]0;"
+ post="\007";;
+ screen*)
+ pre="\033k"
+ post="\033\\";;
+ esac
+ echo -ne "${pre}${USER}@${HOST}:${PWD/$HOME/~}${post}"
}
+chpwd_functions=( ${chpwd_functions} _set_title )
+
case $TERM in
-xterm*|*rxvt*)
- precmd()
- {
- _pre_zshrc "\033]0;" "\007"
- }
+xterm*)
# force xterm 256
- [[ $TERM == xterm* ]] && TERM=xterm-256color
-;;
-screen*)
- precmd()
- {
- _pre_zshrc "\033k" "\033\\"
- }
-;;
+ TERM=xterm-256color
+ ;;
esac
+
+# exec once for initialization
+_set_title
# }}}
# Key bindings {{{