- तिब्बती साहित्य सामान्य word processor की छोटी paragraph-आधारित धारणाओं से मेल नहीं खाता, इसलिए digital editing·publishing tools में इसे लंबे समय से व्यावहारिक सीमाओं का सामना करना पड़ा है
- BDRC तिब्बती भाषा को डिजिटल वातावरण में ठीक से संभालने के लिए तकनीकी सुधार आगे बढ़ाता रहा है, और इस बार LibreOffice में बहुत लंबे paragraph के समर्थन को एक महत्वपूर्ण प्रगति माना जा रहा है
- बिना forced line break वाले लंबे text flow और बहुत कम spaces, अंग्रेज़ी-केंद्रित document processing तरीकों से अलग हैं, इसलिए लंबे तिब्बती ग्रंथों को खोलते या convert करते समय performance समस्याएँ आसानी से पैदा होती थीं
- Jonathan Clark के सुधार के बाद Longchenpa के Yishindzö जैसे 153-पृष्ठ के एक ही “paragraph” वाले text को भी तेज़ी से खोला और संपादित किया जा सकता है, और RDF से PDF conversion का वह काम जो 45 मिनट से अधिक समय तक अटका रहता था, अब 13 सेकंड में पूरा हो जाता है
- बहुत लंबे paragraph का समर्थन 27 सितंबर 2024 को जारी LibreOffice 24.8.2 में शामिल किया गया, जिससे तिब्बती उपयोगकर्ता मुफ़्त open source publishing tools का अधिक व्यावहारिक रूप से उपयोग कर सकते हैं
तिब्बती भाषा के लिए digital support क्यों महत्वपूर्ण है
- BDRC के महत्वपूर्ण मिशनों में से एक तकनीकी नवाचार के ज़रिये तिब्बती भाषा को डिजिटल दुनिया का प्रथम श्रेणी का नागरिक बनाना है
- तिब्बती लोगों ने 8वीं सदी में बौद्ध धर्म के आगमन के बाद से लेखन, नवाचार और तकनीक में बहुत ऊर्जा और संसाधन लगाए हैं
- तिब्बती लिपि और शास्त्रीय भाषा संस्कृत और चीनी बौद्ध ग्रंथों का तिब्बती लोगों की समझ वाली भाषा में अनुवाद करने के लिए बनाई गई थीं
- 14वीं सदी में धर्मग्रंथों के अनुवाद और हिमालयी लेखकों के तिब्बती बौद्ध साहित्य की हज़ारों प्रतियाँ बड़े पैमाने पर तैयार करने के लिए woodblock printing को व्यापक रूप से अपनाया गया
- तिब्बती computer fonts का आगमन और Unicode Standard में शामिल होना, तिब्बती भाषा के डिजिटल दुनिया में एकीकरण की प्रक्रिया में एक बड़ी छलांग थी
सामान्य word processor से मेल न खाने वाली तिब्बती साहित्यिक संरचना
- तिब्बती साहित्य में अब भी ऐसी विशेषताएँ हैं जिन्हें सभी tools और applications पर्याप्त रूप से support नहीं कर पाते
- खासकर यूरोपीय भाषाओं जैसी paragraph की अवधारणा उसी तरह लागू नहीं होती
- तिब्बती text को अक्सर forced line break के बिना लगातार बहने वाले लंबे flow के रूप में संभालना पड़ता है
- यह flow कभी-कभी सैकड़ों या हज़ारों पृष्ठों तक जा सकता है
- सामान्य word processor मूल रूप से अंग्रेज़ी text को ध्यान में रखकर डिज़ाइन किए गए थे
- वे अपेक्षाकृत छोटे paragraph मानकर चलते हैं
- वे यह मानते हैं कि शब्दों के बीच spaces होती हैं और उनकी चौड़ाई को लचीले ढंग से समायोजित किया जा सकता है
- तिब्बती साहित्य में paragraph की लंबाई पर लगभग कोई सीमा नहीं होती और spaces बहुत कम होती हैं, इसलिए यह इन धारणाओं से टकराता है
- नतीजतन, लंबे तिब्बती text खोलते समय word processor बहुत धीमे हो सकते थे या बिल्कुल काम करना बंद कर सकते थे, जिससे गंभीर publishing projects में उनका उपयोग कठिन था
LibreOffice में सुधार और वास्तविक performance बदलाव
- LibreOffice, MS Word से प्रेरित परिपक्व और स्थिर open source word processor में से एक है, और Linux सहित कई platforms पर मुफ़्त उपलब्ध है
- Word या InDesign जैसे commercial software लंबे तिब्बती text को संभाल सकते हैं, लेकिन उनकी लागत अधिक है, और एशिया के कई हिस्सों में उनका इस्तेमाल अक्सर pirated versions के रूप में किया जाता है
- जब तक LibreOffice लंबे paragraph को संभाल नहीं पाता था, तब तक तिब्बती publishing के लिए व्यवहारिक रूप से कोई मुफ़्त tool नहीं था
- BDRC के CTO Elie Roux ने 2015 में यह समस्या LibreOffice को रिपोर्ट की थी
- LibreOffice code में हस्तक्षेप करने का काम कई हफ्तों के R&D वाला बड़ा project था, और कुछ समय तक इसमें कोई प्रगति नहीं हुई
- कुछ हफ्ते पहले Jonathan Clark ने इस समस्या को लिया और इसे ठीक किया
- Longchenpa का Yishindzö 153 पृष्ठों के एक ही “paragraph” से बना लंबा text है
- अब इसे LibreOffice में तेज़ी से खोला और संपादित किया जा सकता है
- यह text BDRC archive के yid bzhin mdzod में देखा जा सकता है
- इस विशेष text की RDF file को PDF में convert करने का काम पहले 45 मिनट बाद भी अटका रहता था, लेकिन अब यह 13 सेकंड में पूरा हो जाता है
- बहुत लंबे paragraph का समर्थन 27 सितंबर 2024 को जारी LibreOffice 24.8.2 में शामिल किया गया
- BDRC तिब्बती editing software में आने वाली कमियों और user experience पर feedback माँग रहा है, और community collaboration के ज़रिये तिब्बती digital tools को आगे भी बेहतर बनाना चाहता है
2 टिप्पणियां
Hacker News टिप्पणियां
Pennsylvania के New Hope से आए हिप्पी और शुरुआती computer hacker Jim Woolsey तिब्बती भाषा के digitization के अहम शुरुआती लोगों में से एक थे
1993 का इंटरव्यू https://www.mcall.com/1993/10/08/new-hope-man-computer-guru-... एक दिलचस्प time capsule है, और अपने आप में पढ़ने लायक भी है
वे परिवार के परिचित थे, और इस महत्वपूर्ण लेकिन कम आंके गए काम के प्रति उनकी अनूठी लगन की मैंने हमेशा सराहना की
“दस्तावेज़ों में ठीक-ठाक छोटे paragraphs होते हैं” को भी टेक्स्ट के बारे में programmers जिन झूठी बातों पर भरोसा करते हैं वाली सूची में डालना चाहिए
OpenOffice में प्रति paragraph 65534 characters की hard limit थी, और LibreOffice को इसे हटाने में काफी काम करना पड़ा: https://bugs.documentfoundation.org/show_bug.cgi?id=30668
text direction, diacritics, punctuation तो स्वाभाविक रूप से दिमाग में आए, लेकिन chunking को मैंने universal माना था
लेकिन ऐसा नहीं था: “यूरोपीय भाषाओं में paragraph की typographic अवधारणा तिब्बती text में वास्तव में उसी तरह मौजूद नहीं है। नतीजतन, तिब्बती text को अक्सर बिना forced line breaks के एक लगातार, न टूटने वाले लंबे text flow की तरह संभालना पड़ता है, कभी-कभी सैकड़ों या हजारों pages तक”
'\n'खोजते हुए तिब्बती भाषा से हार गया होगापूरे सम्मान के साथ कहें तो तिब्बतियों की innovative सोच को The Nine Billion Names of God में भी मान्यता मिली है: https://en.wikipedia.org/wiki/The_Nine_Billion_Names_of_God
और उनकी innovations इस किताब, कम-से-कम Wikipedia के plot summary, से कहीं ज्यादा व्यापक हैं
“तुलनात्मक रूप से छोटे paragraphs, शायद कुछ pages तक” जैसी अभिव्यक्ति मुझे पसंद आई क्योंकि यह दिखाती है कि मैं दुनिया को कितने खास नजरिए से देख रहा हूं
लगता है मैंने कभी एक page लंबा paragraph भी नहीं लिखा
नाम भूल गया हूं, लेकिन किसी लेखक ने कई pages लंबा stream of consciousness बिना paragraphs और punctuation के लिखा था—सबसे करीब उदाहरण वही याद आता है
उदाहरण के लिए James Joyce और David Foster Wallace हैं
यह काम काफी पहले से चल रहा है
तिब्बती उच्चारण सिखाने वाला एक पुराना HyperCard stack भी है, जिसमें 16-bit sound तक शामिल है: https://hcsimulator.com/Learn-Tibetan
कई stream-of-consciousness किस्म की writings या संबंधित styles भी paragraphs, और कभी-कभी दूसरी पारंपरिक structures तक से बचते हैं, इसलिए थोड़ा आश्चर्य है कि word processors लंबे paragraphs में संघर्ष करते हैं
बहुत आम नहीं, लेकिन बिल्कुल न होने वाली बात भी नहीं है, और मुझे लगा था कि लेखक और publishers किसी तरह इसे संभाल लेते होंगे
हाल का एक random उदाहरण: https://en.wikipedia.org/wiki/Ducks,_Newburyport
ultra-long paragraphs के support, या उसकी कमी को कैसे हल किया गया, इसके details जानने की उत्सुकता है
किसी को पता है?
cache के जरिए O(n^2) impact घटाने वाला काफी छोटा change है
इस change में बेहद बड़े paragraphs वाले documents के लिए scalability improvement शामिल है
LF control characters को ध्यान में रखने के लिए layout context size घटाया गया, और paragraph layout के दौरान typical access pattern की वजह से VCL द्वारा
vcl::ScriptRun::next()को O(n^2) तरीके से call करने की समस्या को existing global LRU cache इस्तेमाल करने में बदला गया, जिससे काफी overhead से बचा गयामेरी जानकारी में Bengali और Assamese तिब्बती script इस्तेमाल करते हैं; किसी को पता है कि यह तिब्बती लोग अपनी भाषा के लिए जो script इस्तेमाल करते हैं, उससे कितनी मिलती-जुलती है?
Bengali और Assamese Indo-Aryan परिवार की हैं, जबकि तिब्बती पूरी तरह अलग language family, Sino-Tibetan, से है
Bengali speaker के तौर पर जब मैं Bhutan गया, जहां ऐसी भाषा बोली जाती है जो तिब्बती से 50% mutually intelligible बताई जाती है, तो मुझे कुछ भी समझ नहीं आया
मुझे लगा था कि Buddhist loanwords काफी होंगे, लेकिन dharma, karma जैसे शब्द भी तिब्बती में बिल्कुल अलग सुनाई दिए, यह देखकर हैरानी हुई
https://en.wikipedia.org/wiki/Tibetan_script
भाषा वाकई दिलचस्प चीज़ है
कभी इसे सीखना आसान होता है और यह बड़े इलाके में संवाद का माध्यम बनती है, और कभी इसे सीखना मुश्किल होता है लेकिन यह बहुत जटिल संरचनाएँ और विचार बनाने और उन्हें बोलने वालों के बीच पहुँचाने में सक्षम बनाती है
Tibetan इस स्पेक्ट्रम में कहाँ आती है?
बहुत तकनीकी विषयों में बहुत तकनीकी शब्दावली होना स्वाभाविक है
लेकिन किसी भाषा में मौजूद सूक्ष्म nuances की मात्रा का उस भाषा में व्यक्त किए जा सकने वाले विचारों की जटिलता से संबंध है, इस पर मुझे भरोसा नहीं है
मैं LibreOffice प्रोजेक्ट का volunteer Eyal हूँ, और right-to-left लिखी जाने वाली scripts और complex text layout scripts से जुड़े quality assurance पर काफी काम करता हूँ
इस लेख का लिंक पोस्ट करने के लिए thunderbong3 का धन्यवाद, और Tibetan performance सुधार लागू करने वाले The Document Foundation के नए RTL-CTL-CJK प्रभारी developer Jonathan Clark का दिल से धन्यवाद
LibreOffice में मुझे मिलने और रिपोर्ट करने वाले ज़्यादातर bugs किसी खास writing system तक सीमित नहीं, बल्कि सामान्य समस्याएँ होती हैं
उदाहरण के लिए, ऐसा code जो यह बात भूल जाता है कि content right-to-left हो सकता है, उन मामलों में गलत व्यवहार करता है
writing system-विशेष bugs में से कई सबसे ज़्यादा इस्तेमाल होने वाली Arabic script से जुड़े हैं, जिसका उपयोग Farsi, Urdu, Javanese आदि में भी होता है
फिर भी Tibetan या Mongolian जैसी कम व्यापक रूप से इस्तेमाल होने वाली writing systems से जुड़े issues भी हैं: https://bugs.documentfoundation.org/show_bug.cgi?id=115607
यह meta bug Mongolian, Tibetan, Uyghur, Zhuang, Kazak, Xibo, Dai, Yi, Miao, Jingpo, Lisu, Lahu, Wa आदि के issues को track करता है
यह पता नहीं कि ऐसी भाषाओं से जुड़ी समस्याएँ सचमुच बहुत कम हैं, या उनका उपयोग कम है और users के पास bugs दर्ज करने की पर्याप्त प्रेरणा नहीं है
फिर भी Jonathan के हालिया fixes दिखाते हैं कि developer time उपलब्ध हो तो इन्हें हल करने में रुचि निश्चित रूप से है
जिन्हें ऐसी writing systems और देशों-संस्कृतियों के बीच document editing की निष्पक्षता में रुचि है, वे अपनी जानी हुई भाषा में LibreOffice इस्तेमाल करके देखें और bug मिले तो BugZilla पर डालें: https://bugs.documentfoundation.org/
LibreOffice प्रोजेक्ट का संचालन करने वाली The Document Foundation को आर्थिक रूप से support करने पर भी विचार करें: https://www.libreoffice.org/donate/
हम दुनिया के बड़े free open source projects में से एक हैं, हमारे regular users करोड़ों में हैं, शायद 10 करोड़ से भी ज़्यादा, और हमारे board members दर्जनों देशों से आते हैं
लेकिन कोई बड़ी enterprise कंपनी इस project में बहुत पैसा या समय invest नहीं करती
Collabora और Allotropia जैसी कुछ commercial companies योगदान देती हैं, लेकिन कई मूलभूत issues उनके ग्राहकों की जरूरतों के पर्याप्त करीब नहीं हैं
इसलिए हमने RTL-CTL-CJK support को मजबूत करने के लिए Jonathan को सीधे hire करने का फैसला किया, और ऐसा काम individual users के donations से संभव होता है
अगर कोरियाई में spacing नहीं होता, तो मुश्किल हो जाती।