cscope for golang

从 https://gist.github.com/bopjiang/11146574 下载, 做了修改。

cscope-go.sh

 

 1 #!/bin/bash
 2 
 3 # generate cscope index files in current directory
 4 # the generated cscope index files also include go standard packages
 5 
 6 if [ "$GOROOT" = "" ] ; then
 7 echo "GOROOT is not set"
 8 GOROOT=`go env |grep "GOROOT" |cut -d "=" -f2`
 9 GOROOT=${GOROOT#\"}
10 GOROOT=${GOROOT%\"}
11 fi
12 echo $GOROOT
13 
14 go_pkg_src=$GOROOT/pkg
15 
16 find $go_pkg_src -name "*.go" -print > cscope.files
17 find . -name "*.go" -print >> cscope.files
18 
19 if cscope -b -k; then
20         echo "Done"
21 else
22         echo "Failed"
23         exit 1
24 fi

 

也可以使用starscope

$ sudo apt-get install ruby-dev
$ sudo gem install starscope therubyracer execjs

 

 

$ cd ~/my-project
$ starscope
```

Ask it things directly:
```
$ starscope -q calls,new # Lists all callers of new
```

Export it to various existing formats for automatic integration with your editor:
```
$ starscope -e ctags
$ starscope -e cscope

posted @ 2017-08-14 15:30 lvmxh 阅读(...) 评论(...) 编辑 收藏