Fokuskan terminal yang ada dengan pintasan `Ctrl-Alt-T`

16

Saya cenderung menggunakan terminal banyak,

Jadi saya bertanya-tanya apakah ada cara saya dapat membuat Ctrl+ Alt+ Tmemfokuskan terminal yang ada jika ada, atau membuat terminal baru?

Hailwood
sumber

Jawaban:

24

Buat skrip kecil yang akan membangkitkan Terminal GNOME:

echo 'xdotool windowactivate $(xdotool search --onlyvisible --class gnome-terminal)'> ~/raiseterminal.sh && chmod +x ~/raiseterminal.sh

atau jika Anda ingin memeriksa apakah Terminal sudah berjalan, gunakan:

echo -e $'if ps aux | grep "[g]nome-terminal" > /dev/null\n then xdotool windowactivate $(xdotool search --onlyvisible --class gnome-terminal)\n else gnome-terminal &\nfi' > ~/raiseterminal.sh && chmod +x ~/raiseterminal.sh

Ini akan membuat skrip ~ / raiseterminal.sh dengan konten ini:

if ps aux | grep "[g]nome-terminal" > /dev/null                                                                                                                                                                                
 then xdotool windowactivate $(xdotool search --onlyvisible --class gnome-terminal)                                                                                                                                            
 else gnome-terminal&                                                                                                                                                                                                          
fi          

Buka preferensi untuk mengatur pintasan keyboard khusus dan atur perintah /home/$USER/raiseterminal.sh, tetapi pastikan untuk mengubah $ USER ke nama pengguna Anda yang sebenarnya.

Jika Anda hanya ingin menaikkan terminal pada layar atau desktop tertentu, lihat xdotool search --helpuntuk informasi lebih lanjut tentang cara melakukan ini.

Ada juga berbagai metode lain yang bekerja lebih baik dengan manajer jendela lainnya.

nol
sumber
Anda dapat menambahkan | head -n1setelah mencari jendela terminal gnome untuk mencegah kesalahan jika lebih dari satu jendela ditemukan
ggalmazor
8

kenapa tidak Anda coba tildaatau guake, keduanya tersedia di repositori ubuntu. Meskipun mereka tidak secara spesifik melakukan apa yang Anda cari, saya yakin mereka adalah hal yang Anda cari tetapi tidak tahu itu ada. ;)

EDIT : ok, saya agak kabur, informasi lebih lanjut berikut:

dari wikipedia :

Tilda adalah emulator terminal GTK +. Desainnya terinspirasi dari konsol dalam permainan komputer seperti Quake yang meluncur ke bawah dari atas layar ketika tombol ditekan, biasanya tilde, dan meluncur kembali ke atas ketika tombol ditekan lagi.

Menjalankan Tilda bisa lebih cepat daripada meluncurkan terminal baru dengan pintasan keyboard karena program sudah dimuat ke dalam memori; ini dapat bermanfaat bagi orang-orang yang sering menemukan diri mereka membuka dan menutup terminal untuk tugas-tugas aneh.

guake benar-benar hal yang sama, satu-satunya perbedaan yang saya perhatikan adalah bahwa saya tidak dapat membuatnya membuka tautan http dengan ctrl + klik yang menurut saya mengganggu.

bartekbrak
sumber
1

Versi saya (=

Script untuk menjalankan / membesarkan aplikasi apa pun:

PID=$$
xdotool search --class $1 | while read line
do
  echo "$line"
  if [ `xdotool windowactivate $line 2> /dev/stdout | grep -c fail` -eq 0 ]
    then
    kill $PID
    exit
  fi
done
## Launch the program if we reach here
$1 & disown

misalnya

sh ~/raise.sh chromium
Possum Gallo
sumber
0

mencoba

sudo apt-get install wmctrl
wmctrl -xa 'gnome-terminal-server.Gnome-terminal'

buka pengaturan sistem - Keyborad, tambahkan pintasan khusus, dan rekatkan perintah wmctrl di sana. Berhasil.

dari mana string gnome-terminal- * berasal

wmctrl -xl
Jake
sumber
0

Namun pilihan lain: luncurkan atau alihkan. Skrip bergantung pada wmctrl untuk memeriksa apakah suatu jendela sudah terbuka. Jika ya, skrip beralih ke yang sudah ada, memberikan prioritas ke jendela yang ada di desktop saat ini. Kalau tidak, jendela baru digeber. Script ini diterbitkan oleh Vaughn Dickson .

#!/bin/sh

terminal_wm_class="gnome-terminal"
terminal_exec="gnome-terminal"

# no terminal started, so start one
if [ -z "`wmctrl -lx | grep gnome-terminal`" ]; then
    $terminal_exec &
else
    # search for existing terminals on current desktop
    current_desk=`wmctrl -d | grep '*' | cut -d ' ' -f 1`
    term_on_this_desk=`wmctrl -lx | grep "$current_desk[ ]*$terminal_wm_class" | cut -d ' ' -f 1`
    if [ -n "$term_on_this_desk" ]; then
        wmctrl -i -a $term_on_this_desk
    else
        # no terminals on current desktop, so just open the first one we find
        wmctrl -x -a $terminal_wm_class
    fi;
fi;

Tempatkan skrip ini di folder bin di folder rumah Anda dan buat itu dapat dieksekusi. Kemudian di bawah Pintasan Keyboard (Pengaturan - Keyboard), nonaktifkan hotkey yang ada untuk "terminal Luncurkan" di bawah bagian "Peluncur": klik di atasnya, lalu tekan Backspace untuk menonaktifkan penugasan saat ini. Lalu, di bagian "Pintasan Khusus", buat pintasan khusus baru dengan mengeklik ikon +. Isi nama skrip Anda sebagai "perintah" dan tetapkan Ctrl+ Alt+ tpintas.

vanadium
sumber