Mac OS X下的Quake-like Terminal: Visor Terminal

好久没来更新了,主要是前段时间心烦,事情特别多,偶尔有空也和justice, sinnyn一起打DOTA,自己就是不想挤些时间出来写点东西。前天发现我家里一台电脑中了毒,这个毒异常牛X,机器上Win 7和Mac两个OS同时中毒...我猜是因为我装了一个免费的Proxy软件导致的,幸而这台电脑也不是常用的,所以么下决心重装一下。

重装完之后我要折腾一下Mac OS的Terminal,配置一下VIM,因为是比较常用的东东。想到前段时间在一个同事那儿看到他用的Terminal很棒,类似于Linux下的Tilda或者Guake,能够方便地即时唤出和隐藏Terminal,这对于Mac OS这种图形界面为主,但又不乏控制台命令的操作系统特别有用。这种样子的Terminal统称为Quake-like Terminal或者叫Drop-down Terminal,意思是这个Terminal像是Quake游戏中的控制台。

先看看效果如何吧:

是不是很棒呢,我为它设置的快捷键是Control+`,这样就可以用快捷键迅速唤出它,在配置apache,mysql之类的服务时很顺手噢。
下面我介绍一下这个东西的安装和配置过程,有需要的童鞋可以Step by Step。注意,我目前用的操作系统是Mac OS 10.5.8,不是Snow Leopard,但是下面的过程在Snow Leopard下也是兼容的,但你要下载相应插件的最新版本。(我用了一段时间Snow Leopard,发现它的软件兼容性确实有些小问题,然后Mac下的一些个人软件开发者也没有完全跟进、修改、测试他们的软件,导致我又换回了Leopard=,=)

Step 1: 安装SIMBL

首先,我们要去下载安装一个叫做SIMBL的工具,它是Mac下面的一个Hack软件,通过类似Hook的技术在Cocoa程序执行时运行一些额外的指令,从而可以为Cocoa程序添加插件。下载地址:

http://www.culater.net/software/SIMBL/SIMBL.php

Snow Leopard童鞋请注意下载最新版本,目前是0.9.7a,Leopard童鞋我推荐还是下载稳定版本0.8.2。

安装方法很简单,下载后,解压,运行安装程序安装,囧。

Step 2: 安装Visor插件

有了能够装载插件的工具,接下来就是去找一个叫做Visor的Terminal插件,到其主页上去下载最新的版本,目前是2.2

http://visor.binaryage.com/

下载下来的是一个叫做Visor.bundle的东东,将它Copy到

~/Library/Application Support/SIMBL/Plugins

目录下,如果没有SIMBL和Plugins这两个目录,则手动创建它们。

然后关闭Terminal,重新打开,the magic is done.

当然现在还不完美,虽然Terminal已经可以唤出和隐藏,但你会发现自己的Dock上始终会有这么一个Terminal的图标,无论Terminal是否隐藏,令人非常不爽,接下来我告诉大家怎么把它隐藏掉,并且能让它开机自动运行。

Step 3: 制造一个VisorTerminal

首先,在实用工具中找到Terminal这个程序,然后我们复制一份Terminal到应用程序目录,重命名为VisorTerminal。双击运行它,然后在Dock中右键单击,选择开机时运行。这样这个VisorTerminal程序就会在开机的时候自动运行。

然后我们需要对程序的配置文件做简单的修改。右键单击这个程序,选择“显示包内容”(Show Package Content)。然后我们打开Content目录下的Info.plist文件,将下面几个key对应的string中的"Terminal"修改成"VisorTerminal"。

  • CFBundleDisplayName
  • CFBundleIdentifier
  • CFBundleName

并且在

<key>LSHasLocalizedDisplayName</key>
<true/>

的下面添加

<key>LSUIElement</key>
<string>1</string>

这是两行告诉系统,这个程序不会在Dock上显示图标。

然后保存文件,我们的VisorTerminal就做好了。

Step 4: 修改Visor插件

因为现在Terminal变成了VisorTerminal,聪明的童鞋应该知道了,我们要在Visor.bundle中做相应的修改。

右键Visor.bundle,显示包内容。然后同样打开Content目录下的Info.plist文件,将其中的SIMBLTargetApplications节点下的BundleIdentifier对应的string中的Terminal修改成VisorTerminal。最后保存文件。

OK,一切搞定,一个舒舒服服的Quake-like Terminal,没有了烦人的Dock图标,而且可以开机自动运行~

P.S: SIMBL的插件还有一些比较好的,我用的另外一个插件可以让Terminal显示各种颜色,叫作TerminalColors。这儿有两篇非常棒的Blog,大家可以参考它来配置出赏心悦目的Terminal。

  1. http://blog.infinitered.com/entries/show/6
  2. http://blog.infinitered.com/entries/show/4

Comments (9)

  1. 21:40, 2010-03-16GuoJing  / Reply

    很不错,支持了,mac下的命令行总觉得有点别扭。。

  2. 10:38, 2010-03-17chris  / Reply

    呵呵,我挺喜欢Mac的Terminal的,很方便

  3. 15:45, 2010-03-17Justice  / Reply

    @chris
    要考虑到这种 Geek 心理大多数人是不理解的 =.=

  4. 16:04, 2010-03-17chris  / Reply

    @Justice
    为啥我上面那条回复按了Reply但是木有reply成功呢?

  5. 16:14, 2010-03-17Justice  / Reply

    @chris
    是不是网速太慢了 JS 还没加载到你就 reply 了

  6. 16:25, 2010-03-17chris  / Reply

    @Justice
    不知道=,=我点了很多下Reply的

  7. 17:54, 2010-04-01lealost  / Reply

    站长挺牛的 mac os 系统下玩博

  8. 00:22, 2010-09-04merlyle  / Reply

    不知为何,
    LSUIElement
    1

    我加上这一句之后visor就不起作用,不加这一句正常。我用的是新版 snow Leopard。

  9. 01:49, 2010-09-04chris  / Reply

    @merlyle
    这样啊,我去试一下看看

Leave a Reply

Allowed Tags - You may use these tags in your comment.

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

Pingbacks (0)

› No pingbacks yet.