The simplest way to develop virtualgo is by using virtualgo. The initial setup is simple:
go get github.com/GetStream/vg
cd $GOPATH/src/github.com/GetStream/vg
vg init
Then just change something and run:
make
Virtualgo uses cobra under the hood. Adding a new command is done like so:
cobra add <commandName>
Then you can edit the behaviour for that command by editing
cmd/<commandName>.go.
All shell specific behaviour is placed in the data directory:
data/shis used by zsh and bashdata/bashis used by bash onlydata/zshis used by zshdata/fishis used by fish