#!/bin/sh # vim features I want to use more (at top for easy access) bookmarks=" index ranges sessions expand internal-variables functions motion text-objects cmdline-special sub-replace-special clipboard ins-completion-menu vimball netrw zero-width complex-repeat " # Direct access to vim's help files. Including a list of help topics on # features I'm trying to get more familiar with (sort of works as a reminder # list). # # In combination with this I have a zsh completion setup. This goes in an # appropriate place in your zsh config files. # #_vimhelp() { # local tagsfile="/usr/share/vim/vimcurrent/doc/tags" # _complete_tag #} #compdef _vimhelp vimhelp #zstyle ':completion:*:vimhelp:*' menu yes select # Uses my pager.vim macro which just tweaks the vim settings to behave in a # more pager like way. Get the pager.vim macro and put it in ~/.vim/macros/. # # The pager.vim macro should be available on my site (probably right next to # where you got this) at . # If not there look around for a vim area, I'm thinking about created one. g="" [ $# -gt 0 ] && [ "$1" = "-g" ] && g="g" && shift if [ $# -gt 0 ]; then topic=$@ else menu="main\n"`echo $bookmarks | sed 's/\s/\\\n/g'` keys="-kj:KEY_DOWN -kk:KEY_UP" topic=`echo $menu | iselect -Q "_EXIT_" -t "Vim Help" -p 1 $keys` if [ "$topic" = "_EXIT_" ]; then exit; fi fi tmpfile=`tempfile` trap "rm -f $tmpfile ; exit" 0 2 cat >> $tmpfile << EOF function! Helpexit(topic) try exe "help" a:topic catch /E149:/ cq endtry endfunction EOF ${g}view -c "source $tmpfile" \ -i NONE \ -c "call Helpexit(\"$topic\")" -c "silent only" \ -c "runtime! macros/pager.vim" \ -c "set nospell" if [ $? -ne 0 ]; then echo "Vim help not found." fi # slight delay to allow vim to source the file when forking the gui [ -n "$g" ] && sleep .1s