Friday, January 29, 2016

golang與sublime

gosub

Golang安裝與環境設定

wget https://storage.googleapis.com/golang/go1.5.linux-amd64.tar.gz
sudo tar -xzf go1.5.linux-amd64.tar.gz -C /usr/local
GO環境設定 /etc/.bashrc 中設定
export GOROOT=/usr/local/go 
export GOPATH=$HOME/golang/projects/foo
export GOARCH=amd64
export GOOS=linux
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOROOT/bin
我們先建立GO project位置
mkdir ~/golang/projects/foo
mkdir ~/golang/projects/foo/bin
mkdir ~/golang/projects/foo/pkg
mkdir ~/golang/projects/foo/src

SUBLIME安裝

這時候我們開始安裝sublime3。
sudo add-apt-repository ppa:webupd8team/sublime-text-3
sudo apt-get update
sudo apt-get install sublime-text-installer
安裝完後透過sublime設定環境變數 preference ->package Setting -> go sublime-> setting Default -> env
//"env": {},
    "env": {
        "GOROOT": "/usr/local/go",
         "GOPATH": "~/golang/Projects/foo"
     },
透過sublime自帶的安裝plugin,這點實在太優秀了。
ctrl+shift+p
install -> enter
gosublime -> enter
sidebarenhancement -> enter
go build -> enter
可以試試看環境對不對了,我們應該可以看到fmt下所有的function。

Ctags Plugin 安裝

安裝ctags,追蹤source code。雖然經驗上ctags很容易找錯,但我還是裝看看。
在sublime環境中安裝ctags plugin
ctrl+shift+p
install -> enter
ctags
在ubuntu環境中安裝ctags
apt-get install ctags
接下來在sublime的編輯鈕中,build ctags
find->ctags->rebuild ctags
然後你可以透過下列shourtcut key完成function追蹤。
ctrl+shift+.
ctrl+shift+,

Third Party 套件 and auto-completion

可以auto-completion是我選擇sublime的出發點,VIM目前我是無法成功設定auto-completion的。 我們還沒測試如果安裝third party套件後是否還能夠auto-completion。 答案是不行,因此還需要以下的解法才可以,很簡單的。
首先我們先找個套件安裝看看,用mux好了。
go get github.com/gorilla/mux
別忘了安裝git在ubuntu中,否則會報錯
apt-get install git
依照上述方式設定,go get安裝的pkg 會落在$GOPATH中,即你的工作目錄中。 此時先安裝的套件,你會發現無法auto-completion。 這時候你要
cp golang/projects/foo/pkg/linux_amd64/github.com/gorilla /usr/local/go/pkg/linux_amd64/github.com/. -rf
如此一來,就可以auto-completion了,程式碼寫起來也輕鬆多了。

VIM enable

preference -> setting-User
取消ignore_package的設定。
ignore_packages:[
    ""
]
此時你在sublime的操作就跟VI很像了,最特別的是當你:w儲存檔案時,sublime會幫你從新整理檔案的格式。 不再害怕出格式混亂的現麵條式程式碼了。

No comments:

Post a Comment