कम सोर्स कोड हैक किए बिना नहीं। पृष्ठभूमि की कहानी का एक सा:
कम माउस (स्क्रॉल ईवेंट सहित) बिल्कुल भी नहीं संभाल सकता।
टर्मिनल एमुलेटर तथाकथित वैकल्पिक स्क्रीन का समर्थन करते हैं। यह वह है जो अधिकांश फ़ुलस्क्रीन ऐप अपनी अवधि के लिए स्विच करते हैं (और जब वे निकलते हैं तो सामान्य स्क्रीन पर वापस स्विच करते हैं, जिससे पिछली सामग्री "बहाल" हो जाती है), और इसमें स्क्रॉलबैक बफर नहीं है। कम भी इस वैकल्पिक स्क्रीन पर स्विच करता है, जब तक -X
कि यह किस मामले में नहीं दिया जाता है।
कई टर्मिनल एमुलेटर यह पता लगाते हैं कि जब यह वैकल्पिक स्क्रीन मोड में है और अंदर चल रहे एप्लिकेशन को माउस ईवेंट में रुचि नहीं है, तो स्क्रॉलिंग को अप या डाउन कीपर ईवेंट में बदलना समझ में आता है। यह एक हैक है, और यह सामान्य स्क्रीन पर या तो हानिकारक होगा (कल्पना करें कि आपके शेल प्रॉम्प्ट में क्या होगा), या जब एप्लिकेशन माउस को हैंडल करना चाहता है (निश्चित रूप से, उन्हें वास्तविक माउस ईवेंट तब देखना होगा)। लेकिन जब से आप चल रहे हैं less
, तब तक इन दोनों में से कोई भी डिफ़ॉल्ट रूप से नहीं है , यह हैक में किक करता है (टर्मिनल एमुलेटर के अधीन इसका समर्थन करता है, और \e[?1007h
बनाम के रूप में सक्षम है)\e[?1007l
)। आपकी स्क्रॉल ईवेंट को टर्मिनल एमुलेटर द्वारा अप और डाउन कीपर में परिवर्तित किया जाता है, और उन्हें वास्तविक कीपर्स से अलग नहीं किया जा सकता है। यह माउस स्क्रॉल ईवेंट प्राप्त नहीं करता है: यह अप और डाउन कीपेस को देखता है।
तो वहाँ आप हैं: या तो आप वैकल्पिक स्क्रीन पर स्विच करते हैं और टर्मिनल की हैक स्क्रॉल घटनाओं को कम के लिए कीपर में बदल देती है, और जब आप बाहर निकलते हैं तो सामान्य स्क्रीन को पुनर्स्थापित किया जाता है; या आप नहीं करते हैं, और फिर किसी भी जादू को स्क्रॉल घटनाओं को कीपेस में परिवर्तित नहीं किया जा सकता है और स्क्रॉल घटनाओं को कम नहीं समझता है।
तो क्या किया जा सकता है? ठीक है, या तो माउस समर्थन को कम में लागू करें और इसे स्क्रॉल ईवेंट्स को स्वयं हैंडल करने दें (और एक नॉनडोल्ट क्लिक या कॉपी-पेस्ट व्यवहार के साथ रहें), या किसी अन्य अजीब हैक को लागू करें: छोड़ने के बाद, सामान्य स्क्रीन पर लौटने के बाद, less
आखिरी बार हो सकता है। आपके द्वारा छोड़े जाने से पहले जो कुछ भी प्रदर्शित किया गया था, उसे दोहराते हुए, सामग्री की एक स्क्रीन प्रिंट करें।
व्यवहार में, यह मूल रूप से उबलता है: क्षमा करें, इसे भूल जाओ।