配置豪華的 Windows 開發環境
作者: jagttt
列舉一些好用,免費的的開發相關工具
最近愈發發現程序員之間不知道聊什么的話,講講些常用的開發工具絕對是個好話題。所以這里我想整理一下我經常用的 Windows 下開發相關的免費工具。如果你中午吃飯的時候講到沒話說,不妨試試“那個啥 xxx 你用過沒,還挺好用的”這樣來防冷場吧。
ConEmu + clink
在 Windows 下做開發和 cmd.exe 打交道是是少不了的。如果你經常輾轉于 Linux 和 Windows,那么 cmd 絕對會爛得讓人想撞墻。然而好消息是這個悲劇的局面隨著 ConEmu 的出現而徹底結束。裝上這個后你就有了一個超級豪華加強版的 cmd.exe:
- 支持 ClearType 字體,真彩色主題的炫酷界面
- 窗口長度寬度可以隨意拖拉,可以近乎無限的回滾歷史
- 鼠標拖拉選擇文字不再是拉出一個方框,而是像正常人想象的那樣拉出幾行來
- 好使的 Tab,好使的快捷鍵,好使的各種設置
ConEmu 自帶了 clink,一個嘗試再 cmd 上加入 bash 常見功能并且真的做到了的項目。這樣除開上面的你又獲得了這些功能:
- Tab 鍵補全當前目錄下的文件和 Path 上的可執行程序
- Ctrl-V 粘貼到命令行,不用右鍵點窗口標題欄再點粘貼。
- Ctrl-R 補全歷史命令
- 自動存數歷史命令,下次開機也能找回之前的命令行歷史
如果你經常用 Putty 的話,基本上 ConEmu 給人的感覺就是像用 Putty 來連上本地的 cmd。經過稍許配置,你就可以獲得一個如下圖一樣的命令行:
如果你平日工作里常與 cmd 打交道,那不妨對自己好一點迅速裝上這個試試。
gow
還是命令行相關的,如果你常懷念 Linux 下的 ls, cat, tail 這些東西又不想裝上一個幾個 G 的 cygwin 的話,gow 正是你在苦苦尋找的東西。它打包了一些常用的,并且在 Windows 下可以正常工作的 Linux 命令行工具。
值得一提的 gow 附帶了一個單文件命令行版本的 vim,非常適合用來寫 commit message 或者做些簡單的編輯操作。
SourceTree
如果你工作用到 git 或者 hg 做版本控制的話,SourceTree 這個圖形界面的 git/hg 客戶端可以提高相關操作的效率。如果你是剛開始使用 git/hg,這個可以幫助你迅速上手;如果你對各種命令已經能用的隨心所欲也可以試試用這個。
我現在經常用到 git,工作流程是大部分寫操作都是在命令行里完成,而各種查看的操作,比如看分支情況,看 diff 看 log 都是直接切到 SourceTree 里面看,省了很多敲命令的時間。SourceTree 沒有設計成隱藏底層的命令行調用,你在它里面的操作都是以命令行的形式完成的。同時你在命令行里操作后,切到 SourceTree 按一下 F5 刷新后就看的到。舉個例子,我在命令行里運行 git merge
,提示有沖突。切到 SourceTree 可以看到沖突的文件,點開菜單可以選擇用圖形工具來 resolve,然后再切到命令行里做 git merge --continue
就行了,感覺非常順暢。
額外的,圖形化的界面使得很多文件路徑相關的操作變得非常簡單。你可以拖動文件來完成 stage/unstage/discard 文件的操作,而不用手動敲入一長串文件名。SourceTree 對于 git 還支持鼠標點擊來 stage 某一小段代碼,這個比起你命令行下看半天絕對要方便很多。
Windows 下支持 git/hg 的圖形化客戶端不多,我用下來感覺這個各方面目前應該算是比較好的。
TDM-GCC
如果你是做 C/C++ 相關的開發,或者有在 Windows 上編譯 C/C++ 項目的經驗的話,你應該聽說過 MinGW。它的大概意思就是在 Windows 上提供一套于 Win32 兼容的 POSIX 環境,用來跑 GCC 編譯器。TDM-GCC 就是一套基于 MinGW 跑在 Windows 32/64 上較新的 GCC,可以用來將 C/C++ 代碼編譯成原生的 Windows 程序。
相比于之前看到的其他各種版本,TDM-GCC 的特點一個是“新”。目前其附帶的 GCC 版本是 4.8.1,已經跟上了 Debian Testing 上的版本,而且是一個支持 C++11 的版本;另一個特點就是“臥槽還真的能用”。MinGW 總體狀態感覺其實不是太靠譜。很多其他的 Windows 上的 GCC 編些自己寫的小程序沒問題,編別的東西的時候就少這少那各種錯讓人無比頭疼。而 TDM-GCC 感覺這方面做的很好,很少會有奇怪的錯誤。另外它支持編譯 32/64 的程序,默認靜態鏈接標準庫,編譯出來的東西拷出去給別人就能用不需要附帶一堆 dll 感覺非常棒。
如果你想在 Windows 上試試 GCC 的話,TDM-GCC 應該是目前最好的選擇。
everything
用過 OSX 的用戶一定知道右上角的 Spotlight 非常好用。everything 基本上就是 Windows 上的 Spotlight。裝上后它需要花十分鐘左右索引一遍硬盤,然后你就可以全局按照文件名來查找任何文件,并且瞬間得到結果。對于新建的文件或者重命名操作,everything 里也會立即獲得結果,叼的令人發指。
它還附帶一個簡單的命令行接口,你可以輕易的把它的功能加入你的自動化腳本里。
mongoose
如果你是做 Web 開發的話那么應該經常有需要臨時搭一個 HTTP 服務器來 serve 一些靜態文件。Linux 下你可以軟鏈到你的 /var/www
什么的,在 Windows 上似乎沒有什么簡單原生的方法。看到現在 mongoose 應該是當下不錯的一個選擇。下下來以后打開,選擇你要 serve 的目錄再在瀏覽器打開應該就可以了,和主流 HTTP 服務器一樣它會自動處理 MIME Type,用來在開發過程中放靜態文件絕對是夠用了。
再比方說你要給你的同事傳一個文件,除了開 QQ 來傳以外用這個也是一個不錯的選擇。
PicPick / LICECap
如果你常開著 QQ 的話那么截圖方面的需求基本就已經滿足了。如果你需要更高級的功能或者不太開 QQ,PicPick 是一個不錯的選擇。一方面它有很多常見的截圖軟件功能,比如截取當前活動窗口,自動滾動窗口截取長網站圖片等等。另一方面它還帶上了很多實用工具,比如全屏取色器,可浮動的像素標尺,還有一個功能挺夠用的圖像編輯器。
如果你想截 gif 圖片的話,LICEcap 可能是目前唯一一個免費開源的選擇。好消息是它效果還挺不錯,用起來也很有意思:你要把它的窗口像快門一樣對到你要錄制的地方然后開始錄,開始前還有幾秒準備時間。
Pandoc
Pandoc 是一個"萬能文檔轉換器",但我基本上是用它來把 Markdown 轉換成 PDF,.docx
這些蛋疼的格式。比如你的工作需要你用 Word 寫文檔,有了這個你就可以寫 Markdown 然后用 Pandoc 轉成 .docx
然后再把你的模板樣式刷上去就好啦。
值得一提的是 Pandoc 是用 Haskell 寫的,說不定這也是唯一一個常見民用的 Haskell 編寫的軟件。
C:\Bin 和 bat wrapper
收尾前介紹下我是怎么整理 Windows 上的命令行工具。我把大部分單個文件的命令行工具放在一個目錄,比如 C:\Bin
,然后把這個路徑放在 Path
上,這樣里面的東西就能在命令行里直接用了。但很多像 CMake,Gradle 這樣的工具下下來自己就有一個目錄結構,不太好直接丟在 C:\Bin
里,這些一個個放在 Path
上又很麻煩。有一個方法就是建立一個 bat 文件來轉接一下。比如我想要在命令行里調用 NAnt,我就在 C:\Bin
下建立 nant.bat
里面寫:
@echo offC:\Bin\nant-0.92\bin\NAnt.exe %*
其中 %*
表示把所有的參數都轉傳給 NAnt.exe
。如果你有強迫癥看不得硬編碼的路徑的話,可以寫成這樣用相對路徑:
@echo off%~dp0nant-0.92\bin\NAnt.exe
%dp0
會被替換為該文件所在的目錄。
最后
找些順手的工具提高工作效率總是能讓人感覺非常舒爽。希望這篇看完你也能找到些用的上的東西。
<span id="shareA4" class="fl">
</span>