ट्रोफ

From Vigyanwiki
Revision as of 16:06, 13 July 2023 by Manidh (talk | contribs)
troff
Original author(s)Joe Ossanna
Developer(s)AT&T Bell Laboratories
Written inC
Operating systemUnix, Unix-like, Plan 9
PlatformCross-platform
TypeCommand
LicensePlan 9: MIT License

ट्रोफ, अक्षर संयोजक रॉफ़ का संक्षिप्त रूप, यूनिक्स ऑपरेटिंग सिस्टम के लिए बेल लैब्स द्वारा विकसित डॉक्यूमेंट प्रोसेसिंग सिस्टम का प्रमुख घटक है। ट्रॉफ़ और संबंधित एनरॉफ़ दोनों मूल रॉफ़ (सॉफ़्टवेयर) से विकसित किए गए थे।

जबकि एनरॉफ का उद्देश्य अवसानक और लाइन प्रिंटर पर प्रक्षेपण का उत्पादन करना था, ट्रोफ का उद्देश्य अक्षर संयोजन प्रणाली पर प्रक्षेपण का उत्पादन करना था, विशेष रूप से सीएटी (फोटोटाइपसेटर) जिसे 1972 में प्रस्तुत किया गया था। दोनों ने समान अंतर्निहित मार्कअप भाषा का उपयोग किया और एक एकल स्रोत संचिका सामान्य रूप से काम कर सकती थी और एनरॉफ या ट्रोफ द्वारा बिना परिवर्तन के उपयोग किया जा सकता है।

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

विभिन्न डॉक्यूमेंट शैलियों के लिए व्यापक बनाए गए हैं। 'ट्रॉफ़' के विशिष्ट वितरण में शोध पत्रों को फ़ॉर्मेट करने के लिए 'मी' मैक्रोज़, यूनिक्स मैनुअल बनाने के लिए 'मैन' और 'एमडीओसी' मैक्रोज़, माउंटेबल ओवरहेड प्रोजेक्टर बनाने के लिए 'एमवी' मैक्रोज़ और 'एमएस' और 'एमएम' सम्मिलित हैं। ' पत्रों, पुस्तकों, तकनीकी ज्ञापनों और विवरणी के लिए मैक्रोज़ है।

इतिहास

ट्रॉफ़ की उत्पत्ति का पता आरयूएनओएफएफ नामक पाठ स्वरूपण कंप्यूटर प्रोग्राम से लगाया जा सकता है, जिसे 1960 के दशक के मध्य में मैसाचुसेट्स की तकनीकी संस्था के संगत समय-साझाकरण प्रणाली ऑपरेटिंग सिस्टम के लिए जेरोम एच. साल्टज़र द्वारा लिखा गया था। (यह नाम कथित तौर पर इस वाक्यांश से आया है कि मैं एक डॉक्यूमेंट चलाऊंगा।)

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

यूनिक्स का पहला संस्करण पीडीपी-7 पर विकसित किया गया था जो बेल लैब्स के आसपास स्थित था। 1971 में डेवलपर्स ऑपरेटिंग सिस्टम पर आगे काम करने के लिए पीडीपी-11 प्राप्त करना चाहते थे। इस प्रणाली की लागत को उचित ठहराने के लिए, उन्होंने प्रस्ताव दिया कि वे बेल लैब्स एकस्व अधिकार विभाग के लिए एक डॉक्यूमेंट-स्वरूपण प्रणाली लागू करेंगे। [1] यह पहला आरूपण प्रोग्राम जो एफ. ओस्सन्ना द्वारा लिखित मैकिलरॉय के रॉफ़ का पुन: कार्यान्वयन था।

जब उन्हें अधिक विभक्तिग्राही भाषा की आवश्यकता हुई, तो रोफ का एक नया संस्करण एनरॉफ (नया रोफ) लिखा गया, जिसने भविष्य के सभी संस्करणों के लिए आधार प्रदान किया। जब उन्हें सीएटी (फोटोटाइपसेटर) मिला, तो ओस्सन्ना ने कई फ़ॉन्ट और प्रोपोर्शन का समर्थन करने के लिए एनरॉफ को संशोधित किया। टाइपसेटर रॉफ़ के लिए डब किया गया ट्रॉफ़, इसके परिष्कृत प्रक्षेपण ने टाइपसेटर निर्माता और भ्रमित सहकर्मी समीक्षकों को आश्चर्यचकित कर दिया, जिन्होंने सोचा था कि ट्रॉफ़ का उपयोग करने वाली पांडुलिपियाँ पहले प्रकाशित की गई थीं। [2][3] जैसे, ट्रॉफ़ नाम का उच्चारण किया जाता है /ˈtrɒf/ इसके स्थान पर */ˈtrɒf/ है।

ट्रॉफ़ के साथ एनरॉफ आया (वे वास्तव में लगभग एक ही प्रोग्राम थे), जो लाइन प्रिंटर और कैरेक्टर कंप्यूटर टर्मिनलों के लिए प्रक्षेपण तैयार करने के लिए था। इसने ट्रॉफ द्वारा की गई हर बात को समझा और उन आदेशों को उपेक्षित कर दिया जो लागू नहीं थे, जैसे, टाइपफ़ेस परिवर्तन था।

ओस्सन्ना का ट्रॉफ पीडीपी-11 असेंबली भाषा में लिखा गया था और विशेष रूप से कैट फोटोटाइपसेटर के लिए प्रक्षेपण तैयार किया गया था। उन्होंने इसे C (प्रोग्रामिंग भाषा) में फिर से लिखा, हालाँकि अब यह बिना टिप्पणी वाले कूट की 7000 पंक्तियाँ थी और अभी भी सीएटी पर निर्भर थी। चूँकि सीएटी कम सामान्य हो गया था, और अब निर्माता द्वारा समर्थित नहीं था, इसलिए इसे अन्य उपकरणों का समर्थन करने की आवश्यकता प्राथमिकता बन गई। यह कार्य पूरा होने से पहले ही ओस्सन्ना की मृत्यु हो गई, इसलिए ब्रायन कर्निघन ने ट्रॉफ को फिर से लिखने का कार्य संभाला। नए पुनर्लिखित संस्करण ने एक उपकरण-स्वतंत्र कूट तैयार किया जो पश्च संसाधित्र के लिए उपयुक्त प्रिंटर कूट को पढ़ना और अनुवाद करना बहुत आसान था। इसके अतिरिक्त, ट्रॉफ़ के इस नए संस्करण (जिसे प्रायः उपकरण स्वतंत्र ट्रॉफ़ के लिए 'डिट्रॉफ़' कहा जाता है) में कई विस्तारण थे, जिनमें ड्राइंग फलन सम्मिलित थे। [4] प्रोग्राम का डॉक्यूमेंट डिट्रॉफ़ के प्रक्षेपण स्वरूप को परिभाषित करता है, जिसका उपयोग जीएनयू ग्रॉफ़ (सॉफ़्टवेयर) जैसे कई आधुनिक ट्रॉफ़ प्रतिरूप द्वारा किया जाता है।

टूल के ट्रॉफ संग्रह (पूर्वप्रक्रमक- और पोस्ट-प्रोसेसर सहित) को अंततः डॉक्यूमेंटर वर्कबेंच (डीडब्ल्यूबी) कहा गया, और 1994 तक बेल लैब्स और बाद में स्पिन-ऑफ यूनिक्स सिस्टम प्रयोगशालाएँ (यूएसएल) में निरंतर विकास के अधीन था। उस समय, सॉफ्टक्वाड ने रखरखाव का कार्यभार संभाला, हालांकि ब्रायन कर्निघन ने अपने दम पर ट्रॉफ में सुधार करना जारी रखा। इस प्रकार, मूल बेल लैब्स ट्रॉफ़ के कम से कम निम्नलिखित प्रकार उपयोग में हैं:

  • सॉफ्टक्वाड डीडब्ल्यूबी, 1994 से यूएसएल डीडब्ल्यूबी 2.0 पर आधारित;
  • ल्यूसेंट सॉफ्टवेयर सॉल्यूशंस (पूर्व में यूएसएल) से डीडब्ल्यूबी 3.4;
  • ट्रॉफ़, बेल लैब्स संस्करण से योजना 9।

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

सॉफ्टवेयर को 1990 में जीएनयू के नॉट यूनिक्स सिस्टम के लिए ग्रॉफ (सॉफ्टवेयर) के रूप में फिर से लागू किया गया था। इसके अतिरिक्त, प्राचीन यूनिक्स सिस्टम के विवृत स्रोत सॉफ्टवेयर के साथ-साथ डिट्रॉफ-आधारित विवृत-स्रोत संस्करणों जैसे आधुनिक उत्तराधिकारी भी पाए गए। बेल लैब्स के ओपनसोलर और प्लान 9 पर, एटी एंड टी ट्रॉफ (सीएटी और डिट्रॉफ-आधारित) के कई संस्करण हैं [5]) विभिन्न विवृत-स्रोत विज्ञप्ति के अंतर्गत उपलब्ध है।

मैक्रो

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

अग्रणी एम के साथ मानक मैक्रो सम्मुच्चय हैं:

  • यूनिक्स मैनुअल पेज बनाने के लिए एमएएन [6][7]
  • शब्दार्थ-एनोटेटेड यूनिक्स मैनुअल पृष्ठों के लिए एमडीओसी, जो अन्य प्रारूपों में एमएएनडीओसी रूपांतरण के लिए बेहतर रूप से अनुकूलित हैं।[8][9] mandoc एक सम्मिश्रण है जो अयांत्रिक कमांड के दोनों सेटों का समर्थन करता है। [10]
  • शोध पत्र तैयार करने के लिए एमई है [11]
  • ज्ञापन बनाने के लिए एमएम है [12]
  • किताबें, रिपोर्ट विवरणी और तकनीकी प्रपत्र बनाने के लिए एमएस है [13]

उपलब्ध मैक्रोज़ की अधिक विस्तृत सूची सामान्यतः tmac(5) अयांत्रिक पेज में सूचीबद्ध की जाती है। [10]


पूर्वप्रक्रमक

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

  • ईक्यूएन (सॉफ्टवेयर) पूर्वप्रक्रमक गणितीय सूत्रों को सरल और सहज तरीके से निर्दिष्ट करने की अनुमति देता है। [14]
  • टीबीएल तालिकाओं को फ़ॉर्मेट करने के लिए एक पूर्वप्रक्रमक है।
  • आरईएफईआर (सॉफ्टवेयर) (और समान प्रोग्राम बिब) एक ग्रंथ सूची डेटाबेस के अनुसार डॉक्यूमेंट में उद्धरणों को संसाधित करता है।

तीन पूर्वप्रक्रमक चित्र का वर्णन करने के लिए एक कार्यछेत्र-विशिष्ट भाषा को परिभाषित करके ड्राइंग क्षमताओं के साथ ट्रॉफ़ प्रदान करते हैं।

  • पीआईसी (सॉफ्टवेयर) एक प्रक्रियात्मक प्रोग्रामिंग भाषा है जो वृत्त और बॉक्स जैसे विभिन्न ड्राइंग फलन प्रदान करती है। [15]
  • आइडियल चित्रों को घोषणात्मक प्रोग्रामिंग रूप से चित्रित करने की अनुमति देता है, इसके निविष्ट द्वारा वर्णित सदिश और परिवर्तनों के आधार पर एक साथ समीकरणों की एक प्रणाली को हल करके चित्र प्राप्त करना है। [16]
  • जीआरएन प्रारंभिक ग्राफिक्स वर्कस्टेशन द्वारा परिभाषित ग्रेमलिन (संचिका प्रारूप) के आधार पर, पूर्ण निर्देशांक पर खींचे गए आलेखी तत्वों के माध्यम से चित्रों का वर्णन करता है। [17]

फिर भी अधिक पूर्वप्रक्रमक तस्वीर के लिए प्रक्षेपण उत्पन्न करके अधिक जटिल चित्र बनाने की अनुमति देते हैं।


यह भी देखें

संदर्भ

  1. Kernighan, B. W. (October 2019). Unix: A History and a Memoir. Kindle Direct Publishing. p. 42. ISBN 9781695978553.
  2. J. F. Ossanna. Nroff/Troff User's Manual. CSTR #54, Bell Labs, 1976. Revised by B. W. Kernighan, 1992.
  3. McIlroy, M. D. (1987). A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986 (PDF) (Technical report). CSTR. Bell Labs. 139.
  4. B. W. Kernighan. A Typesetter-Independent TROFF. CSTR #97, Bell Labs, 1981, revised March 1982.
  5. See the man page of the ditroff -> postscript converter on OpenSolaris: dpost(1) – illumos and OpenSolaris User Commands Reference Manual from latest Sun based OpenSolaris
  6. "-मैन मैक्रोज़ के साथ UNIX मैनुअल पेज लिखना और फ़ॉर्मेट करना". home.fnal.gov. Retrieved 7 May 2019.
  7. man(7) – Linux Miscellanea Manual
  8. mdoc(7) – FreeBSD Miscellaneous Information Manual
  9. "सूचकांक - मैंडॉक विस्तारित दस्तावेज़ीकरण". Mandoc. Retrieved 7 May 2019.
  10. 10.0 10.1 groff_tmac(5) – Linux File Formats Manual
  11. groff_me(7) – Linux Miscellanea Manual
  12. groff_mm(7) – Linux Miscellanea Manual
  13. groff_ms(7) – Linux Miscellanea Manual
  14. B. W. Kernighan and Lorinda L. Cherry. A System for Typesetting Mathematics. CSTR #17, Bell Labs, May 1974.
  15. B. W. Kernighan. PIC — A Graphics Language for Typesetting (Revised User Manual). CSTR #116, Bell Labs, December 1984.
  16. C. J. Van Wyk. IDEAL User's Manual. CSTR #103, Bell Labs, December 1981.
  17. grn — groff preprocessor for gremlin files [1].
  18. J. L. Bentley and B. W. Kernighan. GRAP — A Language for Typesetting Graphs (Tutorial and User Manual). CSTR #114, Bell Labs, August 1984.
  19. J. L. Bentley, L. W. Jelinski, and B. W. Kernighan. CHEM — A Program for Typesetting Chemical Structure Diagrams. CSTR #122, Computers and Chemistry, Bell Labs, April 1986.
  20. J. L. Bentley. DFORMAT — A Program for Typesetting Data Formats. CSTR #142, Bell Labs, April 1988.


बाहरी संबंध