Ini ialah arahan xdotool yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.
JADUAL:
NAMA
xdotool - alat automasi baris arahan X11
SINOPSIS
xdotool cmd args...
Notasi: Beberapa penggunaan dokumentasi [tingkap] untuk menandakan argumen tetingkap pilihan. ini
case bermakna bahawa hujah, jika tidak hadir, akan lalai kepada "% 1". Lihat "TINDUAN WINDOW" untuk
maksud "% 1".
DESCRIPTION
xdotool membolehkan anda secara terprogram (atau secara manual) mensimulasikan input papan kekunci dan aktiviti tetikus,
alih dan ubah saiz tetingkap, dsb. Ia melakukan ini menggunakan sambungan XTEST X11 dan Xlib lain
fungsi.
Terdapat beberapa sokongan untuk Petua Pengurus Tetingkap Lanjutan (aka EWMH atau NetWM). Lihat
Bahagian "PETUA PENGURUS TEMBAI LANJUTAN" untuk mendapatkan maklumat lanjut.
KEYBOARD PERINTAH
utama [pilihan] keystroke [keystroke ...]
Pilihan:
--tingkap tetingkap
Hantar ketukan kekunci ke id tetingkap tertentu. Anda boleh menggunakan rujukan "WINDOW STACK".
seperti "%1" dan "%@" di sini. Jika terdapat timbunan tetingkap, maka "% 1" ialah lalai,
jika tidak tetingkap semasa digunakan.
Lihat juga: "NOTA SENDEVENT" dan "TINDUAN WINDOW"
--clearmodifiers
Kosongkan pengubah suai sebelum menghantar ketukan kekunci. Lihat CLEARMODIFIERS di bawah.
--kelewatan milisaat
Kelewatan antara ketukan kekunci. Lalai ialah 12ms.
Taipkan ketukan kekunci yang diberikan. Contohnya ialah "alt+r", "Control_L+J", "ctrl+alt+n",
"Ruang Belakang".
Secara amnya, sebarang rentetan X Keysym yang sah akan berfungsi. Berbilang kunci dipisahkan dengan '+'.
Alias wujud untuk "alt", "ctrl", "shift", "super", dan "meta" yang semuanya dipetakan ke Foo_L,
seperti Alt_L dan Control_L, dsb.
Dalam kes di mana papan kekunci anda sebenarnya tidak mempunyai kunci yang anda mahu taip, xdotool
akan mencari kod kunci yang tidak digunakan secara automatik dan menggunakannya untuk menaip kunci.
Berkenaan dengan "COMMAND CHAINING", arahan ini menggunakan baki
argumen atau sehingga arahan xdotool baharu dilihat, kerana tiada arahan xdotool
ketukan kekunci yang sah.
Contoh: Hantar ketukan kekunci "F2"
kekunci xdotool F2
Contoh: Hantar 'a' dengan aksen di atasnya (bukan pada papan kekunci bahasa Inggeris, tetapi masih berfungsi
dengan xdotool)
kunci xdotool Aacute
Contoh: Hantar ctrl+l dan kemudian BackSpace sebagai ketukan kekunci berasingan:
kekunci xdotool ctrl+l BackSpace
Contoh: Hantar ctrl+c ke semua tetingkap yang sepadan dengan tajuk 'gdb' (Lihat "COMMAND CHAINING")
carian xdotool --nama kunci gdb ctrl+c
kunci kunci [pilihan] keystroke
Sama seperti di atas, kecuali hanya acara keydown (tekan) dihantar.
keyup keystroke
Sama seperti di atas, kecuali hanya acara keyup (pelepasan) dihantar.
jenis [pilihan] sesuatu kepada jenis
Pilihan:
--tingkap tetingkap
Hantar ketukan kekunci ke id tetingkap tertentu. Lihat "NOTA SENDEVENT" di bawah. lalai,
jika tiada tetingkap diberikan, bergantung pada timbunan tetingkap. Jika timbunan tingkap kosong
tetingkap semasa ditaip menggunakan XTEST. Jika tidak, lalai ialah "% 1" (lihat
"TINDUAN WINDOW").
--kelewatan milisaat
Kelewatan antara ketukan kekunci. Lalai ialah 12ms.
--clearmodifiers
Kosongkan pengubah suai sebelum menghantar ketukan kekunci. Lihat CLEARMODIFIERS di bawah.
Menaip seolah-olah anda telah menaipnya. Menyokong baris dan tab baharu (baris dan tab baharu ASCII). setiap satu
ketukan kekunci dipisahkan oleh kelewatan yang diberikan oleh --kelewatan pilihan.
Berkenaan dengan "COMMAND CHAINING", arahan ini menggunakan baki
hujah dan menaipnya. Iaitu, tiada arahan boleh rantai selepas 'taip'.
Contoh: untuk menaip 'Hello world!' anda akan lakukan:
jenis xdotool 'Hello world!'
MOUSE PERINTAH
menggerunkan [pilihan] x y OR 'pulihkan'
Gerakkan tetikus ke koordinat X dan Y tertentu pada skrin.
Anda boleh menggerakkan tetikus ke lokasi sebelumnya jika anda menentukan 'pulihkan' dan bukannya a
Koordinat X dan Y. Pemulihan hanya berfungsi jika anda telah berpindah sebelum ini dalam perkara yang sama
seruan perintah. Selanjutnya, ia tidak berfungsi dengan pilihan --window.
Contohnya, untuk mengklik sudut kiri atas skrin dan gerakkan tetikus ke
kedudukan asal sebelum anda mengalihkannya, gunakan ini:
xdotool mousemove 0 0 klik 1 mousemove restore
--tingkap WINDOW
Tentukan tetingkap untuk dialihkan secara relatif. Koordinat 0,0 berada di bahagian atas sebelah kiri
tetingkap yang anda pilih.
Rujukan "WINDOW STACK" adalah sah di sini, seperti %1 dan %@. Walaupun, menggunakan %@
mungkin tidak masuk akal.
--skrin SKRIN
Gerakkan tetikus ke skrin yang ditentukan untuk dialihkan. Ini hanya berguna jika anda ada
berbilang skrin dan TIDAK menggunakan Xinerama.
Lalai ialah skrin semasa. Jika anda menentukan --window, bendera --screen ialah
diabaikan.
--kutub
Gunakan koordinat kutub. Ini menjadikan 'x' sudut (dalam darjah, 0-360, dll) dan 'y'
jarak.
Putaran bermula pada 'naik' (0 darjah) dan berputar mengikut arah jam: 90 = kanan, 180 = bawah,
270 = kiri.
Asal lalai ke tengah skrin semasa. Jika anda nyatakan a
--window, maka asalnya ialah pusat tetingkap itu.
--clearmodifiers
Lihat CLEARMODIFIER
--segerak
Selepas menghantar permintaan pergerakan tetikus, tunggu sehingga tetikus benar-benar dialihkan. Jika
tiada pergerakan diperlukan, kami tidak akan menunggu. Ini berguna untuk skrip yang bergantung
mengenai tindakan yang diselesaikan sebelum meneruskan.
Nota: Kami menunggu sehingga tetikus bergerak sama sekali, tidak semestinya ia sebenarnya
sampai ke destinasi yang dituju. Sesetengah aplikasi mengunci kursor tetikus ke
kawasan tertentu skrin, jadi menunggu sebarang pergerakan adalah lebih baik dalam
kes umum daripada menunggu sasaran tertentu.
mousemove_relative [pilihan] x y
Gerakkan tetikus x,y piksel relatif kepada kedudukan semasa kursor tetikus.
--kutub
Gunakan koordinat kutub. Ini menjadikan 'x' sudut (dalam darjah, 0-360, dll) dan 'y'
jarak.
Putaran bermula pada 'naik' (0 darjah) dan berputar mengikut arah jam: 90 = kanan, 180 = bawah,
270 = kiri.
--segerak
Selepas menghantar permintaan pergerakan tetikus, tunggu sehingga tetikus benar-benar dialihkan. Jika
tiada pergerakan diperlukan, kami tidak akan menunggu. Ini berguna untuk skrip yang bergantung
mengenai tindakan yang diselesaikan sebelum meneruskan.
Ambil perhatian bahawa kita menunggu sehingga tetikus bergerak sama sekali, tidak semestinya ia sebenarnya
sampai ke destinasi yang dituju. Sesetengah aplikasi mengunci kursor tetikus ke
kawasan tertentu skrin, jadi menunggu sebarang pergerakan adalah lebih baik dalam
kes umum daripada menunggu sasaran tertentu.
--clearmodifiers
Lihat CLEARMODIFIER
klik [pilihan] butang
Hantar klik, iaitu, turun tetikus diikuti dengan tetikus atas untuk butang yang diberikan dengan a
kelewatan pendek antara kedua-duanya (pada masa ini 12ms).
Butang biasanya memetakan dengan cara ini: Tetikus kiri ialah 1, tengah ialah 2, kanan ialah 3, roda ke atas ialah
4, roda ke bawah ialah 5.
--clearmodifiers
Kosongkan pengubah suai sebelum mengklik. Lihat CLEARMODIFIERS di bawah.
--ulang REPEAT
Tentukan berapa kali untuk mengklik. Lalai ialah 1. Untuk klik dua kali, gunakan '--repeat
2'
--kelewatan MILISECONDS
Tentukan berapa lama, dalam milisaat, untuk menangguhkan antara klik. Pilihan ini tidak
digunakan jika --ulang bendera ditetapkan kepada 1 (lalai).
--tingkap WINDOW
Tentukan tetingkap untuk menghantar klik. Lihat "NOTA SENDEVENT" di bawah untuk kaveat. Kegunaan
kedudukan tetikus semasa semasa menjana acara.
Lalai, jika tiada tetingkap diberikan, bergantung pada timbunan tetingkap. Jika tingkap
timbunan kosong tetingkap semasa ditaip menggunakan XTEST. Jika tidak, lalai
ialah "% 1" (lihat "TINDAKAN WINDOW").
kawasan pegunungan [pilihan] butang
Sama seperti klik, kecuali hanya tetikus ke bawah dihantar.
tetikus [pilihan] butang
Sama seperti klik, kecuali hanya tetikus ke atas dihantar.
getmouselocation [--cangkang]
Mengeluarkan x, y, skrin dan id tetingkap kursor tetikus. Nombor skrin akan menjadi
bukan sifar jika anda mempunyai berbilang monitor dan tidak menggunakan Xinerama.
- cengkaman
Ini menjadikan data shell keluaran getmouselocation yang anda boleh nilai. Contoh:
% xdotool getmouselocation --shell
X = 880
Y = 443
SKRIN=0
WINDOW=16777250
% eval $(xdotool getmouselocation --shell)
% gema $X,$Y
714,324
behave_screen_edge [pilihan] di mana arahan ...
Ikat tindakan pada peristiwa apabila tetikus menyentuh tepi atau sudut skrin.
Pilihan adalah:
--kelewatan MILISECONDS
Kelewatan dalam milisaat sebelum menjalankan arahan. Ini membolehkan anda memerlukan a
kelebihan atau sudut yang diberikan untuk dipegang untuk tempoh yang singkat sebelum arahan anda akan dijalankan.
Jika anda meninggalkan tepi atau sudut sebelum kelewatan tamat maka masa akan ditetapkan semula.
--diam MILISECONDS
Kelewatan dalam milisaat sebelum arahan seterusnya dijalankan. Ini membantu mencegah
secara tidak sengaja menjalankan arahan anda lebih masa; amat berguna jika anda mempunyai a
sangat pendek --delay (seperti lalai 0).
Garis masa acara
* Tetikus terkena tepi atau sudut.
* Jika kelewatan bukan sifar, tetikus mesti berada di tepi atau sudut ini sehingga masa kelewatan tamat.
* Jika masih di tepi/sudut, picu.
* Jika senyap adalah bukan sifar, maka terdapat tempoh bertenang di mana seterusnya
pencetus tidak boleh berlaku
Nilai 'di mana' yang sah ialah:
kiri
kiri atas
bahagian
kanan atas
kanan
dibahagian bawah kiri
bawah
bawah-kanan
Contoh:
# Aktifkan google-chrome apabila anda menggerakkan tetikus ke sudut kiri bawah:
xdotool behave_screen_edge bawah kiri \
carian --kelas google-chrome windowactivate
# Pergi ke ruang kerja seterusnya (kanan). Diketahui berfungsi dalam GNOME (metacity dan compiz)
xdotool behave_screen_edge --delay 500 kekunci kanan bawah XF86Forward
# Aktifkan firefox dan lakukan carian web dalam tab baharu untuk teks dalam papan keratan anda
xdotool behave_screen_edge --delay 1000 atas-kiri \
carian --classname Navigator \
windowactivate --sync key --delay 250 ctrl+t ctrl+k ctrl+v Kembali
WINDOW PERINTAH
cari [pilihan] pola
Cari tetingkap dengan tajuk, nama atau kelas dengan corak ungkapan biasa.
Output ialah senarai terhad baris bagi pengecam tetingkap X. Jika anda menggunakan "COMMAND
CHAINING", arahan carian hanya akan menulis id tetingkap ke stdout jika ia adalah yang terakhir
(atau sahaja) perintah dalam rantai; jika tidak, ia senyap.
Hasilnya disimpan ke timbunan tetingkap untuk arahan berantai masa hadapan. Lihat "WINDOW
STACK" dan "COMMAND CHAINING" untuk butiran.
Pilihan lalai ialah "--name --class --classname" (melainkan anda menentukan satu atau
lebih daripada --name --class atau --classname).
Pilihan yang ada adalah:
--kelas
Perlawanan dengan kelas tingkap.
--nama kelas
Padankan dengan nama kelas tetingkap.
--maxdepth N
Tetapkan rekursi/kedalaman carian kanak-kanak. Lalai ialah -1, bermaksud tak terhingga. 0 bermakna tidak
kedalaman, hanya tetingkap akar akan dicari. Jika anda hanya mahu tingkap peringkat atas, tetapkan
kedalaman maksimum 1 (atau 2, bergantung pada cara pengurus tetingkap anda melakukan hiasan).
--nama
Padankan dengan nama tetingkap. Ini adalah rentetan yang sama yang dipaparkan dalam
bar tajuk tetingkap.
--boleh dilihat sahaja
Tunjukkan hanya tetingkap yang boleh dilihat dalam hasil carian. Ini bermakna yang mempunyai keadaan peta
Boleh Dilihat.
--pid PID
Padankan tetingkap yang tergolong dalam id proses tertentu. Ini mungkin tidak berfungsi untuk sesetengah X
aplikasi yang tidak menetapkan metadata ini pada tetingkapnya.
--skrin N
Pilih tetingkap hanya pada skrin tertentu. Lalai adalah untuk mencari semua skrin. Sahaja
bermakna jika anda mempunyai berbilang paparan dan tidak menggunakan Xinerama.
--desktop N
Hanya padankan tetingkap pada desktop tertentu. 'N' ialah nombor. Lalai adalah untuk mencari
semua desktop.
--had N
Berhenti mencari selepas menemui N tetingkap sepadan. Menentukan had akan membantu
mempercepatkan carian anda jika anda hanya mahukan beberapa hasil.
Lalai ialah tiada had carian (yang bersamaan dengan '--limit 0')
--tajuk
TERTUTUP. Lihat --nama.
--semua
Memerlukan bahawa semua syarat dipenuhi. Sebagai contoh:
carian xdotool --semua --pid 1424 --nama "Hello World"
Ini akan memadankan hanya tetingkap yang mempunyai "Hello World" sebagai nama dan dimiliki oleh
pid 1424.
--mana-mana
Padankan tetingkap yang sepadan dengan mana-mana syarat (secara logik, 'atau'). Ini dihidupkan secara lalai.
Sebagai contoh:
carian xdotool --any --pid 1424 --name "Hello World"
Ini akan memadankan mana-mana tetingkap yang dimiliki oleh pid 1424 atau windows dengan nama "Hello World"
--segerak
Sekat sehingga ada keputusan. Ini berguna apabila anda melancarkan
aplikasi mahu menunggu sehingga tetingkap aplikasi kelihatan. Untuk
contoh:
google-chrome &
carian xdotool --sync --onlyvisible --class "google-chrome"
pilih tetingkap
Dapatkan id tetingkap (untuk pelanggan) dengan mengklik padanya. Berguna untuk mempunyai pertanyaan skrip
anda manusia untuk apa tingkap untuk bertindak. Sebagai contoh, membunuh tetingkap dengan mengklik padanya:
xdotool selectwindow windowkill
berkelakuan tetingkap tindakan arahan ...
Ikat tindakan pada acara pada tetingkap. Ini membolehkan anda menjalankan arahan xdotool tambahan
setiap kali peristiwa yang sepadan berlaku.
Perintah dijalankan hasil daripada tingkah laku dijalankan dengan % 1 adalah tetingkap yang telah
diambil tindakan. Contoh berikut selepas senarai acara.
Berikut adalah peristiwa yang sah:
tetikus-masuk
Menyala apabila tetikus memasuki tingkap. Ini serupa dengan acara 'menuju tetikus' dalam
javascript, jika itu membantu.
meninggalkan tikus
Terbakar apabila tetikus meninggalkan tingkap. Ini adalah bertentangan dengan 'masuk tetikus'
klik tetikus
Menyala apabila tetikus diklik. Khususnya, apabila butang tetikus dilepaskan.
Kluster
Menyala apabila tetingkap mendapat fokus input.
kabur
Menyala apabila tingkap hilang fokus.
Contoh:
# Cetak lokasi kursor bila-bila masa tetikus memasuki tempat yang kelihatan pada masa ini
# tingkap:
carian xdotool --onlyvisible . berkelakuan %@ tetikus-masuk getmouselocation
# Cetak tajuk tetingkap dan pid setiap kali xterm mendapat fokus
carian xdotool --class xterm berkelakuan %@ fokus getwindowname getwindowpid
# Tiru fokus-ikut-tetikus
carian xdotool. berkelakuan %@ tetikus-masuk windowfocus
getwindowpid [tingkap]
Keluarkan PID yang memiliki tetingkap yang diberikan. Ini memerlukan usaha daripada pemilikan aplikasi
tetingkap dan mungkin tidak berfungsi untuk semua tetingkap. Ini menggunakan sifat _NET_WM_PID bagi
tingkap. Lihat "PENYAT PENGURUS TEMBAK LANJUTAN" di bawah untuk mendapatkan maklumat lanjut.
Jika tiada tetingkap diberikan, lalai ialah '% 1'. Jika tiada tingkap pada timbunan, maka ini
adalah satu kesilapan. Lihat "TINDAKAN WINDOW" untuk mendapatkan butiran lanjut.
Contoh: Cari PID untuk semua xterms:
carian xdotool --class xterm getwindowpid %@
getwindowname [tingkap]
Keluarkan nama tetingkap yang diberikan, juga dikenali sebagai tajuk. Ini adalah teks yang dipaparkan
dalam bar tajuk tetingkap oleh pengurus tetingkap anda.
Jika tiada tetingkap diberikan, lalai ialah '% 1'. Jika tiada tingkap pada timbunan, maka ini
adalah satu kesilapan. Lihat "TINDAKAN WINDOW" untuk mendapatkan butiran lanjut.
getwindowgeometry [pilihan] [tingkap]
Keluarkan geometri (lokasi dan kedudukan) tetingkap. Nilai termasuk: x, y,
lebar, tinggi dan nombor skrin.
- cengkaman
Nilai output yang sesuai untuk 'eval' dalam shell.
getwindowfocus [-f]
Mencetak id tetingkap tetingkap yang sedang difokuskan. Menyimpan hasil ke tetingkap
timbunan. Lihat "TINDAKAN WINDOW" untuk mendapatkan butiran lanjut.
Jika tetingkap semasa tidak mempunyai sifat WM_CLASS, kami menganggap ia bukan tahap atas biasa
tetingkap dan melintasi ibu bapa sehingga kami menemui tetingkap dengan set WM_CLASS dan
kembalikan id tetingkap itu.
Jika anda benar-benar mahu tetingkap pada masa ini mempunyai fokus dan tidak peduli jika ia mempunyai a
Tetapan WM_CLASS, kemudian gunakan 'getwindowfocus -f'
saiz tingkap [pilihan] [tetingkap] lebar lebar
Tetapkan saiz tetingkap tetingkap yang diberikan. Jika tiada tetingkap diberikan, % 1 adalah lalai.
Lihat "TINDANAN TEMBAGA" dan "PERANTIAN PERINTAH" untuk mendapatkan butiran lanjut.
Peratusan adalah sah untuk lebar dan tinggi. Mereka adalah relatif kepada geometri
skrin tetingkap dihidupkan. Contohnya, untuk menjadikan tetingkap sebagai lebar penuh skrin,
tetapi separuh ketinggian:
xdotool windowsize I 100% 50%
Peratusan adalah sah dengan --usehints dan masih bermakna lebar piksel berbanding dengan
saiz skrin.
Pilihan yang ada adalah:
--petunjuk guna
Gunakan petunjuk saiz tetingkap (apabila tersedia) untuk menetapkan lebar dan tinggi. Ini berguna
pada terminal untuk menetapkan saiz berdasarkan baris/lajur teks dan bukannya piksel.
--segerak
Selepas menghantar permintaan saiz tetingkap, tunggu sehingga tetingkap sebenarnya diubah saiznya.
Jika tiada perubahan perlu, kami tidak akan menunggu. Ini berguna untuk skrip yang
bergantung pada tindakan yang diselesaikan sebelum meneruskan.
Nota: Kerana ramai pengurus tetingkap mungkin mengabaikan atau mengubah saiz semula asal
permintaan, kami akan tunggu sehingga saiz berubah dari saiz asal, tidak perlu
mengikut saiz yang diminta.
Contoh: Untuk menetapkan terminal menjadi 80x24 aksara, anda akan menggunakan:
xdotool windowsize --usehints some_windowid 80 24
gerak tingkap [pilihan] [tingkap] x y
Alihkan tetingkap ke kedudukan yang diberikan. Jika tiada tetingkap diberikan, % 1 adalah lalai. Lihat
"TINDAKAN WINDOW" dan "CHAINING COMMAND" untuk butiran lanjut.
Jika koordinat x yang diberikan secara literal adalah 'x', maka kedudukan x semasa tetingkap akan
tidak berubah. Perkara yang sama berlaku untuk 'y'.
Contoh:
xdotool getactivewindow windowmove 100 100 # Beralih ke 100,100
xdotool getactivewindow windowmove x 100 # Beralih ke x,100
xdotool getactivewindow windowmove 100 y # Beralih ke 100,y
xdotool getactivewindow windowmove 100 y # Beralih ke 100,y
--segerak
Selepas menghantar permintaan alih tetingkap, tunggu sehingga tetingkap benar-benar dialihkan. Jika
tiada pergerakan diperlukan, kami tidak akan menunggu. Ini berguna untuk skrip yang bergantung
mengenai tindakan yang diselesaikan sebelum meneruskan.
--saudara
Buat pergerakan relatif kepada kedudukan tingkap semasa.
fokus tingkap [pilihan] [tingkap]
Fokuskan tingkap. Jika tiada tetingkap diberikan, % 1 adalah lalai. Lihat "TINDUAN WINDOW" dan
"COMMAND CHAINING" untuk maklumat lanjut.
Menggunakan XSetInputFocus yang mungkin diabaikan oleh sesetengah pengurus atau program tetingkap.
--segerak
Selepas menghantar permintaan fokus tetingkap, tunggu sehingga tetingkap benar-benar terfokus.
Ini berguna untuk skrip yang bergantung pada tindakan yang diselesaikan sebelum dialihkan
pada.
peta tetingkap [pilihan] [tingkap]
Petakan tetingkap. Dalam terminologi X11, memetakan tetingkap bermakna menjadikannya kelihatan pada tetingkap
skrin. Jika tiada tetingkap diberikan, % 1 adalah lalai. Lihat "TINDAKAN WINDOW" dan "COMMAND
CHAINING" untuk maklumat lanjut.
--segerak
Selepas meminta peta tetingkap, tunggu sehingga tetingkap benar-benar dipetakan
(kelihatan). Ini berguna untuk skrip yang bergantung pada tindakan yang sedang diselesaikan
sebelum meneruskan.
windowminimize [pilihan] [tingkap]
Minimumkan tetingkap. Dalam terminologi X11, ini dipanggil 'iconify.' Jika tiada tingkap
diberikan, % 1 ialah lalai. Lihat "TINDANAN TEMBAGA" dan "PERANTIAN PERINTAH" untuk mendapatkan butiran lanjut.
--segerak
Selepas meminta tetingkap minimize, tunggu sehingga tetingkap sebenarnya diminimumkan.
Ini berguna untuk skrip yang bergantung pada tindakan yang diselesaikan sebelum dialihkan
pada.
menaikkan tingkap [window_id=%1]
Naikkan tingkap ke bahagian atas timbunan. Ini mungkin tidak berfungsi pada semua pengurus tetingkap. Jika
tiada tetingkap diberikan, % 1 adalah lalai. Lihat "TINDANAN WINDOW" dan "CHAINING COMMAND" untuk
maklumat lanjut.
windowreparent [source_window] tetingkap_destinasi
Semula tetingkap. Ini menggerakkan source_window untuk menjadi tingkap kanak-kanak
tetingkap_destinasi. Jika tiada sumber diberikan, % 1 adalah lalai. tetingkap "TINDAKAN WINDOW".
rujukan (seperti % 1) adalah sah untuk kedua-duanya source_window and tetingkap_destinasi Lihat
"TINDAKAN WINDOW" dan "CHAINING COMMAND" untuk butiran lanjut.
tutup tingkap [tingkap]
Tutup tingkap. Tindakan ini akan memusnahkan tingkap, tetapi tidak akan cuba untuk membunuh
klien mengawalnya. Jika tiada tetingkap diberikan, % 1 adalah lalai. Lihat "TINDUAN WINDOW"
dan "COMMAND CHAINING" untuk butiran lanjut.
pembunuh tingkap [tingkap]
Bunuh tingkap. Tindakan ini akan memusnahkan tetingkap dan membunuh pelanggan yang mengawalnya.
Jika tiada tetingkap diberikan, % 1 adalah lalai. Lihat TINDAKAN WINDOW dan "COMMAND CHAINING" untuk
maklumat lanjut.
windowunmap [pilihan] [window_id=%1]
Nyahpeta tetingkap, menjadikannya tidak lagi muncul pada skrin anda. Jika tiada tetingkap diberikan, % 1
adalah lalai. Lihat "TINDANAN TEMBAGA" dan "PERANTIAN PERINTAH" untuk mendapatkan butiran lanjut.
--segerak
Selepas meminta tetingkap nyahpeta, tunggu sehingga tetingkap benar-benar dinyahpetakan
(tersembunyi). Ini berguna untuk skrip yang bergantung pada tindakan yang disiapkan sebelum ini
meneruskan.
set_window [pilihan] [windowid=%1]
Tetapkan sifat tentang tetingkap. Jika tiada tetingkap diberikan, % 1 adalah lalai. Lihat "WINDOW
STACK" dan "COMMAND CHAINING" untuk butiran lanjut.
Pilihan:
--nama nama baru
Tetapkan tetingkap WM_NAME (tajuk tetingkap, biasanya)
--nama-ikon nama ikon baru
Tetapkan tetingkap WM_ICON_NAME (tajuk tetingkap apabila diminimumkan, biasanya)
--peranan peranan baru
Tetapkan tetingkap WM_WINDOW_ROLE
--nama kelas nama kelas baru
Tetapkan nama kelas tetingkap (jangan dikelirukan dengan kelas tetingkap)
--kelas kelas baru
Tetapkan kelas tetingkap (jangan dikelirukan dengan nama kelas tetingkap)
--overrideredirect nilai
Tetapkan nilai override_redirect tetingkap. Nilai ini adalah petunjuk kepada pengurus tetingkap
sama ada ia perlu diuruskan atau tidak. Jika nilai ubah hala ialah 0, maka nilai
pengurus tetingkap akan melukis sempadan dan merawat tetingkap ini seperti biasa. Jika nilainya ialah
1, pengurus tetingkap akan mengabaikan tetingkap ini.
Jika anda menukar nilai ini, pengurus tetingkap anda mungkin tidak menyedari perubahan itu sehingga
tetingkap dipetakan semula, jadi anda mungkin mahu mengeluarkan 'windowunmap' dan 'windowmap' ke
buat pengurus tingkap mengambil perhatian.
DESKTOP DAN WINDOW PERINTAH
Arahan ini mengikut piawaian EWMH. Lihat bahagian "PETUA PENGURUS WINDOW EXTENDED"
untuk maklumat lanjut.
windowactivate [pilihan] [tingkap]
Aktifkan tetingkap. Perintah ini berbeza daripada windowfocus: jika tetingkap dihidupkan
desktop lain, kita akan tukar ke desktop itu. Ia juga menggunakan kaedah yang berbeza untuk
membawa tingkap ke atas. Saya cadangkan mencuba arahan ini sebelum menggunakan windowfocus, sebagai
ia akan berfungsi pada lebih banyak pengurus tetingkap.
Jika tiada tetingkap diberikan, % 1 adalah lalai. Lihat "TINDANAN WINDOW" dan "PERANTIAN PERINTAH"
untuk maklumat lanjut.
--segerak
Selepas menghantar pengaktifan tetingkap, tunggu sehingga tetingkap benar-benar diaktifkan.
Ini berguna untuk skrip yang bergantung pada tindakan yang diselesaikan sebelum dialihkan
pada.
getactivewindow
Keluarkan tetingkap aktif semasa. Perintah ini selalunya lebih dipercayai daripada
getwindowfocus. Hasilnya disimpan ke timbunan tetingkap. Lihat "TINDANAN WINDOW" untuk lebih lanjut
butiran.
set_num_desktops nombor
Menukar bilangan desktop atau ruang kerja.
dapatkan_num_desktop
Keluarkan bilangan desktop semasa.
get_desktop_viewport [--cangkang]
Laporkan kedudukan paparan semasa. Jika --shell diberikan, output adalah mesra kepada
shell eval.
Viewports kadangkala digunakan dan bukannya 'desktop maya' pada sesetengah pengurus tetingkap. A
viewport hanyalah pandangan pada kawasan desktop yang sangat besar.
set_desktop_viewport x y
Gerakkan port pandang ke kedudukan yang diberikan. Tidak semua permintaan akan dituruti - sesetengahnya
windowmaners hanya mematuhi permintaan yang sejajar dengan sempadan ruang kerja, seperti
saiz skrin.
Sebagai contoh, jika skrin anda adalah 1280x800, anda boleh beralih ke ruang kerja ke-2 dengan melakukan:
set xdotool_desktop_viewport 1280 0
set_desktop [pilihan] desktop_number
Tukar paparan semasa kepada desktop yang ditentukan.
--saudara
Gunakan pergerakan relatif dan bukannya mutlak. Ini membolehkan anda bergerak relatif kepada
desktop semasa.
dapatkan_desktop
Keluarkan desktop semasa dalam paparan.
set_desktop_for_window [tingkap] desktop_number
Alihkan tetingkap ke desktop lain. Jika tiada tetingkap diberikan, % 1 adalah lalai. Lihat
"TINDAKAN WINDOW" dan "CHAINING COMMAND" untuk butiran lanjut.
get_desktop_for_window [tingkap]
Keluarkan desktop yang kini mengandungi tetingkap yang diberikan. Alihkan tetingkap ke tempat lain
desktop. Jika tiada tetingkap diberikan, % 1 adalah lalai. Lihat TINDAKAN WINDOW dan "COMMAND
CHAINING" untuk maklumat lanjut.
PELBAGAI PERINTAH
exec [pilihan] arahan [...]
Melaksanakan program. Ini selalunya berguna apabila digabungkan dengan behave_screen_edge to do
perkara seperti mengunci skrin anda.
Pilihan:
--segerak
Sekat sehingga proses kanak-kanak keluar. Status keluar proses anak kemudiannya diluluskan
kepada proses induk (xdotool) yang menyalinnya.
Contoh:
# Kunci skrin apabila tetikus berada di sudut kanan atas
xdotool behave_screen_edge --delay 1000 atas kanan \
exec gnome-screensaver-command --lock
# Gantikan 'xscreensaver-command -lock' jika anda menggunakan program itu.
# Perkara berikut akan gagal untuk menggerakkan tetikus kerana kami menggunakan '--sync' dan
# /bin/false keluar bukan sifar:
xdotool exec --sync /bin/false gerak tetikus 0 0
# Ini berjaya, walaupun, kerana kami tidak menggunakan --sync pada perintah exec.
xdotool exec /bin/false gerak tetikus 0 0
tidur saat
Tidur untuk tempoh tertentu. Pecahan saat (seperti 1.3, atau 0.4) adalah sah, di sini.
SKRIP
xdotool boleh membaca senarai arahan melalui stdin atau fail jika anda mahu. Skrip akan gagal
apabila mana-mana arahan gagal.
Sejujurnya, mod 'skrip' tidak disempurnakan sepenuhnya dan mungkin berada di bawah jangkaan anda. Jika
anda mempunyai cadangan, sila e-mel senarai atau failkan pepijat (Lihat HUBUNGI).
Skrip boleh menggunakan hujah kedudukan (Diwakili oleh $1, $2, ...) dan persekitaran
pembolehubah (seperti $HOME atau $WINDOWID). Memetik hujah harus berfungsi seperti yang diharapkan.
Skrip diproses untuk pengembangan pembolehubah parameter dan persekitaran dan kemudian dijalankan seolah-olah
anda telah menggunakan xdotool dengan keseluruhan skrip pada satu baris (menggunakan COMMAND CHAINING).
· Baca arahan daripada fail:
nama fail xdotool
· Baca arahan daripada stdin:
xdotool -
· Baca arahan daripada fail yang diubah hala
xdotool - < myfile
Anda juga boleh menulis skrip yang hanya melaksanakan xdotool. Contoh:
#!/usr/local/bin/xdotool
search --onlyvisible --classname $1
saiz tingkap %@ $2 $3
menaikkan tingkap %@
windowmove %1 0 0
windowmove %2 $2 0
windowmove %3 0 $3
windowmove %4 $2 $3
Skrip ini akan mengambil semua tetingkap yang dipadankan dengan pertanyaan nama kelas yang diberikan oleh arg1 ($1) dan
saiz/gerakkannya ke dalam grid 2x2 dengan tetingkap bersaiz dengan parameter ke-2 dan ke-3.
Inilah contoh penggunaan:
% ./myscript xterm 600 400
Menjalankannya seperti ini akan mengambil 4 xterm yang kelihatan, menaikkannya dan memindahkannya ke jubin 2x2
grid dengan setiap tetingkap bersaiz 600x400 piksel.
CLEARMODIFIER
Sebarang arahan yang mengambil --clearmodifiers flag akan cuba mengosongkan sebarang input aktif
pengubah suai semasa arahan dan memulihkannya selepas itu.
Sebagai contoh, jika anda menjalankan arahan ini:
kunci xdotool a
Hasilnya ialah 'a' atau 'A' bergantung pada sama ada anda memegang kekunci shift atau tidak
pada papan kekunci anda. Selalunya adalah tidak diingini untuk mempunyai mana-mana pengubah aktif, jadi anda boleh tahu
xdotool untuk mengosongkan mana-mana pengubah suai aktif.
Susunan operasi jika anda menahan syif semasa menjalankan 'kunci xdotool --clearmodifiers a'
Adakah ini:
1. Pertanyaan untuk semua pengubah suai aktif (mencari anjakan, dalam kes ini)
2. Cuba kosongkan syif dengan menghantar 'key up' untuk kekunci syif
3. Menjalankan 'kunci xdotool a' biasa
4. Pulihkan kekunci syif dengan menghantar 'key down' untuk syif
. --clearmodifiers bendera pada masa ini boleh mengosongkan perkara berikut:
· sebarang kunci dalam peta kekunci aktif anda yang mempunyai pengubah suai yang dikaitkan dengannya. (Lihat
xmodmap(1) keluaran 'xmodmap -pm')
· butang tetikus (1, 2, 3, 4, dan 5)
· Caps Lock
SENDEVENT NOTA
Jika anda cuba menghantar input utama ke tetingkap tertentu, dan ia tidak kelihatan
berfungsi, maka kemungkinan besar aplikasi anda mengabaikan peristiwa yang dijana oleh xdotool.
Ini agak biasa.
Menghantar ketukan kekunci ke tetingkap tertentu menggunakan API yang berbeza daripada sekadar menaip ke
tetingkap aktif. Jika anda menyatakan 'xdotool type --window 12345 hello' xdotool akan menjana
peristiwa penting dan hantar terus ke tetingkap 12345. Walau bagaimanapun, pelayan X11 akan menetapkan a
bendera khas pada semua acara yang dijana dengan cara ini (lihat XEvent.xany.send_event dalam X11's
manual). Banyak program memerhatikan bendera ini dan menolak acara ini.
Adalah penting untuk ambil perhatian bahawa untuk acara kekunci dan tetikus, kami hanya menggunakan XSendEvent apabila a
tetingkap tertentu disasarkan. Jika tidak, kami menggunakan XTEST.
Sesetengah atur cara boleh dikonfigurasikan untuk menerima acara walaupun ia dijana oleh xdotool.
Dapatkan dokumentasi permohonan anda untuk mendapatkan bantuan.
Nota aplikasi khusus (daripada ujian pengarang): * Firefox 3 nampaknya mengabaikan semua
input apabila ia tidak mempunyai fokus. * xterm boleh dikonfigurasikan semasa berjalan dengan
ctrl+leftclick, 'Allow SendEvents' * gnome-terminal nampaknya menerima input yang dijana oleh
lalai.
WINDOW TIMBUNAN
Arahan tertentu (search, getactivewindow, getwindowfocus) akan mencari tingkap untuk anda.
Hasil ini biasanya dicetak ke stdout, tetapi ia juga disimpan ke ingatan untuk masa hadapan
gunakan sepanjang hayat proses xdotool. Lihat "PERANTAIAN PERINTAH" untuk maklumat lanjut
maklumat.
Satu-satunya sokongan pengubahsuaian untuk timbunan tetingkap adalah menggantikannya. Iaitu, dua daripada dua
carian berurutan, hanya hasil yang terakhir akan menjadi timbunan tetingkap.
COMMAND BERANTI
xdotool menyokong menjalankan berbilang arahan pada satu seruan. Secara amnya, anda akan mulakan
dengan arahan carian (lihat "TINDUAN WINDOW") dan kemudian lakukan satu set tindakan pada mereka
keputusan.
Untuk menanyakan tindanan tetingkap, anda boleh menggunakan tatatanda khas "%N" dengan N ialah nombor atau nombor
simbol '@'. Jika %N diberikan, tetingkap Nth akan dipilih daripada timbunan tetingkap.
Secara amnya anda hanya mahukan tetingkap pertama atau semua tetingkap. Perhatikan bahawa susunan
tingkap dalam tindanan tetingkap sepadan dengan susunan susun tetingkap, iaitu yang paling bawah
tetingkap akan dilaporkan dahulu (lihat XQueryTree(3)). Oleh itu susunan tingkap dalam
timbunan tetingkap mungkin tidak konsisten merentas seruan.
Notasi yang diterangkan di atas digunakan sebagai hujah "tetingkap" untuk sebarang arahan yang diberikan.
Sebagai contoh, untuk mengubah saiz semua xterms kepada 80x24:
carian xdotool --class xterm -- windowsize --usehints %@ 80 24
Ubah saiz alihkan tetingkap semasa:
xdotool getactivewindow windowmove 0 0
Dalam semua kes, argumen tetingkap lalai, jika ditinggalkan, akan lalai kepada "% 1". Ia adalah
jelas ralat jika anda meninggalkan hujah tetingkap dan timbunan tetingkap kosong. Jika awak
cuba gunakan tindanan tingkap dan ia kosong, ia juga ralat.
Untuk mengaktifkan tetingkap firefox pertama yang ditemui:
xdotool search --class firefox windowactivate
Ini akan ralat:
xdotool windowactivate
xdotool windowactivate % 1
xdotool windowactivate %@
Apabila xdotool keluar, timbunan tetingkap semasa hilang.
Tambahan pula, arahan yang mengubah suai "TINDUAN WINDOW" tidak akan mencetak keputusan jika ia
bukanlah perintah terakhir. Sebagai contoh:
# Keluarkan tetingkap aktif:
% xdotool getactivewindow
20971533
# Keluarkan pid tetingkap aktif, tetapi bukan id tetingkap aktif:
% xdotool getactivewindow getwindowpid
4686
EXTENDED WINDOW PENGURUS HIJAU
Bahagian standard EWMH berikut disokong:
_NET_SOKONG
Tanya pengurus tetingkap apa yang disokong
_NET_CURRENT_DESKTOP
Tanya dan tetapkan desktop semasa. Sokongan untuk ini membolehkan arahan ini:
"set_desktop", "get_desktop".
_NET_WM_DESKTOP
Tanya dan tetapkan desktop tempat tetingkap tinggal. Sokongan untuk ini membolehkannya
arahan: "set_desktop_for_window", "get_desktop_for_window".
_NET_ACTIVE_WINDOW
Membolehkan anda membuat pertanyaan dan menetapkan tetingkap aktif dengan meminta pengurus tetingkap membawanya
ke hadapan. Sokongan untuk ini membolehkan arahan ini: "windowactivate", "getactivewindow".
_NET_WM_PID
Ciri ini bergantung pada aplikasi, bukan bergantung kepada pengurus tetingkap. Tanya PID
memiliki tingkap yang diberikan. Sokongan untuk ini membolehkan arahan ini: "getwindowpid".
DISOKONG CIRI-CIRI
xdotool (dan libxdo) akan cuba berfungsi dalam semua keadaan. Namun, mungkin ada
sesetengah kes di mana fungsi tidak disediakan oleh pelayan X anda atau oleh pengurus tetingkap anda.
Dalam kes ini, xdotool akan cuba mengesan dan memberitahu anda jika tindakan memerlukan ciri
tidak disokong oleh sistem anda pada masa ini.
Untuk ciri khusus pengurus tetingkap, lihat "PENYAT PENGURUS TEMBAI LANJUTAN".
XTEST
Jika pelayan X anda tidak menyokong XTEST, maka beberapa ciri menaip dan pergerakan tetikus
mungkin tidak berfungsi. Khususnya, menaip dan tindakan tetikus yang bertindak pada "tetingkap semasa"
(tetingkap 0 dalam libxdo) tidak mungkin berfungsi.
Dalam kebanyakan kes, XTEST ialah ciri yang anda boleh dayakan pada pelayan X anda jika ia tidak didayakan
secara lalai.
Anda boleh melihat senarai sambungan X yang disokong dengan menaip 'xdpyinfo' dan melihat
teks 'bilangan sambungan: ...'
Gunakan xdotool dalam talian menggunakan perkhidmatan onworks.net