İTerm2'de bir sekmenin rengini programlı olarak mı ayarlıyorsunuz?


17

Günlük iş akışım beni içeriyor

  1. İTerm2'yi Başlatma
  2. 3 sekme oluşturma
  3. Her birinin bir sekmesini kırmızı, turuncu ve sarıya ayarlama
  4. Her sekmedeki belirli bir yola değiştirme

Bu süreci senaryolamak istiyorum; Kabuk, el yazısı vb. Ancak, sekme rengini değiştirmeme izin veren bir kanca bulamıyorum. Mümkün mü? İşte elde etmeye çalıştığım şeyin bir örneğiyle bir ekran görüntüsü.

iTerm sekmesi kurulumu


Yanıtlar:


14

Bu mümkün ve ayrıntılar için iterm kaçış kodlarını okumalısınız .

^[]6;1;bg;red;brightness;N^G

Ben ssh(.ssh / config) yaptığım zaman terminalin rengini ayarlamaya çalıştım ve işe yaradı ama ssh oturumunu kapattığımda, başlığı / rengi geri yüklemek için komut dosyasını tekrar çağırmayacak.

Otomatik renkli sekmelere bir özellik isteği eklendi - yıldız eklemeyi veya yorumlarınızı eklemeyi unutmayın (yamalar da hoş geldiniz!)


1
Ben sekme renk değişiklikleri (ve sunucu adları ile özel arka plan gibi diğer şeyler) yapar ve onları geri değiştirmek için bir EXIT tuzak kullanır ~ / bin benim ssh sarmalayıcı komut dosyası yaz.
Aaron

Aaron, senaryonuzu paylaşmak ister misin?
lfender6445

Ayrıca şunları da yapabilirsiniz:function ssh { command ssh $@; # RESET BACK -> don't know how yet! help needed here }
davidhq

Bir şekilde öğrendim ... Başka bir cevap olarak yapıştırdım
davidhq

13

Bu işlevi ~ / .profile dosyama ekledim:

function color {
    case $1 in
    green)
    echo -e "\033]6;1;bg;red;brightness;57\a"
    echo -e "\033]6;1;bg;green;brightness;197\a"
    echo -e "\033]6;1;bg;blue;brightness;77\a"
    ;;
    red)
    echo -e "\033]6;1;bg;red;brightness;270\a"
    echo -e "\033]6;1;bg;green;brightness;60\a"
    echo -e "\033]6;1;bg;blue;brightness;83\a"
    ;;
    orange)
    echo -e "\033]6;1;bg;red;brightness;227\a"
    echo -e "\033]6;1;bg;green;brightness;143\a"
    echo -e "\033]6;1;bg;blue;brightness;10\a"
    ;;
    esac
 }

Bu işlevi ekledikten sonra yeni bir terminal oturumu açmanız gerekir. Şimdi girebilirsiniz:

$ color green

veya

$ color orange

Sekme rengini değiştirmek için.

Renkleri oluşturmak için Photoshop kullanıyorum:

Photoshop renk seçici

Bu renk seçici değerleri aşağıdaki komutlara dönüştürülebilir (Sadece R -> kırmızı, G -> yeşil, B -> mavi değerlerini "parlaklık;" karakterinden sonra farklı bir renk elde etmek için sağ satıra ekleyin):

echo -e "\033]6;1;bg;red;brightness;57\a"
echo -e "\033]6;1;bg;green;brightness;197\a"
echo -e "\033]6;1;bg;blue;brightness;77\a"

4

Ssh oturumundan çıktıktan sonra sekme rengini sıfırlamak için şunu kullanın:

function ssh {
  command ssh $@
  echo -e "\033]6;1;bg;red;brightness;176\a"
  echo -e "\033]6;1;bg;green;brightness;181\a"
  echo -e "\033]6;1;bg;blue;brightness;175\a"
}
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.