2013-09-21 wcdj
1 golang简介
Go is an open source programming environment that makes it easy to build simple,reliable,and efficient software.
golang的主页:http://golang.org/
2 Mac OS X 10.8.4环境安装
(1) 下载安装包(详细可参考:http://golang.org/doc/install)
https://code.google.com/p/go/wiki/Downloads?tm=2 下载页面
(2) 安装
打开下载好的pkg文件,根据安装向导完成安装。默认的安装路径是:/usr/local/go。
(3) 设置环境变量
- mba:go gerryyang$ pwd
- /usr/local/go
- mba:go gerryyang$ ls
- AUTHORS PATENTS api doc lib robots.txt
- CONTRIBUTORS README bin favicon.ico misc src
- LICENSE VERSION blog include pkg test
将/usr/local/go/bin添加到PATH环境变量中:
a. 在home目录下打开.bashrc文件,并将添加:export PATH=$PATH:/usr/local/go/bin,然后保存关闭;
b. 执行 . .bashrc 使环境变量生效;
- mba:~ gerryyang$ go
- Go is a tool for managing Go source code.
- Usage:
- go command [arguments]
- The commands are:
- build compile packages and dependencies
- clean remove object files
- env print Go environment information
- fix run go tool fix on packages
- fmt run gofmt on package sources
- get download and install packages and dependencies
- install compile and install packages and dependencies
- list list packages
- run compile and run Go program
- test test packages
- tool run specified go tool
- version print Go version
- vet run go tool vet on packages
- Use "go help [command]" for more information about a command.
- Additional help topics:
- c calling between Go and C/C++
- gopath GOPATH environment variable
- packages description of package lists
- remote remote import path Syntax
- testflag description of testing flags
- testfunc description of testing functions
- Use "go help [topic]" for more information about that topic.
- mba:~ gerryyang$
3 测试
下面使用MacVim编辑:
- package main
- import "fmt"
- func main() {
- fmt.Printf("hello,golang!\n")
- }
If you see the "hello,world" message then your Go installation is working.
4 配置Sublime Text 2编辑环境
(1) 下载st2 http://www.sublimetext.com/
(2) 安装gosublime插件 http://my.oschina.net/Obahua/blog/110767
(3) st2个性化配置及入门使用(比如,更改图标)
英文原文 http://net.tutsplus.com/tutorials/tools-and-tips/sublime-text-2-tips-and-tricks/
中文版 http://lucifr.com/2011/08/31/sublime-text-2-tricks-and-tips/
st2的一些优点:
(a) 快捷的命令面板 shift+command+p
(b) 即时的文件切换 command+p
(c) 随心所欲的跳转 command+p @ (函数) #(搜索) : (行数)
PS: 让人叫绝的是,这些切换定位方法可以配合在一起使用。
(d) 多重选择 (这个功能确实爽,对于不熟悉正则匹配的人)
激活多重选择的方法有几种:
- 按住
Command
或Alt
,然后在页面中希望中现光标的位置点击。 - 选择数行文本,然后按下
Shift + Command + L
。 - 通过反复按下
Control/Command + D
即可将全文中与光标当前所在位置的词相同的词逐一加入选择,而直接按下Alt+F3
(Windows) 或是Ctrl+Command+G
(Mac) 即可一次性选择所有相同的词。 - 按下鼠标中键(Mac上是option键)来进行垂直方向的纵列选择,也可以进入多重编辑状态。
缩进指示已经被集成进 Sublime Text 2 中,不需要安装插件了,之前需要安装 IndentGuides 插件。
(f) 安装包控制
安装 Package Control 的方法:
https://packagecontrol.io/installation
- 打开 Sublime Text 2,按下
Control + `
调出 Console -
将以下代码粘贴进命令行中并回车:
- import urllib2,os; pf='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp,pf),'wb' ).write( urllib2.urlopen( 'http://sublime.wbond.net/' +pf.replace( ' ','%20' )).read()); print( 'Please restart Sublime Text to finish installation')
-
Sublime Text 3 请使用以下代码:
- import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp,'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())
-
重启 Sublime Text 2,如果在
Preferences -> Package Settings
中见到Package Control
这一项,就说明安装成功了。
使用 Package Control 安装 Package 的方法:
第一步:按下 Shift + Command + P
调出命令面板
第二步:输入 install
调出 Package Control: Install Package
选项,按下回车
第三步:在列表中找到 xxx插件
,按下回车进行安装
第四步:重启 Sublime Text 2 使之生效
PS: 详细的package列表可以在 https://sublime.wbond.net/ 查询。
(g) 对齐
在 Sublime Text 2 之中,一个 Sublime Alignment 插件也可以轻松实现。
(h) Vim模式 (方便Vimer过度使用)
Sublime Text 2 dev 版已经支持 Vim 的编辑模式了,如果更喜欢 Vim 的编辑模式,可以通过以下方法来激活 Vintage mode。
第一步:按下 Shift + Command + P
调出命令面板
第二步:输入 settings user
调出 Preferences:Settings - User
,并按下回车
(以上两步等价于:command +,)
第三步:这时会打开一个 Preferences.sublime-settings 的文件,如果是第一次修改,它应该是个空文件,把以下文本粘贴进去
- {
- "ignored_packages": []
- }
第四步:保存这个文件,这时按下 ESC 键,再按下一些你熟悉的 Vim命令。
说明:gd命令好像不能用,跳转、查询等是相同的,Vintage 模式本身就是通过 keybinding 实现的,可以参考修改: http://sublimetext.info/docs/en/reference/key_bindings.html
(i) 无干扰模式(Distraction Free Mode)(自己还是习惯全屏模式 control + command + f)
在 Sublime Text 2 中,只要按下 Control + Shift + Command + F
或是在菜单 View
中选择 Enter Distraction Free Mode
就可以进入这个 UI 最小化模式了。如果是在用 Mac OS X Lion 的话,Sublime Text 2 还同时支持 Lion 的原生全屏模式。
通过修改 “Preferences” -> “File Settings - More” -> “Distraction Free - User” 可以对防干扰模式进行一些设置:
(j) 一些编辑显示技巧
command + k; command + b 实现打开和关闭之间的切换。
(2) 字体大小动态调整
command + = 调大
command + - 调小
(3) cmd + option + 数字
实现多个tab并行编辑和对比。
(4) 通过参考默认配置文件 Perferences.sublime-settings 中的参数,可进行个性化设置。
(k) 主题
这里所讲的主题不同于针对代码的 Color Scheme,是指针对 Sublime 程序本身的主题,目前可以安装的是 Ian Hill 的 Soda。
(l) 必备的扩展插件
(a) ConvertToUTF8
ST2只支持utf8编码,该插件可以显示与编辑 GBK,BIG5,EUC-KR,EUC-JP,Shift_JIS 等编码的文件。
https://sublime.wbond.net/packages/ConvertToUTF8
https://github.com/seanliang/ConvertToUTF8
(b) gosublime
GoSublime is a Golang plugin collection for the text editor SublimeText providing code completion and other IDE-like features. Both Sublime Text versions 2 and 3 are supported.
https://sublime.wbond.net/packages/GoSublime
(m) 文档
Sublime Text Unofficial Documentation
http://www.sublimetext.com/docs/2/
(n) 把subl添加在命令行中
在 .bashrc 配置中添加如下别名:
- # Sublime Text 2
- alias subl='/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl'
然后 . .bashrc 使配置生效。然后输入 subl -h则显示如下:
- mba:bin gerryyang$ subl -h
- Sublime Text 2 Build 2221
- Usage: subl [arguments] [files] edit the given files
- or: subl [arguments] [directories] open the given directories
- or: subl [arguments] - edit stdin
- Arguments:
- --project <project>: Load the given project
- --command <command>: Run the given command
- -n or --new-window: Open a new window
- -a or --add: Add folders to the current window
- -w or --wait: Wait for the files to be closed before returning
- -b or --background: Don't activate the application
- -s or --stay: Keep the application activated after closing the file
- -h or --help: Show help (this message) and exit
- -v or --version: Show version and exit
- --wait is implied if reading from stdin. Use --stay to not switch back
- to the terminal when a file is closed (only relevant if waiting for a file).
- Filenames may be given a :line or :line:column suffix to open at a specific
- location.
- mba:bin gerryyang$ subl -v
- Sublime Text 2 Build 2221
- mba:bin gerryyang$
在st2编写golang的模样:
5 进一步的使用
Start by taking A Tour of Go.
Build a web application by following the WikiTutorial.
Read Effective Go to learn about writingidiomatic Go code.
For the full story,consult Go's extensive documentation.
Subscribe to thegolang-announcemailing list to be notified when a new stable version of Go is released.
6 参考
[2]https://github.com/Unknwon/go-fundamental-programming go编程基础
[3] http://www.sublimetext.com/ st2主页
[4] http://lucifr.com/2011/08/31/sublime-text-2-tricks-and-tips/ Sublime Text 2 入门及技巧
[5] http://lucifr.com/tags/sublime-text/ 更多st2的文章