Jawaban:
Untuk mendapatkan gambar di bawah ini, gunakan:
curl -s https://gist.githubusercontent.com/HaleTom/89ffe32783f89f403bba96bd7bcd1263/raw/ | bash
The Inti bash
/ zsh
kode adalah shellcheck
bersih, dan juga mendukung "Lihat Ma, tidak ada subproses!".
Atau, untuk bash
quicky:
for i in {0..255} ; do
printf "\x1b[48;5;%sm%3d\e[0m " "$i" "$i"
if (( i == 15 )) || (( i > 15 )) && (( (i-15) % 6 == 0 )); then
printf "\n";
fi
done
Untuk total berlebihan, kakek dari lot adalah terminal-colors
, skrip 572-line dengan berbagai format output .
Anda juga dapat mencetak pola pengujian true color (24-bit) .
terminal-colors
, lakukancurl -s https://raw.githubusercontent.com/eikenb/terminal-colors/master/terminal-colors | python
terminal-colors
dan bagaimana cara membandingkannya dengan opsi yang saya sarankan?
Saya menemukan skrip Python yang bagus untuk itu di GitHub yang ditulis oleh Justin Abrahms yang juga mencetak kode hex warna.
Unduh skrip ke direktori kerja saat ini
wget https://gist.githubusercontent.com/justinabrahms/1047767/raw/a79218b6ca8c1c04856968d2d202510a4f7ec215/colortest.py
berikan izin eksekusi
chmod +x colortest.py
Menjalankannya:
./colortest.py
Berikut skrip secara lengkap jika tautan-membusuk:
#!/usr/bin/env python
# Ported to Python from http://www.vim.org/scripts/script.php?script_id=1349
print "Color indexes should be drawn in bold text of the same color."
print
colored = [0] + [0x5f + 40 * n for n in range(0, 5)]
colored_palette = [
"%02x/%02x/%02x" % (r, g, b)
for r in colored
for g in colored
for b in colored
]
grayscale = [0x08 + 10 * n for n in range(0, 24)]
grayscale_palette = [
"%02x/%02x/%02x" % (a, a, a)
for a in grayscale
]
normal = "\033[38;5;%sm"
bold = "\033[1;38;5;%sm"
reset = "\033[0m"
for (i, color) in enumerate(colored_palette + grayscale_palette, 16):
index = (bold + "%4s" + reset) % (i, str(i) + ':')
hex = (normal + "%s" + reset) % (i, color)
newline = '\n' if i % 6 == 3 else ''
print index, hex, newline,
Meskipun tidak cukup "pola pengujian", saya memiliki xterm-color-chooser :
curl -s https://raw.githubusercontent.com/grawity/code/master/term/xterm-color-chooser | python3
Namun skrip lain, yang ditulis oleh saya, terletak di repositori VTE: https://git.gnome.org/browse/vte/plain/perf/256test.sh?h=vte-0-38 .
Ini membutuhkan jendela 120-ish atau lebih kolom, tetapi mengatur warna kubus 6x6x6 dengan baik dan kompak. Digit pertama dari indeks dilucuti untuk kekompakan, Anda dapat dengan mudah menemukannya. Bilah vertikal memberi Anda kemampuan untuk memeriksa RGB yang tepat dari warna latar depan tanpa antialiasing menendang (seperti halnya pada digit).
Bagian atas output (tidak diperlihatkan dalam tangkapan layar di bawah) menunjukkan kegilaan yang terjadi dengan ambiguitas yang berani vs cerah, yaitu bahwa urutan pelarian yang berani dikombinasikan dengan salah satu dari urutan pelarian 8 warna sebelumnya untuk latar depan juga beralih ke warna padanan yang cerah, sedangkan dengan gaya baru (kemampuan 256-warna) lolos urutan ini tidak lagi terjadi, bahkan untuk 8 warna pertama. Setidaknya begitulah xterm dan VTE (Terminal GNOME dll.) Berperilaku.
Tangkapan layar ini menunjukkan sekitar setengah dari output:
curl -s -L https://git.gnome.org/browse/vte/plain/perf/256test.sh?h=vte-0-38 | bash
Mungkin berlebihan tetapi saya telah menulis versi yang mencetak 256 warna menggunakan latar belakang dengan deteksi lebar shell otomatis sehingga warna lebih mudah terlihat.
https://gist.github.com/WoLpH/8b6f697ecc06318004728b8c0127d9b3
#!/usr/bin/env python
from __future__ import print_function
import os
import shutil
import subprocess
def get_width(default=80):
'''Attempt to detect console width and default to 80'''
try:
columns, rows = shutil.get_terminal_size()
except AttributeError:
try:
_, columns = subprocess.check_output(['stty', 'size']).split()
except OSError:
columns = os.environ.get('COLUMNS', default)
columns = int(columns) - 77
# Since we have 6 columns with 1 space on each side, we can increment the
# size for every 12 extra columns
return max(0, columns / 12)
# Loosely based on https://gist.github.com/justinabrahms/1047767
colored = [0] + list(range(95, 256, 40))
colored_palette = [
(r, g, b)
for r in colored
for g in colored
for b in colored
]
grayscale_palette = [(g, g, g) for g in range(8, 240, 10)]
esc = '\033['
# Reset all colors sequence
reset = esc + '0m'
# Regular color
normal = esc + '38;5;{i}m'
# Bold color
bold = esc + '1;' + normal
# Background color
background = esc + '48;5;{i}m'
pattern = (
'{normal}{background}{padding:^{width}}{i:^3d} ' # pad the background
'{r:02X}/{g:02X}/{b:02X}' # show the hex rgb code
'{padding:^{width}}' # pad the background on the other side
'{reset}' # reset again
)
base_context = dict(reset=reset, padding='', width=get_width())
for i, (r, g, b) in enumerate(colored_palette + grayscale_palette, 16):
context = dict(i=i, r=r, g=g, b=b, color=r + g + b, **base_context)
context.update(bold=bold.format(**context))
context.update(background=background.format(**context))
# Change text color from black to white when it might become unreadable
if max(r, g, b) > 0xCC:
context.update(normal=normal.format(i=0))
else:
context.update(normal=normal.format(i=255))
print(pattern.format(**context), end='')
# Print newlines when needed
if i % 6 == 3:
print()
else:
print(' ', end='')
curl https://gist.githubusercontent.com/WoLpH/8b6f697ecc06318004728b8c0127d9b3/raw/250eb2e3f2acca1c51aa52adf611ec0380291e8a/colortest.py | python3
curl -s https://gist.githubusercontent.com/WoLpH/8b6f697ecc06318004728b8c0127d9b3/raw/colortest.py | python3
/cubes
irssi ( sumber )