瞬間提升命令行的生產力100%
關于生產力的話題總是讓人充滿興趣的。
這里有許多方式提升你的生產力。今天,我共享一些命令行的小技巧,以及讓你的人生更輕松的小秘訣。
TL;DR
在本文中討論的內容的全部設置及更多的信息,可以查看: https://github.com/sobolevn/dotfiles。
Shell
使用一個好用的,并且穩定的 shell 對你的命令行生產力是非常關鍵的。這兒有很多選擇,我喜歡 zsh 和 oh-my-zsh。它是非常神奇的,理由如下:
- 自動補完幾乎所有的東西
- 大量的插件
- 確實有用且能定制化的“提示符”
你可以通過下列的步驟去安裝它:
- 安裝 zsh: https://github.com/robbyrussell/oh-my-zsh/wiki/Installing-ZSH
- 安裝 oh-my-zsh: http://ohmyz.sh/
- 選擇對你有用的插件: https://github.com/robbyrussell/oh-my-zsh/wiki/Plugins
你也可以調整你的設置以 關閉自動補完的大小寫敏感 ,或改變你的 命令行歷史的工作方式。
就是這樣。你將立馬獲得 +50% 的生產力提升。現在你可以打開足夠多的選項卡(tab)了!(LCTT 譯注:指多選項卡的命令行窗口)
主題
選擇主題也很重要,因為你從頭到尾都在看它。它必須是有用且漂亮的。我也喜歡簡約的主題,因為它不包含一些視覺噪音和沒用的信息。
你的主題將為你展示:
- 當前文件夾
- 當前的版本分支
- 當前版本庫狀態:干凈或臟的(LCTT 譯注:指是否有未提交版本庫的內容)
- 任何的錯誤返回碼(如果有)(LCTT 譯注:Linux 命令如果執行錯誤,會返回錯誤碼)
我也喜歡我的主題可以在新起的一行輸入新命令,這樣就有足夠的空間去閱讀和書寫命令了。
我個人使用 sobole 主題。它看起來非常棒,它有兩種模式。
亮色的:
以及暗色的:
你得到了另外 +15% 的提升,以及一個看起來很漂亮的主題。
語法高亮
對我來說,從我的 shell 中得到足夠的可視信息對做出正確的判斷是非常重要的。比如 “這個命令有沒有拼寫錯誤?” 或者 “這個命令有相應的作用域嗎?” 這樣的提示。我經常會有拼寫錯誤。
因此, zsh-syntax-highlighting 對我是非常有用的。 它有合適的默認值,當然你可以 改變任何你想要的設置。
這個步驟可以帶給我們額外的 +5% 的提升。
文件處理
我在我的目錄中經常遍歷許多文件,至少看起來很多。我經常做這些事情:
- 來回導航
- 列出文件和目錄
- 顯示文件內容
我喜歡去使用 z 導航到我已經去過的文件夾。這個工具是非常棒的。 它使用“近常frecency” 方法來把你輸入的 .dot TAB 轉換成 ~/dev/shell/config/.dotfiles。真的很不錯!
當你顯示文件時,你通常要了解如下幾個內容:
- 文件名
- 權限
- 所有者
- 這個文件的 git 版本狀態
- 修改日期
- 人類可讀形式的文件大小
你也或許希望缺省展示隱藏文件。因此,我使用 exa 來替代標準的 ls。為什么呢?因為它缺省啟用了很多的東西:
要顯示文件內容,我使用標準的 cat,或者,如果我希望看到語法高亮,我使用一個定制的別名:
- # exa:
- alias la="exa -abghl --git --color=automatic"
- # `cat` with beautiful colors. requires: pip install -U Pygments
- alias c='pygmentize -O style=borland -f console256 -g'
現在,你已經掌握了導航。它使你的生產力提升 +15% 。
搜索
當你在應用程序的源代碼中搜索時,你不會想在你的搜索結果中缺省包含像 node_modules 或 bower_components 這樣的文件夾。或者,當你想搜索執行的更快更流暢時。
這里有一個比內置的搜索方式更好的替代: the_silver_searcher。
它是用純 C 寫成的,并且使用了很多智能化的邏輯讓它工作的更快。
在命令行 history 中,使用 ctrl + R 進行 反向搜索 是非常有用的。但是,你有沒有發現你自己甚至不能完全記住一個命令呢?如果有一個工具可以模糊搜索而且用戶界面更好呢?
這里確實有這樣一個工具。它叫做 fzf:
它可以被用于任何模糊查詢,而不僅是在命令行歷史中,但它需要 一些配置。
你現在有了一個搜索工具,可以額外提升 +15% 的生產力。
總結
通過這些簡單的步驟,你可以顯著提升你的命令行的生產力 +100% 以上(數字是估計的)。
這里還有其它的工具和技巧,我將在下一篇文章中介紹。