apple4us

工具癖系列之 Jjgod

Jjgod 是国内知名的 Mac 软件开发者,之前也做过网页开发,对字体、TeX 和摄影也颇有心得。更难得的是他也是一个热心的读者,记得 iPhone 上的 Classics.app 推出后,他在博客上评点了其排版上的一些问题,开头大约是这样的(原文为英文,此处我凭记忆转译):「很高兴看到 Classics.app 的面世。这些书的中文版我小时候大都读过,现在能重读英文原版,不亦乐乎。」他翻译过《哥德尔·艾舍尔·巴赫——集异壁之大成》一书作者侯世达的「如聆巴赫」。值得注意的是,Jjgod 在行文时采用了在技术类邮件列表上备受偏爱的「方括号注释」模式。这虽然不符合本站的排版规则,但出于趣味上的考虑予以保留。—— 编者

凑个热闹,从 Mac 开发者的角度聊聊我的配置。

我目前用的是一台 ‘MacBookPro2,2’ [1],也就是三年前,第二代的 2.16 GHz Core 2 Duo MacBook Pro,添加了内存 (=> 2 GB),更换了硬盘 (=> 320 GB),做开发还不算太慢。就是跑 Adobe Lightroom [2] 之类的重负荷程序会卡得不行。计划是在明年年初购买下一代,装备了 Arrandale CPU [3] 的 MacBook Pro,再把硬盘换成 OCZ Vertex [4] 的 SSD。

最近刚刚入手一台 Mac mini MB463 [5],更换了硬盘 (=> 500 GB) 和内存 (=> 4 GB)。本来在 Mac mini 和 Mac Pro 之间摇摆,但考虑一年后还得搬家,就决定还是先用着 mini 吧。这台机器目前放在我宿舍,作为文件 / 多媒体服务器,这样大部分时间我的 MBP 就可以丢在实验室了。通过 Mini-DVI to DVI 接着 Dell 2408 WFP,这台显示器同时还接着我的 Xbox 360 (HDMI) 和 Wii (色差)。

鼠标用的是 Logitech MX 620 [6] 和 VX Nano [7]。键盘是这一代的苹果无线键盘。

除此之外,随身的是 8 GB 的一代 iPhone,除了基本手机用途之外,只是用作开发设备。

软件方面。系统主要还是用 Leopard,因为 Snow Leopard 此刻还有一些让我很不爽的臭虫,不能长期使用。Snow Leopard 主要是用来做一些新开发框架的实验,但毫无疑问 Xcode 3.2 要比 Xcode 3.1 好用得多。

我的主力浏览器是 Safari 和 WebKit,但偶尔也会启动 Minefield [8] 和 Chromium [9]。主力编辑器是我自己移植的 vim-cocoa [10],主要用来写代码、编辑 TeX 文档等等,平时的少量编辑用的是 TextEdit/UCD [11](自己修改过的 TextEdit)。

访问 BBS 我用的是 Nally [12]。邮件管理用的是 alpine [13] 和 Fluid [14] 定制的 Gmail.app。 除了演示文稿用 Keynote 之外,我大部分的文档都是用 TeX 来写的,我用的 TeX 系统一般是 TeXLive [15],混合一些自己编译的程序 (比如 XeTeX [16] 和 LuaTeX [17]) 和自己维护的宏包。配合 Skim [18] 阅读生成的 PDF。

别的软件都很常见,不必赘述。单说开发方面的吧,需要编译安装的软件我大概是一半用 macports [19] 一半自己手动跟踪管理,因为 macports 装到 /opt/local,自己编译的则装到 /usr/local,所以也不会混淆。最常用的版本管理工具是 git [20],大部分用 Subversion 的项目我都用 git-svn 克隆下来在本地管理,方便提交补丁。自己开发的软件,理想的编译管理工具是 cmake [21],配合 clang/llvm [22] 进行编译。

穿墙方面,用的是 autossh [23] 来调用 ssh 连接一台国外主机,开启反向端口。把 autossh 的调用做成 launchd [24] 的一个 job,配合了 launchd 的 KeepAlive 功能,就能随时保证连接了。配合浏览器代理配置脚本来访问 ssh 开启的本地 socks 代理,这个很常见,在我的 github 代码库里也能找到我用的配置脚本。

[1] http://browse.geekbench.ca/geekbench2/view/37857 [2] http://www.adobe.com/products/photoshoplightroom/ [3] http://forums.macrumors.com/showthread.php?t=668803 [4] http://tr.im/s4mM [5] http://www.apple.com/macmini/specs.html [6] http://tr.im/s4mH [7] http://tr.im/s4n0 [8] http://www.mozilla.org/projects/minefield/ [9] http://tr.im/s4nd [10] http://code.google.com/p/vim-cocoa/ [11] http://jjgod.org/program/TextEdit.zip [12] http://yllan.org/app/Nally/ [13] http://www.washington.edu/alpine/ [14] http://fluidapp.com/ [15] http://www.tug.org/texlive/ [16] http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=XeTeX [17] http://www.luatex.org/ [18] http://skim-app.sourceforge.net/ [19] http://www.macports.org/ [20] http://git-scm.com [21] http://www.cmake.org [22] http://llvm.org [23] http://www.harding.motd.ca/autossh [24] http://launchd.macosforge.org/