Saya mencoba mensimulasikan penekanan tombol media menggunakan pintasan khusus.
Sejauh ini, saya sudah dapat mencapai simulasi yang saya butuhkan menggunakan perintah:
xdotool key XF86AudioPlay
Ini berfungsi dengan baik, menjeda atau memulai pemutar musik setiap kali dijalankan.
Masalahnya muncul ketika mencoba menjalankannya sebagai jalan pintas.
Pertama saya mencoba menjalankan alias dengan pintasan khusus, tetapi tidak berhasil.
Seperti yang dijelaskan pada pertanyaan ini :
Perintah yang dijalankan oleh binding keyboard tidak diuraikan melalui shell. Taruhan terbaik Anda adalah membuat bin direktori di homedir Anda.
Selanjutnya saya membuat skrip yang disarankan dan menamainya simplay
:
#!/bin/sh
xdotool key XF86AudioPlay
Itu terletak di dalam folder bin yang merupakan bagian dari PATH
, ini berfungsi dengan baik dan dapat dijalankan dari lokasi mana pun.
Saat mencoba membuat Pintasan Khusus, saya tidak dapat menjalankannya, konfigurasinya adalah sebagai berikut:
Name: test
Command: simplay
Shortcut: Ctrl+Alt+R
Setelah mencari sedikit lebih banyak, saya menemukan cara lain untuk menjalankan pintasan:
gnome-terminal -e simplay
Saya mencobanya di terminal dan memperhatikan bahwa ketika mengeksekusi itu akan dengan cepat membuka jendela terminal baru, menjalankan proses anak, menjeda musik dan segera menutup jendela.
Saya mengubah perintah pada pintasan dan ketika menekannya saya perhatikan perilaku yang sama membuka terminal dan segera ditutup tetapi kali ini proses anak tidak menghentikan musik, yang membuat saya berpikir bahwa skrip telah dipanggil pada semua upaya saya sebelumnya tapi itu entah bagaimana tidak bisa dieksekusi.
Bagaimana saya bisa menyelesaikan masalah ini sesuai dengan pengetahuan Anda?
sumber
Alternatif (untuk kinerja snappier) untuk digunakan
sleep 1 && xdotool ...
adalah menggunakan xdotool untuk melepaskan kunci pintas Anda. Sedikit lebih panjang, tetapi Anda juga bisa menggunakannyasumber