10.9 Mavericks'te “Sistem Olayları” kullanmadan AppleScript'te bir menü öğesi seçin


15

Sadece başka bir soruya cevap veriyordum ve Mavericks'teki yeni bir "özellik" hatırlatıldı.

Automator ServiceHiçbir girdi almayan ancak bir tuşa bağlandığında yararlı bir şey yapan bir dizi küçük s vardı. Mükemmel örnek, Terminal'i öne getirmekti. Bunlardan bazıları gibi uygulamada öne çıkan bir menü öğesi seçilmesi gerekiyordu Bring All to Front.

Artık Hizmet, System EventsAppleScript kitaplığını kullanıyorsa evrensel bir tuş vuruşunun çalışabilmesi için her bir uygulamaya "erişilebilirlik" vermeniz gerektiği anlaşılıyor .

Bunun için bir düzeltme bilen var mı?


2
Erişilebilirlik'in uygulama başına ayrı ayrı yetkilendirilmesi gerektiği çok saçma. Allow applicationsÖzelliğe çok benzer bir ayara ihtiyaç duyarlar .
l'L'l

1
Hizmeti etkinleştirdiğinizde çalışan uygulama yerine komutu veren 'Sistem Olayları` AppleScript kitaplığını yetkilendirmek için bir yola ihtiyaçları var. Ama bu çok saçma.
Tony Williams

Yanıtlar:


25

Sistem Olayları'nı kullanmadan menü öğelerini nasıl tıklayacağımı bilmiyorum, ancak başkaları buraya gelirse Sistem Olayları ile menü öğelerini nasıl tıklatacaklarını arıyorlar:

tell application "System Events" to tell process "Finder"
    click menu item "New Finder Window" of menu 1 of menu bar item "File" of menu bar 1
end tell
tell application "System Events" to tell process "Finder"
    set frontmost to true
    click (menu item 1 where its name starts with "Compress") of menu 1 of menu bar item "File" of menu bar 1
end tell
tell application "System Events" to tell process "Finder"
    set frontmost to true
    tell menu bar item "File" of menu bar 1
        click
        click menu item "Open With" of menu 1
    end tell
end tell

Şu anda yüklü olan tüm uygulamaların Sistem Tercihleri'ndeki listeye sürükleyerek erişilebilirlik API'sını kullanmasına izin verebilirsiniz:

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.