工欲善其事,必先利其器git
今天窗外雨兒淅瀝,本叔內心異常平靜,獻上一篇如何打造咱們 Mac 上好用的終端紀實。落霞與孤鶩齊飛,實用與裝X並濟!程序員
注:如下的步驟我都親身實踐過,環境 macOS Sierra 10.12,我相信不管比我高或者是低版本的系統都可以正確執行,請你們放心。github
最終效果圖: shell
iTerm2 是網上你們公認的在 Mac 上最好用的終端工具,比系統自帶的 Terminal 智能和強大,詳細的操做大法等大叔積累夠了再出一篇文章。終端工具通俗理解就是 Windows 下的 CMD。(Emmmmm...沒用過的同窗就算了)vim
而 「Oh My Zsh」 就厲害了,不過仍是要說一下 Shell。windows
咱們都知道 Mac 的操做系統是基於 Linux/Unix 進行開發的,其實 Windows 也是,人家一開始不認可,最後面不得已才說借鑑了一部分 Linux/Unix,呵呵。言歸正傳,Shell是Linux/Unix的一個外殼,你理解成衣服也行。它負責外界與Linux內核的交互,接收用戶或其餘應用程序的命令,而後把這些命令轉化成內核能理解的語言,傳給內核,內核是真正幹活的,幹完以後再把結果返回用戶或應用程序。安全
Linux/Unix提供了不少種Shell,爲毛要這麼多Shell?其實就是那些大牛程序員看到不爽的Shell,就會本身從新寫一套,慢慢造成了一些標準,經常使用的Shell有這麼幾種,sh、bash、csh等,想知道你的系統有幾種shell,能夠經過如下命令查看:bash
$ cat /etc/shells
複製代碼
顯示以下:微信
/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
複製代碼
這裏 Mac 會比 Linux 多預裝了一份 zsh。目前經常使用的 Linux 系統和 OS X 系統的默認 Shell 都是 bash,可是真正強大的 Shell 是深藏不露的 zsh。但因爲複雜的配置,致使很長一段時間都無人問津,直到有一天,國外有個窮極無聊的程序員開發出了一個可以讓你快速上手的 zsh 項目,叫作「oh my zsh」,Github網址:github.com/robbyrussel…session
官方下載網址:www.iterm2.com/
下載好安裝就好了,沒有什麼特別須要注意的。
注意:如下所涉及到的命令,若沒有特殊聲明,都是在 iTerm2 上運行的。
打開 iTerm2,並在該終端上執行如下命令:
curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh
複製代碼
這句命令意思就是下載該腳本並執行
Powerline is a statusline plugin for vim, and provides statuslines and prompts for several other applications, including zsh, bash, tmux, IPython, Awesome, i3 and Qtile.
說白了 Powerline 就是用 Python 寫的能夠美化終端輸出的腳本,並且支持多種終端。
首先查看本機是否有安裝 pip:
$ pip --version
複製代碼
若是沒有成功輸出版本信息的話,那就先安裝 pip:
$ sudo easy_install pip
複製代碼
若是已經確認本機有安裝的話,那就來正式安裝 Powerline:
$ pip install powerline-status
複製代碼
若是在這步提示由於權限不足沒法成功安裝的話(通常是 macOS Sierra 以上的用戶),是由於蘋果官方的 SIP 安全保護策略,如下步驟能夠暫時關閉,等咱們安裝好再從新開啓,能夠放心操做。
關閉 SIP 操做:
這樣就將 SIP 關閉了,重啓電腦後從新在 iTerm2 上執行安裝 powerline 的命令
安裝完後,能夠出於安全性考慮,咱們仍是把 SIP 啓動,以保護咱們的電腦吧!
打開 SIP 操做:
字體庫的 Github 倉庫地址:github.com/powerline/f…
Step 1: 將倉庫 git clone 下來,而後進入到 install.sh
腳本文件所在的目錄;
Step 2: 執行命令安裝字體庫:
$ ./install.sh
複製代碼
安裝完成後,會提示全部字體安裝到了 ~/Library/Fonts
文件夾下
以下圖所示,把 iTerm2 的設置裏的 Profile 中的 Text 選項卡中裏的 Regular Font
和 Non-ASCII Font
的字體都設置成 Powerline 的字體。(能夠注意到,Powerline 字體名稱後面都有加 powerline
字樣,很好區分)
配色方案的 Github 倉庫地址:github.com/altercation…
Step 1: 將倉庫 git clone 下來,而後進入到文件夾;
Step 2: 雙擊 Solarized Dark.itermcolors
和 Solarized Light.itermcolors
兩個文件就能夠把配置文件導入到 iTerm2 的配色方案列表裏;
Step 3: 設置 iTerm2 的配色方案;
主題有不少種,這裏選擇了 agnoster 主題,你們熟悉操做以後,能夠本身尋找主題並安裝
agnoster 主題的 Github 倉庫:github.com/fcamblor/oh…
Step 1: 將倉庫 git clone 下來,而後進入到文件夾;
Step 2: iTerm2 上運行 install 文件,主題將安裝到 ~/.oh-my-zsh/themes
目錄下
Step 3: 爲 zsh 設置該主題
$ vim ~/.zshrc
# 找到 ZSH_THEME 字段,並修改爲:ZSH_THEME="agnoster"
複製代碼
使用該工具的做用是當咱們在終端上輸入正確或成功執行的命令時,會綠色提示;相反不成功或錯誤命令時,會有紅色警告提示。
zsh-syntax-highlighting 的 Github 倉庫地址:github.com/zsh-users/z…
Step 1: 進入 ~/.oh-my-zsh/custom/plugins/
目錄;
Step 2: 將倉庫 git clone 到當前目錄;
Step 3: 在 .zshrc
文件中追加以下內容
plugins=(zsh-syntax-highlighting)
source ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
複製代碼
Step 4: 最後重載配置文件
$ source ~/.zshrc
複製代碼
這樣就同時配置好了zsh和oh-my-zsh。
至此,全部配置操做已經結束。能夠酷炫地使用屬於你的 iTerm2 了!
有時候咱們想在 Finder 的當前目錄下打開 iTerm2,以免在 iTerm2 手動進入相應路徑,網上有介紹使用 Go2Shell 插件的用法,在這裏我推薦使用 Mac 自帶的 Automator 建立 AppleScript 以執行完成咱們的需求。
在 Launchpad 中打開 Automator:
選擇 文件
-> 新建
-> 服務
:
選擇 AppleScript 並粘貼進腳本代碼:
代碼以下:
on run {input, parameters}
tell application "Finder"
set pathList to (quoted form of POSIX path of (folder of the front window as alias))
set command to "clear; cd " & pathList
end tell
tell application "System Events"
-- some versions might identify as "iTerm2" instead of "iTerm"
set isRunning to (exists (processes where name is "iTerm")) or (exists (processes where name is "iTerm2"))
end tell
tell application "iTerm"
activate
set hasNoWindows to ((count of windows) is 0)
if isRunning and hasNoWindows then
create window with default profile
end if
select first window
tell the first window
if isRunning and hasNoWindows is false then
create tab with default profile
end if
tell current session to write text command
end tell
end tell
end run
複製代碼
粘貼完後,按 command+s 以保存,在彈出的提示框內輸入該服務的名字,自定義就好。
接下來設置一下直接調用該服務的鍵盤快鍵鍵:
完成!
$ chsh -s /bin/zsh
$ chsh -s /bin/bash
Preference-General-Closing
欄目,將 Confirm "Quit iTerm2(⌘Q)"
command選項勾選去掉就行~/.oh-my-zsh/themes
路徑下找到 agnoster.zsh-theme
文件,可以使用文本工具打開,將裏面的 build_prompt
下的 prompt_context
字段在前面加#註釋掉便可。工做和興趣上努力讓本身變得酷一點,生活上努力讓本身變得更溫暖一點。
另外,很感謝你閱讀完了本文,我相信你不同凡響。