Apakah ada jalan pintas atau semacamnya untuk mengirim jendela yang sedang aktif ke bagian belakang layar sambil tetap membukanya (sehingga berakhir "di bawah" semua jendela terbuka lainnya)?
Apakah ada jalan pintas atau semacamnya untuk mengirim jendela yang sedang aktif ke bagian belakang layar sambil tetap membukanya (sehingga berakhir "di bawah" semua jendela terbuka lainnya)?
Jawaban:
Jawaban singkat: Tidak , Apple tidak menyediakan API yang memungkinkan Anda untuk mengubah indeks jendela aplikasi kecuali dengan membawa jendela ke depan (indeks 1). Tidak ada solusi yang elegan . Tapi:
Jawaban panjang: Ya , Anda dapat menggunakan AppleScript untuk secara efektif memindahkan jendela ke belakang tumpukan jendela AppleScript dengan mengumpulkan daftar windows, kemudian dengan cepat memindahkan masing-masing ( kecuali yang paling depan) ke depan, meninggalkan jendela yang dipilih di belakang.
Berikut adalah contoh dari AppleScript yang mengirimkan Window Finder paling depan ke belakang.
tell application "Finder"
set winList to every window whose visible is true
if not winList = {} then
repeat with oWin in (items 1 through -2 of reverse of winList)
set index of oWin to 1
end repeat
end if
end tell
Script ini didasarkan pada solusi oleh JMichaelTX yang dibahas di forum KeyboardMaestro.
Perombakan sangat cepat, tetapi di Script Editor Anda dapat memeriksa cara kerjanya, meninggalkan "506" di bagian bawah dan muncul "502-505" dengan cara yang menjaga pesanan mereka:
get every window whose visible = true
--> {Finder window id 506, Finder window id 505, Finder window id 504, Finder window id 503, Finder window id 502}
set index of Finder window id 502 to 1
--> 1
set index of Finder window id 503 to 1
--> 1
set index of Finder window id 504 to 1
--> 1
set index of Finder window id 505 to 1
--> 1
Anda dapat memetakan AppleScript ini ke layanan atau pintasan keyboard, baik dengan a) menempatkan skrip ke tindakan Run AppleScript di dalam layanan Automator, atau b) menggunakan peluncur (Alfred, Keyboard Maestro dll.). Untuk detail tentang penugasan keyboard Applescript, lihat: Bagaimana cara menetapkan pintasan keyboard ke AppleScript yang saya tulis?
Ini dapat memenuhi kebutuhan OP - tidak jelas dari pos aslinya. Solusi ini juga dapat diperluas ke beberapa aplikasi yang mendukung AppleScript. Namun, saya tidak mengetahui solusi untuk membuatnya bekerja secara efektif dengan campuran jendela skrip dan non-skrip, karena fakta bahwa di AppleScript, System Events
jendela yang dapat dialamatkan untuk aplikasi yang tidak skrip tidak memiliki set index
kata kerja / properti. Ada tindakan "AXRaise" untuk beberapa jendela saat perangkat bantu / aksesibilitas diaktifkan, tetapi ini juga tidak berlaku untuk semua jendela. Retas rumit ada yang melibatkan berjalan melalui setiap aplikasi yang aktif dan menunjukkan / menyembunyikan atau meminimalkan / memulihkan jendela, tetapi mereka berantakan.
Diskusi terkait:
Pertanyaan Anda tidak terlalu jelas, tetapi jika yang Anda inginkan adalah pintasan untuk menelusuri semua jendela aplikasi yang sedang aktif, Anda harus dapat melakukan ini dengan Command~pintasan keyboard.
The ~key biasanya terletak di sebelah kiri 1tombol.
Hanya untuk memperjelas, apa yang dilakukan Command~pintasan keyboard adalah menggilir semua jendela aplikasi saat ini. Misalnya, jika Anda menggunakan MS Word dan membuka tiga dokumen, itu akan menggilir ketiga dokumen tersebut.
Namun, Command~pintasan keyboard tidak melalui Tab. Misalnya, jika Anda memiliki Safari terbuka dengan tiga jendela dan setiap jendela memiliki lima tab terbuka, menggunakan pintasan ini akan menggilir ketiga jendela, bukan melalui masing-masing tab.
Opsi lain yang dapat mencapai apa yang Anda inginkan adalah CommandMpintasan keyboard. Namun ini meminimalkan jendela aktif ke Dock, jadi saya kira bukan itu yang Anda inginkan.
Jika saya salah memahami pertanyaan Anda, mohon jelaskan.