Saya mencoba untuk menjalankan xdotool type word
kemudian xdotool key Return
dari Preferences Startup Aplications.
Tetapi jika saya menggunakan &&
atau ;
, xdotool mengevaluasinya sebagai kelanjutan dari input.
command-line
xdotool
janot
sumber
sumber
xdotool type $'word\r'
, di mana$''
lolos\r
ke sesuatu seperti kembali (\n
tidak bekerja di sini).Jawaban:
Singkat cerita:
Gunakan skrip.
Dan letakkan jalan naskah di
Exec
lapangan.Cerita panjang:
Menurut halaman
xdotool
manual :Perangkaian perintah melalui
;
atau&
tidak dimungkinkan, karena itu adalah sintaksis shell dan Aplikasi Startup tidak mendukung sintaksis shell. Namun, jika semua yang ingin Anda lakukan adalah menekan Entersetelah mengetik sesuatu, ada cara memutar untuk melakukannya.Ketika dikatakan "ASCII" baris baru, itu tidak berarti telanjang
\n
. Dan perintah substitusi (xdotool type "$(printf '\n')"
, katakanlah) memakan baris baru. Mengikutixdotools
posting forum ini , saya mencoba ini:Dan itu berhasil. Tapi itu hanya berfungsi jika ada beberapa karakter setelah
\n
, dan ini jelas meninggalkan ruang tambahan, yang tidak akan seperti yang Anda inginkan. Saya memodifikasi itu menjadi:Dan ini bekerja dan tidak meninggalkan ruang tambahan. Namun, ini dapat menyebabkan masalah bagi mereka yang menggunakan mode Vi di shell mereka.
Berkat komentar @ steeldriver, saya menemukan bahwa ini karena saya mencobanya di terminal tempat saya menjalankan perintah. Hanya sedikit celah antara penekanan saya Enterdan
xdotool
perintah sudah cukup untuk satu baris baru untuk didaftarkan dengan benar. Jadi:Jadi, perpanjang baris dengan mengutipnya:
atau menggunakan interpretasi shell seperti yang disarankan @steeldriver sepertinya opsi yang tepat.
Namun, skrip berisi:
di
Exec
lapangan bekerja dengan baik. Memang, saya selalu merekomendasikan menggunakan skrip untuk perintah kompleks dalam file desktop.Anda dapat memiliki skrip dengan
/usr/bin/xdotool
shebang, tetapi halaman manual mengatakan "script
mode tidak sepenuhnya disempurnakan dan mungkin jauh di bawah harapan Anda", jadi saya tetap menggunakan bash scripts.Saya mungkin telah melihat banyak hal, tetapi dalam beberapa percobaan pertama saya, saya harus meletakkan (kecil). Itu adalah artefak untuk mencobanya di terminal yang mengeksekusi perintah bukan jendela lain.sleep
antara perintahtype
dankey
sumber
xdotool type 'word
diikuti oleh tombol 'Enter' dan kemudian penutup'
, seperti halnya$'word\n'
(di mana bash memperluas\n
ke baris baru literal sebelum meneruskan argumen kexdotool
).'
atau dua\n
s dengan$
trik).sleep
(lihat catatan dalam teks kecil). Saya tidak mengubah jendela dan hanya mencobanya di jendela yang sama, tetapi dengan asleep 1
, kedua metode bekerja dengan jendela yang sama dan setelah beralih. Saya kira Enter saya sendiri menekan tombol entah bagaimana mengganggu dengan xdotool newline. Namun, untuk persyaratan file desktop yang lebih kompleks, saya masih merekomendasikan script.Menurut saya aplikasi tersebut tidak mem-parsing beberapa perintah, tetapi memperlakukannya sebagai satu perintah. Dengan demikian membuatnya menjadi perintah tunggal dengan membungkusnya dengan panggilan shell ...
Sekarang Anda juga dapat melakukan hal-hal shell lainnya ...
Perhatikan bahwa perintah "date" yang digunakan pada yang terakhir menyertakan baris baru! dan "xdotool" akan menampilkannya.
CATATAN: jika Anda melakukan ini sebagai makro keyboard saya juga akan menambahkan beberapa opsi lagi ke "xdotool" untuk membuat ini bekerja lebih baik ...
sumber