टेक्स्ट-आधारित यूजर इंटरफेस

कम्प्यूटिंग में, टेक्स्ट-आधारित उपभोक्ता इंटरफ़ेस (TUI) वैकल्पिक रूप से टर्मिनल यूजर इंटरफेस कंप्यूटर टर्मिनलों के गुणों पर निर्भरता को प्रतिबिंबित करने के लिए और सिर्फ टेक्स्ट नहीं), एक प्रारंभिक रूप के रूप में सामान्य यूजर इंटरफेस (यूआई) का वर्णन करने वाला एक पुराना नाम है। ग्राफिकल यूज़र इंटरफ़ेस (जीयूआई) के आगमन से पहले मानव-कंप्यूटर इंटरैक्शन का। जीयूआई की तरह, वे पूरे इलेक्ट्रॉनिक दृश्य प्रदर्शन क्षेत्र का उपयोग कर सकते हैं और माउस और अन्य इनपुट स्वीकार कर सकते हैं। वे रंग का उपयोग भी कर सकते हैं और अक्सर विशेष ग्राफिकल वर्णों जैसे ┌ और ╣ का उपयोग करके डिस्प्ले को स्ट्रक्चर करते हैं, जिसे यूनिकोड में "बॉक्स ड्राइंग" सेट के रूप में संदर्भित किया जाता है। उपयोग का आधुनिक संदर्भ आमतौर पर एक टर्मिनल एमुलेटर है।

टेक्स्ट टर्मिनलों के प्रकार
टेक्स्ट एप्लिकेशन के दृष्टिकोण से, एक टेक्स्ट स्क्रीन और इसके साथ संचार) तीन प्रकारों में से एक से संबंधित हो सकता है (यहां घटती पहुंच के क्रम में आदेश दिया गया है।


 * 1) एक वास्तविक टेक्स्ट मोड डिस्प्ले, जिसे एक विडियो अडाप्टर या स्वयं केंद्रीय प्रोसेसर द्वारा नियंत्रित किया जाता है। विभिन्न प्रकार के व्यक्तिगत कंप्यूटरों और मोबाइल उपकरणों पर स्थानीय रूप से चल रहे एप्लिकेशन के लिए यह एक सामान्य स्थिति है। यदि ऑपरेटिंग सिस्टम द्वारा विचलित नहीं किया जाता है, तो एक स्मार्ट प्रोग्राम हार्डवेयर टेक्स्ट मोड की पूर्ण शक्ति का उपयोग कर सकता है।
 * 2) एक पाठ मोड एमुलेटर। उदाहरण X विंडो सिस्टम के लिए xterm और Microsoft Windows के लिए win32 कंसोल (विंडो मोड में) हैं। यह आमतौर पर उन प्रोग्रामों का समर्थन करता है जो वास्तविक टेक्स्ट मोड डिस्प्ले की उम्मीद करते हैं, लेकिन काफी धीमी गति से चल सकते हैं। एक उन्नत पाठ मोड के कुछ कार्य, जैसे स्वयं का रेखापुंज फ़ॉन्ट अपलोड करना, लगभग निश्चित रूप से अनुपलब्ध हो जाते हैं।
 * 3) एक दूरस्थ  पाठ टर्मिनल। टेलनेट और सुरक्षित शेल  जैसे मामलों में आउट-ऑफ-बैंड डेटा के रूप में संभवतः कुछ  ioctls के साथ संचार क्षमताएं आमतौर पर एक सीरियल लाइन  या इसके अनुकरण में कम हो जाती हैं। यह सबसे खराब स्थिति है, क्योंकि सॉफ्टवेयर प्रतिबंध रिमोट डिस्प्ले डिवाइस की क्षमताओं के उपयोग में बाधा डालते हैं।

लिनक्स और अन्य यूनिक्स जैसी प्रणालियों के तहत, एक प्रोग्राम आसानी से तीन मामलों में से किसी एक को समायोजित करता है क्योंकि एक ही इंटरफ़ेस (अर्थात्, मानक धाराएँ) डिस्प्ले और कीबोर्ड को नियंत्रित करता है। विंडोज़ की तुलना के लिए नीचे देखें।

डेवलपर्स को टीयूआई एप्लिकेशन बनाने में मदद करने के लिए कई टीयूआई प्रोग्रामिंग लाइब्रेरी उपलब्ध होती हैं।

एएनएसआई-संगत टर्मिनलों पर
अमेरिकी राष्ट्रीय मानक संस्थान (ANSI) मानक ANSI X3.64 एस्केप सीक्वेंस के एक मानक सेट को परिभाषित करता है जिसका उपयोग TUIs बनाने के लिए टर्मिनलों को चलाने के लिए किया जा सकता है (ANSI एस्केप कोड देखें)। उपरोक्त अनुभाग में उल्लिखित सभी तीन मामलों के लिए एस्केप सीक्वेंस का समर्थन किया जा सकता है, जिससे मनमाना टेक्स्ट कर्सर आंदोलनों और रंग परिवर्तन की अनुमति मिलती है। हालांकि, सभी टर्मिनल इस मानक का पालन नहीं करते हैं, और कई गैर-संगत लेकिन कार्यात्मक समकक्ष अनुक्रम उपस्थित होते हैं।

डॉस और माइक्रोसॉफ्ट विंडोज के तहत
आईबीएम पर्सनल कंप्यूटर और कॉम्पिटिबल्स पर, बेसिक इनपुट आउटपुट सिस्टम BIOS और DOS सिस्टम कॉल स्क्रीन पर टेक्स्ट लिखने का एक तरीका प्रदान करते हैं, और ANSI.SYS ड्राइवर मानक ANSI एस्केप सीक्वेंस को प्रोसेस कर सकता है। हालाँकि, प्रोग्रामरों ने जल्द ही यह जान लिया कि स्क्रीन बफर पर सीधे डेटा लिखना प्रोग्राम के लिए कहीं अधिक तेज़ और सरल था, और कम त्रुटि-प्रवण था; विवरण के लिए वीजीए-संगत टेक्स्ट मोड देखें। प्रोग्रामिंग विधियों में इस बदलाव के परिणामस्वरूप कई DOS TUI प्रोग्राम बने। विंडोज कंसोल वातावरण कुछ ईजीए / वीजीए टेक्स्ट मोड सुविधाओं के अपने अनुकरण के लिए कुख्यात है, विशेष रूप से टेक्स्ट बफर के लिए रैंडम एक्सेस, भले ही एप्लिकेशन विंडो में चलता हो। दूसरी ओर, विंडोज के तहत चलने वाले प्रोग्राम (देशी और डॉस दोनों एप्लिकेशन) में लिनक्स और डॉस प्रोग्राम की तुलना में डिस्प्ले और कीबोर्ड का बहुत कम नियंत्रण होता है, क्योंकि उपरोक्त विंडोज कंसोल परत होती है।

अक्सर उन कार्यक्रमों में सफेद या पीले अक्षरों के साथ मुख्य स्क्रीन के लिए नीले रंग की पृष्ठभूमि का उपयोग किया जाता था, हालांकि आमतौर पर उनके पास उपयोगकर्ता रंग अनुकूलन भी होता था। वे अक्सर आईबीएम के कोड पृष्ठ 437 में बॉक्स-ड्राइंग वर्णों का उपयोग करते थे। बाद में, इंटरफ़ेस ग्राफिकल यूजर इंटरफेस (जीयूआई) से गहराई से प्रभावित हो गया, जिसमें पुल - डाउन मेनू, ओवरलैपिंग विंडो (कम्प्यूटिंग), संवाद बॉक्स और जीयूआई विजेट सम्मिलित थे जो कि एमनेमिक्स या कीबोर्ड शॉर्टकट द्वारा संचालित थे। जल्द ही कम्प्यूटर का माउस इनपुट मे जोड़ा गया - या तो टेक्स्ट रिज़ॉल्यूशन पर एक साधारण रंगीन बॉक्स के रूप में या ग्राफिकल रिज़ॉल्यूशन पर उन्नत ग्राफिक्स एडेप्टर (ईजीए) और वीडियो ग्राफिक्स ऐरे (वीजीए) डिस्प्ले एडेप्टर की क्षमता के लिए सॉफ्टवेयर द्वारा टेक्स्ट कैरेक्टर शेप को फिर से परिभाषित करने के लिए - प्रदान करना अतिरिक्त प्रकार्य।

इस तरह के कुछ उल्लेखनीय प्रोग्राम थे माइक्रोसॉफ्ट वर्ड, डॉस शेल, वर्ड पर्फेक्ट, नॉर्टन कमांडर, टर्बो विजन आधारित बोरलैंड टर्बो पास्कल और टर्बो सी  (बाद वाले में conio.h लाइब्रेरी भी सम्मिलित थी),  लोटस 1-2-3 और कई अन्य इनमें से कुछ इंटरफेस 1990 के दशक की शुरुआत में माइक्रोसॉफ्ट विंडोज 3.1x अवधि के दौरान भी बने रहे। उदाहरण के लिए, माइक्रोसॉफ्ट सी 6.0 कंपाइलर, जो 16-बिट विंडोज़ के तहत वास्तविक जीयूआई प्रोग्राम लिखने के लिए प्रयोग किया जाता है, अभी भी इसका अपना टीयूआई होता है।

इसके प्रारम्भ के बाद से Microsoft Windows में DOS सॉफ़्टवेयर प्रदर्शित करने के लिए एक कंसोल सम्मिलित होता है। जो बाद के संस्करणों ने विंडोज कंसोल को कमांड लाइन इंटरफेस और TUI कार्यक्रमों के लिए मूल इंटरफ़ेस के रूप में जोड़ा। कंसोल सामान्य रूप से विंडो मोड में खुलता है, लेकिन इसे Alt और Enter कुंजियों को एक साथ दबाकर फुल, सही टेक्स्ट मोड स्क्रीन पर और इसके विपरीत स्विच किया जा सकता है। फ़ुल-स्क्रीन मोड Windows Vista और बाद के संस्करणों में उपलब्ध नहीं होता है, लेकिन कुछ वैकल्पिक हलों के साथ इसका उपयोग किया जा सकता है।

विंडोज टर्मिनल एक मल्टी-टैब्ड टर्मिनल एमुलेटर होता है जिसे माइक्रोसॉफ्ट ने विंडोज कंसोल के प्रतिस्थापन के रूप में विंडोज 10 और बाद में के लिए विकसित किया है।

लिनक्स के लिए विंडोज सबसिस्टम जिसे 2019 में माइक्रोसॉफ्ट द्वारा विंडोज में जोड़ा गया था, विंडोज कंसोल, विंडोज टर्मिनल और अन्य विंडोज-आधारित टर्मिनलों के भीतर विंडोज पर लिनक्स टेक्स्ट-आधारित ऐप चलाने का समर्थन करता है।

यूनिक्स जैसी प्रणालियों के तहत
यूनिक्स जैसे ऑपरेटिंग सिस्टम में, टीयूआई का निर्माण अक्सर टर्मिनल कंट्रोल लाइब्रेरी श्राप (प्रोग्रामिंग लाइब्रेरी), या ncurses (ज्यादातर संगत लाइब्रेरी), या वैकल्पिक एस-लैंग लाइब्रेरी का उपयोग करके किया जाता है। बर्कले यूनिक्स के साथ कर्स लाइब्रेरी के आगमन ने एक पोर्टेबल और स्थिर एपीआई बनाया जिसके लिए टीयूआई लिखा जा सके। एक ही इंटरफेस का उपयोग करके विभिन्न टेक्स्ट टर्मिनल प्रकारों से बात करने की क्षमता ने विज़ुअल यूनिक्स प्रोग्रामों का अधिक व्यापक उपयोग किया, जिसने एक साधारण लाइन इंटरफ़ेस का उपयोग करने के बजाय पूरे टर्मिनल स्क्रीन पर कब्जा कर लिया। इसे पाठ संपादको जैसे vi, ईमेल क्लाइंट जैसे पाइन (ई-मेल क्लाइंट) या म्यूट (ई-मेल क्लाइंट), सिस्टम प्रबंधन उपकरण जैसे IBM AIX SMIT, SAM (HP-UX), FreeBSD' मे देखा जा सकता है। कुछ एप्लिकेशन, जैसे कि  w3m और पाइन और vi के पुराने संस्करण कम-सक्षम termcap लाइब्रेरी का उपयोग करते हैं, एप्लिकेशन के भीतर श्राप से जुड़े कई कार्यों का प्रदर्शन करते हैं। विगेट्स पर आधारित कस्टम टीयूआई एप्लिकेशन को डायलॉग प्रोग्राम (एनसीआरएस पर आधारित), या न्यूट प्रोग्राम (एस-लैंग पर आधारित) का उपयोग करके आसानी से विकसित किया जा सकता है।

इसके अलावा, लिनक्स की लोकप्रियता में वृद्धि ने कई पूर्व डॉस उपयोगकर्ताओं को यूनिक्स जैसे प्लेटफॉर्म पर ला दिया, जिसने कई टीयूआई में डॉस प्रभाव को बढ़ावा दिया है। उदाहरण के लिए, प्रोग्राम मिनिकॉम, लोकप्रिय डॉस प्रोग्राम टेलिक्स के बाद तैयार किया गया है। कुछ अन्य टीयूआई प्रोग्राम, जैसे ट्विन (विंडो सिस्टम), को पोर्ट किया गया था।

अधिकांश यूनिक्स-जैसे ऑपरेटिंग सिस्टम (लिनक्स, फ्रीबीएसडी, आदि) वर्चुअल कंसोल का समर्थन करते हैं, जिन्हें आमतौर पर Ctrl-Alt-F कुंजी संयोजन के माध्यम से एक्सेस किया जाता है। उदाहरण के लिए, लिनक्स के तहत 64 कंसोल तक पहुँचा जा सकता है (फ़ंक्शन कुंजियों के माध्यम से 12), प्रत्येक फ़ुल-स्क्रीन टेक्स्ट मोड में प्रदर्शित होता है।

मुफ्त सॉफ्टवेयर प्रोग्राम जीएनयू स्क्रीन एक ही टीयूआई के अंदर कई सत्रों को प्रबंधित करने के लिए प्रदान करता है, और इसलिए इसे टेक्स्ट-मोड और कमांड-लाइन इंटरफेस के लिए विंडो प्रबंधक की तरह माना जा सकता है। Tmux भी ऐसा कर सकता है।

प्रोप्रायटरी macOS टेक्स्ट एडिटर BBEdit में एक शेल वर्कशीट फंक्शन शामिल है जो फुल-स्क्रीन शेल विंडो के रूप में काम करता है। मुफ्त Emacsटेक्स्ट एडिटर समान कार्यक्षमता प्रदान करने के लिए अपने बफ़र्स में से एक के अंदर शेल चला सकता है। Emacs में कई शेल कार्यान्वयन हैं, लेकिन केवल  ही TUI प्रोग्राम चलाने के लिए उपयुक्त है। अन्य सामान्य शेल मोड,   तथा    केवल कमांड लाइन का अनुकरण करते हैं और टीयूआई प्रोग्राम शिकायत करेंगे कि "टर्मिनल पूरी तरह कार्यात्मक नहीं है" या एक विकृत इंटरफ़ेस प्रदर्शित करता है। मुफ्त विम और नियोविम पाठ संपादकों में टर्मिनल विंडो (एक्सटरम का अनुकरण) है। सुविधा कार्य चलाने, समानांतर बिल्ड या परीक्षण करने के लिए अभिप्रेत है, लेकिन इसका उपयोग (विंडो स्प्लिट्स और टैब पेजों के साथ) एक हल्के टर्मिनल मल्टीप्लेक्सर के रूप में भी किया जा सकता है।

OpenVMS (ओपेन वीएमएस)
VAX/VMS (जिसे बाद में OpenVMS के रूप में जाना जाता है) में श्राप के समान सुविधा थी जिसे स्क्रीन प्रबंधन सुविधा या SMG के रूप में जाना जाता है। इसे कमांड लाइन से मंगाया जा सकता है या SMG$ लाइब्रेरी का उपयोग करने वाले प्रोग्राम से कॉल किया जा सकता है।

ओबेरॉन
एक अन्य प्रकार का टीयूआई ओबेरॉन ऑपरेटिंग सिस्टम का प्राथमिक इंटरफ़ेस है, जिसे पहली बार 1988 में रिलीज़ किया गया था और अभी भी इसे बनाए रखा गया है। अधिकांश अन्य टेक्स्ट-आधारित यूजर इंटरफेस के विपरीत, ओबेरॉन टेक्स्ट-मोड कंसोल या टर्मिनल का उपयोग नहीं करता है, लेकिन इसके लिए एक बड़े बिट-मैप्ड डिस्प्ले की आवश्यकता होती है, जिस पर टेक्स्ट माउस क्लिक के लिए प्राथमिक लक्ष्य होता है। प्रारूप मॉड्यूल में आदेश प्रक्रिया पैरामीटर ~हाइपरलिंक्स की तरह एक मध्य-क्लिक के साथ सक्रिय किया जा सकता है। स्क्रीन पर कहीं भी प्रदर्शित पाठ को संपादित किया जा सकता है, और यदि आवश्यक कमांड सिंटैक्स के साथ स्वरूपित किया जाता है, तो मध्य-क्लिक और निष्पादित किया जा सकता है। उपयुक्त रूप से स्वरूपित कमांड वाली किसी भी टेक्स्ट फ़ाइल को एक तथाकथित टूल टेक्स्ट के रूप में इस्तेमाल किया जा सकता है, इस प्रकार उपयोगकर्ता-कॉन्फ़िगर करने योग्य मेनू के रूप में कार्य करता है। यहां तक ​​कि पिछले कमांड के आउटपुट को भी संपादित किया जा सकता है और नए कमांड के रूप में उपयोग किया जा सकता है। यह दृष्टिकोण पारंपरिक संवाद-उन्मुख कंसोल मेनू या कमांड लाइन इंटरफेस दोनों से मुख्य रूप से भिन्न होते है।

चूंकि यह ग्राफ़िकल विजेट्स का उपयोग नहीं करता है, केवल सादा पाठ, लेकिन टाइलिंग विंडो प्रबंधक के साथ जीयूआई के लिए तुलनीय कार्यक्षमता प्रदान करता है, इसे टेक्स्ट यूजर इंटरफेस या टीयूआई के रूप में संदर्भित किया जाता है। एक संक्षिप्त परिचय के लिए, ओबेरॉन सिस्टम पर पहली प्रकाशित रिपोर्ट के पृष्ठ चार पर दूसरा पैराग्राफ देखें।

ओबेरॉन के यूआई ने बेल लैब्स ऑपरेटिंग सिस्टम से प्लान 9 के लिए एक्मे टेक्स्ट एडिटर और ईमेल क्लाइंट के डिजाइन को प्रभावित किया।

एम्बेडेड सिस्टम में
आधुनिक एम्बेडेड सिस्टम व्यक्तिगत कंप्यूटर जैसे मॉनीटर पर टीयूआई प्रदर्शित करने में सक्षम हैं। यह कार्यक्षमता आमतौर पर विशेष एकीकृत सर्किट, मॉड्यूल या FPGA का उपयोग करके कार्यान्वित की जाती है।

वीडियो परिपथ या मॉड्यूल सामान्य रुप से यूएआरटी पर वीटी100-संगत कमांड समुच्चय का उपयोग करके नियंत्रित होते हैं, एफपीजीए डिज़ाइन सामान्य रूप से सीधे वीडियो मेमोरी नियंत्रण की अनुमति देते हैं।

अन्य उपयोग

 * कमोडोर 64 8 बिट कंप्यूटर का पूर्ण स्क्रीन संपादक अपने समय के लिए अपने बाजार खंड में उन्नत था। उपयोगकर्ता पूरे स्क्रीन क्षेत्र पर कर्सर ले जा सकते हैं, बुनियादी प्रोग्राम लाइन्स में प्रवेश और संपादन कर सकते हैं, साथ ही प्रत्यक्ष मोड कमांड भी। सभी कमोडोर 8-बिट कंप्यूटर PETSCII वर्ण सेट का उपयोग करते थे, जिसमें TUI बनाने के लिए उपयुक्त वर्ण ग्लिफ़ शामिल थे।
 * Apple के Macintosh प्रोग्रामर के वर्कशॉप प्रोग्रामिंग वातावरण में कमांडो, एक TUI शेल शामिल था। यह BBEdit की शेल वर्कशीट की प्रेरणा थी।
 * बाद में Apple II मॉडल में माउसटेक्स्ट शामिल था, जो ग्राफिकल ग्लिफ़ का एक सेट था जिसका उपयोग TUI बनाने के लिए किया जाता था।
 * 1982 के कॉर्वस अवधारणा कंप्यूटर ने फुल-पेज पिवोटिंग डिस्प्ले पर प्रकार्य कुंजी टेक्स्ट इंटरफेस का इस्तेमाल किया।

यह भी देखें

 * कमांड लाइन इंटरफेस
 * सांत्वना आवेदन
 * प्राकृतिक भाषा यूजर इंटरफेस
 * टेक्स्ट-आधारित गेम, TUI का उपयोग करने वाला गेम

प्रोग्रामिंग पुस्तकालयों के उदाहरण

 * श्राप (प्रोग्रामिंग लाइब्रेरी)
 * शाप
 * सीडीके (प्रोग्रामिंग लाइब्रेरी)
 * न्यूट (प्रोग्रामिंग लाइब्रेरी), एक विजेट-आधारित टूलकिट
 * बोलचाल की भाषा
 * टर्बो विजन
 * विजुअल बेसिक (क्लासिक)

इस पेज में लापता आंतरिक लिंक की सूची

 * मोबाइल डिवाइस
 * एम्यूलेटर
 * निजी कंप्यूटर
 * ससम्मान पद अवनति
 * UNIX- जैसे
 * एएनएसआई एस्केप कोड
 * आईबीएम पर्सनल कंप्यूटर
 * आईबीएम पीसी संगत
 * सभी कुंजी
 * पुस्तकालय (कंप्यूटर विज्ञान)
 * स्मृति चिन्ह (कीबोर्ड)
 * माइक्रोसॉफ्ट वर्ड
 * कुंजी दर्ज करें
 * लिनक्स के लिए विंडोज सबसिस्टम
 * लिंक्स (वेब ​​ब्राउज़र)
 * एक्मे (पाठ संपादक)
 * बेल लैब्स से प्लान 9
 * पाठ आधारित खेल