]> ruderich.org/simon Gitweb - config/dotfiles.git/blobdiff - zsh/rc
zsh: Also work when .zsh/functions is not available.
[config/dotfiles.git] / zsh / rc
diff --git a/zsh/rc b/zsh/rc
index 2fe5530f4ca2e6f188a418cfb0b40c13a0bfbc71..5336a6deffadbf31b281f91fa66ffa6a6615be70 100644 (file)
--- a/zsh/rc
+++ b/zsh/rc
@@ -47,7 +47,9 @@ fi
 fpath=(~/.zsh/functions $fpath)
 # Autoload my functions (except completion functions and hidden files). Thanks
 # to caphuso from the Zsh example files for this idea.
-autoload ${fpath[1]}/^_*(^/:t)
+if [[ -d ~/.zsh/functions ]]; then
+    autoload ${fpath[1]}/^_*(^/:t)
+fi
 
 # Simulate hooks using _functions arrays for Zsh versions older than 4.3.4. At
 # the moment only precmd() and preexec() are simulated.
@@ -78,8 +80,8 @@ autoload -Uz add-zsh-hook
 # HISTORY SETTINGS
 
 # Use history and store it in ~/.zsh/history.
-HISTSIZE=5000
-SAVEHIST=5000
+HISTSIZE=50000
+SAVEHIST=50000
 HISTFILE=~/.zsh/history
 # Append to the history file instead of overwriting it and do it immediately
 # when a command is executed.
@@ -240,12 +242,20 @@ if [[ $TERM == screen* || $TERM == xterm* || $TERM == rxvt* ]]; then
         [[ -z $window_reset ]] && return
 
         # Reset the window name to 'zsh'.
+        local name="zsh"
+        # If the function was called with an argument then reset the window
+        # name to '.zsh' (used by clear alias).
+        if [[ -n $1 ]]; then
+            name=".zsh"
+        fi
+
+        # Prepend prefixes like in window_preexec().
         if [[ -n $SSH_CONNECTION ]]; then
-            window_title "@zsh"
+            window_title "@$name"
         elif [[ -n $window_root ]]; then
-            window_title "!zsh"
+            window_title "!$name"
         else
-            window_title "zsh"
+            window_title $name
         fi
 
         # Just reset the name, so no screen reset necessary for the moment.
@@ -401,7 +411,7 @@ function ll() {
 # important. This helps me to remember which windows are empty (I run clear
 # after I finished my work in a window).
 if [[ -n $window_reset ]]; then
-    alias clear='clear; window_title .zsh'
+    alias clear='clear; window_reset=yes; window_precmd reset'
 fi
 
 # I sometimes confuse editor and shell, print a warning to prevent I exit the