| dir_colors(5) | File Formats Manual | dir_colors(5) |
dir_colors - plik konfiguracyjny dircolors(1)
Program ls(1) korzysta ze zmiennej środowiskowej LS_COLORS do określenia kolorów używanych do wyświetlania nazw plików. Zmienna środowiskowa jest zwykle ustawiana przez polecenie takie jak
w pliki inicjującym domyślną powłokę systemową, jak /etc/profile lub /etc/csh.cshrc (zob. też dircolors(1)). Używanym tu plikiem jest zwykle /etc/DIR_COLORS, który można przesłonić plikiem .dir_colors w katalogu domowym danego użytkownika.
Plik konfiguracyjny składa się z wielu wyrażeń, po jednym na wiersz. Wszystko co znajduje się na prawo od znaku kratki (#) jest traktowane jako komentarz, jeśli znak ten znajduje się na początku wiersza i następuje za nim co najmniej jedna spacja. Puste wiersze są ignorowane.
Sekcja global pliki składa się ze wyrażeń, które znajdują się przed pierwszym wyrażeniem TERM. Wszelkie wyrażenia w sekcji global pliki są uważane jako prawidłowe dla wszystkich typów terminali. Po sekcji global występuje jedna lub więcej sekcji właściwych dla konkretnego terminala, poprzedzonych przez jedno lub więcej wyrażeń TERM określających typy terminali (jak podawanych przez zmienną środowiskową TERM), po których następują właściwe im deklaracje. Deklarację globalną zawsze da się przesłonić przez kolejną deklarację właściwą dla konkretnego terminala.
Rozpoznawane są następujące wyrażenia; wielkość znaków nie ma znaczenia:
Większość dzisiejszych terminali ASCII z możliwością wyświetlania kolorów używa sekwencji kolorów ISO/IEC 6429 (ANSI), a wiele popularnych terminali niekolorowych, w tym xterm i często spotykany i klonowany DEC VT100, rozpoznaje kody kolorów ISO/IEC 6429 i bezboleśnie eliminuje je z wyjścia lub emuluje je. ls używa domyślnie kodów ISO/IEC 6429 o ile kolorowanie jest włączone.
Kody kolorów ISO/IEC 6429 składają się z sekwencji liczb rozdzielonych dwukropkiem. Najpopularniejsze kody to:
| 0 | przywraca kolor domyślny |
| 1 | rozjaśnia kolory |
| 4 | podkreśla tekst |
| 5 | tworzy tekst migający |
| 30 | czarny tekst (pierwszy plan) |
| 31 | czerwony tekst |
| 32 | zielony tekst |
| 33 | żółty (lub brązowy) tekst |
| 34 | niebieski tekst |
| 35 | fioletowy tekst |
| 36 | błękitny tekst |
| 37 | biały (lub szary) tekst |
| 40 | czarne tło |
| 41 | czerwone tło |
| 42 | zielone tło |
| 43 | żółte (lub brązowe) tło |
| 44 | niebieskie tło |
| 45 | fioletowe tło |
| 46 | błękitne tło |
| 47 | białe (lub szare) tło |
Nie wszystkie polecenia zadziałają na wszystkich systemach lub urządzeniach.
ls używa następujących wartości domyślnych:
| NORMAL | 0 | Zwykły tekst (niebędący nazwą pliku) |
| FILE | 0 | Zwykły plik |
| DIR | 32 | Katalog |
| LINK | 36 | Dowiązanie symboliczne |
| ORPHAN | niezdefiniowane | Zerwane dowiązanie symboliczne |
| MISSING | niezdefiniowane | Brakujący plik |
| FIFO | 31 | Potok nazwany (FIFO) |
| SOCK | 33 | Gniazdo |
| BLK | 44;37 | Urządzenie blokowe |
| CHR | 44;37 | Urządzenie znakowe |
| EXEC | 35 | Plik wykonywalny |
Kilka programów nie rozpoznaje poprawnie wartości domyślnych. Jeśli po wypisaniu zawartości katalogu cały tekst pozostaje kolorowany, należy zmienić kody NORMAL i FILE na numeryczne kody stosowanych zwykłych kolorów tekstu i tła.
Jeśli posiada się terminal (albo drukarkę!) kolorowy (lub stosujący podświetlenie), który korzysta z innego zestawu kodów, wciąż można utworzyć odpowiednie ustawienia. W tym celu trzeba będzie użyć definicji LEFTCODE, RIGHTCODE i ENDCODE.
Przy wypisywaniu nazwy pliku, ls tworzy następujące sekwencje wyjściowe: LEFTCODE kod-od-typu RIGHTCODE nazwa-pliku ENDCODE, gdzie kod-od-typu jest sekwencją koloru zależną od typu lub nazwy pliku. Jeśli ENDCODE jest niezdefiniowany, w zamian będzie używana sekwencja LEFTCODE NORMAL RIGHTCODE. Przeznaczeniem lewego i prawego kodu jest tylko ograniczenie wielkości wpisywanego tekstu (i ukrycie nieestetycznych sekwencji specjalnych przed użytkownikiem). Jeśli nie są one wymagane przez używany terminal, można je wyeliminować, wpisując samodzielnie dane słowo kluczowe w wierszu.
UWAGA: Jeśli w globalnej sekcji pliku konfiguracyjnego zdefiniowano ENDCODE, nie da się usunąć tej definicji w sekcji właściwej dla danego terminala. Oznacza to, że definicje NORMAL wówczas nie zadziałają. Można jednak podać różne ENDCODE, co da ten sam efekt.
Aby w sekwencjach kolorów lub rozszerzeń nazw plików podać znaki sterujące lub odstępy, można zastosować notację specjalną języka C stosującą \ lub notację specjalną stty stosującą ^-. Notacja języka C obejmuje poniższe znaki:
| \a | Dzwonek (ASCII 7) |
| \b | Backspace (ASCII 8) |
| \e | Escape (ASCII 27) |
| \f | Wysuw strony (ASCII 12) |
| \n | Nowy wiersz (ASCII 10) |
| \r | Powrót karetki (ASCII 13) |
| \t | Tabulator (ASCII 9) |
| \v | Tabulator pionowy (ASCII 11) |
| \? | Delete (ASCII 127) |
| \nnn | Dowolny znak (notacja ósemkowa) |
| \xnnn | Dowolny znak (notacja szesnastkowa) |
| \_ | Spacja |
| \\ | Odwrotny ukośnik (\) |
| \^ | Kareta (^) |
| \# | Znak kratki (#) |
Proszę zauważyć, że sekwencje specjalne są konieczne do podania spacji, odwrotnego ukośnika, karety lub dowolnych znaków sterujących w łańcuchu, jak również znaku kratki jako pierwszego znaku.
Niniejsza strona podręcznika systemowego opisuje format pliku dir_colors używany przez pakiet fileutils-4.1; inne wersje mogą się nieco różnić.
Domyślne definicje LEFTCODE i RIGHTCODE używane przez terminale ISO/IEC 6429 to:
| LEFTCODE | \e[ |
| RIGHTCODE | m |
Domyślnie ENDCODE jest niezdefiniowany.
Tłumaczenie niniejszej strony podręcznika: Michał Kułach <michal.kulach@gmail.com>
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.
| 16 czerwca 2024 r. | Linux man-pages 6.9.1 |