Lion'ın Terminal'in otomatik renk ayarını devre dışı bırakmak mümkün müdür?


35

Terminal'in artık ANSI renklerini değiştirmek için yerleşik desteğe sahip olması harika olsa da, kontrastı iyileştirmek için renkleri otomatik olarak ayarlamasını can sıkıcı buluyorum. . İşte sorunu açıklayan bir ekran görüntüsü:

OS X Terminal.app renk ayarlarının ekran görüntüsü

Bu beni rahatsız ediyor çünkü Terminal ve MacVim'de aynı renk şemasını kullanmaktan hoşlanıyorum ve bu renklerin Terminal tarafından işlenmesiyle MacVim'dekilerle eşleşmiyorlar.

Bunun için bir çözüm bilen var mı, iTerm 2'ye geçmenin yanı sıra (ki bunu tercih ederim - Terminal'in geri kalanını seviyorum, özellikle titreşimli görsel zil gibi bazı GUI dokunuşları). Teşekkürler!


1
İyi bir soru - pencere şeffaflığı için de ayarlamalar yapıldığı görülüyor, alt piksel gösterimini boşver…
kopischke

@kopischke, minimum kontrast ayarı, arka plan rengi opaklığını dikkate almaz, eğer demek istediğin buysa.
Chris Page

Beklenen renkleri siyah bir arka plan üzerinde gösteren bir ekran görüntüsü yayınlarsanız yardımcı olur. Bir yana, tercihler penceresindeki renk örnekleri ve ekran görüntüsünüzdeki terminaldeki metin renkleri arasında gerçekten bir fark göremiyorum, bu nedenle farkın ne kadar önemli olduğunu söylemek zor.
Chris Page

Şimdi neden OS X'i küçümsemediğimi biliyorum. Linux'ta tasarladığım bir renk düzeninin neden arkadaşımın Mac'inde tutulduğunu bulmaya çalışırken 6 + saatimi kaybettim. Bunun terminalin hatası olduğunu asla tahmin edemezdim ... Teşhisimi onayladığın için teşekkürler.
Jan Warchoł

Konu dışı, ancak iTerm2 sizi heyecanlandıran görsel zillere izin veriyor. Tercihler> Gelişmiş> Görsel zil yalnızca zil simgesini değil, tüm ekranı yanıp söner.
user2551

Yanıtlar:


23

İşte bilmeniz gereken püf noktası: RGB aracılığıyla ayarlanan değerler karışır, HSB aracılığıyla ayarlananlar olmaz.

(Great) Solarize renk şemasını kullanırken benzer bir sorun yaşadım: MacVim, Solarized spesifikasyonuna göre tüm doğru RGB değerlerini ayarladığım halde, Terminal'den daha koyu (ve doğru) bir arka plan rengine sahipti. Buraya bakınız:

Temelde size renk değerleri ne bilmek gerekir olması gerekiyordu (bu bir pencere sekmesinde unutmayın) renkler Terminal ANSI, metin ve Arka Plan her biri için ve daha sonra yerine RGB HSB seçiciyi kullanarak ayarlayın. Bu örneğe bakın:

Hangi nedenle olursa olsun (bir tür profil türünden şüpheleniyorum, ya da belki de önerdiğin gibi kontrast çimdikle), girdiğin RGB rengi aldığın şey değil. Ayrıca, değerleri HSB aracılığıyla ayarladıktan sonra, RGB seçiciye geçmenin beklediğinizden farklı seçenekler göstereceğini de fark edeceksiniz. Solarized değer dönüşümlerinin tümü Photoshop'a göre hemfikirdir; Apple renk seçicisinin sizin için yaptığı bir şey gibi görünüyor.


9
Bu inanılmaz derecede iyi bir cevap.
Jason Salaz

RGB öyle bir şekilde birbirine karışmamış gibi görünüyor, sadece @eirnym tarafından verilen cevaba göre seçicilerin opaklık ayarları tarafından değiştirildi - 2'nin kombinasyonu sadece açıklamakla kalmadı, 2 şekilde de çözdü. Harika!
Stuffe

2
Geçit töreninde yağmur yağmaması, ancak bunun sorunu çözemeyeceğini teyit edemiyorum - Terminal.app arka planı doğru değerlere ayarlasa bile HSB renk alanına girdiğim değerleri değiştirmeye devam ediyor (% 100 opaklık ve% 0 bulanıklık dahil) ilk. Parlak değerler buna daha az eğilimli görünmektedir, parlak olmayanlar daha fazla. Belki de Terminal.app’deki renk seçici oldukça ciddi, belki kontrast ve renk yelpazesi hakkında “akıllı” olmaya çalışıyor (her ikisini de Apple’a koymuyorum) - olabileceği gibi yukarıdaki çözüm benim için çalışmıyor sistemi.
kopischke

… Biraz daha araştırırken, sorunun Solarize edilmiş renklerin cihazdan bağımsız (LAB / HSB renk alanı) ve cihaza bağlı renk alanı (RGB) eşleştirilmesinde kaynaklandığı görülmektedir . Yukarıda gösterildiği gibi HSB renk alanını seçerken tutarlı sonuçlar elde edilebilir, ancak yalnızca aygıt RGB'ye açıkça eşleştirilirken (renk alanı açılır penceresinin solundaki küçük renkli karedeki küçük okun arkasındaki açılır menüde) da elde edilebilir. RGB değerlerinde Solarize edilmiş renk tablolarına olan farklılıklar, Solarized'in sRGB'ye eşlendiği gerçeği ile açıklanırken, renk seçici her zaman dolaylı olarak cihaz RGB'ye eşlenir.
kopischke

… OS X renk seçicisini, bu renk uzayının ne hakkında olduğunu bilenler için (yani grafik tasarımcıları) bilenler için tasarladığımızı söyleriz; [evet, OT, biliyorum]
kopischke

10

Elma Renk Seçici renk örneği açılır listesinden 'Aygıt RGB' seçilmesi

  1. Renk seçiciyi açın
  2. Kaydırıcılar sekmesini seçin
  3. Kaydırıcı açılır penceresinin solundaki büyüteç altındaki renk örneğine tıklayın
  4. Seç Device RGB

Şimdi onaltılık değer ile belirtilen renkler, renk alanı dönüşümüne tabi olmayacak.

Sierra'da, renk alanı seçicisi dişli simgesine değiştirildi: Sierra renk alanı seçicisi

Kaynak


2
Harika - Bunun için teşekkürler! Apple'ın tüm tasarım yetenekleri için, buna tıklamanın bir menüyü ortaya çıkaracağı açıkça belli değil.
Ryan Dlugosz

Not: Farklı renk boşluklarıyla renk kullanmanın bu geçici çözümü işe yararsa, muhtemelen herhangi bir renkle çalışması gereken renk işleme kodundaki bir hataya dayanır ve gelecekte bu hata giderildiğinde çalışmayı durdurabilir.
Chris Page

1
Bu numara benim için çalıştı; HSB numarası yapmadı.
Jay

4

Renk profilleri kesinlikle önemlidir, ancak burada gizlenen başka bir sorun var: Terminal.app, varsayılan arka plan üzerinde görüntülendiğinde herhangi bir rengi otomatik olarak aydınlatır. Burada, örneğin, sRGB modunda DigitalColor Metre ile ölçülen ve kanonik Solarize sRGB değerleriyle karşılaştırıldığında Solarized renk temasını çalıştıran Terminal.app tarafından çıkarılan renklerdir .

Siyah (veya başka bir renkteki) arka plan üzerinde sunulduğunda, Terminal.app yaklaşık olarak doğru renkleri üretir; ancak, varsayılan arka planda, varsayılan ve varsayılan kalın metin dışındaki tüm renkler büyük ölçüde çok parlaktır.

Terminal.app'de bir renk testi.  Renkler, renkli arka planlar üzerinden sunulduğunda beklendiği gibi, ancak varsayılan arka plan üzerinden sunulduğunda parlatılır.


Aşağı oy kullandı, çünkü bu bir cevap değil. Bu soru hakkında bir yorum gibi görünüyor.
Chris Page

2
Bu renk tablosunu nasıl ürettiniz? Süper kullanışlı görünüyor.
Luke Davis

2

Temanız için Pencere ayarları'nı açın, arka plan rengini değiştirin, bulanıklığı% 0'a ve Opaklık% 100'e ayarlayın. Bundan sonra renkleriniz istediğiniz gibi olacaktır. Ayrıca, bu parametreler için metin için seçtiğiniz her rengi de kontrol etmelisiniz.

görüntü tanımını buraya girin


Aşağı oy kullanıldı, çünkü bu, Terminal'in minimum kontrast davranışıyla ilgili olan ve arka plan opaklığından etkilenmeyen bir soru için geçerli değil.
Chris Page

2

Kısacası: hayır, bunu devre dışı bırakmak için desteklenen hiçbir yol yoktur.

Terminal arka plan renginde bir ANSI (veya uzatılmış 256 renkli tablo) rengi görüntülerken veya terminal ön plan / metin rengini bir ANSI arka plan renginde görüntülerken Terminal otomatik olarak minimum kontrast uygular.

Bunun bir arka plan veya ön plan rengini ayarlayabilmesi ve tüm ANSI renklerini ayarlamak zorunda kalmadan ANSI renkleriyle kontrast haline getirebilmesi için kolaylık olması amaçlanmıştır. Bu, ANSI renklerini özelleştirmek için Tercihler desteği bulunmayan Terminal'in önceki sürümlerinde özellikle önemliydi.

Terminal'in eski sürümleri, tüm renk kombinasyonları için minimum kontrastı uyguladı, ancak bu, örneğin, kırmızı ANSI kırmızı metnin okunabileceği anlamına geliyordu; (örneğin oyun ipuçlarını veya şaka yumruk çizgilerini görüntülemek için). Bu nedenle, Terminal'in yeni sürümleri, bir ANSI rengini diğerine görüntülerken minimum kontrastı uygulamaz.

Şimdi, sadece aynı renkteki durumu ele almak yerine, Terminal, ANSI renklerinin tüm kombinasyonları için minimum kontrastı uygulamaktan kaçınıyor, çünkü kullanıcının herhangi bir ANSI renklerini özelleştirmesi durumunda, bunların hepsinin birbiriyle zıtlaşması için özelleştirileceği varsayılıyor . Ayrıca, bu kullanıcıların terminal arka planını ve ön plan renklerini istenen renk düzenine uyacak şekilde ayarlayacağı veya dikkate alacağı varsayılmaktadır.

Renkleri farklı renk boşluklarıyla kullanmanın geçici çözümü - diğer cevaplarda önerildi - çalışırsa, büyük olasılıkla herhangi bir renkle çalışması gereken ve gelecekte çalışmayı durduracak olan renk işleme kodundaki bir hataya dayanıyor olabilir. bu hata düzeltildiğinde.

Asgari kontrast davranışını açıkça devre dışı bırakabilmek veya ayarlayabilmek sizin için önemliyse, herhangi bir Apple kimliğini kullanarak https://developer.apple.com/bug-reporting/ adresinde bir rapor yazarak Apple’a bildirmenizi öneririm .

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.