1 #!/bin/bash 2 3 # Add these lines to your .vimrc file 4 # 5 # map <C-r> :! vim_smdb return_states <cword> <CR> :execute 'edit' system("cat ~/.smdb_tmp/cur") <CR> 6 # map <C-c> :! vim_smdb <cword> <CR> :execute 'edit' system("cat ~/.smdb_tmp/cur") <CR> 7 # 8 # Now you can move your cursor over a function and hit CTRL-c to see how it's 9 # called or CTRL-r to see what it returns. Use the ":bd" command to get back to 10 # your source. 11 12 DIR="$HOME/.smdb_tmp" 13 mkdir -p $DIR 14 15 for i in $(seq 1 100) ; do 16 if [ ! -e $DIR/$i ] ; then 17 break 18 fi 19 done 20 21 if [ $i == 100 ] ; then 22 i=1 23 fi 24 25 next=$(($i + 1)) 26 27 rm -f $DIR/$next 28 rm $DIR/.${i}.swp 29 smdb $* > $DIR/$i 30 31 echo "$DIR/$i" > $DIR/cur 32