Bystry. Moc wyjściowa w kolorze jest zmniejszona

35

System operacyjny: Mac OS 10.6.2

Chciałbym móc wyświetlać kolorowe wydruki podczas przesyłania niektórych poleceń przez mniej.

Dwa przykłady:

Mam pseudonim ls --color=auto, więc chciałbym widzieć kolor, kiedy to robię:

ls -l | less

Mam także włączone rozszerzenie kolorów w Mercurial, więc chciałbym zobaczyć wynik kolorów z:

hg diff | less

i

hg st | less

Po pewnym googlowaniu, wydaje się, że niektóre wersje mniejszej obsługi -R lub -R sprawiają, że to działa, ale dla mnie nie ma kości. Nic nie widzę na stronie podręcznika, która wygląda tak, jak potrzebuję. (-r lub -R SEEM to odpowiednie opcje, ale znowu nie wydają się działać)

mmacaulay
źródło
1
Wygląda na to, że rozszerzenie koloru jest zawsze wyłączone podczas instalacji potokowej. Wypróbuj te polecenia, aby zobaczyć, co mam na myśli: ls --color=always | ls -Rihg diff --config color.mode=ansi | less -R
Harvey,

Odpowiedzi:

30

W przypadku rtęci należy raczej używać rozszerzenia pager, a nie przesyłać bezpośrednio do mniej. Będzie to ładnie grało z kolorowymi opcjami wyjścia innych poleceń hg.

richq
źródło
13

Wierzę, że trzeba użyć --color=alwaysdla lsjeśli chcesz to zrobić, kolory, nawet jeśli nie będzie stdout. Następnie użyj -rna lesskomendzie

ls --color=always -l | less -r
Brandon Bodnar
źródło
12

W swoim ~ / .hgrc umieść:

[extensions]
color =
pager =

[pager]
pager = LESS='FRSXQ' less
quiet = True
attend = outgoing,incoming,diff,status,log,qdiff,blame,annotate,pdiff,glog
Joe HG
źródło
Dlaczego ta quiet = Trueczęść?
einpoklum
Miły! Polecam LESS='eiFRSXQ'też wyjść po osiągnięciu EOF i zignorować wielkość liter podczas wyszukiwania
Sebastian
11

Robić:

$ hg diff --color always | less -R

Byłbym alias „mniej -R” na mniej. Nie jestem pewien, czy istnieje sposób, aby zapewnić domyślne opcje poleceń mercurial, abyś nie musiał pamiętać, aby pisać --color alwaysprzez hg diffcały czas.

Stantonk
źródło
1
Lub użyj, $ hg diff --color always | less -FRSXQaby uzyskać lepsze mniej opcji. Na przykład cicho wyjdzie, jeśli diff pasuje do ekranu.
jpbochi
1
Możesz ustawić LESS = „- R” alternatywnie do samego aliasingu „mniej”.
blueyed
-Fpolega na ciągłym odczytywaniu pliku w trakcie jego tworzenia, -Snie jest zawijany w linie, -Xcoś niejasnego, -Qpozwala uniknąć dzwonienia na terminalu.
Jewgienij Siergiejew
2

Jeśli nie chcesz używać rozszerzenia Pager dla merkurialu, możesz użyć następującego polecenia:

hg diff | cdiff
Dobra osoba
źródło
0

ls --color=autooznacza, że ​​otrzymujesz kolorowe wydruki, gdy nie są one powiązane z czymś. Spróbuj, ls --colour=auto | cata zobaczysz, co mam na myśli.

Oczekuję, że hg przyjmuje podobne założenia.

keturn
źródło