यह व्यवहार कुछ (हार्डवेयर) टर्मिनलों और सबसे (सॉफ्टवेयर) टर्मिनल एमुलेटर में शामिल "वैकल्पिक स्क्रीन" सुविधा से आता है। क्या होता है कि कुछ टर्मिनल-जागरूक प्रोग्राम अपना काम करने के लिए वैकल्पिक is स्क्रीन ’पर स्विच करते हैं और जब वे खारिज कर दिए जाते हैं तो सामान्य are स्क्रीन’ पर वापस आ जाते हैं (छोड़ दिया, निलंबित, आदि)। यह प्रभावी रूप से ऐसे कार्यक्रमों के अंतिम आउटपुट को दूर करता है।
"टर्मफॉस्ट को रोकने के लिए अल्टस्क्रीन" के लिए एक वेब खोज ने एक पृष्ठ प्रदान किया जो वैकल्पिक स्क्रीन 'समस्या' और कई समाधानों पर चर्चा करता है ।
जैसा कि लिंक किए गए पृष्ठ का वर्णन है, कुछ कार्यक्रमों को वैकल्पिक स्क्रीन का उपयोग करने से बचने के लिए कॉन्फ़िगर किया जा सकता है। कम-X
करने का विकल्प यह करने का एक अप्रत्यक्ष तरीका है। विम को उसी तरह और वेरिएबल को अनइंस्टॉल करके कॉन्फ़िगर किया जा सकता है ।t_ti
t_te
एक व्यापक गुंजाइश के साथ एक समाधान संपादित करने के लिए है terminfo अपने टर्मिनल इतना है कि यह वैकल्पिक स्क्रीन नियंत्रण दृश्यों शामिल नहीं है के लिए प्रवेश। टर्मफ़ॉफ़्ट प्रविष्टियाँ एक डेटाबेस बनाती हैं जो प्रोग्राम को बताती हैं जो कुछ प्रभावों को बनाने के लिए एक टर्मिनल को भेजने के लिए दृश्यों को नियंत्रित करते हैं (कर्सर को स्थानांतरित करना, स्क्रीन को साफ़ करना, वर्तमान लाइन का हिस्सा मिटाना, आदि)। आपके टर्मिनल का उपयोग करने वाले टर्मोइफ़ प्रविष्टि का संपादन करके, आप सभी टर्म-उपयोग प्रोग्रामों को 'उपेक्षा' करने की व्यवस्था कर सकते हैं जो "वैकल्पिक स्क्रीन" नियंत्रण अनुक्रम भी मौजूद हैं।
से के लिए नियंत्रण दृश्यों की सूची टर्म , हम देख सकते हैं कि ब्याज (के लिए के नियंत्रण दृश्यों टर्म टर्मिनल emulators की तरह) कर रहे हैं
- वैकल्पिक स्क्रीन सक्षम करें:
ESC [ ? 47 h
(इसी तरह 1047 और 1049), और
- सामान्य स्क्रीन को पुनर्स्थापित करें:
ESC [ ? 47 l
(इसी तरह 1047 और 1049)।
ये कोड सबसे अधिक संभावित रूप से टर्मोफ चर में मौजूद हैं smcup
और rmcup
। आपके वर्तमान TERM के लिए इन चर को एक्साइज करने का एक त्वरित और गंदा तरीका इस तरह दिखाई दे सकता है:
infocmp | sed -e 's/[sr]mcup=[^,]*,//' > /tmp/noaltscreen-terminfo
tic -o ~/.terminfo/ /tmp/noaltscreen-terminfo
यह विधि काफी कच्चा है और निश्चित रूप से सभी टर्मिनलों के लिए काम नहीं करेगा, लेकिन यह संभवत: अधिकांश एक्सटर्म -समान टर्मिनल एमुलेटर के लिए काम करेगा । आदर्श रूप से आपको अपने टर्मिनल के लिए टर्मो एंट्री के मूल्यों smcup
और rmcup
चर की जांच करनी चाहिए और अवांछित व्यवहार को रोकने के लिए उन्हें रूढ़िवादी रूप से संपादित करना चाहिए। उपरोक्त लिंक किए गए चर्चा / समाधान पृष्ठ में एक "प्री-कूक" टर्मोफ़ फाइल है जिसे आप अपने खुद के हैक करने के बजाय उपयोग कर सकते हैं (लेकिन इसमें मज़ा क्या है?)।