「實用」打造自我感覺非常漂亮的Mac終端

背景

(今天我是一個美妝博主😊) 突然發現自己使用的iterm2終端樣式有些樸素,爲了讓她看起來花枝招展的,我決定給她打扮打扮。畢竟每天面對她的時間比對象還多……

效果對比

因爲每個人的喜好都不一樣,所以放一張大家都喜歡的效果圖很難,之前我很喜歡黑色主題,後來,我對淺色反倒情有獨鍾,現在我的開發工具idea、vscode等都是使用的淺色,據說對自己的眼睛好。 深色 淺色 本文的亮點就是:只告訴你設置方法,最終妝後效果由你自己的審美決定。那上面的紅玫瑰和白玫瑰,你更喜歡哪個呢?評論區爲你選擇的玫瑰投票。

配置方法

下面給大家詳細講一下深色主題的設置方法。

安裝oh-my-zsh

oh-my-zsh:Unleash your terminal like never before.

oh-my-zsh 是一款社區驅動的命令行工具,正如它的主頁所說,oh-my-zsh是一種生活方式。它基於 zsh 命令行,提供了主題配置,插件機制,內置的便捷操作,給我們一種全新使用命令行的方式。所以,安裝oh-my-zsh前提條件:必須安裝 zsh,好像是一句廢話。目前來看macOS系統默認推薦的命令行就是zsh。如果你默認的命令行不是zsh,可以執行以下命令進行更換:

chsh -s /bin/zsh

zsh準備好之後,我們就可以正式開始安裝使用oh-my-zsh啦,下面有兩種方式可供參考:

  • 方式一(極力推薦) 通過命令行下載安裝
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
  • 方式二 (如果方式一無法安裝,再嘗試該方式) 1、點擊下載該腳本; 2、然後執行install.sh
sh install.sh

安裝美化神器:Powerline

安裝完oh-my-zsh,我們重啓終端,此時的終端在輸入命令時,已經美色側漏,爲了讓她變得更華麗,我們繼續化妝。

Powerline:一款比較酷炫的狀態欄工具,可以美化終端和vim界面。

這款組件由python開發,因此我們需要本地有python及pip環境,安裝命令如下:

pip install powerline-status

(如果你是pip3,可能需要將pip替換爲pip3來安裝) 安裝過後,爲了字體樣式更加beautiful,我們需要安裝Powerline的字體庫,官方提供的安裝命令如下:

# clone
git clone https://github.com/powerline/fonts.git --depth=1
# install
cd fonts
./install.sh
# clean-up a bit
cd ..
rm -rf fonts

iterm2更換字體

字體包安裝完成後,我們就需要更改iterm2的字體庫,因爲一些界面樣式,使用系統默認自帶的字體會發生亂碼。 更改iterm2字體 我們搜索meslo,選擇合適的字體大小(S L M)。同樣的,我們使用的其他IDE終端也需要更改,比如mac自帶的終端、idea、vscode,否則也會亂碼,具體步驟可以查看文末,這裏我們着重講一下Iterm2的配置。

Iterm2更換配色

如下圖所示,總有你喜歡的配色,當然你還可以去官網下載導入更多配色 Iterm2更換配色

設置主題

oh-my-zsh內置了很多主題,在目錄下:

cd ~/.oh-my-zsh/themes

我當前使用的自帶的是agnoster主題,我們可以直接配置。用vim編輯器打開當前用戶目錄下隱藏文件.zshrc,將ZSH_THEME後面字段改爲agnoster

vim ~/.zshrc

更換專題agnoster 重新打開iTerm2即可看到最新妝後效果,當然也可以查看更多主題

設置語法高亮

繼續化妝,我們可以直接使用homebrew安裝zsh-syntax-highlighting插件,它可以突出顯示命令,有助於在運行命令之前檢查命令,特別是捕獲語法錯誤,簡直不要太好用。

brew install zsh-syntax-highlighting

然後在根目錄下.zshrc中插入下面內容:

source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source ~.zsh

**注意:**這裏如果,我說的是如果,source 的時候有提示問題:

compinit:503: no such file or directory: /usr/local/share/zsh/site-functions/_brew_cask

原因有可能就是裝了brew緩存記錄導致的,我們執行 brew cleanup 即可修正。

代碼補全插件

有一些插件能讓zsh變得更加酷炫!使用更加方便!比如模糊補全命令,之前我們的命令都是必須前綴命中才會補全,現在不用這麼麻煩啦,直接模糊補全!

  • 智能補全:zsh-completions

在oh-my-zsh存儲庫中克隆存儲庫:

git clone https://github.com/zsh-users/zsh-completions ${ZSH_CUSTOM:=~/.oh-my-zsh/custom}/plugins/zsh-completions

注意:你可能在git clone github倉庫時,會遇到SSL_ERROR_SYSCALL相關錯誤,但瀏覽器可以正常訪問github,那是因爲clone請求需要LibreSSL來進行加密,但是環境沒有curl-openssl模塊,所以我們可以使用homebrew來安裝該模塊:

brew install curl-openssl

安裝成功後即可正常加密請求github倉庫資源(如果不行的話來打我)。 修改.zshrc文件,找到plugins,更新內容:

plugins=(git zsh-completions)
  • 歷史命令補全:zsh-autosuggestions 安裝完這個命令,你會驚奇的發現,在敲擊一些命令的時候,會自動提示你的歷史命令! 官方文檔提供的zsh-autosuggestions安裝步驟
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

Add the plugin to the list of plugins for Oh My Zsh to load (inside ~/.zshrc):

plugins=( 
    # other plugins...
    zsh-autosuggestions
)

Start a new terminal session.

就不翻譯了,大家照着做就可以體驗一下智能推薦的歷史命令補全,點擊方向鍵->即可補全,屢試不爽!(不過,我試用過後發現不是很實用,反而會不方便,於是,就在配置中取消了)大家各有所需,可以自由選擇。

Iterm2水印

Iterm2還可以有更多個性化的設置,比如我們可以將遠端服務器的連接信息放到profiles裏面,然後通過快捷鍵直接連上遠端服務器,這樣就不用自己手動寫命令,很是方便。但是這樣會有一個問題,當有多個遠端服務器的時候,我們不知道當前是在哪一個服務器上面。這該如何優雅解決呢? 我來告訴你,iterm2支持在終端添加一個自定義的水印來顯示當前的位置!設置方式如下圖所示: badge 效果就是右上角有水印可以標註我們現在訪問的是哪一個服務器。

效果圖中笑臉😀的配置

細心的朋友會發現,我的終端左側有一個笑臉,這是因爲,我想告訴大家:我們面對bug要保持微笑、樂觀的心態,設置方法如下: 我們進入主題目錄

cd ~/.oh-my-zsh/themes

編輯當前使用的主題:agnoster

vim agnoster.zsh-theme

找到prompt_context,按照下圖增加表情: 表情符號

字體亂碼

細心的朋友還會發現,自帶的終端、idea、vscode會出現字體亂碼的現象,解決辦法就是通過更換字體包來支持這些特殊符號。

  • 自帶終端

打開terminal的偏好設置修改字體包爲Mesloterminal 正常效果如下: 正常效果

  • vscode

同理,我們也需要修改vscode的字體包爲Meslo 打開vscode的設置,然後搜索terminal font修改如下圖所示: terminal font

  • idea

再同理,我們也需要修改idea的字體包爲Meslo 打開idea的設置,然後搜索console font 修改如下圖: idea的設置

相關鏈接

文中提到的跳轉鏈接總結如下:

最後

當我們費勁千辛萬苦終於搞定終端的樣式後,你會發現這一切努力都是值得的!因爲她現在不僅像花瓶一樣好看,而且變得比以前更加實用!你更加離不開她啦!

請大家持續關注微信公衆號:程序員小明!!!一個非著名程序員的日常。 程序員小明 PS:配置過程中有遇到文中沒提到的問題,歡迎討論!

本文可轉載,但需聲明原文出處。 程序員小明,一個很少加班的程序員。歡迎關注微信公衆號“程序員小明”,獲取更多優質文章。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章