追記:スクリプトエディタからだと動いたのですが、アプリケーション形式にするとエラーで動きません…。
Finderで今開いているウィンドウを、もう一枚現在のウィンドウ(カレントウィンドウ)で開きたい時ってありますよね?
tell application "Finder"
set cntWindow to (count of windows) as integer
if cntWindow = 0 then
-- ウィンドウが無い場合はデスクトップフォルダを開く
log "ウィンドウがありません-->デスクトップを開きます"
set currentPath to POSIX path of (path to desktop folder as text)
make new Finder window to (path to desktop folder)
else
tell front window
try
-- 最前面のFinderウィンドウのパスをPOSIX形式に変換して取得
set currentPath to POSIX path of (target as alias)
on error
-- パスの取得ができない場合、デスクトップに統一
log "パスの無い特殊ウィンドウです-->デスクトップを開きます"
set currentPath to POSIX path of (path to desktop folder as text)
-- デスクトップフォルダを開く
make new Finder window to (path to desktop folder)
end try
end tell
end if
end tell
-- System EventsでFinderのGUIを操作
tell application "System Events"
tell process "Finder"
-- Finderがアクティブであることを確認
set frontmost to true
-- メニューバーから「新規タブ」を選択
click menu item "新規タブ" of menu "ファイル" of menu bar 1
-- 少し待機
delay 0.5
-- メニューバーから「フォルダへ移動」を選択
click menu item "フォルダへ移動…" of menu "移動" of menu bar 1
-- 「フォルダへ移動」ダイアログが開くまで少し待機
delay 0.5
-- ダイアログにPOSIXパスを入力
keystroke currentPath
-- Enterキーでフォルダに移動
delay 1 -- 入力が完了するのを待つ
keystroke return
end tell
end tell