0

2 つのドロップレットを作成しました。1 つはファイルの名前を変更するため、もう 1 つはファイルを印刷するためです。それらはそれよりも複雑ですが、これが本質です。名前を変更するだけでよい場合もあれば、印刷するだけでよい場合もあり、場合によっては両方を行うこともあります。ユーザーごとに広範なカスタマイズが必要なため、2 つのドロップレットを別々にしておくことをお勧めします。

望ましいワークフロー: ファイルを RenameMe ドロップレットにドラッグします。コマンド キーが押されている場合は、名前を変更したファイルを PrintMe ドロップレットに渡します。

checkModifierKeys スクリプト (申し訳ありませんが、引用が手元にありません) の助けを借りて、コマンド キーが押されたかどうかを確認し、スクリプトの一部を処理することができます。問題は、最初のドロップレットから 2 番目のドロップレットをトリガーする方法です。2 番目のドロップレットをアプリケーションとして (以下のコードのように) ファイルを開こうとしましたが、通信エラーが発生します。

何か案は?--アレックス

サンプルコード:

on open the_Droppings
set flPth to POSIX path of (path to me) & "Contents/MacOS/checkModifierKeys"
set cmdPressed to (do shell script (quoted form of flPth & " command")) as integer as boolean

repeat with i from 1 to (count of items in the_Droppings)
    set file_name to "NEW NAME FROM SCRIPT" #actual script that generates name isn't relevant
    tell application "Finder"
        set name of file (item i of the_Droppings) to file_name
    end tell

    if cmdPressed is true then
        #pass the file to the PrintMe droplet       
        tell application "PrintMe"
            open (item i of the_Droppings)
        end tell
    end if
end repeat
end open
4

1 に答える 1