Ukoliko želite da prikaz na vašim man stranicama bojama bude sličan isticanju sintakse u programerskim editorima, postoje dva jednostavna načina da to postignete. Prikazaćemo vam oba!
Isticanje bojama
Isticanje bojama znatno olakšava čitanje. Detalji postaju uočljiviji, čime se smanjuje mogućnost da ih preletite pogledom i propustite. Većina savremenih editora podržava isticanje sintakse, gde se različite boje koriste za identifikaciju i razlikovanje elemenata unutar programskog jezika. Ključne reči, promenljive, stringovi i brojevi su obojeni kako bi se olakšala vizuelna analiza stranice ili funkcije koda.
Prisustvo ovakve funkcionalnosti na Linux man stranicama bilo bi izuzetno korisno. Iako se obično favorizuje sažetost, pojedine man stranice su opširne, sa gustim tekstom i zahtevaju napor za pretraživanje. Sve što olakšava vizuelno kretanje kroz njih je dobrodošlo.
U nastavku ćemo opisati dva načina da obojite man stranice. Jedan metod podrazumeva upotrebu drugačijeg pregledača za njihovo prikazivanje, dok drugi zahteva prosleđivanje seta parametara tokom izvršavanja. Najefikasniji način je kreiranje funkcije ljuske.
Većina pregledača (engl. *pager*) predstavlja pregledače fajlova, slično kao što su *more* i *less*, ali sa poboljšanim rukovanjem velikim datotekama. Oni automatski kolorizuju man stranice.
Da biste instalirali *most* na Ubuntu, koristite sledeću komandu:
sudo apt-get install most
Za instalaciju *most* na Fedora sistemu, unesite:
sudo dnf install most
Na Manjaro sistemu, *most* se instalira sledećom komandom:
sudo pacman -Syu most
Da bismo obavestili Linux da koristi *most* kao podrazumevani pregledač, potrebno je izvesti vrednost promenljive okruženja *PAGER*.
Unesite sledeću komandu:
export PAGER=“most”
Međutim, ova promena važi samo dok ne zatvorite prozor terminala. Da bi promena bila trajna, potrebno je dodati je u datoteku „.bashrc“ (preporuka je da se unese kao poslednji red u datoteci):
gedit .bashrc
Dodajte liniju, sačuvajte promene i zatvorite editor.
Da bi sadržaj modifikovane datoteke „.bashrc“ bio aktivan, potrebno je zatvoriti i ponovo otvoriti terminal.
Alternativno, da bi terminal ostao otvoren, možete iskoristiti komandu *source*, koja se može skratiti na tačku (.). Ovime će se učitati izmenjeni sadržaj datoteke „.bashrc“.
Unesite sledeću komandu:
. .bashrc
Obojene man stranice
Sada otvorimo man stranicu da vidimo kako to izgleda:
man grep
Man stranica se otvara kao i obično, ali tekst je sada istaknut različitim bojama.
Pomeranjem nadole možete primetiti kako su različiti elementi stranice obojeni.
Korišćenje *most* pregledača je veoma slično korišćenju *less*, ali postoje neke razlike. Pritisnite taster *H* u *most* pregledaču da biste videli listu tastera i njihovih funkcija.
Korišćenje boja sa *less*
Ako ne želite da instalirate drugi pregledač ili da učite nove prečice, postoji trik da se boje koriste sa *less*. Postoji više načina da se to uradi, a mi ćemo pokriti najbrži i najlakši.
Ovaj metod koristi ANSI (American National Standards Institute) kodove boja za kontrolu efekata na ekranu koji su povezani sa starijim i zastarelim termcap podešavanjima.
Termcap podešavanja su nekada definisala kako računarski terminali različitih proizvođača i modela treba da interpretiraju komande za prikaz. Softverski paketi su takođe imali sopstvena termcap podešavanja, a *less* ih poseduje.
Slede definicije *less* terminalskih podešavanja:
*LESS_TERMCAP_md*: Početak efekta podebljavanja (dvostruko svetlo).
*LESS_TERMCAP_me*: Kraj efekta podebljavanja.
*LESS_TERMCAP_us*: Početak efekta podvlačenja.
*LESS_TERMCAP_ue*: Kraj efekta podvlačenja.
*LESS_TERMCAP_so*: Početak efekta izdvajanja (slično obrnutom tekstu).
*LESS_TERMCAP_se*: Kraj efekta izdvajanja (slično obrnutom tekstu).
Podesićemo ih tako da kontrolišu kombinacije boja koristeći ANSI kodove boja.
Format kodova boja je lako razumljiv kada ga shvatite:
„e“ na početku označava sekvencu kao kontrolni kod ili izlaznu sekvencu.
„m“ na kraju sekvence označava kraj komande. Takođe pokreće akciju kontrolnog koda.
Brojevi između „[“ i „m“ određuju koje će se boje koristiti. Boje su označene brojevima. Neki brojevi predstavljaju boje pozadine, a neki boje teksta (foreground).
Ovo su kodovi koje ćemo koristiti za pokretanje sekvence boja, kao i za isključivanje svih efekata:
‘e[01;31m’: Crna pozadina, crveni tekst.
‘e[01;32m’: Crna pozadina, zeleni tekst.
‘e[45;93m’: Magenta pozadina, svetlo žuti tekst.
‘e[0m’: Isključivanje svih efekata.
Sve ovo ćemo uokviriti u funkciju ljuske koju ćemo nazvati *man*. Ona će postaviti ove vrednosti i pozvati pravi *man* program.
Ako već imate definisane neke funkcije ljuske u drugoj datoteci, ovu možete dodati u tu datoteku. U suprotnom, kopirajte sledeći tekst na kraj datoteke „.bashrc“:
man() { LESS_TERMCAP_md=$'e[01;31m' LESS_TERMCAP_me=$'e[0m' LESS_TERMCAP_us=$'e[01;32m' LESS_TERMCAP_ue=$'e[0m' LESS_TERMCAP_so=$'e[45;93m' LESS_TERMCAP_se=$'e[0m' command man "[email protected]" }
gedit .bashrc
Nalepite funkciju na dno datoteke „.bashrc“.
Sačuvajte promene i zatvorite editor. Sada moramo učitati datoteku „.bashrc“ da bismo aktivirali funkciju ljuske. Zato ukucajte:
. .bashrc
Sada, kada pokrenemo man stranicu, ona će biti obojena u *less*:
man chmod
Man stranica se otvara sa isticanjem boja.
Retrospektivno, žuta na magenta pozadini možda i nije najbolja kombinacija. Srećom, kodove boja možete podesiti po svom ukusu.
Ne samo da izgleda lepše
Lako je skrolovati kroz dugačku man stranicu i propustiti važnu informaciju, kao što je opcija ili parametar, jer se izgubi u moru teksta.
Sada će nazivi parametara i opcija biti istaknuti i znatno lakši za uočavanje.