मर्क्युरियल। रंग उत्पादन कम करने के लिए पाइप


35

ऑपरेटिंग सिस्टम: मैक ओएस 10.6.2

जब कम से कम कुछ कमांड्स को पाइप करना हो तो मैं कलर आउटपुट देखना चाहूंगा।

दो उदाहरण:

मेरे पास एलएआईएस है ls --color=auto, इसलिए मैं ऐसा करने पर रंग देखने में सक्षम होना चाहूंगा:

ls -l | less

मुझे मर्क्यूरियल में रंग का विस्तार भी मिला है, इसलिए मैं इसका रंग उत्पादन देखना चाहता हूँ:

hg diff | less

तथा

hg st | less

कुछ गुगली करने के बाद, यह काम करने के लिए -r या -R को कम समर्थन के कुछ संस्करणों की तरह लगता है, लेकिन मेरे लिए कोई पासा नहीं। मैं उस मैन पेज में कुछ भी नहीं देख सकता जो दिखता है कि मुझे क्या चाहिए। -r या -R SEEM सही विकल्प हैं, लेकिन फिर से, वे काम नहीं करते हैं)


1
ऐसा लगता है कि पाइप लगाने पर रंग का विस्तार हमेशा अक्षम होता है। इन कमांड को यह देखने की कोशिश करें कि मेरा क्या मतलब है: ls --color=always | ls -Rऔरhg diff --config color.mode=ansi | less -R
हार्वे

जवाबों:


30

मर्क्यूरियल के लिए, आपको स्पष्ट रूप से कम पाइपिंग के बजाय पेजर एक्सटेंशन का उपयोग करना चाहिए । यह अन्य hg कमांड के रंगीन आउटपुट विकल्पों के साथ अच्छी तरह से खेलेंगे।


13

मेरा मानना है कि आप का उपयोग करने के --color=alwaysलिए lsयदि आप इसे भी रंग करने के लिए करने के लिए जब नहीं जा चाहते हैं stdout। फिर कमांड -rपर उपयोग करेंless

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

12

आपके ~ / .hgrc put में:

[extensions]
color =
pager =

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

quiet = Trueभाग क्यों ?
ईनपोक्लुम -

अच्छा! मैं LESS='eiFRSXQ'ईओएफ तक पहुंचने के बाद छोड़ने की भी सलाह देता हूं और खोज के दौरान मामले को नजरअंदाज करता हूं
सेबास्टियन

11

करना:

$ hg diff --color always | less -R

मैं उपनाम "कम -R" को कम कर दूंगा। मुझे यकीन है कि वहाँ तेज के आदेशों को डिफ़ॉल्ट विकल्प प्रदान करने के लिए आप टाइप करने के लिए याद करने के लिए नहीं है, इसलिए है कि एक तरीका है नहीं कर रहा हूँ --color alwaysके लिए hg diffहर समय।


1
या $ hg diff --color always | less -FRSXQबेहतर कम विकल्पों के लिए उपयोग करें। उदाहरण के लिए, यदि स्क्रीन फिट बैठता है तो यह चुपचाप छोड़ देगा।
जंबोची

1
आप LESS = "- R" को वैकल्पिक रूप से "कम" करने के लिए अलग से सेटअप कर सकते हैं।
blueyed

-Fफ़ाइल को पढ़ते रहना है क्योंकि इसका उत्पादन हो रहा है, -Sलाइन-रैप नहीं करना है, -Xकुछ अस्पष्ट है, -Qरिंगिंग टर्मिनल की घंटी से बचा जाता है।
एवगेनी सर्गेव


0

ls --color=autoइसका मतलब यह है कि जब आप किसी चीज को पाइप नहीं कर रहे होते हैं तो आपको कलर आउटपुट मिलता है। कोशिश करो ls --colour=auto | catऔर आप देखेंगे कि मेरा क्या मतलब है।

मुझे उम्मीद है कि hg इसी तरह की धारणाएं बनाता है।


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.