Mevcut renk isimlerini nasıl listeleyebilirim?


23

Git yapılandırmama biraz renk eklemeye çalışıyorum ve terminalde hangi renk adlarının bulunduğunu bilmek istiyorum.

  • Renkleri sadece ismiyle kullanmak istiyorum, böylece diğerlerinin anlaması daha kolaydır
  • Yeni renkler eklemek istemiyorum - Sadece önceden tanımlanmış isimlerden birini seçmek istiyorum
  • Tüm dağıtımlar için işe yarayan bir çözüm istiyorum, ancak öncelikle Debian
  • Adının belirttiği rengi görmek güzel olurdu

Pek çok çevrimiçi referans genellikle sistemimde tanımlanmayan renk adlarından bahsediyor, bu yüzden sadece varsayılan seçeneklerimin ne olduğunu görmenin bir yoluna ihtiyacım var.


Bu yararlı bir referanstı. Kabuk yazılarını severim. misc.flogisoft.com/bash/…
doub1ejack

Yanıtlar:


25

Çevrimiçi başvuruların çoğu sık sık sistemimde tanımlanmayan renk adları hakkında konuşuyor

Bunlar muhtemelen tanımlanmıştır, ancak bunlar X11 renkleridir; bir zamanlar onları bulabilirdin /lib[64]/X11/rgb.txt. Her durumda, bu dizeleri (örneğin, bir eşleme var dimgray(örneğin 24 bit RGB renklerine) 0xff8800veya #ff8800turuncu olacaktır). 24 bitlik bir alan ~ 16 milyon renktir, açıkçası X11 tüm adları vermez (CSS 3, X11 adlarını kullanır, BTW).

24 bitlik alan GUI'niz tarafından kullanılır; şeffaflık, bunu 32 bit bir alana artırarak uygulanır. Bununla birlikte, gitbir GUI (G = grafiksel) aracı değildir, bir TUI (T = terminal) aracıdır ve normal bir terminalde mevcut olan renklerle sınırlıdır.

Tüm dağıtımlar için işe yarayan bir çözüm istiyorum, ancak öncelikle Debian

Bunun düzgün bir şekilde taşınabilir olmasını istiyorsanız, yalnızca sekiz standart ANSI rengine güvenmelisiniz :

  • siyah
  • mavi
  • yeşil
  • Sarı
  • camgöbeği
  • beyaz
  • eflatun
  • kırmızı

X11 listesinin yanında biraz hayal kırıklığı yarattı, ama hiç yoktan iyidir! Bunlar aynı zamanda 16 renkler, yapım standart bir "cesur" ya da "parlak" sürümüne sahip olabilir (yanı örneğin "brightyellow" belirtmek mümkün veya tam tersine "darkyellow").

GUI terminalleri 1'in çoğu 256 renk desteğine sahiptir ve bazı terminal uygulamaları bundan yararlanabilir. Test etmek için önce $TERMdeğişkeni uygun şekilde ayarlamanız gerekir :

export $TERM=xterm-256color

Terminal emülatörünüzde bunun için bir yapılandırma seçeneği de olabilir. Xterm 256 renk protokolünün altındaki renkler dizine eklenir:

xterm renk şeması

Dizin numarası sol alt köşededir. Bu tablonun altındaki setin (0-15) 16 temel (parlak ve koyu) ANSI renk olduğuna dikkat edin. Bu renklerden birine standartların altında referans vermek için color+ indeks numarasını kullanın , örn. color40.


1. Bir "GUI terminali", xterm, GNOME terminali vb. Gibi bir GUI bağlamında çalışan bir terminal emülatörüdür. Ancak, bu, bir GUI terminalinde TUI uygulamalarını (git gibi) GUI uygulamalarında çalıştırmaz. Onlar hala TUI uygulamaları ve bu bağlamda bağlı.


Üzgünüz, X11 listesi yanıltıcı olabilir. Her tür GUI ile ilgilenmiyorum - sadece terminalde mevcut renkler.
doub1ejack

İşte orada. Normal donanım varsa, linux'ta karşılaştığınız herhangi bir terminal 16 renge sahiptir, bunlardan sekiz tanesinin üzerinde, ANSI standardına göre "parlak / kalın" bir sürüm vardır (örneğin, genellikle yalnızca parlak sarı renkte görünür; vb). Gitmek için WRT, bu 8 kullanabilirsiniz. Amacım, ekranda gördüğünüz herhangi bir renk kullanamazsınız. Terminal arayüzü bir sınırlamadır. Sekiz temel renk Bu kadar.
goldilocks

2
@ doub1ejack: Bil bakalım ne oldu? Dün 256 renkli terminallerde renk isimlendirmek için bir standart olduğunu ve gittiğini kontrol etmeme rağmen, onu kullanan bazı TUI uygulamaları olduğunu fark ettim. Her neyse, bununla ilgili bazı şeyleri düzenledim.
goldilocks

Bence sadece 8 renk ve 8 parlak versiyon var. 16 renk olduklarını söylemek teknik olarak doğru değil mi?
jiggunjer

1
Bu cevabı okuyordum, nasıl gidene kadar bekliyorum. Neredeyse oradaydım ve cevap durdu.
ctrl-alt-delor
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.