]> ruderich.org/simon Gitweb - config/dotfiles.git/blobdiff - zsh/rc
Use program name as screen window title when sudo is used.
[config/dotfiles.git] / zsh / rc
diff --git a/zsh/rc b/zsh/rc
index a505a4e719f87e13b56df7ade9802bf1f1de2cf9..b4498aa9ea6ffda640c4903f8b455e8ae0042c0c 100644 (file)
--- a/zsh/rc
+++ b/zsh/rc
@@ -106,8 +106,14 @@ if [[ $TERM == screen ]]; then
     screen_name_reset=yes
 
     screen_preexec() {
-        # Get the application name excluding any arguments.
-        local program_name=${1%% *}
+        # Get the program name with its arguments.
+        local program_name=$1
+        # When sudo is used use real program name instead.
+        if [[ $program_name == sudo* ]]; then
+            program_name=${program_name#sudo }
+        fi
+        # Remove all arguments from the program name.
+        program_name=${program_name%% *}
 
         # Ignore often used commands which are only running for a very short
         # time. This prevents a "blinking" name when it's changed to "cd" for
@@ -205,8 +211,10 @@ alias diff='diff -u'
 # Display all files and use human readable sizes.
 alias du='du -sh'
 
-# Multiple files given to Vim are opened in tabs.
-alias vim='vim -p'
+# Multiple files given to Vim are opened in tabs, supported since Vim 7.
+if [[ ${${${(f)"$(vim --version)"}[1]#VIM - Vi IMproved }%% *} == 7* ]]; then
+    alias vim='vim -p'
+fi
 
 # Shortcuts for often used programs.
 alias e='elinks'