brew install go
网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了聂荣免费建站欢迎大家使用!
输入 brew info go 或者 go env 即可查看当前安装的golang版本信息
注意:千万不要把GOPATH设置成go的安装路径,可以自己在用户目录下创建一个目录,例如mygo
一般安装好go之后,使用go env查看一下当前环境。此时显示出来的GOROOT就是你使用brew安装go的安装目录,这个路径要记下来。接下来要在bash_profile文件中进行配置。
使用vim ~/.bash_profile
然后在这个文件中进行编辑,下面以我的电脑为例,路径这种要根据不同人的情况而定
GOROOT=/usr/local/Cellar/go/1.10.1/libexec (改成自己的go安装目录 go env命令可查看)
export GOROOT (不用动)
export GOPATH=/Users/jiangqiaowei/mygo (创建一个自己的文件夹 管理go相关内容)
export GOBIN=$GOPATH/bin (不用改)
export PATH=$PATH:$GOBIN:$GOROOT/bin (不用改)
$ go get golang.org/x/mobile/cmd/gomobile (需要墙)
gomobile init
$ go get -d golang.org/x/mobile/example/bind/...
$ cd $GOPATH/src/golang.org/x/mobile/example/bind
$ gomobile bind -target=ios golang.org/x/mobile/example/bind/hello
此命令在ios/路径下生成bind.xcodeprojxcode项目以及 在bind/目录下生成一个 hello.framework
拖入项目即可使用
update 2016.08.11
补充VIM/GVIM统一设置方法,源标题"设置GVIM字体大小"修改为”设置VIM字体大小“
VIM实际上是有VIM和GVIM之分,VIM是命令行下的编辑器,GVIM是VIM增加的独立的GUI的版本。
显然命令行下的VIM时需要收到终端Terminal的限制,其字体也是继承终端Terminal的设置。
GVIM作为独立的GUI APP,其具有自主性,可以独立配置显示字体大小。GVIM本身在编译的时候就增加了设置项guifont和guifontset等,可以通过GVIM Command MODE设置,也可以增加设置到 ~/home/.vimrc
Linux/Unix系操作系统和Windows操作系统对于字体大小的命令格式也有一些差异:
参考URL:
下面是自定义vim配置文件,仅供参考!
"""""""""""""""""""""""""""""Keyboard Shortcut""""""""""""""""""""""""""""
" 定义快捷键的前缀,即Leaderlet mapleader=";"" 定义快捷键到行首和行尾
nmap LB 0
nmap LE $
" 设置快捷键将选中文本块复制至系统剪贴板
vnoremap Leadery "+y
" 设置快捷键将系统剪贴板内容粘贴至 vim
nmap Leaderp "+p
" 定义快捷键关闭当前分割窗口
nmap leaderwq :wqCRnmap Leaderq :qCR" 定义快捷键保存当前窗口内容
nmap Leaderw :wCR
" 定义快捷键保存所有窗口内容并退出 vim
nmap LeaderWQ :waCR:qCR" 不做任何保存,直接退出 vim
nmap LeaderQ :qa!CR
" 依次遍历子窗口
nnoremap nw C-WC-W" 跳转至右方的窗口
nnoremap Leaderlw C-Wl
" 跳转至左方的窗口
nnoremap Leaderhw C-Wh" 跳转至上方的子窗口
nnoremap Leaderkw C-Wk
" 跳转至下方的子窗口
nnoremap Leaderjw C-Wj" 定义快捷键在结对符之间跳转
nmap LeaderM %
" 显示/隐藏 MiniBufExplorer 窗口map Leadermt :MBETogglecr" buffer 切换快捷键
map leaderbn :MBEbncr
map leaderbp :MBEbpcr
""""""""""""""""""""""""""Keyboard END""""""""""""""""""""""""""""""""""""
""""""""""""""""""""""""""User Settings"""""""""""""""""""""""""""""""""""set nocompatible "关闭vim兼容模式
set wildmenu "vim自身命令行模式智能补全set incsearchset ignorecaseset laststatus=2 " 总是显示状态栏
set ruler " 显示光标当前位置set number " 开启行号显示
set cursorline " 高亮显示当前行/列set cursorcolumnset hlsearch " 高亮显示搜索结果
set nowrap " 禁止折行set expandtabset tabstop=4 " 设置编辑时制表符占用空格数
set shiftwidth=4 " 设置格式化时制表符占用空格数set softtabstop=4 " 让 vim 把连续数量的空格视为一个制表符
"""""""""""""""""""""""""User END"""""""""""""""""""""""""""""""""""""""""
""""""""""""""""""""""""""Vundle Setting""""""""""""""""""""""""""""""""""
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'altercation/vim-colors-solarized'
Plugin 'Lokaltog/vim-powerline'
"Plugin 'octol/vim-cpp-enhanced-highlight'"Plugin 'tomasr/molokai'
"Plugin 'nathanaelkane/vim-indent-guides'"Plugin 'derekwyatt/vim-fswitch'
"Plugin 'kshenoy/vim-signature'Plugin 'majutsushi/tagbar'"Plugin 'vim-scripts/indexer.tar.gz'
"Plugin 'vim-scripts/DfrankUtil'"Plugin 'vim-scripts/vimprj'
"Plugin 'dyng/ctrlsf.vim'"Plugin 'terryma/vim-multiple-cursors'
Plugin 'scrooloose/nerdcommenter'
"Plugin 'vim-scripts/DrawIt'"Plugin 'SirVer/ultisnips'
Plugin 'Valloric/YouCompleteMe'
"Plugin 'derekwyatt/vim-protodef'Plugin 'scrooloose/nerdtree'Plugin 'jistr/vim-nerdtree-tabs'Plugin 'Xuyuanp/nerdtree-git-plugin'Plugin 'fholgado/minibufexpl.vim'"Plugin 'gcmt/wildfire.vim'
"Plugin 'sjl/gundo.vim'"Plugin 'Lokaltog/vim-easymotion'
"Plugin 'suan/vim-instant-markdown'"Plugin 'lilydjwg/fcitx.vim'
"Plugin 'scrooloose/syntastic'"Plugin 'WolfgangMehner/vim-plugins'
Plugin 'ctrlpvim/ctrlp.vim'
Plugin 'c.vim'
call vundle#end()
filetype plugin indent on
filetype plugin on
""""""""""""""""""""""""""""Vundle END""""""""""""""""""""""""""""""""""""
syntax enable " 开启语法高亮功能
syntax on " 允许用指定语法高亮配色方案替换默认方案
filetype on "开启文件类型侦测"filetype plugin on "根据侦测到的不同类型加载对应的插件"filetype indent on " 自适应不同语言的智能缩进set background=dark
colorscheme solarizedset gcr=a:block-blinkon0set guioptions-=lset guioptions-=Lset guioptions-=rset guioptions-=Rset guioptions-=mset guioptions-=T" 设置状态栏主题风格
let g:Powerline_colorscheme='solarized256'
" 将制表符扩展为空格" 让配置变更立即生效
"autocmd BufWritePost $MYVIMRC source $MYVIMRC" 随 vim 自启动
"let g:indent_guides_enable_on_vim_startup=1" 从第二层开始可视化显示缩进
let g:indent_guides_start_level=2
" 色块宽度let g:indent_guides_guide_size=1" 快捷键 i 开/关缩进可视化
:nmap silent Leaderi PlugIndentGuidesToggle
" 基于缩进或语法进行代码折叠set foldmethod=indentset foldmethod=syntax" 启动 vim 时关闭折叠代码
set nofoldenable
" *.cpp 和 *.h 间切换
nmap silent Leadersw :FSHerecr" YCM 补全菜单配色
" 菜单"highlight Pmenu ctermfg=2 ctermbg=3 guifg=#005f87 guibg=#EEE8D5
" 选中项"highlight PmenuSel ctermfg=2 ctermbg=3 guifg=#AFD700 guibg=#106900
" 补全功能在注释中同样有效"let g:ycm_complete_in_comments=1
" 允许 vim 加载 .ycm_extra_conf.py 文件,不再提示"let g:ycm_confirm_extra_conf=0
" 开启 YCM 标签补全引擎"let g:ycm_collect_identifiers_from_tags_files=1
" 引入 C++ 标准库tags"set tags+=/data/misc/software/misc./vim/stdcpp.tags
" YCM 集成 OmniCppComplete 补全引擎,设置其快捷键"inoremap leader; C-xC-o
" 补全内容不以分割子窗口形式出现,只显示补全列表"set completeopt-=preview
" 从第一个键入字符就开始罗列匹配项"let g:ycm_min_num_of_chars_for_completion=1
" 禁止缓存匹配项,每次都重新生成匹配项"let g:ycm_cache_omnifunc=0
" 语法关键字补全
"let g:ycm_seed_identifiers_with_syntax=1
""""""""""""""""""""""""""""""""""NREDTree Settings"""""""""""""""""""""""" 使用 NERDTree 插件查看工程文
nmap Leadernt :NERDTreeToggleCR
" 设置 NERDTree 子窗口宽度let NERDTreeWinSize=31" 设置 NERDTree 子窗口位置
let NERDTreeWinPos="right"
"显示行号let NERDTreeShowLineNumber=1" 显示隐藏文件
"let NERDTreeShowHidden=1" NERDTree 子窗口中不显示冗余帮助信息
let NERDTreeMinimalUI=1
" 删除文件时自动删除文件对应 bufferlet NERDTreeAutoDeleteBuffer=1"忽略下面类型的文件
let NERDTreeIgnore=['\.pyc','\~$','\.swp']
"显示书签列表"let NERDTreeShowBookmarks=1
""""""""""""""""""vim-nerdtree-tabs settings""""""""""""""终端运行vim时打开NERDTree窗口
"let g:nerdtree_tabs_open_on_console_startup=1"""""""""""""""""nerdtree-git-plugin settings"""""""""""let g:NERDTreeIndicatorMapCustom = { \ "Modified" : "✹", \ "Staged" : "✚", \ "Untracked" : "✭", \ "Renamed" : "➜", \ "Unmerged" : "═", \ "Deleted" : "✖", \ "Dirty" : "✗", \ "Clean" : "✔︎", \ "Unknown" : "?"
\ }"""""""""""""""""""""""""""""""""NERDTree END"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""CtrlP Settings""""""""""""""""""""""""""""let g:ctrlp_map = 'c-p'let g:ctrlp_cmd = 'CtrlP'"disable the plugin completely
"let g:loaded_ctrlp =1"CtrlP sets its local working directory according to this variable
let g:ctrlp_working_path_mode = 'ra'
"""""""""""""""""""""""""""""""Ctrel END"""""""""""""""""""""""""""""""""
""""""""""""""""""""""""""""""Tagbar Settings"""""""""""""""""""""""""""" 设置 tagbar 子窗口的位置出现在主编辑区的左边
let tagbar_left=1
" 设置显示/隐藏标签列表子窗口的快捷键
nnoremap Leadertb :TagbarToggleCR " 设置标签子窗口的宽度
let tagbar_width=31
" tagbar 子窗口中不显示冗余帮助信息
let g:tagbar_compact=1" 设置 ctags 对哪些代码标识符生成标签
let g:tagbar_type_cpp = {
\ 'kinds' : [
\ 'c:classes:0:1',
\ 'd:macros:0:1',
\ 'e:enumerators:0:0',
\ 'f:functions:0:1',
\ 'g:enumeration:0:1',
\ 'l:local:0:1',
\ 'm:members:0:1',
\ 'n:namespaces:0:1',
\ 'p:functions_prototypes:0:1',
\ 's:structs:0:1',
\ 't:typedefs:0:1',
\ 'u:unions:0:1',
\ 'v:global:0:1',
\ 'x:external:0:1'
\ ],
\ 'sro' : '::',
\ 'kind2scope' : {
\ 'g' : 'enum',
\ 'n' : 'namespace',
\ 'c' : 'class',
\ 's' : 'struct',
\ 'u' : 'union'
\ },
\ 'scope2kind' : {
\ 'enum' : 'g',
\ 'namespace' : 'n',
\ 'class' : 'c',
\ 'struct' : 's',
\ 'union' : 'u'
\ }
\ }
"""""""""""""""""""""""""""""Tagbar END""""""""""""""""""""""""""""""""let g:C_FormatDate='%Y/%m/%d'let g:C_FormatTime='%H:%M:%S'123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276
效果图