這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
本文暫停Go文法,而轉向編輯器Notepad++。——工欲善其事,必先利其器。
參考資料
notepad++支援go語言高亮與go語言外掛程式
安裝GOnpp外掛程式
在Notepad++中,選擇菜單:外掛程式/Plugin –> Plugin Manager –> Show Plugin Manager
在彈出的Plugin Manager對話方塊中,單看Available頁面,選擇Gonpp並Install即可。
GOnpp
是選中GOnpp時的描述資訊:
GOnpp assists you writing Go-programms. It has code completion and function calltips (using gocode, see below) as well as direct interaction with the go command. Currently the following actions are implemented:
gocode complete -> ALT+O || gocode calltip -> ALT+P
go fmt -> ALT+F || go test -> ALT+T || go install -> ALT+I || go run -> ALT+R
Please note, that you must have the GO programming language installed on your computer to make use of GOnpp. You can get GO from http://golang.org/doc/install
To use the code-completion you need to have gocode installed and located either in your PATH or in GOROOT/bin. You can get gocode from https://github.com/nsf/gocode!
Author: tike
Source: https://github.com/tike/GOnpp
Homepage: https://github.com/tike/GOnpp
Latest update: 28.03.2014 (v1.2.0.0)
- gocode integration (complete with calltips)
- Thanks Mateusz!
19.02.2014 (v1.1.0.0)
- minor fixes, see git repo for details
24.01.2014 (v1.0.0.0 )
- inital release
試用
可以開啟一個go檔案,然後選擇 外掛程式 –> GOnpp –> go run,則會運行當前go檔案,並開啟一個go cmd output的視窗,顯示運行結果。如此,可以在Notepad++編輯器中編輯、運行。
可實驗其他的命令。
gocode
按照上面的說明,開啟頁面:https://github.com/nsf/gocode,執行了如下的命令,不過沒有看到有什麼效果。。。下記錄在此。。。
User@Host MINGW32 /d/examples$ mkdir tempcUser@Host MINGW32 /d/examples$ cd tempUser@Host MINGW32 /d/examples/temp$ go get -u -ldflags -H=windowsgui github.com/nsf/gocodeUser@Host MINGW32 /d/examples/temp$ lltotal 0User@Host MINGW32 /d/examples/temp$
IDEsAndTextEditorPlugins
在Go安裝目錄下,有個檔案:Go/misc/editors,其內容如下:
For information about plugins and other support for Go in editors and shells,
see this page on the Go Wiki:
https://golang.org/wiki/IDEsAndTextEditorPlugins
這個頁面給出了各種編輯器支援Go的方法,找到Notepad++部分,如下:
Notepad++: Free source code editor for Windows.
- notepadplus-go Syntax highlighting, functions list panel (for code browsing), code completion for keywords & builtins.
- The GOnpp plugin (available via Notepad++’s built-in Plugin Manager) provides code completion (requires gocode), function calltips, goimports integration, and keyboard shortcuts for common go commands. [sources, binaries].
- GoAutocomplete is another code completion plugin.
Syntax Highlighting
頁面地址:https://github.com/chai2010/notepadplus-go
從這個頁面下載3個xml檔案到本地(直接下載xml會有問題,自己找變通的法子即可),然後找到本地Notepad++的xml檔案的位置。——和Windows OS相關,以作者的環境為例,是
C:\Users\MyUserName\AppData\Roaming\Notepad++
把網頁上的userDefineLang.xml的內容拷貝到Notepad++的userDefineLang.xml對應位置。然後重啟Notepad++,在 語言 菜單下面的最下面就可以看到go&goasm。選中,即可看到go檔案文法高亮了。
Function List
接下來就是在Notepad++中顯示Go檔案的函數列表,如此就不用上下滾屏去睜大眼睛找目標函數了。
同樣滴,替換functionList.xml。然後重啟。——可能讀者想到了,為什麼不先修改完xml,然後直接重啟一次呢?——的確可以。。。。
——如果在Notepad++的函數功能表中不能顯示函數,那麼可以Reload一下。
Keyword Auto-Completion
把Go.xml拷貝到如下目錄:D:\Notepad++\plugins\APIs —— 根據自己的Notepad++安裝目錄選擇,這個APIs下有各種語言的xml。
重啟Notepad++。
這裡就直接把https://github.com/chai2010/notepadplus-go的圖借用過來: