From d0b29aa8f4b825e4516bc87ac9fe67857eff44bd Mon Sep 17 00:00:00 2001 From: June McEnroe Date: Sun, 27 Oct 2013 18:26:35 -0400 Subject: Add auto-title stuff to zsh --- .zsh/title.zsh | 26 ++++++++++++++++++++++++++ .zshrc | 6 ++---- 2 files changed, 28 insertions(+), 4 deletions(-) create mode 100644 .zsh/title.zsh diff --git a/.zsh/title.zsh b/.zsh/title.zsh new file mode 100644 index 00000000..b0d7ad70 --- /dev/null +++ b/.zsh/title.zsh @@ -0,0 +1,26 @@ +function _title { + echo -en "\033]0;$@\a" +} + +function title { + if [ -n "$1" ]; then + _title_custom=1 + _title $@ + else + unset _title_custom + _title_precmd + fi +} + +function _title_preexec { + [ -z "$_title_custom" ] && _title "$1" +} + +function _title_precmd { + [ -z "$_title_custom" ] && _title zsh +} + +typeset -ga preexec_functions +typeset -ga precmd_functions +preexec_functions+='_title_preexec' +precmd_functions+='_title_precmd' diff --git a/.zshrc b/.zshrc index 5f93af54..ac96cd74 100644 --- a/.zshrc +++ b/.zshrc @@ -66,6 +66,8 @@ chruby ruby-2.0.0 source ~/.zsh/gitprompt.zsh +source ~/.zsh/title.zsh + # Environment export EDITOR=vim @@ -75,10 +77,6 @@ export PATH=$PATH:~/bin # Functions and aliases -function title { - echo -en "\033]0;$1\a" -} - function game { xinit =$1 ${@:2} -- :1 vt6 } -- cgit 1.4.1