मुझे लगता है कि आपके विचार में एक मूल दोष है: कि किसी ने कभी ऐसी चीज की अनुमति देने के बारे में सोचा नहीं।
स्पष्ट रूप से विम वाक्यविन्यास हाइलाइटिंग करने में सक्षम है। लेकिन मैं आपको एक आइसक्रीम शंकु शर्त दूंगा कि यदि आप पाठ को स्ट्रीम करने और संसाधित करने के लिए विम प्राप्त करने का प्रबंधन कर सकते हैं, तो आपको परिणाम पसंद नहीं आएंगे।
विचार करें कि क्या होता है जब आप more
(या less
के माध्यम से पाइप टेक्स्ट) के माध्यम से पाइप टेक्स्ट करते हैं। जब यह टर्मिनल पर जाता है, तो ये प्रोग्राम एक स्क्रीनफुल प्रदर्शित करते हैं और स्पेस बार को हिट करने के लिए प्रतीक्षा करते हैं। लेकिन यदि आप टर्मिनल की तुलना में किसी अन्य स्थान पर स्टडआउट को रीडायरेक्ट करते हैं, तो ये प्रोग्राम इस पर ध्यान देते हैं और बस अपने इनपुट को अपरिवर्तित आउटपुट में कॉपी करते हैं।
यदि विम यह नहीं देखता है कि आप पाठ को पाइप कर रहे हैं, तो यह संभवतः कर्सर-आंदोलन आदेश भेजने की संभावना है जिसे आप शायद अपने आउटपुट में नहीं चाहते हैं। यदि विम नोटिस करता है, तो यह केवल पाठ को पास करने की संभावना है, और सिंटैक्स-रंग नहीं है। केवल अगर विम वाक्यविन्यास-रंग करता है लेकिन कर्सर-आंदोलन सामग्री इंजेक्ट नहीं करता है तो आपका विचार काम करेगा।
आप इसे आजमा सकते हैं। यहाँ एक जवाब है कि vim के माध्यम से पाइपिंग सामान की चर्चा है:
Execute a command within Vim from the command line
लेकिन मैं कहता हूँ क्यों पाइप एक प्रोग्राम है जो डिजाइन किए हैं और पाठ के माध्यम से यह पहुंचाया है करने का इरादा था के माध्यम से अपने पाठ नहीं? पाइगल्स प्रत्येक प्रमुख प्रोग्रामिंग भाषा और मार्कअप प्रारूप को रंगीन कर सकते हैं।
http://pygments.org/
प्रमुख लाभ मैं अपने विचार के लिए देखें: आप जिस तरह से vim अनुकूलित कर सकते हैं वाक्यविन्यास रंग करता है, जिस तरह से आप यह चाहते हैं, और फिर भी अपने पाठ पर कार्रवाई करने के vim का उपयोग करें। लेकिन शायद पेंडल को कस्टमाइज़ करना मुश्किल नहीं है, और यह बॉक्स के बाहर भी संतोषजनक हो सकता है, इस मामले में यह निश्चित रूप से जाने का सबसे आसान तरीका होगा। और पेंडग्स में न केवल एएनएसआई अनुक्रम आउटपुट है, इसमें एचटीएमएल आउटपुट, आरटीएफ, लाटेक्स इत्यादि भी हैं। इसलिए यदि आपको जिस तरह से आप चाहते हैं, उसमें काम करने वाले पाइगल्स प्राप्त होते हैं, तो आपको जो भी आउटपुट प्रारूप चाहिए, उसे आउटपुट करने में सक्षम होना चाहिए; विम में केवल एएनएसआई अनुक्रम होगा।
वहाँ एक है सॉफ़्टवेयर की विस्तृत विविधता जो यह करती है, pygmentize एक है। मैंने इसे कभी नहीं देखा है। – carlosdc
एचआरएम .. [यह धागा] (http://stackoverflow.com/questions/3219479/vim-write-buffer-content-to-stdout), हालांकि कम मूल्यांकन किया गया है, ऐसा लगता है कि एक फ़िल्टर के रूप में vim का उपयोग करने का प्रयास करने का सुझाव है (अनिवार्य रूप से जो मैं यहां देख रहा हूं), जाने-जाने से सिर्फ एक बुरा विचार है। क्या यह सच है? क्या यह विचार सिर्फ एक गैर स्टार्टर है? आउट-ऑफ-द-बॉक्स सोच के लिए –
+1। – steveha