[Thủ thuật] Tối ưu Terminal của Mac với iTerm2 và Oh My Zsh

Nguyễn Đắc Sang
VTeam
Published in
4 min readFeb 27, 2017

Xin chào các bạn đọc yêu vấu ❤ , đã lâu lắm rồi mình không viết gì đó, chắc là do dư âm lười hậu Tết… Để luyện tay luyện phím lại, mềnh sẽ khởi động với một bài tut nho nhỏ hướng dẫn cách tối ưu Terminal trong hệ điều hành MacOS.

Chém gió về cái Terminal và cái Mac

Hầu hết các tool hỗ trợ chúng ta phát triển phần mềm đều chỉ có giao diện “dòng lệnh”. Tức là thay vì có một cái bảng đẹp đẽ hiện lên với các nút Compile, Run, Test,… thì chúng ta sẽ mở cmd và gõ python main.py. Tại sao lại phải rườm rà như vậy nhỉ? Theo mình thì có thể là do các nguyên nhân sau:

  • Việc phát triển và bảo trì một chương trình chỉ nhận input, xử lí, và xuất output đơn giản hơn nhiều so với một chương trình có giao diện đồ họa.
  • Không tin à? Bạn đọc hãy thử tìm hiểu vài từ khóa sau đây: GUI event loop, MVC, MVP, MVVC, UI, UX
  • Lập trình viên là những người tiếp xúc với những dòng code hàng ngày. Rời bỏ giao diện văn minh hiện đại để về với những dòng lệnh nguyên thủy cũng chẳng phải là việc quá đỗi khó khăn hen.

Vì vậy nên Terminal/Command-line là một công cụ không thể thiếu đối với các lập trình viên. Đây cũng là một trong những lý do khiến nhiều người chuyển từ Windows sang các hệ điều hành hệ Unix như Linux hay Mac. So sánh ngôn ngữ shell của Windows với Unix cũng giống như so sánh C++ với Python vậy đó :D .

Mình chọn Mac vì Mac đẹp, dùng sướng, lại còn hỗ trợ dev iOS. Nếu bạn không muốn bỏ tiền để mua Macbook hay bỏ công để cài Hackintosh thì hãy thử dùng Linux. Yên tâm là bạn sẽ chỉ muốn boot sang Win vì game và .NET, believe me. =))

Phẫu thuật thẩm mĩ cái Terminal

Thực ra thì cái Terminal của Mac vốn đã có tính tùy biến rất cao rồi. Nhưng có voi thì phải đòi Hai Bà Trưng. Vì vậy nên mình sẽ hướng dẫn các bạn thật ngắn gọn cách nâng cấp em gái Terminal cả về mặt trang phục lẫn điện nước nhé. Để sau này có thằng nào gặp cũng không nhận ra luôn.

Sau khi đi Thái xong thì dung nhan con bé sẽ từa tựa thế này:

Enhanced Terminal demo

Ảnh mượn từ bài viết của anh sangnd

Tất cả các lệnh đều là chạy trên Terminal/iTerm2 nhé

  1. Cài http://brew.sh/.
  • /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  1. Homebrew là phần mềm quản lí phiên bản cho Mac. Các bước sau mình sẽ sử dụng Homebrew.
  2. Cài iTerm2.
  • brew cask install iterm2
  1. iTerm2 là emulator thay thế cho Terminal mặc định, đẹp hơn, nhiều chức năng hơn.
    Sau khi mở iTerm2 lên thì đổi theme sang Solarized Dark nhé.
Solarized Dark iTerm2
  1. Cài www.zsh.org.
  • brew install zsh zsh-completions
  1. Zsh là shell thay thế cho bash shell mặc định của Mac, có nhiều thứ hay ho hơn, nhất là…
  2. Cài Oh My Zsh.
  • sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
  1. Oh My Zsh là framework giúp các bạn cài hàng trăm plugin và theme cho cái thèng zsh ở trên, cực kỳ tuyệt vời. :D
  2. Gõ dòng lệnh sau để mở file config của zsh:
  • open ~/.zshrc
  1. Tìm dòng ZSH_THEME và đổi thành “agnoster”
Change theme to agnoster
  1. Agnoster là một theme khá đẹp và phổ biến, hỗ trợ git, cũng chính là cái theme trong ảnh demo của mình.
  2. Cài hết đống font Powerline, sau đó vào Preferences đổi font nhé.
Change font

Voila!

Chỉ với sáu bước đơn giản bạn đã thay đổi hoàn toàn dung mạo của Terminal, từ một cái màn hình đen trắng nhàm chán thành màn hình xanh đỏ tím vàng đỡ nhàm chán hơn =)).

Tuy nhiên, như đã nói là Oh My Zsh có hàng trăm plugin với theme đủ cho các bạn vọc cả ngày. Nếu bạn cảm thấy thay mỗi cái theme chưa đủ độ “phê”” thì hãy thử hút thêm ít “hàng” nhé:

  • Powerlevel9k là một theme khá bá đạo với khả năng tùy biến cao. Showcase.
  • Auto-complete, ẩn username, syntax highlight,… Here

Bài viết được truyền cảm hứng từ bài iTerm2 + Oh My Zsh + Solarized color scheme + Meslo powerline font + [Powerlevel9k] — (macOS), cái ảnh đầu bài cũng là mượn của nó luôn ahihi.

--

--