配置豪华的 Windows 开发环境

列举一些好用,免费的的开发相关工具

最近愈发发现程序员之间不知道聊什么的话,讲讲些常用的开发工具绝对是个好话题。所以这里我想整理一下我经常用的 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。经过稍许配置,你就可以获得一个如下图一样的命令行:

ConEmu 界面
ConEmu 界面

如果你平日工作里常与 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 off
C:\Bin\nant-0.92\bin\NAnt.exe %*

其中 %* 表示把所有的参数都转传给 NAnt.exe。如果你有强迫症看不得硬编码的路径的话,可以写成这样用相对路径:

@echo off
%~dp0nant-0.92\bin\NAnt.exe

%dp0 会被替换为该文件所在的目录。

最后

找些顺手的工具提高工作效率总是能让人感觉非常舒爽。希望这篇看完你也能找到些用的上的东西。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,937评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,503评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,712评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,668评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,677评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,601评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,975评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,637评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,881评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,621评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,710评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,387评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,971评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,947评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,189评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,805评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,449评论 2 342

推荐阅读更多精彩内容