# 開發環境
在PC下,我一般都會安裝好各種開發語言,設置好命令行工具,搭配好開發的編輯器或IDE。
### 開發語言
mac系統上自帶了gcc, g++, ruby, python的環境。Objective-C的開發當安裝上xCode之后也配置好了。
我一般還會安裝上nodejs, git ,java。
安裝的方式我會選擇brew,類似linux系統下的apt-get。但有些命令比如git在xCode安裝的時候就已經綁定了,這時需要我們將`/usr/local/bin`添加到PATH路徑的最前面,保證系統優先調用到的是brew下載的。在命名行下輸入:`echo export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile`。
這一步也可以執行`brew doctor`來檢測。
### 終端
### Finder中打開
通常Finder會搭配上XtraFinder插件,可以在目錄中直接打開終端,且可指定終端為iTerm2。
### iTerm2
在我還沒有使用mac的時候,我就常常看見別人推薦iTerm 2這個強大的終端軟件,用來替代原生的終端。
目前我設置過的就是新建窗口的大小,默認是80x25我覺得太小了,改為了120x30。
下一步打算修改一下配色,以及設置一下全局開啟的快捷鍵。
### zsh
shell是終端與系統交互的一種語言,默認的是bash,但是最好的是zsh。安裝方式我使用:`brew install zsh`。
替換bash的方式:`chsh -s /bin/zsh`。關閉終端,再次打開即為zsh。
注意:之前我們使用bash,我們為了使用brew安裝的軟件,修改了`~/.bash_prorile`文件,新的zsh自己也有配置文件,是`~/.zshrc`,需要將配置拷貝到`~/.zshrc`中。
或者在安裝完oh-my-zsh后,執行`echo export PATH='/usr/local/bin:$PATH' >> ~/.zshrc`。
### oh-my-zsh
由于zsh的配置是很復雜的,所以有這個一個開源項目[oh-my-zsh](https://github.com/robbyrussell/oh-my-zsh?source=c),幫助我們簡化zsh的配置。
官網有自動安裝的方法,我選擇的是: `curl -L http://install.ohmyz.sh | sh`。
安裝完成后,重啟終端就能看到界面的變化了。zsh的配置文件是`~/.zshrc`,配色對應的是`ZSH_THEME`.
### oh-my-zsh插件
oh-my-zsh的強大之處還在于提供了完善的插件系統。相關的文件存儲在`~/.oh-my-zsh/plugins`中,默認提供了100多種。。。
默認提供的插件是git,需要添加的話,修改`~/.zshrc`中`plugins=(git autojump)`即可。
#### 自動跳轉
[z](https://github.com/rupa/z)和[autojump](https://github.com/joelthelion/autojump)。是兩個可以實現自動跳轉的插件,都是可以通過brew下載的。
我目前使用的是`autojump`,通過`brew install autojump`下載,并且在`~/.zshrc`中修改`plugins=(git autojump)`。重啟終端。
使用就可以使用j來代替cd命令了,并可以添加自定義目錄,具體使用說明參考autojump的文檔或者`autojump --help`。
### 參考資料
- [分享了下自己的終端環境,iTerm2,zsh,z,tmux。](http://www.v2ex.com/t/77918)
- [終極 Shell——ZSH](http://zhuanlan.zhihu.com/mactalk/19556676)
- 介紹
- 程序員基礎知識
- 字符編碼
- 技術名詞
- 語義化版本
- 命名規范
- 書寫文檔
- 開源協議
- 目錄結構
- 正則表達式
- 平凡之路
- 數據結構與算法
- 堆和棧
- 浮點數類型
- XML和JSON
- 算法學習之路
- 排序算法
- 代碼架構
- 設計模式
- 常用的Javascript設計模式
- 面向對象編程
- 繼承
- 多態
- 封裝
- 面向接口編程
- 代碼評審
- 六種量化你代碼的方式
- 程序員必備的代碼審查(Code Review)清單
- 服務器部署
- AWS簡介
- 網絡知識
- HTTPS, SPDY和 HTTP/2性能的簡單對比
- HTTP狀態碼
- 懂點設計
- 佳作賞析
- 無縫平鋪
- Sketch學習
- 設計與實現的平衡
- 寫點東西
- 使用gitbook
- 合格的PM
- 一個好的產品經理
- 產品經理的技能
- 團隊合作
- 關于招聘
- 培訓新人
- 領導能力
- 獲取知識
- MOOC
- Podcasts
- 英語學習
- 設計學習
- 前端學習
- iOS學習
- 游戲開發
- 關注健康
- 過勞檢測
- 關于睡眠
- 提升效率
- 學會閱讀
- 學會提問
- 善用搜索
- 學會寫作
- 時間管理
- 知識管理
- 文件管理
- 密碼管理
- 制作視頻
- 制作PPT
- 論音樂對效率的影響
- 程序員效率指南
- SOHO
- 創業資源
- Hacker
- 保護隱私
- 關于工作
- 找工作前需要思考的問題
- 原則與技巧
- 關于簡歷
- 其他方面
- 硬件相關
- 常用軟件
- Windows
- 硬件配置
- 系統安裝
- 常用軟件
- Mac
- 通用設置
- 權限問題
- alias設置
- 常用軟件
- 開發環境
- 快捷鍵設置
- 常用終端命令
- dotfiles
- Android
- 常用軟件
- 如何登錄美國區GooglePlay
- 開發工具
- git
- EditorConfig
- node
- shadowsocks
- ST3--Windows篇
- ST3--Mac篇
- gulp
- 字體的選擇
- Emacs
- WebStorm
- tmux
- Sketch
- Sketch中文學習資料
- Trello
- 使用Trello管理項目的經驗
- git進階
- 15分鐘學會使用Git和遠程代碼庫
- GitHub秘籍
- JetBrains
- IDE設置
- 附錄
- 計算機科學與技術
- 網站
- 書籍
- 工具