मैं एक लंबे समय के लिए स्क्रीन का भारी उपयोगकर्ता रहा हूं, लेकिन मैं एक ऐसे संस्करण का उपयोग करता हूं जिसे मैंने 2002 में वापस संशोधित किया था। ज्यादातर इसलिए कि मैं खिड़की को "अगला / प्रचलित" करने में सक्षम होना चाहता था, नौसैनिक आदेश का आदेश जिसमें नया हो विंडो बनाई गईं, जैसे टाइलिंग विंडो मैनेजर के समान i3 या आयन । मानक स्क्रीन व्यवहार विंडो संख्या द्वारा जाने के लिए 'अगला' और 'प्रबल' के लिए है, ताकि आमतौर पर एक 'नई' विंडो (सबसे छोटी उपलब्ध संख्या को हथियाने) 'अगले' विंडो की तुलना में कहीं और स्थित होगी - यदि आप डॉन करते हैं तो भ्रमित करना होगा टी नंबर याद रखें। तब से मेरा पसंदीदा व्यवहार Tmux में लागू हो गया है 2010 में नई-विंडो कमांड के लिए एक ध्वज , और यह 2012 में renumber-windows विकल्प । मेरी स्क्रीन पैच, जिसे मैंने संभव के रूप में स्वीकार्य बनाने की कोशिश की, जिसमें दस्तावेज़ीकरण के अतिरिक्त और आगे भी शामिल हैं, ने जुलाई 2002 में स्क्रीन सूची पर कोई चर्चा उत्पन्न नहीं की (फिर "screen@informatik.uni-erlangen.de", नहीं कर सकता। खोजते हैं)। वास्तव में इसे स्वीकार भी नहीं किया गया था, तब भी जब मैंने इसे एक साल बाद फिर से भेजा।
2002 के बाद से, मैंने स्क्रीन के नए संस्करणों पर लागू करने के लिए अपने पैच को कई बार "रिबेड" किया। हालाँकि, जब मुझे संस्करण ४.३ (२०१५) मिला, तो मैंने एक अनैच्छिक परिवर्तन पर ध्यान दिया, जिसने स्क्रीन के मेरे एक उपयोग को तोड़ दिया - अर्थात् 'सामान' अब पर्यावरण चर को प्रक्षेपित करता है । मुझे उस सुविधा की आवश्यकता नहीं थी, और मैं यह पता नहीं लगा सका कि 'सामान' के तर्क से आसानी से कैसे बचा जा सकता है (ताकि मैं डॉलर के संकेत वाले पाठ को भेज सकूं) इसलिए मैं सिर्फ संस्करण 4.0 (2004 से) का उपयोग करता रहा।
मैं एक Emacs फ़ंक्शन में स्क्रीन के 'सामान' (Tmux में 'सेंड-कीज़') का उपयोग करता हूं जो वर्तमान एमएसीएस क्षेत्र की सामग्री को एक विशिष्ट विंडो नंबर पर भेजता है। इस तरह जब मैं एक स्क्रिप्टिंग भाषा में कोड लिख रहा होता हूं, तो मैं एक दुभाषिया खोलता हूं, मैं इंट्रिप्टर विंडो को एक विशेष नंबर देता हूं, और फिर मैं अपने संपादक विंडो से कोड की पंक्तियों को सीधे इस Emacac बाध्यकारी का उपयोग करके दुभाषिया खिड़की पर भेज सकता हूं। यह हैकरी है लेकिन मुझे इससे बेहतर लगता है शुद्ध Emacs समाधान , क्योंकि मैं भी मानक कीस्ट्रोक्स का उपयोग करके इसकी स्क्रीन विंडो में दुभाषिया के साथ बातचीत कर सकता हूं। यह GUI IDE की तरह एक सा है, लेकिन मुझे माउस का उपयोग करने या ब्लिंकिंग कर्सर को देखने की जरूरत नहीं है।
एक अन्य विशेषता जिसे मैंने अपने पैच में लागू किया है, वह एक विंडो को "चिह्नित" करने की क्षमता है, और फिर वर्तमान विंडो के बाद "अगले" होने के लिए चिह्नित विंडो को बदलने की क्षमता है। मेरे लिए यह एक बहुत अधिक प्राकृतिक तरीका है, जो कि पुन: स्थापित करने की तुलना में खिड़कियों को फिर से व्यवस्थित करना है; यह कॉपी / पेस्ट प्रतिमान, या "ड्रैग-एंड-ड्रॉप" की तरह है। (मैं हाल ही में पता चला कि i3 में यह कैसे करना है भी।)
उदाहरण के लिए, टमक्स में एक ही काम करना संभव होना चाहिए 2015 तक फलक को "चिह्नित" करने की सुविधा है। या शायद एक अधिक प्राथमिक समाधान को स्टेटफुल शेल स्क्रिप्ट के साथ काम किया जा सकता है। मैंने "चिह्नित फलक" विधि को आजमाने के लिए एक छोटी स्क्रिप्ट और कीबाइंडिंग को लागू किया, और इसने कुछ समय काम किया लेकिन तब टमक्स "[खोया हुआ सर्वर]" के साथ क्रैश हो गया। फिर मैंने पाया कि कुछ भी जटिल करने की कोशिश के बिना भी Tmux दुर्घटनाग्रस्त हो गया। जाहिरा तौर पर यह कुछ उपयोगकर्ताओं के लिए दुर्घटनाग्रस्त हो गया है के लिये कम से कम कुछ साल । कभी-कभी सर्वर क्रैश हो जाता है, कभी-कभी यह सीपीयू के 100% का उपयोग करना शुरू कर देता है और अनुत्तरदायी बन जाता है। मैंने स्क्रीन को कभी भी इनमें से नहीं देखा है।
सिद्धांत रूप में, Tmux कई मायनों में स्क्रीन से बेहतर है। इसमें बहुत बेहतर पटकथा है, जिसका अर्थ है कि आप कमांड लाइन से वर्तमान सत्र में खिड़कियों की सूची को क्वेरी कर सकते हैं, जो स्क्रीन के साथ असंभव है। उदाहरण के लिए 2015 की स्क्रीन में "शीर्षक द्वारा विंडोज़ सॉर्ट करने के लिए एक कमांड जोड़ा" । मुझे यकीन नहीं है कि जब इस तरह की विशेष कमांड उपयोगी होगी, लेकिन यह और अधिक व्यावहारिक रूपांतर (जैसे कि सीपीयू उपयोग द्वारा विंडोज़ की तरह) अपेक्षाकृत आसानी से टामक्स में एक शेल स्क्रिप्ट से किया जा सकता है। मेरे लिए स्क्रीन में इतना रचनात्मक कुछ भी करना मुश्किल होगा, कम से कम सी कोड को संशोधित किए बिना।
जैसा कि अन्य पोस्टरों में उल्लेख किया गया है, Tmux में एक एकल-सर्वर मॉडल है जिसे मैं प्राथमिक दोष के रूप में देखता हूं, खासकर जब सर्वर क्रैश हो रहा हो। प्रत्येक "सत्र" के लिए एक अलग सॉकेट निर्दिष्ट करके इसके चारों ओर काम करना संभव है। फिर भी मैं स्क्रीन के एक-सर्वर-प्रति-सत्र डिफ़ॉल्ट को प्राथमिकता देता हूं, जो थोड़ा अधिक सुरुचिपूर्ण लगता है।
2002 में स्क्रीन कोड के साथ काम करना, मेरे लिए शैक्षिक और सुखद था। अजीब तरह से पर्याप्त है, अपनी सभी अतिरिक्त विशेषताओं के लिए, Tmux में स्क्रीन (30k बनाम 40k) की तुलना में कोड की लगभग 25% कम लाइनें हैं। मैंने देखा कि Tmux कई पेड़ और सूची डेटा संरचनाओं का उपयोग करता है, जिन्हें समझना मेरे लिए थोड़ा मुश्किल था। स्क्रीन सरणियों को पसंद करती थी।
जैसा कि मैं इसे समझता हूं, क्योंकि यूनिक्स टर्मिनल इंटरफ़ेस इतना स्थिर है, अंतर्निहित ऑपरेटिंग सिस्टम में बदलाव के लिए अनुकूल करने के लिए स्क्रीन या Tmux कोड की बहुत कम आवश्यकता है। इन कार्यक्रमों में वास्तव में वेब ब्राउज़र या वेब सर्वर या शेल जैसे सुरक्षा अपडेट नहीं होते हैं। मैंने स्क्रीन के अपने कस्टम संस्करण को चलाने में कोई समस्या नहीं देखी है, अंतिम बार 2004 में अपडेट किया गया (जोड़ने की आवश्यकता को छोड़कर) सॉकेट को हटाने से Systemd को रोकने के लिए कुछ कॉन्फ़िगरेशन फ़ाइलें ; ये फाइलें आम तौर पर वैसे भी वितरण पैकेज का हिस्सा होती हैं)। शायद मैं बस उन समस्याओं के आसपास काम कर सकता था, जो मैंने दुर्घटनाग्रस्त होने से पहले Tmux संस्करण चलाकर Tmux में सामना की थीं। बेशक, यदि पर्याप्त उपयोगकर्ता ऐसा करते हैं, तो यह नए उपयोगकर्ताओं के लिए बहुत अच्छा नहीं होगा, क्योंकि इसका मतलब है कि कम विशेषज्ञ इन कार्यक्रमों के नवीनतम आधिकारिक संस्करणों में बग की तलाश करेंगे। हालांकि, अपने आप को एक उत्पाद पर स्विच करने के लिए प्रेरित करना कठिन है जो मेरे लिए (नवीनतम Tmux) अस्थिर है या जिसमें कुछ विशेषताओं का अभाव है जो मुझे चाहिए (मानक स्क्रीन)।
मुझे पता है कि यह ओपी के सवाल का आसान जवाब नहीं देता है, लेकिन मुझे उम्मीद है कि मेरा दृष्टिकोण उपयोगी था।