On 2007-05-03, Natesh Kedlaya <[EMAIL PROTECTED]> wrote:
> Hi,
>   I have built a cscope db of a source tree which was mounted on /mnt.
>   Now, I want to use the same cscope db on the same source tree but mounted
>   on a different mount point /scratch.
> 
>   I could achieve this using the standard cscope and EDITOR env variable
>   trick as shown below.
>   1. set the EDITOR to a shell script of my own. The shell script contains
>      the following lines in it.
> 
>      #!/bin/sh
>      offset=$1
>      fname=`echo $2 | sed s@/mnt/@/scratch/@`
>      xterm -e /usr/bin/vim $offset $fname
> 
>   2. Run cscope and when it tries to open a file, it goes through my
>     EDITOR script and does the right job.
> 
> 
>   How do I achieve the same in vim6.3?
>   I have the necessary settings in my .vimrc to work with cscope :
> 
>   if has("cscope")
>     set cscopeprg=/usr/local/bin/cscope
>     set csto=0
>     set cst
>     set nocsverb
>     " add any database in current directory
>     if filereadable("cscope.out")
>       cs add cscope.out
>       " else add database pointed to by environment
>     elseif $CSCOPE_DB != ""
>       cs add $SRCHOME/$NDE_PRODUCT/utl/ $SRCHOME -U
>     endif
>     set cspc=5
>     set csverb
>   endif

Here's an idea, untested.  Create a wrapper script around cscope, as 
you did before for EDITOR.  The script contains just this line:

   /usr/local/bin/cscope "$@" | sed s@/mnt/@/scratch/@

Change your .vimrc to set cscopeprg to the name of this script.

HTH,
Gary

-- 
Gary Johnson                 | Agilent Technologies
[EMAIL PROTECTED]     | Mobile Broadband Division
                             | Spokane, Washington, USA

Reply via email to