Last Updated on 2023-03-14 by Clay
「我大部分的上班時間都用來找一些讓 Linux 終端機顯示得更漂亮的工具,
反正老闆看了也只會覺得我很厲害要有美觀的介面才能提高生產力!」 —— 愛貓工程師
需求簡介
當我們在終端機中工作時,免不了沒完沒了地和程式碼、檔案文件打交道,大部分時候如果文字全部都呈現同樣的顏色,只會讓人視覺疲累、抓不住重點。
當然,你可以在你習慣的編輯器,比方說 VIM,使用預設的、或是額外裝設的一些支援程式碼高亮的套件,來幫助自己更舒服地閱讀程式碼或文字敘述。不過,若是今天你想要把這些程式碼印出在終端機上,想要有顏色輸出就又是另外一回事了。
舉個例子,以下是我直接使用 cat
指令印出某份 python 檔案的情況。
你會發現這份檔案完全沒有上色,預設是黑白的。短一點的程式還好,若是非常長的程式或設定,恐怕會看得眼睛發痠。
所以我希望能把這些印出的文件顯示出顏色!據我所知,我們有兩種工具可以選擇:
- python-pygments
- highlight
Pygments
這是一個 python 套件,我們可以使用 pip
套件管理工具來安裝,安裝好後在命令列自然就可會有 pygmentize
指令可以使用。
pip3 install pygments
之後如果要讓打印出的文件上色,可以使用 pygmentize <file_name>
。
highlight
另一個方法就是使用 Linux 中的 highlight
指令。首先我們進行安裝。
sudo apt install highlgiht
之後,我們設定輸出模式為 ANSI,就可以打印出高亮的文本內容了。
highlight -O ansi <file_name>
Output: