Saya membuat profil baru untuk gnome-terminal dan saya dapat beralih antara profil "Tersirat" dan profil yang baru dibuat seperti yang Anda lihat pada gambar di bawah:
Sekarang saya bertanya-tanya bagaimana saya bisa beralih antara profil menggunakan command-line / script atau mungkin menggunakan jalan pintas untuk ini.
Catatan: Solusi seperti:
gnome-terminal --tab-with-profile=Implicit && exit
dikecualikan karena saya lebih suka untuk tidak menutup dan membuka terminal lain atau mendapatkan jendela terminal lain dalam proses mengubah profil.
command-line
shortcut-keys
gnome-terminal
Radu Rădeanu
sumber
sumber
Jawaban:
Untuk beralih ke profil "implisit":
Untuk beralih ke profil kedua:
xdotool
tidak diinstal secara default di Ubuntu, jadi harus diinstal terlebih dahulu.Tentu saja, untuk perintah ini dapat ditambahkan pintasan keyboard khusus .
sumber
man xdotool
info lebih lanjut) seperti yang saya tanyakan, yang berfungsi persis seperti yang saya inginkan dan saya senang dengan jawaban ini sampai sesuatu yang lebih baik akan muncul. ;)Sudah banyak jawaban bagus tetapi saya ingin menambahkan satu lagi variasi menggunakan xdotool yang tidak memerlukan bilah menu agar terlihat ...
Pergeseran kombo kunci + F10 akan membuka menu pop-up (setara dengan mengklik kanan pada terminal) dan dari sana profil dapat diubah.
misalnya
xdotool key shift+F10 r 3
untuk sampai ke profil ketigaSaya juga menemukan bahwa metode ini tidak memerlukan pengaturan penundaan untuk xdotool (yang menurut saya perlu untuk metode menu bar) jadi karena itu sedikit lebih cepat.
Saya cenderung banyak mengubah profil, jadi saya membungkusnya menjadi fungsi:
jadi saya bisa menelepon
chp N
untuk beralih ke profil Nth.Beberapa tips dan keistimewaan lain dari pengaturan saya:
Dengan menambahkan
chp
perintah ke .bashrc saya, saya dapat memaksa tab baru untuk selalu beralih ke profil defaultSaya mewarnai kode sesi ssh saya berdasarkan host tetapi saya tidak suka alias ssh saya untuk membuka tab atau windows baru DAN saya ingin profil berubah kembali ke default ketika saya keluar dari ssh. Solusi saya:
alias somehost="chp 2; ssh user@somehost; chp 1"
Saya memberi xdotool bendera
--clearmodifiers
sehingga jika saya kebetulan memegang kunci pengubah (saat membuka tab / jendela, keluar ssh, dll.), Itu tidak akan mengganggu xdotool.Saya menambahkan nama profil saya dengan angka sehingga jika saya menambahkan yang baru, itu tidak menggeser yang lain karena pengabdian dari menu profil
sumber
--clearmodifiers
perlu dicarikey
.Tidak ada jalan pintas yang memungkinkan Anda untuk mengubah profil di dalam terminal (tanpa menavigasi menu seperti yang Anda katakan dalam komentar), tanpa menggunakan GUI. Mengutip manual ( stabil , pengembangan 3.9 ):
(Anda dapat mengusulkan ini sebagai saran di pelacak bug )
sumber
gnome-terminal
, tekanalt
dan lihat huruf apa yang sedang disorot untuk versi bahasa Anda 'Terminal' (item ke-5 dalam versi Polandia saya, di sebelah kiri 'Bantuan'), kemudian gunakan huruf itu denganalt
.Saya ingin melakukan hal yang sama dan akhirnya membuat skrip berfungsi, saya memasangnya di GitHub saya .
Seperti yang saya jelaskan di README.md, itu tidak benar-benar beralih, tetapi memuat konfigurasi profil ke profil Default. Untuk melakukan ini, konfigurasi masing-masing profil disimpan ke file di jalankan pertama skrip. Script membuatnya tampak seperti Anda beralih di antara profil, yang cukup bagus untuk saya. Semoga ini bisa membantu siapa pun ...
sumber
Bergantung pada tujuan Anda, Anda mungkin menemukan skrip ini berguna: https://github.com/xyrix/gnome-terminal-profile-switcher
Itu melakukan semacam patch monyet dan menghasilkan profil baru untuk setiap terminal, kemudian menetapkan beberapa variabel lingkungan untuk mengekspos program untuk beralih tema profil untuk terminal Anda saat ini.
Semoga contoh script safe_ssh akan memperjelas :-). Saya telah menggunakannya selama lebih dari satu tahun sekarang dan itu membantu saya untuk tidak menghancurkan database langsung perusahaan ^ _ ^
sumber
Jika Anda memiliki daftar server yang sering Anda akses, saya percaya solusi termudah adalah dengan memanggil jendela kedua hanya untuk sesi kotak itu.
Pertama, buat profil terminal gnome-terpisah untuk setiap lokasi jarak jauh yang sering Anda gunakan. Kemudian, di setiap profil, tentukan bahwa terminal harus menjalankan perintah login SSH untuk kotak itu, dan bukan shell biasa.
Terakhir, tulis skrip pendek untuk memulai jendela jarak jauh baru yang diberi ID profil.
Dengan menggunakan strategi ini, Anda dapat "secara tak terbatas" memvariasikan tampilan jendela terminal setiap kotak, dan menendang mereka dari satu terminal "kontrol". Misalnya, jika kita menyebut skrip ini "rlv", maka kita dapat menelurkan jendela jarak jauh dengan hanya memanggil skrip dengan nama profil.
Jika Anda pernah membobol nama host, atau lalai membuat profil untuk host itu, maka Anda hanya akan mendapatkan jendela profil default lain di kotak lokal. Ada cara untuk kode skrip untuk menghindari ini, dengan memasukkan login ke skrip itu sendiri, daripada di terminal gnome:
... tetapi kemudian Anda kehilangan fleksibilitas dalam menentukan nama pengguna login Anda untuk kotak itu. Fitur tambahan dari skrip yang saya tinggalkan sebagai latihan untuk pembaca.
sumber
Saya baru saja memperhatikan bahwa solusi asli saya telah ditolak dalam pertanyaan. Meskipun sepertinya tidak ada cara sederhana untuk mengubah profil, Anda dapat mengubah warna latar / latar depan dengan menggunakan
setterm
perintah.Jadi, ini
setterm -term linux -background black -foreground green
akan memberi Anda latar belakang hitam dengan teks hijau. Satu-satunya masalah adalah bahwa ls memiliki keluaran berwarna, jadi Anda mungkin ingin mematikan ls. Kalau tidak, pengaturan ulang ke skema warna sebelumnyaPosting asli : Ada semacam jalan memutar. Dari man gnome-terminal:
Ini contoh dari mesin saya. Saya memiliki tiga profil: B&G (hitam pada hijau), ForPrinting (font hitam, latar belakang putih), dan Default. Jadi yang saya lakukan adalah dalam tipe jendela saat ini
gnome-terminal --window-with-profile=ForPrinting
. Kemudian saya bisa membunuh jendela lama dari baris perintah atau beralih dan tutup secara grafis.Profil B&G tidak berfungsi. Mungkin karena & bukan karakter yang valid, jadi ingatlah saat memberi nama profil.
sumber
Solusi yang sangat jelek yang akhirnya saya gunakan adalah
(Ini memilih profil kedua, tetapi Anda dapat mengubahnya untuk mengatakan profil htir dengan mengubah perintah "key Down" kedua menjadi
xdotool key --delay 50 --repeat 2 Down
.Apa yang sedang dilakukan ini:
Anda perlu menginstal xdotool
sudo apt install xdotool
.Agak luar biasa bahwa terminal itu sendiri tidak memungkinkan konfigurasi melalui terminal!
sumber
Akan lebih baik jika gnome-terminal menawarkan perintah dan pintasan "profil berikutnya"; sayangnya tidak.
Solusi bagi mereka yang
Alt+T
cacat (Edit> Preferences> Enable mnemonics - unchecked) adalah:F10 left left down right
dan pilih profil. Aduh.sumber
Ini adalah posting yang agak lama, tetapi karena terus muncul ketika saya sedang mencari untuk menyelesaikan masalah yang sama ini, saya pikir saya akan memposting solusi saya.
Ini melibatkan skrip python kecil dan memetakan kembali tombol CTRL + ALT + T untuk menjalankan skrip alih-alih hanya meluncurkan terminal.
Buat file teks, saya beri nama mine terminal.py dan pastikan itu dapat dieksekusi. Tempatkan kode berikut di dalamnya. Ini akan membuka jendela terminal menggunakan semua profil yang tersedia secara berurutan untuk memastikan bahwa yang bertanda "default" adalah yang pertama dalam daftar.
Gunakan utilitas pengaturan keyboard untuk menetapkan pintasan baru ke skrip ini. Bagi saya, saya menugaskan kembali CTRL + ALT + T karena itu adalah jalan pintas yang saya gunakan untuk membuka jendela terminal.
Pastikan untuk membuat beberapa profil di terminal Anda. Script ini akan menggunakan semua profil Anda. Jadi, semakin banyak yang Anda buat, semakin banyak variasi di windows yang bisa Anda akses juga. Saya memiliki beberapa yang semuanya identik kecuali untuk warna latar belakang. Ini membantu saya mengenali mereka ketika saya alt-tab melalui mereka.
sumber