本篇文章旨在在 mac 平台基于
vim配置一个IDE.
使用的工具
- Vim
 - tmux
 - iTerm2 + Oh My Zsh
 
iTerm2 + Oh My Zsh
对于 iTerm2 + Oh My Zsh 可参考这篇文章。
Vim
Install
$ brew install vim
# restart shell
$ exec -l $SHELL
查看安装的 vim 信息
$ vim --version
VIM - Vi IMproved 8.1 (2018 May 18, compiled Nov 24 2018 19:13:03)
macOS version
包含补丁: 1-500
编译者 Homebrew
巨型版本 无图形界面。  可使用(+)与不可使用(-)的功能:
+acl               +extra_search      +mouse_netterm     +tag_old_static
+arabic            +farsi             +mouse_sgr         -tag_any_white
+autocmd           +file_in_path      -mouse_sysmouse    -tcl
+autochdir         +find_in_path      +mouse_urxvt       +termguicolors
-autoservername    +float             +mouse_xterm       +terminal
-balloon_eval      +folding           +multi_byte        +terminfo
+balloon_eval_term -footer            +multi_lang        +termresponse
-browse            +fork()            -mzscheme          +textobjects
++builtin_terms    +gettext           +netbeans_intg     +timers
+byte_offset       -hangul_input      +num64             +title
+channel           +iconv             +packages          -toolbar
+cindent           +insert_expand     +path_extra        +user_commands
-clientserver      +job               +perl              +vartabs
+clipboard         +jumplist          +persistent_undo   +vertsplit
+cmdline_compl     +keymap            +postscript        +virtualedit
+cmdline_hist      +lambda            +printer           +visual
+cmdline_info      +langmap           +profile           +visualextra
+comments          +libcall           -python            +viminfo
+conceal           +linebreak         +python3           +vreplace
+cryptv            +lispindent        +quickfix          +wildignore
+cscope            +listcmds          +reltime           +wildmenu
+cursorbind        +localmap          +rightleft         +windows
+cursorshape       +lua               +ruby              +writebackup
+dialog_con        +menu              +scrollbind        -X11
+diff              +mksession         +signs             -xfontset
+digraphs          +modify_fname      +smartindent       -xim
-dnd               +mouse             +startuptime       -xpm
-ebcdic            -mouseshape        +statusline        -xsmp
+emacs_tags        +mouse_dec         -sun_workshop      -xterm_clipboard
+eval              -mouse_gpm         +syntax            -xterm_save
+ex_extra          -mouse_jsbterm     +tag_binary
     系统 vimrc 文件: "$VIM/vimrc"
     用户 vimrc 文件: "$HOME/.vimrc"
 第二用户 vimrc 文件: "~/.vim/vimrc"
      用户 exrc 文件: "$HOME/.exrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
         $VIM 预设值: "/usr/local/share/vim"
编译方式: clang -c -I. -Iproto -DHAVE_CONFIG_H   -DMACOS_X -DMACOS_X_DARWIN  -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
链接方式: clang   -L. -fstack-protector -L/usr/local/lib -L/usr/local/opt/libyaml/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/readline/lib  -L/usr/local/lib -o vim        -lncurses -liconv -lintl -framework AppKit  -L/usr/local/opt/lua/lib -llua5.3 -mmacosx-version-min=10.13 -fstack-protector-strong -L/usr/local/lib  -L/usr/local/Cellar/perl/5.28.0/lib/perl5/5.28.0/darwin-thread-multi-2level/CORE -lperl -lm -lutil -lc  -L/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/lib/python3.7/config-3.7m-darwin -lpython3.7m -framework CoreFoundation  -lruby.2.5.3 -lobjc
安装插件
vim 插件管理工具
$ curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
安装各种插件
本文主要针对 Python 和 Go,所以安装的插件主要与这两种语言相关。
- python-mode ——> python 开发,补全代码 
Ctrl+Space或者F6( 自定义 ) - vim-airline
 - vim-airline-themes
 - vim-fugitive ——> git
 - nerdtree ——> 项目目录结构,打开目录结构 
Ctrl+n - ctrlp ——> 搜索文件 ( 只需要记住一个命令 
Ctrl+p) - nerdcommenter ——> 注释 ( 只需要记住一个命令 
,ci) - dash.vim ——> 光标指向想要查询的关键词,在命令行输入 
:Dash,回车即可 
具体配置信息
set tabstop=4
set nu
set showmatch
set cursorline
set ruler
set autoindent
set backspace=2
set hlsearch
syntax enable
let mapleader = ","
" 插件管理
call plug#begin('~/.vim/plugged')
Plug 'python-mode/python-mode', { 'branch': 'develop' }
Plug '/usr/local/opt/fzf'
Plug 'vim-airline/vim-airline'
Plug 'vim-airline/vim-airline-themes'
Plug 'tpope/vim-fugitive'
Plug 'scrooloose/nerdtree'
Plug 'kien/ctrlp.vim'
Plug 'scrooloose/nerdcommenter'
Plug 'rizzatti/dash.vim'
call plug#end()
"插件设置
" ===================================================
" Python-mode settings
" ===================================================
let g:pymode_python = 'python3'
let g:pymode = 1
let g:pymode_warnings = 1
let g:pymode_paths = []
let g:pymode_trim_whitespaces = 1
let g:pymode_options = 1
let g:pymode_options_max_line_length = 79
let g:pymode_options_colorcolumn = 1
let g:pymode_quickfix_minheight = 3
let g:pymode_quickfix_maxheight = 6
let g:pymode_indent = 1
" Breakpoints
let g:pymode_breakpoint = 1
let g:pymode_breakpoint_bind = '<leader>b'
let g:pymode_breakpoint_cmd = ''
" Code checking
let g:pymode_lint = 1
let g:pymode_lint_on_write = 1
let g:pymode_lint_unmodified = 0
let g:pymode_lint_on_fly = 0
let g:pymode_lint_message = 1
let g:pymode_lint_checkers = ['pyflakes', 'pep8', 'mccabe']
" Rope support
let g:pymode_rope = 1
let g:pymode_rope_completion = 1
let g:pymode_rope_complete_on_dot = 1
let g:pymode_rope_completion_bind = '<C-Space>'
" Syntax
let g:pymode_syntax = 1
let g:pymode_syntax_slow_sync = 1
let g:pymode_syntax_all = 1
" ===================================================
" NERDTree setting
" ===================================================
let NERDTreeIgnore=['\.pyc$', '\.pyo$', '__pycache__$']
autocmd VimEnter * if !argc() | NERDTree | endif  " Load NERDTree only if vim is run without arguments
nmap <C-n> :NERDTreeToggle<cr>
用 vim-plug 进行安装
# 首先打开 vim
:PlugInstall
NERDTree快捷键
ctrl+w  光标自动在左右侧窗口切换
ctrl+h  光标自动在左侧窗口
ctrl+l  光标自动在右侧窗口
o       打开关闭文件或者目录
p       到上层目录
P       到根目录
K       到第一个节点
J       到最后一个节点
u       打开上层目录
安装 gocode 需要注意:
# 需要 `go get gocode`
# 由于过程中需要 `git` 访问 google 的网站,所以不仅需要进行系统代理配置,也需要进行 git 代理配置
# 系统代理配置
export http://proxy.example.com:port
# git 代理配置
git config --global http.proxy http://proxy.example.com:port
主题位置:
/.oh-my-zsh/themes
目前的效果图:

tmux
Install
brew install tmux
配置文件
tmux 的配置很复杂,所以我直接借用了别人的配置文件 .tmux
具体的命令可以查看 tmuxcheatsheet
最终效果图:

快捷的搭建方式
# 首先安装好 Vim、 tmux 和 zsh
git clone https://github.com/zyt312074545/develop-config
cp develop-config/.vimrc ~/.vimrc
cp develop-config/.tmux.conf ~/.tmux.conf
# 注意 vim-plug 和 gocode 的安装就可以和我的配置一样