zshrc: add wrapper for vim
authorFrank Terbeck <ft@bewatermyfriend.org>
Thu, 2 Apr 2009 11:09:02 +0000 (13:09 +0200)
committerFrank Terbeck <ft@bewatermyfriend.org>
Thu, 2 Apr 2009 11:09:02 +0000 (13:09 +0200)
This wrapper sets VIM_PLEASE_SET_TITLE, so the vimrc knows to set screens
hardstatus.

The wrapper also supports an array ($VIM_OPTIONS), that can be used to set
options for every vim invocation.

To use the installed vim binary without the wrapper function, use either of these:
  % command vim
  % =vim

The latter needs the EQUALS option set in zsh (which is the default).

etc/zsh/zshrc

index aed180c..80d9255 100644 (file)
@@ -2844,6 +2844,17 @@ minimal-shell() {
     exec env -i ENV="/etc/minimal-shellrc" HOME="$HOME" TERM="$TERM" ksh
 }
 
+# a wrapper for vim, that deals with title setting
+#   VIM_OPTIONS
+#       set this array to a set of options to vim you always want
+#       to have set when calling vim (in .zshrc.local), like:
+#           VIM_OPTIONS=( -p )
+#       This will cause vim to send every file given on the
+#       commandline to be send to it's own tab (needs vim7).
+vim() {
+    VIM_PLEASE_SET_TITLE='yes' command vim ${VIM_OPTIONS} "$@"
+}
+
 # make a backup of a file
 bk() {
     cp -a "$1" "${1}_$(date --iso-8601=seconds)"