Kéo để chuyển đổi Hành động tự động thành Applescript


6

Trong Automator, có một cách để nhanh chóng chuyển đổi một Hành động thành Applescript tương đương của nó trong Automator, tôi nghĩ bằng cách kéo nó theo một cách khó khăn nào đó. Tôi đã thấy điều này một thời gian trước nhưng bây giờ đã quên. Tôi đã thử tìm kiếm và không thể tìm thấy nó.


Có lẽ bởi vì điều đó là không thể. Các lệnh AppleScript và hành động Automator là khác nhau, một số ứng dụng có thể hỗ trợ một trong khi không phải là ứng dụng khác. Cả hai đều phải làm những công việc lặp đi lặp lại, nhưng khác nhau.
dùng14492

Câu trả lời:


10

Trong trường hợp bất cứ ai có câu hỏi này, tôi đã tìm thấy nó, nhưng nó chỉ hoạt động cho các hành động được ghi lại.

Sau khi bạn Ghi lại một số lần nhấp hoặc các hành động khác trong Máy tự động, chúng sẽ xuất hiện trong hành động "Xem tôi làm". Sau đó, bạn có thể nhấp vào và kéo một hành động riêng lẻ ra khỏi Hành động đó và phát hành khi dấu + xuất hiện. Automator sẽ thêm hành động "Chạy AppleScript" với AppleScript gửi cùng các lần nhấp và nhấn phím cho Sự kiện hệ thống.

Bạn cũng có thể chỉ cần Sao chép hành động bạn muốn, chuyển sang AppleScript Editor và dán để có cùng mã.

Ví dụ: Sự kiện "Nhấp vào Skype trong Dock" chuyển đổi thành AppleScript sau:

on run {input, parameters}
    -- Click Skype in the Dock.
    delay 7.872251
    set timeoutSeconds to 2.000000
    set uiScript to "click UI Element \"Skype\" of list 1 of application process \"Dock\""
    my doWithTimeout( uiScript, timeoutSeconds )
    return input
end run

on doWithTimeout(uiScript, timeoutSeconds)
    set endDate to (current date) + timeoutSeconds
    repeat
        try
            run script "tell application \"System Events\"
" & uiScript & "
end tell"
            exit repeat
        on error errorMessage
            if ((current date) > endDate) then
                error "Can not " & uiScript
            end if
        end try
    end repeat
end doWithTimeout

Cách chuyển đổi các sự kiện đã ghi trong Automator:

Nhấp và sự kiện và kéo để tạo một hành động mới Automator chuyển đổi sự kiện thành Applescript


Tôi đã bình chọn điều này dựa trên giá trị của nó về cách bạn thu thập mã AppleScript từ hành động Watch Me Do tuy nhiên bạn nói " Bạn cũng có thể chỉ cần Sao chép hành động bạn muốn, chuyển sang AppleScript Editor và dán để có cùng mã. " Tuy nhiên, điều này có thể đúng trong một số trường hợp vì nó không đúng trong một số trường hợp vì Mã AppleScript không thể luôn được sao chép chính xác từ Automator theo cách này sang AppleScript Editor và chạy thành công mà không cần sửa đổi mã.
dùng3439894

0

Điều đó là không thể. Bạn có thể thực hiện các hành động tương tự trong applescript, nhưng không có cách nào để chuyển đổi một tập lệnh tự động hóa hiện có thành applescript.


Có thể nói chung là đúng (tôi không biết), nhưng có thể đối với các hành động được ghi lại ("Xem tôi làm") - xem giải pháp của tôi dưới đây.
Nate

0

Tạo tệp Automator của bạn dưới dạng loại "Ứng dụng".

Nói với AppleScript của bạn để chạy ứng dụng Automator của bạn.

Cái gì đó như:

open "/Users/george/AutomatorFiles/MyScript.app"

Làm việc cho tôi!


Điều đó cũng hữu ích, mặc dù không hoàn toàn những gì tôi đang tìm kiếm, đó là để xem mã để tôi có thể hiểu và sử dụng lại nó.
Nate
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.