Sun, 14 Sep 2008
ブックマークを特定のアプリケーションに縛りつけない
ウェブブラウザは自分的にはOmniWeb.appで決りなのですが、今後もそうであるかは分りません…Safari.appは常に、システムとの親和性や速度でOmniWeb.appを脅かしています。ということで、ブックマークはWeb Locationファイルとしてそれらの外に置いておこうと思いました。
最初がOmniWeb.appの例、次がSafari.appの例です。最初の部分以外は共用です。ベージのタイトルに「:」が入っていると、名前を付けるときにまっきんのファイルシステムの規則とかちあってしまうので、全角文字に置き換えています。ハマったのはここくらいでしょうか。
できあがったhoge.weblocはダブルクリックしても良し、Dockのアイコンにドロップしても良し。
set aURL to ""
set aTitle to ""
tell application "OmniWeb"
if not (browser 1 exists) then
beep
return
end if
set aFrontMostDocument to browser 1
set aURL to address of aFrontMostDocument
set aTitle to name of aFrontMostDocument
end tell
--set the clipboard to aTitle & return & aURL
set aOldDel to AppleScript's text item delimiters
set AppleScript's text item delimiters to ":"
set aTitle to every text item of aTitle
set AppleScript's text item delimiters to ":"
set aTitle to text of aTitle as text
set AppleScript's text item delimiters to aOldDel
tell application "Finder"
--activate
set webloc to make new internet location file to aURL at "hoge:Users:hoge:Bookmarks" with properties {name:aTitle}
end tell
tell application "Safari"
if not (document 1 exists) then
beep
return
end if
set aFrontMostDocument to document 1
set aURL to URL of aFrontMostDocument
set aTitle to name of aFrontMostDocument
end tell