Không kiên định. Đầu ra màu dẫn đến ít hơn


35

Hệ điều hành: Mac OS 10.6.2

Tôi muốn có thể thấy đầu ra màu khi chuyển các lệnh nhất định qua ít hơn.

Hai ví dụ:

Tôi đã có bí danh ls --color=auto, vì vậy tôi muốn có thể nhìn thấy màu sắc khi tôi làm điều này:

ls -l | less

Tôi cũng đã bật tiện ích mở rộng màu trong Mercurial, vì vậy tôi muốn xem đầu ra màu từ:

hg diff | less

hg st | less

Sau một số googling, có vẻ như một số phiên bản ít hỗ trợ hoặc -r hoặc -R để làm cho công việc này, nhưng không có xúc xắc cho tôi. Tôi không thể thấy bất cứ điều gì trong trang người đàn ông trông giống như những gì tôi cần. (-r hoặc -R SEEM là những lựa chọn phù hợp, nhưng một lần nữa, chúng dường như không hoạt động)


1
Có vẻ như phần mở rộng màu luôn bị vô hiệu hóa khi đường ống. Hãy thử các lệnh này để xem ý tôi là gì: ls --color=always | ls -Rhg diff --config color.mode=ansi | less -R
Harvey

Câu trả lời:


30

Đối với đồng bóng, bạn nên sử dụng phần mở rộng máy nhắn tin thay vì đường ống rõ ràng đến ít hơn. Điều này sẽ chơi độc đáo với các tùy chọn đầu ra màu của các lệnh hg khác.


13

Tôi tin rằng bạn phải sử dụng --color=alwayscho lsnếu bạn muốn nó để làm màu sắc ngay cả khi không đi stdout. Sau đó sử dụng -rtrên lesslệnh

ls --color=always -l | less -r

12

Trong ~ / .hgrc của bạn đặt:

[extensions]
color =
pager =

[pager]
pager = LESS='FRSXQ' less
quiet = True
attend = outgoing,incoming,diff,status,log,qdiff,blame,annotate,pdiff,glog

Tại sao là quiet = Truemột phần?
einpoklum

Đẹp! Tôi cũng khuyên bạn nên LESS='eiFRSXQ'thoát sau khi đạt EOF và bỏ qua trường hợp trong khi tìm kiếm
sebastian

11

Làm:

$ hg diff --color always | less -R

Tôi sẽ bí danh "ít -R" để ít hơn. Tôi không chắc chắn nếu có một cách để cung cấp tùy chọn mặc định để lệnh lanh lợi của để bạn không cần phải nhớ để gõ --color alwayscho hg difftất cả các thời gian.


1
Hoặc sử dụng $ hg diff --color always | less -FRSXQcho các tùy chọn ít tốt hơn. Nó sẽ âm thầm thoát nếu diff phù hợp với màn hình, ví dụ.
jpbochi

1
Bạn có thể thiết lập LESS = "- R" thay thế cho bí danh "ít" hơn.
xanh

-Flà để tiếp tục đọc tập tin khi nó được sản xuất, -Slà không bao bọc dòng, -Xmột cái gì đó tối nghĩa, -Qtránh rung chuông thiết bị đầu cuối.
Evgeni Sergeev


0

ls --color=autocó nghĩa là bạn có được đầu ra màu khi nó không được dẫn đến một cái gì đó. Hãy thử ls --colour=auto | catvà bạn sẽ thấy những gì tôi có ý nghĩa.

Tôi hy vọng hg đưa ra các giả định tương tự.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.