2008年10月7日 星期二

在OSX下利用Automator和Quicksilver來郵寄檔案的小技巧

OSX下的Automator真的是個不錯的好東西,
可以把許多繁索的程式執行步驟輕易的自動化一下,
幾乎不用任何寫程式的基礎,
只要稍微有些邏輯概念就行了。
Quicksilver則是個更前衛的鍵盤啟動程式,
基本上他可以讓您手指頭完全不用離開鍵盤,
就完成開啟程式、執行特定指令的目的。
可惜Quicksilver的執行部驟即使寫成trigger,
最多也只有三步,如果Quicksilver也能有Automator的自動化能力該有多好。
偏偏Automator的啟動方式就是呆板了些,
要完全以鍵盤來執行似乎有些困難,
如果能把這兩者結合起來,那可是殺手級的應用了。

一直以來在OSX下要寄中文檔名的檔案給PC的用戶,總是件麻煩事。
因為OSX早已採用unicode了,但PC這頭windows xp 卻總是支援unicode不佳,
在OSX下把中文檔名的檔案壓成zip檔寄給PC的用戶,解開換來的總是一堆亂碼的檔名。
十分的苦惱,這點在windows的unicode支援完善前,似乎是件難以解決的事。
所以如果能有個程式,能把在OSX下想寄出的中文檔名,自動改為英文檔名,再壓成zip檔,
再用mail寄出,那就是個不錯的方案,雖然改成的英文檔名肯定只能是預設的檔名,但至少也比亂碼來的好多了。
這時Automator和Quicksilver就能派上用場囉。

首先就是要開啟Automator,
找到「Get Selected Items」這個指令,
因為考慮有時寄出的可能是整個目錄下的檔案,
所以再加入「Get Folder Contents」指令。
接著把檔案複製一份, 以免有差池把檔案給損毀了,
所以用「Duplicate Finder Items」。

再來就是重頭戲了,
也就是改檔名為英文檔名,「Rename Finder Items」,
這些複製、改名了的檔案可不能亂放,免得把桌面給弄亂了,
所以我指定一個temp目錄來放。
接著就是壓成zip檔在節省空間,就用「Creat Archive」指令。
再來就是用「New Mail Message」指令來把檔案給寄出。

工作還沒做完,還記得剛才那些放在temp下的檔案吧,
記得把他們給刪了,以免垃圾越來越多。
所以再用一次「Get Selected Items」和「Get Folder Contents」指令,
來取得temp目錄下的檔案,
然後就是用「Move Finder Items to Trash」來清掉,就一切大功告成了。

但是要怎麼用這個Automator流程呢?
記得要存檔成為Application,
放在那裡倒不重要,
重點是當存成了Application,
Quicksilver就能輕易的找到他,
所以我把這流程取了個檔名叫做mailfile。
如此就能接用Quicksilver呼叫他,
一切就自動化囉!