提高 Linux 開發效率的 5 個工具
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
我們經常需要長時間地坐在電腦前做一項具體的工作只為能夠優化工作流程。這包括選擇和配置能讓你最高效工作的工具。從長遠來看,簡單易學的工具並不總是好的,那些能夠充分個性化並無縫地融入獨特工作流程的工具才是真正的好工具。
在這篇文章中,我想向大家介紹5款免費又開源的工具,而且它們在我的軟體開發生涯中發揮了很重要的作用。
1.Zsh以及Oh-My-Zsh
Zsh是一個主要針對互動性和可定製而設計的shell。我常常搭配Oh-My-Zsh一起使用,Oh-My-Zsh是一個社群支援的框架,可提供無數外掛和主題。
一些很棒的功能:
- 比在bash中的實現更好,因為它是通過一個可以重複迴圈的互動列表,而不是每次按下tab才能輸出的靜態文字展現的。
- 可以擴充套件部分匹配的路徑。例如work/tom<tab>可以變為my_work/apache-tomcat-8.0.23。
- 強大的Git支援:提供Git命令和提示位於工作目錄的Git倉庫的狀態的視覺指示器的實現。
- 可定製的主題,支援左右提示。
它可以用來替代bash,並且很容易上手,建議大家能夠嘗試用一用。
2.Less
我剛開始使用Linux的時候,我用的是Midnight Commander的內建功能在終端和各種基於GUI的應用程式中檢視檔案。
Midnight Commander的檢視模式,mcview,不但易於使用也易於學習,但less比它(以及許多其他文字瀏覽器)更有優勢,因此我選擇了Less為通用的文字檢視:
- 預設情況下啟動時沒有滑鼠支援,因此它不會淹沒滑鼠事件,所以你可以在終端輕鬆地選擇和複製文字。(雖然mc加-d選項也可以完成。)
- 可輕鬆處理大檔案。我選擇轉換到Less的主要原因是,如果我要檢查大型日誌檔案,在我到處導航,例如檢查檔案的末尾的時候,mcview不會完全切斷它。Less就很快,只需按下“G”就行,然後按“g”就能回到起點。
- 預設已安裝。
- 使用Vim作導航,因此能很好地融入到其他工具的約定中。很容易搜尋,使用“/”、“?”、“n”和“N”鍵能有高亮效果,使用“j”和“k”導航。當然,它也支援箭頭鍵和PgDn / PgUp鍵。
- 許多工具都使用它。例如,man和git diff工具都使用Less來呈現資訊,所以你應該已經很熟悉它了。
Less入門很容易,因為你瞭解它,並且它早就在你的系統上了。
3. Vim
關於Vim,我已經寫過一些帖子,因此打算長話短說。這是一個非常偉大的通用文字編輯器,具備許多的外掛和大量的可定製性,可以協助我們完成從工作簡單的文字編輯到程式設計的各種任務。
它也有很多非常不錯的替代品,比如說Kate,Gedit,甚至是完全成熟的IDE(當涉及到程式設計的時候),但Vim中提供了一個與之互動的獨特方式,使得它成為了一個非常有趣的編輯器。
除此之外,我認為大家還需要注意:
- 有許多外掛。
- 大多數重複性任務可以自動化或輕鬆解決。
- 可以從終端進行操作。在正常模式下使用Ctrl + Z,就可以傳送到背景,非常方便。
- 只需要很少量的擊鍵就可以執行各種操作和可進一步組合的導航,這使得它既高效,又可協同工作,哪怕是在連線到遠端伺服器的高延遲連線中。
學習Vim需要時間,但是如果操作得當,你絕對可以事半功倍。
4. XMonad
XMonad是用Haskell寫的平鋪視窗管理器。XMonad提供的各種自動佈局和簡單易學的快捷鍵使得它從鍵盤操作桌面非常自然。而且還有大多數基於活動的終端和麵向鍵盤的工具,真的很不錯。
它的一些重要功能:
- 極簡主義和高度可配置。預設配置中幾乎沒有窗戶裝飾和工具欄,而且可以大範圍進行定製。
- 面向鍵盤,友好的使用者體驗。
- 平鋪。不必手動排列視窗。
- 如果你使用滑鼠,游標所在的視窗自動獲得焦點。
XMonad易於安裝和上手,但它需要一些調整來完成定製,因為很多你在其他環境中慣於使用的功能都不是預設的。它就是這麼簡約,所以建議你在使用它之前先在這裡檢視預設的快捷鍵,因為預設情況下它只為使用者提供了一個空白的螢幕,其他什麼都沒有。
由於它只是一個視窗管理器,我會搭配KDE軟體一起使用。
5.Konsole
一個偉大的終端應用程式是使用命令列應用程式的必需品。由於在桌面環境時我更喜歡KDE,所以我大多使用Konsole,而且我對它的功能設定真的很滿意:
- 搜尋/高亮功能。高亮匹配是實時重新整理的,這對於拖尾日誌檔案真的很方便。
- 易於選擇和複製文字塊。
- 簡單選擇螢幕滾動,使用CTRL + SHIFT + K清理緩衝區。
- 可自定義隱藏大部分不必要的細節(標籤欄、選單),預設提供許多顏色主題。
它還提供了tab,不過我不用,我有開啟新例項更方便的方法。唯一我不喜歡的地方是,當我不需要滾動條的時候,不能自動隱藏它。
我相信對於Konsole有很多很好的替代品,我的想法是隻要確保你使用的終端模擬器有你需要的功能,那你用什麼都OK。不管黑貓白貓,能抓老鼠就是好貓。
使用dotfiles儲存庫管理
每個工作流程在某種程度上是唯一的,所以我們可以通過個性化的配置來強化使用的工具。但是,這會引出一個新的問題:你要麼以某種方式管理配置,或者每次都手動重現一遍。
如果選擇自動,那麼dotfiles Git儲存庫是儲存配置非常方便的方法。它的基本思路是,配置檔案駐留於一個Git儲存庫,並且符號連結到其正確的位置。甚至會有智慧指令碼來自動完成這個工作。我使用的是Zach Holman的dotfiles repo,在Github上有很多這方面的內容。
這些都是很常見的工具,不過如果你要花很多時間在Linux機器上,那麼這些工具真的值得一用。對了,哪個是你的真愛,大家一起來交流一下吧。
譯文連結:http://www.codeceo.com/article/5-linux-productivity-tools.html
英文原文:5 Productivity Power Tools for Software Development on Linux
翻譯作者:碼農網 – 小峰
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- 【譯】提高React開發效率的5個工具React
- 提高Android開發效率的9個Web工具AndroidWeb
- 提高iOS開發效率的方法和工具iOS
- 快速提高Android開發效率的Web工具AndroidWeb
- 常用的幾個提高iOS開發效率的開源類庫及工具iOS
- IE 良心工具:提高開發效率的 F12 開發者工具
- 提高程式設計師工作效率的5個工具程式設計師
- 開源專案推薦:提高研發效率的5個開源專案
- 提高效率,記一個內部工具的開發經歷
- 極大提高Web開發效率的8個工具和建議(含教程)Web
- 提高企業開發效率的優質工具:快速開發平臺
- Android開發必看-快速提高 Android 開發效率的 Web 工具AndroidWeb
- 提升開發效率的十個工具
- iOS 提高開發效率iOS
- 提高python開發效率的10個小技巧Python
- 如何提高App開發的效率?APP
- Facebook工程師開發工具提高VR內容開發效率工程師VR
- .NET程式設計師提高效率的70多個開發工具程式設計師
- 用 FutureBuilder 提高開發效率Rebuild
- 提高開發效率小技巧
- 提高Python執行效率的5個技巧!Python
- 提高iOS App開發效率的方法iOSAPP
- 不要重複造輪子?提高生產效率!5個超好用的開源工具庫分享開源工具
- 13個幫你提高開發效率的現代CSS框架CSS框架
- SAP ABAP Development Tool 提高開發效率的十個小技巧dev
- 提升網際網路產品開發效率的5個工具組合
- 使用 RelProxy 提高 Java 開發效率Java
- 提高開發效率一些工具,你知道都有那些嗎?
- 提高Python執行效率的5個小技巧!Python
- 從開發框架提高開發效率說起框架
- 可提高Java開發效能的5款除錯工具Java除錯
- 為了提高軟體的開發的效率,我一個提議
- 提高開發質量的 5 個必要實踐
- 基於騰訊x5封源庫,提高60%開發效率
- 7個提高效率的JavaScript除錯工具JavaScript除錯
- 8個提高效率的CSS實用工具CSS
- 提升前端開發效率的工具前端
- 提高效率,推薦 5 款命令列工具命令列