Membuat AppleScript untuk penekanan tombol

0

Saya sudah mencoba melakukan AppleScript saya sendiri untuk membuat Mac saya tekan C 13 kali, tekan tombol panah kiri, tekan C 13 kali, tekan tombol panah kanan dan mulai dari awal berulang kali dengan interval 1,7 detik.

Saat ini saya hanya berhasil membuat skrip yang berfungsi sehingga membuatnya menekan C beberapa kali. Bisakah seseorang tolong saya dengan ini? Inilah yang saya miliki saat ini

set i to 0
repeat while i < 1.0E+300
    set i to i + 1
    delay 1.7
    tell application "System Events" to keystroke "c"
end repeat
kiara
sumber

Jawaban:

1

Untuk memulai, angkanya 1.0E+300 benar-benar SANGAT jumlah besar Itu lebih dari jumlah atom di seluruh alam semesta oleh beberapa perintah.

Script Anda tidak jauh. Untuk menekan "c" tiga belas kali, Anda bisa melakukan ini:

repeat 13 times
    tell application "System Events" to keystroke "c"
    -- delay 0.1
end repeat

(Anda mungkin memerlukan sedikit penundaan di sana untuk mendaftarkan penekanan tombol individual, tetapi Anda dapat mencobanya tanpa dan melihat mana yang berhasil);

atau Anda dapat melakukan ini:

tell application "System Events" to keystroke "ccccccccccccc"

yang setara dengan loop berulang tanpa keterlambatan.

Tombol panah kiri dan kanan adalah key code 123 dan key code 124masing-masing. Jadi, tambahkan yang ada di antara penekanan tombol:

tell application "System Events"
    keystroke "ccccccccccccc"
    delay 0.1
    key code 123 -- left arrow
    delay 0.1
    keystroke "ccccccccccccc"
    delay 0.1
    key code 124 -- right arrow
end tell

ATAU:

tell application "System Events"
    repeat 13 times
        keystroke "c"
        delay 0.1
    end repeat

    key code 123 -- left arrow
    delay 0.1

    repeat 13 times
        keystroke "c"
        delay 0.1
    end repeat

    key code 124 -- right arrow
end tell

Akhirnya, melakukan infinitum iklan ini dalam satu lingkaran pada interval 1,7 detik, akan menghasilkan sesuatu yang menyerupai ini:

tell application "System Events" to repeat
    repeat 13 times
        keystroke "c"
        delay 0.1
    end repeat

    key code 123 -- left arrow
    delay 0.1

    repeat 13 times
        keystroke "c"
        delay 0.1
    end repeat

    key code 124 -- right arrow

    delay 1.7
end repeat

Perhatikan bahwa loop paling luar tidak memiliki while, until, atau times untuk membatasi kelanjutannya. Ini akan berulang selamanya, sampai Anda menghentikan skrip secara manual.

Saya juga tidak memperhitungkan keterlambatan 0,1 detik menjadi keterlambatan 1,7 detik secara keseluruhan. Penundaan yang lebih kecil akan melebihi 1,7 detik total, tetapi saya akan membiarkan Anda menyesuaikan waktu dengan kebutuhan Anda.

CJK
sumber
Terima kasih banyak! script berfungsi tetapi saya menemukan itu tidak dapat mencapai apa yang saya inginkan. bagaimana saya bisa mengedit skrip sehingga saya bisa menahan kedua tombol panah selama 1,5 detik setiap kali?
kiara
Saya tidak percaya itu mungkin, @kiara.
CJK