หากคุณรู้วิธีผูก applescript กับแป้นพิมพ์ลัด / แทร็คแพดท่าทางนี่คือคำตอบสำหรับคุณ
สคริปต์นี้มีความเป็นสากล จะใช้คำศัพท์ทั่วไปมากที่สุดเพื่อรวมสถานการณ์มากที่สุด ฉันทดสอบกับ Finder, Script Editor และ Firefox แล้ว ไม่มีข้อผิดพลาด
อย่างไรก็ตามมันมีคำเตือน:
สคริปต์จะทำงานได้ก็ต่อเมื่อมีแอปหนึ่งอินสแตนซ์เท่านั้น (BTW มันยังคงบอกว่า "หลาย ๆ อินสแตนซ์" ในข้อความของ OP) มันเป็นไปได้ที่จะทำงานหลายอินสแตนซ์เข้าไป แต่มันเป็นการต่อสู้เพื่ออีกวัน
สคริปต์นี้เลื่อนลงรายการหน้าต่างในWindow
เมนู ในสาระสำคัญคลิกที่รายการด้านล่างขวาที่มีเครื่องหมาย ("✓") หากรายการที่มี "✓" เป็นรายการสุดท้ายสคริปต์จะคลิกรายการแรกภายใต้บรรทัดตัวแยกสุดท้ายแทน สคริปต์ที่ย้อนกลับไปในทิศทางย้อนกลับสามารถรับได้คือการแก้ไขสคริปต์นี้ อย่างไรก็ตามฉันไม่เห็นว่าทั้งสองจะรวมกันเป็นสคริปต์เดียวได้อย่างไร
try
คำสั่งที่ก่อให้เกิดเป็นวิธีที่ซีพียูที่มีประสิทธิภาพมากที่สุดที่ฉันรู้ในการผลิตดัชนีของerrorMessage
separator
ถ้าคุณรู้วิธีที่ดีกว่าโปรดบอกฉัน
บท:
tell application "System Events" to tell (first application process whose frontmost is true) to tell menu bar 1 to tell menu "Window"
set cellingSeperator to last menu item whose value of attribute "AXEnabled" is false
set checkedItem to first menu item whose value of attribute "AXMenuItemMarkChar" is "✓"
try
set intentionalError to cellingSeperator as Unicode text
on error errorMessage
set firstItemIndex to (characters ((offset of "«class menI» " in errorMessage) + 13) through ((offset of " of" in errorMessage) - 1) of errorMessage as string as integer) + 1
end try
repeat with iterator from firstItemIndex to number of menu items
if value of attribute "AXFrame" of menu item iterator is equal to value of attribute "AXFrame" of checkedItem then
set clickItemIndex to iterator + 1
exit repeat
end if
end repeat
if clickItemIndex is greater than number of menu items then set clickItemIndex to firstItemIndex
tell menu item clickItemIndex to perform action "AXPress"
end tell