列舉一些好用齐媒,免費(fèi)的的開發(fā)相關(guān)工具
最近愈發(fā)發(fā)現(xiàn)程序員之間不知道聊什么的話,講講些常用的開發(fā)工具絕對(duì)是個(gè)好話題纷跛。所以這里我想整理一下我經(jīng)常用的 Windows 下開發(fā)相關(guān)的免費(fèi)工具喻括。如果你中午吃飯的時(shí)候講到?jīng)]話說,不妨試試“那個(gè)啥 xxx 你用過沒贫奠,還挺好用的”這樣來防冷場(chǎng)吧唬血。
ConEmu + clink
在 Windows 下做開發(fā)和 cmd.exe 打交道是是少不了的。如果你經(jīng)常輾轉(zhuǎn)于 Linux 和 Windows唤崭,那么 cmd 絕對(duì)會(huì)爛得讓人想撞墻拷恨。然而好消息是這個(gè)悲劇的局面隨著 ConEmu 的出現(xiàn)而徹底結(jié)束。裝上這個(gè)后你就有了一個(gè)超級(jí)豪華加強(qiáng)版的 cmd.exe:
- 支持 ClearType 字體浩姥,真彩色主題的炫酷界面
- 窗口長(zhǎng)度寬度可以隨意拖拉挑随,可以近乎無限的回滾歷史
- 鼠標(biāo)拖拉選擇文字不再是拉出一個(gè)方框,而是像正常人想象的那樣拉出幾行來
- 好使的 Tab勒叠,好使的快捷鍵,好使的各種設(shè)置
ConEmu 自帶了 clink膏孟,一個(gè)嘗試再 cmd 上加入 bash 常見功能并且真的做到了的項(xiàng)目眯分。這樣除開上面的你又獲得了這些功能:
- Tab 鍵補(bǔ)全當(dāng)前目錄下的文件和 Path 上的可執(zhí)行程序
- Ctrl-V 粘貼到命令行,不用右鍵點(diǎn)窗口標(biāo)題欄再點(diǎn)粘貼柒桑。
- Ctrl-R 補(bǔ)全歷史命令
- 自動(dòng)存數(shù)歷史命令弊决,下次開機(jī)也能找回之前的命令行歷史
如果你經(jīng)常用 Putty 的話,基本上 ConEmu 給人的感覺就是像用 Putty 來連上本地的 cmd。經(jīng)過稍許配置飘诗,你就可以獲得一個(gè)如下圖一樣的命令行:

如果你平日工作里常與 cmd 打交道与倡,那不妨對(duì)自己好一點(diǎn)迅速裝上這個(gè)試試。
gow
還是命令行相關(guān)的昆稿,如果你常懷念 Linux 下的 ls, cat, tail 這些東西又不想裝上一個(gè)幾個(gè) G 的 cygwin 的話纺座,gow 正是你在苦苦尋找的東西。它打包了一些常用的溉潭,并且在 Windows 下可以正常工作的 Linux 命令行工具净响。
值得一提的 gow 附帶了一個(gè)單文件命令行版本的 vim,非常適合用來寫 commit message 或者做些簡(jiǎn)單的編輯操作喳瓣。
SourceTree
如果你工作用到 git 或者 hg 做版本控制的話馋贤,SourceTree 這個(gè)圖形界面的 git/hg 客戶端可以提高相關(guān)操作的效率。如果你是剛開始使用 git/hg畏陕,這個(gè)可以幫助你迅速上手配乓;如果你對(duì)各種命令已經(jīng)能用的隨心所欲也可以試試用這個(gè)。
我現(xiàn)在經(jīng)常用到 git惠毁,工作流程是大部分寫操作都是在命令行里完成扰付,而各種查看的操作,比如看分支情況仁讨,看 diff 看 log 都是直接切到 SourceTree 里面看羽莺,省了很多敲命令的時(shí)間。SourceTree 沒有設(shè)計(jì)成隱藏底層的命令行調(diào)用洞豁,你在它里面的操作都是以命令行的形式完成的盐固。同時(shí)你在命令行里操作后,切到 SourceTree 按一下 F5 刷新后就看的到丈挟。舉個(gè)例子刁卜,我在命令行里運(yùn)行 git merge
,提示有沖突曙咽。切到 SourceTree 可以看到?jīng)_突的文件蛔趴,點(diǎn)開菜單可以選擇用圖形工具來 resolve,然后再切到命令行里做 git merge --continue
就行了例朱,感覺非常順暢孝情。
額外的,圖形化的界面使得很多文件路徑相關(guān)的操作變得非常簡(jiǎn)單洒嗤。你可以拖動(dòng)文件來完成 stage/unstage/discard 文件的操作箫荡,而不用手動(dòng)敲入一長(zhǎng)串文件名。SourceTree 對(duì)于 git 還支持鼠標(biāo)點(diǎn)擊來 stage 某一小段代碼渔隶,這個(gè)比起你命令行下看半天絕對(duì)要方便很多羔挡。
Windows 下支持 git/hg 的圖形化客戶端不多洁奈,我用下來感覺這個(gè)各方面目前應(yīng)該算是比較好的。
TDM-GCC
如果你是做 C/C++ 相關(guān)的開發(fā)绞灼,或者有在 Windows 上編譯 C/C++ 項(xiàng)目的經(jīng)驗(yàn)的話利术,你應(yīng)該聽說過 MinGW。它的大概意思就是在 Windows 上提供一套于 Win32 兼容的 POSIX 環(huán)境低矮,用來跑 GCC 編譯器印叁。TDM-GCC 就是一套基于 MinGW 跑在 Windows 32/64 上較新的 GCC,可以用來將 C/C++ 代碼編譯成原生的 Windows 程序商佛。
相比于之前看到的其他各種版本喉钢,TDM-GCC 的特點(diǎn)一個(gè)是“新”。目前其附帶的 GCC 版本是 4.8.1良姆,已經(jīng)跟上了 Debian Testing 上的版本肠虽,而且是一個(gè)支持 C++11 的版本;另一個(gè)特點(diǎn)就是“臥槽還真的能用”玛追。MinGW 總體狀態(tài)感覺其實(shí)不是太靠譜税课。很多其他的 Windows 上的 GCC 編些自己寫的小程序沒問題,編別的東西的時(shí)候就少這少那各種錯(cuò)讓人無比頭疼痊剖。而 TDM-GCC 感覺這方面做的很好韩玩,很少會(huì)有奇怪的錯(cuò)誤。另外它支持編譯 32/64 的程序陆馁,默認(rèn)靜態(tài)鏈接標(biāo)準(zhǔn)庫找颓,編譯出來的東西拷出去給別人就能用不需要附帶一堆 dll 感覺非常棒。
如果你想在 Windows 上試試 GCC 的話叮贩,TDM-GCC 應(yīng)該是目前最好的選擇击狮。
everything
用過 OSX 的用戶一定知道右上角的 Spotlight 非常好用。everything 基本上就是 Windows 上的 Spotlight益老。裝上后它需要花十分鐘左右索引一遍硬盤彪蓬,然后你就可以全局按照文件名來查找任何文件,并且瞬間得到結(jié)果捺萌。對(duì)于新建的文件或者重命名操作档冬,everything 里也會(huì)立即獲得結(jié)果,叼的令人發(fā)指桃纯。
它還附帶一個(gè)簡(jiǎn)單的命令行接口酷誓,你可以輕易的把它的功能加入你的自動(dòng)化腳本里。
mongoose
如果你是做 Web 開發(fā)的話那么應(yīng)該經(jīng)常有需要臨時(shí)搭一個(gè) HTTP 服務(wù)器來 serve 一些靜態(tài)文件慈参。Linux 下你可以軟鏈到你的 /var/www
什么的呛牲,在 Windows 上似乎沒有什么簡(jiǎn)單原生的方法⊥耘洌看到現(xiàn)在 mongoose 應(yīng)該是當(dāng)下不錯(cuò)的一個(gè)選擇。下下來以后打開,選擇你要 serve 的目錄再在瀏覽器打開應(yīng)該就可以了壮锻,和主流 HTTP 服務(wù)器一樣它會(huì)自動(dòng)處理 MIME Type琐旁,用來在開發(fā)過程中放靜態(tài)文件絕對(duì)是夠用了。
再比方說你要給你的同事傳一個(gè)文件猜绣,除了開 QQ 來傳以外用這個(gè)也是一個(gè)不錯(cuò)的選擇灰殴。
PicPick / LICECap
如果你常開著 QQ 的話那么截圖方面的需求基本就已經(jīng)滿足了。如果你需要更高級(jí)的功能或者不太開 QQ掰邢,PicPick 是一個(gè)不錯(cuò)的選擇牺陶。一方面它有很多常見的截圖軟件功能,比如截取當(dāng)前活動(dòng)窗口辣之,自動(dòng)滾動(dòng)窗口截取長(zhǎng)網(wǎng)站圖片等等掰伸。另一方面它還帶上了很多實(shí)用工具,比如全屏取色器怀估,可浮動(dòng)的像素標(biāo)尺狮鸭,還有一個(gè)功能挺夠用的圖像編輯器。
如果你想截 gif 圖片的話多搀,LICEcap 可能是目前唯一一個(gè)免費(fèi)開源的選擇歧蕉。好消息是它效果還挺不錯(cuò),用起來也很有意思:你要把它的窗口像快門一樣對(duì)到你要錄制的地方然后開始錄康铭,開始前還有幾秒準(zhǔn)備時(shí)間惯退。
Pandoc
Pandoc 是一個(gè)"萬能文檔轉(zhuǎn)換器",但我基本上是用它來把 Markdown 轉(zhuǎn)換成 PDF从藤,.docx
這些蛋疼的格式催跪。比如你的工作需要你用 Word 寫文檔,有了這個(gè)你就可以寫 Markdown 然后用 Pandoc 轉(zhuǎn)成 .docx
然后再把你的模板樣式刷上去就好啦呛哟。
值得一提的是 Pandoc 是用 Haskell 寫的叠荠,說不定這也是唯一一個(gè)常見民用的 Haskell 編寫的軟件。
C:\Bin 和 bat wrapper
收尾前介紹下我是怎么整理 Windows 上的命令行工具扫责。我把大部分單個(gè)文件的命令行工具放在一個(gè)目錄榛鼎,比如 C:\Bin
,然后把這個(gè)路徑放在 Path
上鳖孤,這樣里面的東西就能在命令行里直接用了者娱。但很多像 CMake,Gradle 這樣的工具下下來自己就有一個(gè)目錄結(jié)構(gòu)苏揣,不太好直接丟在 C:\Bin
里黄鳍,這些一個(gè)個(gè)放在 Path
上又很麻煩。有一個(gè)方法就是建立一個(gè) bat 文件來轉(zhuǎn)接一下平匈。比如我想要在命令行里調(diào)用 NAnt框沟,我就在 C:\Bin
下建立 nant.bat
里面寫:
@echo off
C:\Bin\nant-0.92\bin\NAnt.exe %*
其中 %*
表示把所有的參數(shù)都轉(zhuǎn)傳給 NAnt.exe
藏古。如果你有強(qiáng)迫癥看不得硬編碼的路徑的話,可以寫成這樣用相對(duì)路徑:
@echo off
%~dp0nant-0.92\bin\NAnt.exe
%dp0
會(huì)被替換為該文件所在的目錄忍燥。
最后
找些順手的工具提高工作效率總是能讓人感覺非常舒爽拧晕。希望這篇看完你也能找到些用的上的東西。