Archive for the ‘Mac’ Category

用 Quicksilver 来提醒新 E-mail

April 24th, 2007
Tags: , , , | Posted in Application, Mac | No Comments »

yea yea yeah,我真的是离不开 Quicksilver 因为它几乎能完成我所要求的一切功能(也许是我要求的太少?;-))在 Blacktree 爬来爬去,总能碰到好玩的东西。比如这个由 Brian Donovan 所写的 applescript_mail.app_new mail_notification,就可以通过 AppleScript 在 Quicksilver 中提醒 Mail.app 中的新邮件。

Mail notification via Quicksilver

不过大概 Script 写成的时间比较早,AppleScript 的某些用法有了一些改变,所以直接 copy/paste 过来也是不行的。在对脚本稍微做了一些修改之后,已经可以使用了。

我做了:

  • 修正 Notification 方式的一个小 Bug
  • 增加 Large Type 显示方式
  • 为每一条消息之间增加了 2 秒间隔时间,现在我能看清每一条的内容了

使用方法

  1. 秘密基地下载脚本,或者把代码复制到 Script Editor 中自己存一下。
    下载的压缩包包括两个脚本,notifyviaquicksilver_largetype.scpt 以 Large Type 显示提醒(Bezel),notifyviaquicksilver_notification.scpt 以 premier 方式来提醒。
  2. 在 Mail 预置中的规则(Rules)页增加新规则:为 every message 执行 Run AppleScript,选择一个脚本。

已知的 Bug 和原版本相同:Mail.app 可能会在检查是否为垃圾邮件之前执行规则,所以可能会把新收到的垃圾邮件也提醒一遍。另外,如果在这个新设立的规则之前有另外的“移动”、“删除”之类的规则,新规则不会对这些邮件有效。

下载 notifyviaquicksilver.zip

Links

No Comments »

AppleScript 试做:在 Growl 显示 iTunes 音量变化

April 18th, 2007
Tags: , , , | Posted in Application, Mac | No Comments »

平时我习惯在 Quicksilver 控制 iTunes 的音量,歌曲控制,评分等等等等。没错,我爱 Quicksilver,我的生活不能没有 Quicksilver。:P 言归正传,我在 Quicksilver 中的 iTunes Trigger 设置是这样(所有数字都代表小键盘上的数字):

  • 播放、暂停:ctrl + cmd + 5
  • 前一首:ctrl + cmd + 4
  • 后一首:ctrl + cmd + 6
  • 增大 iTunes 音量:ctrl + cmd + 8
  • 减小 iTunes 音量:ctrl + cmd + 2
  • 增加评分:ctrl + cmd + Numpad+
  • 减少平分:ctrl + cmd + Numpad-
  • 显示信息:ctrl + cmd + 0
  • iTunes 静音:ctrl + cmd + Numpad*

对我来说,这真是一个很顺手的键位,也喜欢推荐给别人使用。但是 Quicksilver 中 iTunes Plugin 的并不能显示现在 iTunes 的音量到底是多少,这多少让我有一些遗憾。好在我有 Growl,看了看 Growl 网站上的 documents 好像还很简单嘛,祭出 ScriptEditor + TextMate 开始胡搞瞎搞,最后变成了这个样子:

growl+itunes+quicksilver
使用 Growl 的 Bezel Style

好吧好吧,我知道这个有点丑,而且也不是什么高科技的玩意儿。但是,谁能忍心取笑一个新手呢?;-) 在 Quicksilver 找到 Increase iTunes Volume,Decrease iTunes Volume 这两个命令(其实是两个小脚本),Reveal,在 Finder 中替换他们就可以。

下载 Increase_and_Decrease_iTunes_Volume.zip

No Comments »

试驾 Twitterrific 2.0 Beta4

March 27th, 2007
Tags: , | Posted in Application, Mac | No Comments »

试用了 IconFactory 发布的 Twitterrific Beta 4,感觉很好,比起 1.1.1 有了一些明显的进步。


Twitterrific 2.0 Beta4 的新界面

首先,tweet 的显示方式由原来固定的紧凑模式改为可以设定到“扩展模式”(展开每一个好友写的 tweet 而不是只显示名字)。对于我这样在 Twitter好友很少的人来说很适合。不过说到好友很少,今天 1 上午我就收到了四五个好友邀请,不知道以后是不是我还要把 Twitterrific 改回到紧凑模式呢?

其他的一些显著变化发生在发布 tweet 的方法上。首先,输入框可以通过拖拉边框来扩大啦~比起以前单行的输入框我觉得 3 行的高度更适合书写。同时,在偏好设定中还可以令 Twitterrific 在更新 tweet 的同时更新 IM 的 status message(iChat,Adium)。另外,回复某人的 tweet 也有了快捷键:

  • Cmd + 2 回复选定的 tweet
  • Cmd + D 回复 Direct Message 给选定 tweet 的作者

另外新增的功能还有,通过界面上的按钮直接标记“Fav.”,自动贴到屏幕边缘等等等等。据说有 22 项改进,不过我常用的功能好像就只有这么多。

我打算用 Twitter 做什么

准备把 Twitter 的 RSS 放到首页下边代替 Tumblelog。现在写 Twitter 可以用 IM,浏览器,Quicksilver,终端等各种方式,更符合 Tumblelog 的需求。

现在不爽的地方就是 Twitter 服务器问题还是很多,经常会抽筋,只有耐心等等了。另外,iLemoned 今天给我看了 V2EX 的 Ing 服务,和 Twitter 思路有些像,不过不知道和 IM,软件,电话的整合性能会怎样,静观其变吧。

No Comments »

转换-rmvb-到-divx

February 12th, 2007
Tags: , , , | Posted in Application, Mac | No Comments »

既然 Realplayer 也有 Universial Binary 版本,为什么要转换 RMVB 到其他格式?

  1. Realplayer 很慢
  2. RMVB 不能编辑
  3. RMVB 不能用其他播放器打开

恼人的是在国内似乎 RMVB 是最流行的格式:从 BitTorrent 到电驴,甚至还有人分享几百兆的 DVD-RMVB-Rip——如果你想要高图像质量又不在乎文件大小,为什么不用 MP4 或者 DivX?!所以我很坚决的决定把硬盘里的 RMVB 都变成 DivX。

准备好武器

子曰: 工欲善其事, 必先利其器。

大概 Windows 上有很多软件可以转换 RMVB(因为我 google 到的方法大都是 Windows 上的软件),但 Mac 上不是。完成这个工作我们需要 3 样东西:

  1. 一个 RMVB 文件
  2. ffmpegx (Universal Binary),以及同页面下的 mencoder and mplayer binariesmpeg2enc binary
  3. RealPlayer 10 (Universal Binary)

ffmpegx 是 unix 工具 ffmpeg 的图形化界面,可以转换多种音频、视频文件,也可以从音频、视频文件中截取片断。

实做

首先要安装 ffmpegx。如果是第一次运行 ffmpegx,启动时会问你要 mencoder,mplayer binary,以及 mpeg2enc binary 的位置,并且 copy 相关的东西到 /Library/Application Supports/ffmpegx/。设置好之后,先关掉它。

然后,在某处建立文件夹 reallib 备用。找到 realplayer.app,ctrl + 鼠标 选择“Show Package Contents”,转到 Contents -> Frameworks -> HXClientKit.framework -> Helix Plugins -> Codecs。复制其中所有的文件(12 个)到 reallib 文件夹,再把 reallib 丢到 /Library/Application Supports/ffmpegx/ 中。

完成!现在就可以打开 ffmpegx,把 RM,RMVB 文件转换为 DivX 了。然后就可以在 Quicktime 中随便搞啦。但是转换的过程还是有几点要提醒的东西:

  1. 只能用 mencoder DivX 来转换 RMVB——如果需要其他格式只能再转换一遍了
  2. 转换 RMVB 文件的时候不会有进度条——只能看到蓝白相间滚动的进度条,但是在点 Get Info 或者 Open a terminal window 的时候可以看到进度

No Comments »

TextMate 内的中文字符显示与输入

December 25th, 2006
Tags: , , , , , | Posted in Mac | 2 Comments »

TextMate 是 Mac OS X 下著名的编辑器,相信很多看过 Ruby on Rails Screencast 的开发者都对它有深刻的印象 —— 流畅的生成固定格式代码(Snipper),方便的 Project 管理,以及像老牌编辑器 BBEdit 一样使用 unix 命令来过滤文本内容。但是 TextMate 对于在开发过程中使用中、日、韩文字的开发着来说却有一些麻烦。

  • 无法正确显示 CJK 字符
  • 无法正确输入 CJK 字符

好在 Hetima 提供了两种可以间接解决问题的办法:

显示 CJK 字符

大多数 CJK 字体都是 2 字宽,在 TextMate 下会和后边的 CJK 字符重叠在一起。(没有使用标准的 NSView?)对于这个问题 Hetima 提出了用 缩小日文字体宽度 的办法来解决,不过实际上最后的效果有点见仁见智。我照猫画虎的用中文字体做了一些实践,下面把大致的步骤写一下。

字体变形有许多选择:从超贵的 FontGrapher 到开放原始码的 FontForge,按照 Hetima 的介绍我们用 FontForge 就可以。用 FontForge 读取 .dfont 或者 .ttf 文件,然后用 Scale()MergeFonts() 方法来变形、合并字体。要注意的是 FontForge 需要 X11 环境的支持,如果你在安装 Mac OS X 的时候没有安装过,可以在第一张安装盘中的 Optional Install 中安装。脚本中使用了 2 款字体,都是可以在 Mac OS X 中找到的(/System/Library/Fonts/)。如果你想要“华文黑体”(STHei.ttf)而不是“黑体”(Hei.dfont),那你需要 动一点小手脚 —— STHei.ttf 受 FSType/2 保护,FontForge 在脚本中是动不到它的。当然你也可以用任意两种免费的中英文字体进行组合。

把 Hei.dfont 和 Monaco.dfont 两款字体复制到同一文件夹中,(比如 ~/tmfont/)然后建立文本文件 tmfont.pe:

#!/usr/local/bin/fontforge -script

#中文字体处理
Open("Hei.dfont"); #中文字体
SelectAll()
foreach
Scale(60, 100, 0, 0) #横0.6,纵1.0
endloop
Generate("temp.ttf", "", 0x14)
Close()

#Monaco 字体合并
Open("Monaco.dfont"); #英文字体
MergeFonts("temp.ttf");
SetFontNames("TextMate-Regular", "TextMate", "TextMate Regular", "Regular", "")
Generate("TextMate.ttf", "", 0x14)
Close()

这样就差不多了。开启 X11 环境(/Applications/Utilities/),在 term 中赋予 tmfont.pe 执行权限并执行:

chmod +x tmfont.pe ./tmfont.pe

之后,你应该能在目录下找到 TextMate.ttf,安装这个字体就可以啦。

CJK in TextMate
使用了自定义字体的 TextMate

输入 CJK 字符

相比显示 CJK 字符来说简单多了:下载安装 Hetima 的 CJK-Input.tmplugin。(Kudos to Hetima again.)

TextMate 的主页上称 TextMate 2.0 将使用 Leopard 中的 CoreText(也就是说想用 2.0 就必须要买 10.5 :-|),作者承诺届时 CJK 支持问题将得到彻底解决。 我在写代码的时候不常用到中文,也许写注释给别人看的时候会用到。虽然这个方法显示的文字略显小,不过聊胜于无,希望对同样使用 TextMate 的朋友有所帮助。

2 Comments »

在 Automator 合并 PDF

November 20th, 2006
Tags: , , , | Posted in Mac | No Comments »

不是高科技,但是我今天才用到。因为想要把几个零散的《地海巫师》PDF 合并成一个以后慢慢看,所以想到了 Automator 中有 Combine PDF Files 的脚本。最后完成的 Workflow 可以在桌面生成一个新的合并过的 PDF,并且用默认程序打开。

  • 首先,在 Automator 中选择 Library 中的 Finder,把 Get Selected Finder Items 拖到右边。
  • 然后,把 Sort Finder Items 也拖过来,对选择的文档进行一下排序。
  • 之后在 Library 中选择 PDF,拖 Combine PDF Pages 进来。
  • 顺便也把 Compress Images in PDF Document 也拖进来压缩文档中的图像。
  • Combine PDF Pages 有点诡异不会问你生成的 PDF 的保存路径,所以这个 action 不会显示任何结果。我们要自己 Copy 出来。选 Finder 中的 Copy Finder Items。如果你需要还可以加点改名之类的操作⋯⋯
  • 把 Finder 中的 Open Finder Items 拖到最后。
  • Done!

最后大概是这个样子的:

Combine PDF Pages in Automator

最后把这个 workflow 存为 Finder 的 Plug-in。这样在 Finder 中选中多个文件以后,就可以选择 Automator 菜单中的 Combine PDF Pages,然后 Boom! 一个完整的 PDF 文档就在你的面前打开了。

之后我在 MacOSXHints 也看到 不用 Automator 的办法。因为 Automator 中的 Combine PDF Pages 说白了也就是一个名字叫做 join.py 的 python 脚本(并且还有参数的用法:join [--output <file>] [--append] [--shuffle] [--preview] [--verbose]),所以可以这样:

$ python '/System/Library/Automator/Combine PDF Pages.action/Contents/Resources/join.py' -o '/path/to/output.pdf' '/path/to/input1.pdf' '/path/to/input2.pdf'

不过我不是时刻都开着 terminal 的人,还是用 Automator 比较适合我。

其他可以合并 PDF 文档的软件:

  • Combine PDFs 2.1
    一个开放原始码的用 REALBasic 写成的合并 PDF 软件
  • PDFLab
    用 Java 写成的合并 PDF 的软件

No Comments »

Install WordPress on a Mac

April 7th, 2006
Tags: , , , | Posted in Mac, Web | No Comments »

为了在 Mac OSX 上安装 WordPress,我们需要什么呢?

  • Personal Web Sharing(Apache,系统内建)
  • MySQL
  • 当然还有亲爱的 WordPress

下载、安放 WordPress

首先我们要到 WordPress 的官方网站下载一个 最新版本的 WordPress,.zip 格式或者 .tar 格式都可以。将解压缩之后的文件放在 /Library/WebServer/Documents 目录下。/Library/WebServer/Documents 是 Web 服务器的根目录,你可以把它清空,然后把 WordPress 的文件直接放在里边,也可以在其中新建一个目录放置 WordPress(比如 /blog/)。在这里我们新建一个目录吧,就叫 wordpress,这样以后就可以通过 http://localhost/wordpress/ 来访问啦。

安放好了 WordPress 之后,我们就可以开启内建的 Apache 服务器了。

开启 Personal Web Sharing

所谓 Personal Web Sharing 就是 Mac OSX 下的 Apache(为什么不直接注明呢⋯⋯)。

开启这项服务很简单,在 System Performances -> Sharing 中,选中Personal Web Sharing,搞定。打开了Web Server,下一步就是安装MySQL了。

下载安装 MySQL

MySQL 数据库用于存储 WordPress 的各种信息(文章,评论,用户,等等),并且他对个人使用是免费的。最新的 MySQL 版本是5.0,并且 WordPress 2.0 也能很好的支持。

首先到 MySQL 5.0 的下载页,选择适合自己系统的版本下载。现在 5.0 有 PPC 和 x86 两种版本提供下载,下载完成以后 Mac OSX 会自动将 .dmg 文件 mount 到桌面。在 5.0 的安装包内会有4个文件:MySQL 安装文件,MySQLStartupItem(开机自动运行),MySQL.prefPane(System Performance 中的控制 MySQL 的面板),以及一个 ReadMe。首先运行安装文件,再运行 MySQStartupItem 配置自动运行,以及 MySQL.PrefPane。安装完成之后,我们就要开始设置 MySQL,设定用户密码,建立 Table。

设置 MySQL

终于到了最烦琐的步骤。打开终端(/Applications/Utilities/Terminal.app),依次输入以下命令。

cd /usr/local/mysql sudo chown -R mysql data/ sudo echo sudo ./bin/mysqld_safe &

接下来我们用 test 数据库来试探一下 MySQL 是否在正常运行。同样是在终端。

/usr/local/mysql/bin/mysql test

如果 MySQL 吐给你下面的信息,就说明 MySQL 已经成功运行了。`

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version 4.0.24-standard

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql>

之后,输入 quit 退出 MySQL。

只让 MySQL 跑起来当然不够啦,我们还要为它重新设定 root 密码,并且创建 wordpress 用的数据库。

在终端中。

/usr/local/mysql/bin/mysqladmin -u root password yourpasswordhere

将其中的“yourpasswordhere”换为您的密码。

创建数据库,终端中。

/usr/local/mysql/bin/mysql -u root -p CREATE DATABASE wordpress; quit

这样,MySQL 也设置好了。

开启对 PHP 的支持

Mac OSX 虽然安装了 PHP,但是在默认设置下是未被启用的。为了唤醒沉睡的 PHP,我们需要编辑 /etc/httpd/httpd.conf 这个文件。

我比较喜欢用 Textmate,如果你不习惯也可以用 Vi,Pico 这些系统自带的编辑器。

sudo pico /etc/httpd/httpd.conf

哇~~好大的文件呀。没关系我们要修改的只有2行而已。;-) 让我们把目光投向”Dynamic Shared Object Support”段,在这里你会找到好多好多以“LoadModule”开头的列表,其中有一些被“#”号封印(注释掉了⋯⋯)着。现在我们就要解开php4的封印,删除 #LoadModule php4_module 前的 # 号,最后应该是这个样子。

LoadModule php4_module

接下来我们还要去掉 AddModule 中关于 PHP 4 的注释,最后会是这个样子。

AddModule mod_php4.c

将这两处的注释改掉之后,我们就可以保存文件退出了。为了让这些设置生效我们还需要重新启动一下 Apache 服务器。

sudo apachectl graceful

如果您在运行 Mac OS X 10.4.4 以上!

如果您的系统是 Mac OS X10.4.4 以上,那么还需要另外一个步骤。

在终端中执行。

sudo cp /etc/php.ini.default /etc/php.ini

之后编辑 /etc/php.ini,将

mysql.default_socket =

改为

mysql.default_socket = /tmp/mysql.sock

之后重新启动 Apache (sudo apachectl graceful)。否则您在安装 WordPress 的时候它会很不友好的告诉您:

Error establishing a database connection! This probably means that the connection information in your wp-config.php file is incorrect. Double check it and try again. Are you sure you have the correct user/password? Are you sure that you have typed the correct hostname? Are you sure that the database server is running?

关于这个错误的更多信息您可以参考 Mac OS X Server 10.4: Issues connecting PHP to MySQL

安装配置 WordPress

最恼人的部分终于结束了。安装 WordPress 的部分和您在远程服务器安装它的步骤应该是一样的。

打开 wp-config-sample.php,编辑基本系统信息。

define(‘DB_NAME’, ‘wordpress’); – Change ‘wordpress’ to the name of the database you created in MySQL (我们已经创建了数据库wordpress,所以这一项应该可以不改)。

define(‘DB_USER’, ‘username’); – 将 username 改为 root。

define(‘DB_PASSWORD’, ‘password’); – 将 password 改为刚才所设置的密码。

完成篡改之后,就可以把它另存为 wp-config.php 啦。

最后一步

在浏览器中运行 WordPress 的安装文件,按照我们的配置她应该是在 http://localhost/wordpress/wp-admin/install.php,如果您将 WordPress 放置在不同的目录请自行更改。整个的安装过程非常简单,WordPress 在询问你一些基本的 Blog 信息(比如 blog 的名字啦邮箱啦月光宝盒什么的)之后会随机生成一个 Admin 的密码,由于是随机生成的,所以现在请务必记好它,登陆以后立即更改。同时 WordPress 也会在 wordpress 数据库中自动创建所需要的表,这些就不需要我们去操心了。

最后的最后一步

那个随机密码实在是太不好记了,赶快到 User 页去改一个密码,或者新建一个用户吧~

大功告成!现在您可以在自己的 Mac 上试做插件、Theme 啦。如果带宽、资源足够,您甚至可以把它当作自己的 blog 服务器。

No Comments »

|| Newer Entries »