ANSI escape kodları
ANSI escape kodu, bir programın terminale verdiği ve karakterleri ekranda göstermek yerine başka bir şey yapmasını sağlayan kısa bir karakter dizisidir — sonraki sözcükleri kırmızı yapar, imleci iki satır yukarı taşır, ekranı temizler. Terminal sekvensi işler ve yürütür, bu yüzden bunlarla dolu bir günlük dosya editörde gürültü gibi görünür.
Aşağıdaki her kod escape baytı ile başlar ve bir istisna dışında açılı parantez ile başlar. Parameter sütunu parantez ile son harf arasındaki kısmı gösterir; birinci sütun tüm sekvenzi shell'de yazacağınız gibi gösterir.
Destek terminallar arasında farklılık gösterir ve bu sayfa gerekli yerlerde bunu belirtir. Sekiz temel renk ve kalın her yerde çalışır; yanıp sönen, çift altçizgi ve true-color çalışmaz.
Sekansın yapısı
6Bu sayfadaki her kod aynı şekildedir: escape baytı, açılı parantez, parametreler ve bunlarla ne yapılacağını söyleyen bir harf.
| Sekans | Parameter | Etki |
|---|---|---|
| \e | 0x1B | Her sekansı başlatan escape baytıShell'de \e, C'de \033, çoğu dilde \x1b ve JSON ve Java'da \u001b olarak yazılır. |
| \e[ | CSI | Kontrol Dizisi Tanıtıcısı — parametreli bir komut açar |
| \e[<n>m | m | Grafik İşleme Seç: tüm renk ve stil m ile biter |
| \e[1;4;31m | 1;4;31 | Birkaç parametre aynı anda, noktalı virgülle ayrılmışKalın, altçizili ve kırmızı tek sekansda — üç ayrı diziden daha kısa ve aynı etki. |
| \e[0m | 0 | Her özelliği terminal varsayılanına sıfırlarRenkli çıktının sonunda bunu yayınlayın. Bunu yayınlamadan çıkan bir program kullanıcıya renkli prompt verir. |
| \e]8;;URL\e\\text\e]8;;\e\\ | OSC 8 | Destekleyen terminallerde tıklanabilir bağlantıCSI değil OSC dizisidir ve harf yerine ESC \\ ile sonlandırılır. |
Metin öznitelikleri
14İlk beşin altında destek eşitsizdir. Yanıp sönen neredeyse hiçbir yerde çalışmaz ve birkaç terminal soluk ve eğriyi aynı şekilde işler.
| Sekans | Parameter | Etki |
|---|---|---|
| \e[1m | 1 | Kalın veya parlak |
| \e[2m | 2 | Soluk |
| \e[3m | 3 | Eğik |
| \e[4m | 4 | Altçizgi |
| \e[5m | 5 | Yanıp sönenÇoğu yerde görmezden gelinir; modern terminaller düz metin olarak işler. |
| \e[7m | 7 | Ters: ön ve arka planı değiştirir |
| \e[8m | 8 | Gizli: metin var ama çizilmez |
| \e[9m | 9 | Üstü çizili |
| \e[21m | 21 | Çift altçizgiBazı terminaller 21'i "kalınlığı iptal et" olarak okur. |
| \e[22m | 22 | Normal yoğunluk: kalın ve soluk iptal eder |
| \e[23m | 23 | Eğriyi iptal eder |
| \e[24m | 24 | Altçizgiyi iptal eder |
| \e[27m | 27 | Tersi iptal eder |
| \e[29m | 29 | Üstü çiziliyi iptal eder |
Metin rengi
17Sekiz standart renk ve parlak karşılıkları. Okuyucunun gördüğü terminal teması yorumuyla ilgilidir — "kırmızı" palet pozisyonudur, hex değer değil.
| Sekans | Parameter | Etki |
|---|---|---|
| \e[30m | 30 | Siyah metin |
| \e[31m | 31 | Kırmızı metin |
| \e[32m | 32 | Yeşil metin |
| \e[33m | 33 | Sarı metin |
| \e[34m | 34 | Mavi metin |
| \e[35m | 35 | Mor metin |
| \e[36m | 36 | Camgöbeği metin |
| \e[37m | 37 | Beyaz metin |
| \e[39m | 39 | Varsayılan metin rengine dön |
| \e[90m | 90 | Parlak siyah metin |
| \e[91m | 91 | Parlak kırmızı metin |
| \e[92m | 92 | Parlak yeşil metin |
| \e[93m | 93 | Parlak sarı metin |
| \e[94m | 94 | Parlak mavi metin |
| \e[95m | 95 | Parlak mor metin |
| \e[96m | 96 | Parlak camgöbeği metin |
| \e[97m | 97 | Parlak beyaz metin |
Arka plan rengi
17Aynı palet on kaydırılmış. Arka plan kodu hücreyi metin arkasında ayarlar ve sıfırlanana kadar etkili kalır.
| Sekans | Parameter | Etki |
|---|---|---|
| \e[40m | 40 | Siyah arka plan |
| \e[41m | 41 | Kırmızı arka plan |
| \e[42m | 42 | Yeşil arka plan |
| \e[43m | 43 | Sarı arka plan |
| \e[44m | 44 | Mavi arka plan |
| \e[45m | 45 | Mor arka plan |
| \e[46m | 46 | Camgöbeği arka plan |
| \e[47m | 47 | Beyaz arka plan |
| \e[49m | 49 | Varsayılan arka plana dön |
| \e[100m | 100 | Parlak siyah arka plan |
| \e[101m | 101 | Parlak kırmızı arka plan |
| \e[102m | 102 | Parlak yeşil arka plan |
| \e[103m | 103 | Parlak sarı arka plan |
| \e[104m | 104 | Parlak mavi arka plan |
| \e[105m | 105 | Parlak mor arka plan |
| \e[106m | 106 | Parlak camgöbeği arka plan |
| \e[107m | 107 | Parlak beyaz arka plan |
256 renk ve true-color
4Aynı SGR mekanizmasının iki uzantısı. Her ikisi de geniş ancak evrensel olarak desteklenmez; anlamazsa terminal sekvensi göstermek yerine genellikle yok sayar.
| Sekans | Parameter | Etki |
|---|---|---|
| \e[38;5;<n>m | 38;5;n | Palet rengi n'de metin, 0-2550-15 yukarıdaki on altı, 16-231 6×6×6 renk küpü, 232-255 gri ölçeği. |
| \e[48;5;<n>m | 48;5;n | Palet rengi n'de arka plan, 0-255 |
| \e[38;2;<r>;<g>;<b>m | 38;2;r;g;b | Tam 24-bit renkde metin |
| \e[48;2;<r>;<g>;<b>m | 48;2;r;g;b | Tam 24-bit renkde arka plan |
İmleç hareketi
11Hareketler kaydırmaz ve kaydırmaz: ekranın üstünde olan imleç yukarı gitme talebini görmezden gelir.
| Sekans | Parameter | Etki |
|---|---|---|
| \e[<n>A | A | n satır yukarı |
| \e[<n>B | B | n satır aşağı |
| \e[<n>C | C | n sütun sağa |
| \e[<n>D | D | n sütun sola |
| \e[<n>E | E | n satır aşağı, satırın başına |
| \e[<n>F | F | n satır yukarı, satırın başına |
| \e[<n>G | G | Geçerli satırın n sütununa |
| \e[<row>;<col>H | H | Mutlak satır ve sütuna, 1'den sayılarak |
| \e[s | s | İmleç konumunu hatırla |
| \e[u | u | Hatırlanan konuma geri dön |
| \e[6n | 6n | Terminal'den imlecin nerede olduğunu sorTerminal stdin'de \e[<satır>;<sütun>R olarak yanıtlar — yanıt üreten tek sekans. |
Silme
7Silme, geçerli arka plan rengine sahip boşluklar yazar; imleci hareket ettirmez.
| Sekans | Parameter | Etki |
|---|---|---|
| \e[0J | 0J | İmleçten ekranın sonuna kadar sil |
| \e[1J | 1J | Ekranın başından imlece kadar sil |
| \e[2J | 2J | Tüm ekranı silİmleç olduğu yerde kalır — bu yüzden genellikle \e[H ile birleştirilir. |
| \e[3J | 3J | Kaydırma tamponu da sil |
| \e[0K | 0K | İmleçten satırın sonuna kadar sil |
| \e[1K | 1K | Satırın başından imlece kadar sil |
| \e[2K | 2K | Tüm satırı sil\r\e[2K ilerleme satırını yerinde yeniden çizmek için sık yöntemdir. |
Terminal modları
8Soru işareti ile işaretlenmiş özel modlar. Bir metin parçasının görünüşü yerine terminal davranışını değiştirirler ve program çıkmadan önce her biri kapatılmalı.
| Sekans | Parameter | Etki |
|---|---|---|
| \e[?25l | ?25l | İmleci gizle |
| \e[?25h | ?25h | İmleci göster |
| \e[?1049h | ?1049h | Alternatif ekrana geçTam ekran programının shell kaydırmasını altında tutması için kullanır. |
| \e[?1049l | ?1049l | Ana ekrana geri geç |
| \e[?7h | ?7h | Uzun satırları sağ kenardan kapat |
| \e[?7l | ?7l | Uzun satırların sağ kenardan taşmasına izin ver |
| \e[?2004h | ?2004h | Bracketed yapıştırmayı açYapıştırılan metin \e[200~ ve \e[201~ ile sarılı gelir, böylece shell yazı yazmayı yapıştırmadan ayırt edebilir. |
| \e[?2004l | ?2004l | Bracketed yapıştırmayı kapat |