- लेखक ने Typst का उपयोग करके अपना PhD शोधप्रबंध लिखा, और यह पारंपरिक LaTeX से अलग एक नया प्रयोग था
- तेज़ compile speed, एकसमान और शक्तिशाली scripting language, आसान layout customization, और बेहतरीन code highlighting की वजह से दस्तावेज़ संपादन और template adjustment बहुत efficient रहे
- bibliography management की असुविधा, LaTeX conversion की सीमाएँ, नए ecosystem के कारण template की कमी, और error messages की सीमाएँ जैसी स्पष्ट दिक्कतें और सीमाएँ मौजूद हैं
- LaTeX के साथ compatibility, collaboration, और thesis submission में मांगे जाने वाले format support के मामले में अभी कमी है, और thesis collaboration तथा conference submission में LaTeX वास्तव में मानक है
- जब programming flexibility और modern features की ज़रूरत हो तब Typst खास तौर पर फायदेमंद है, लेकिन beginners और standard requirements के लिए इसकी सिफारिश नहीं की जाती
PhD शोधप्रबंध Typst में लिखने की वजह
- लेखक ने हाल ही में अपना PhD शोधप्रबंध Typst में लिखा, और पारंपरिक रूप से व्यापक रूप से इस्तेमाल होने वाले LaTeX की जगह एक नई typography language को आज़माया
- Typst, Markdown और dynamically typed Rust-जैसे दृष्टिकोण का संयोजन है, इसलिए दस्तावेज़ लिखना LaTeX की तुलना में अधिक स्वाभाविक लगता है और scripting language के रूप में इसकी extensibility भी शानदार है
- इसका syntax intuitive है, और code तथा document के बीच आना-जाना आसान होना इसकी खासियत है
Typst के फायदे
compile speed
- Typst compiler बहुत तेज़ है, इसलिए दस्तावेज़ बड़ा होने पर भी real-time PDF preview संभव है
- full build भी लगभग 15 सेकंड में पूरा हो जाता है, और content बदलते ही लगभग तुरंत परिणाम देखा जा सकता है
- layout और style में बदलाव कुशलता से बार-बार किए जा सकते हैं, जिससे final output की गुणवत्ता बेहतर होती है
language design और script का उपयोग
- Typst language बहुत consistent है, और Rust-आधारित design की वजह से इसकी learning curve कम है
- LaTeX में हर package के साथ syntax consistency की कमी से जो असुविधा होती है, वह Typst में काफी हद तक दूर हो जाती है
- TOML files को सीधे parse करके document में data को अपने-आप visualize करना संभव है, यानी programmatic use cases बहुत समृद्ध हैं
- modern tools (compiler, dependency management, LSP आदि) के साथ integration भी इसकी बड़ी ताकत है
template और layout modification
- Typst का template structure साफ़ है, इसलिए इसे मनचाहे ढंग से आसानी से modify और extend किया जा सकता है
- LaTeX के जटिल template customization की तुलना में यह कहीं अधिक intuitive और तेज़ configuration अनुभव देता है
code highlighting
- built-in syntax highlighting support की वजह से thesis के भीतर code की readability बेहतर रहती है
- Textmate grammar का उपयोग किया जा सकता है, और regex-आधारित custom definitions भी आसानी से लागू की जा सकती हैं
- script के जरिए parser खुद लिखकर खास syntax highlighting पर भी प्रयोग किया गया
error messages
- LaTeX की तुलना में यह error की location और कारण अधिक स्पष्ट रूप से दिखाता है, जिससे समस्या सुलझाने में लगने वाला समय काफी कम हो जाता है
- बेकार terminal output नहीं आता, और error information वास्तव में उपयोगी होती है
Typst की कमियाँ
bibliography management
- पूरे thesis में केवल एक ही bibliography supported है, इसलिए chapter-wise या thesis में शामिल अलग-अलग papers के लिए अलग bibliography files का उपयोग नहीं किया जा सकता
- Bibtex variables जैसी advanced features का support कमज़ोर है, इसलिए Makefile से manual integration करना पड़ता है
- package (Alexandria) के जरिए आंशिक समाधान संभव है, लेकिन usability और automation का स्तर कम है
- citation style conversion, field mapping आदि में fine-grained adjustment अधूरा है, और manual work अपरिहार्य हो जाता है
- bibliography fields, Bibtex standard से अलग हैं, इसलिए परिणामों में अंतर आता है
error messages की सीमाएँ
- जटिल मामलों में (जैसे Alexandria का उपयोग करते समय), ठोस error explanation के बिना सिर्फ़ साधारण failure message दिखाई देता है
- state-based show rule जैसी चीज़ों में error की location trace करना मुश्किल होता है, और debugging की कठिनाई बढ़ जाती है
- कुछ layout-related warnings में कारण को आसानी से पहचानना संभव नहीं होता
जटिल वास्तविकता: compatibility और ecosystem
LaTeX के साथ compatibility और collaboration
- मौजूदा papers और submission papers के लिए LaTeX format की ज़रूरत होती है, इसलिए Typst में लिखी सामग्री को Pandoc आदि से convert करके उपयोग किया जाता है
- नए papers भी Typst में draft किए जाते हैं, लेकिन final submission के लिए conversion का काम आवश्यक होता है
- Typst से LaTeX में automatic conversion पूरी तरह सटीक नहीं है, इसलिए अलग tool विकसित करके काम किया गया
- conversion output के कुछ हिस्सों (जैसे code) के लिए LaTeX के
\includepdf का उपयोग करना पड़ता है, और यह publisher requirements से मेल न भी खा सकता है
- चूँकि LaTeX मानक है, इसलिए collaboration करने वाले लोगों को Typst अलग से सीखना पड़ता है, जो एक अतिरिक्त बोझ बनता है
Typst ecosystem की स्थिति
- Typst अभी भी शुरुआती ecosystem में है, इसलिए official templates और submission formats सीमित हैं
- कई बार users को खुद अपने customized templates बनाने पड़ते हैं
- प्रमुख conferences और journals के लिए Typst templates का support scope और quality के मामले में अभी पूर्ण नहीं है
निष्कर्ष और सिफारिश
- अगर आपको programming पसंद है और tools को बारीकी से customize करने में रुचि है, तो Typst में thesis लिखना पूरी तरह recommend किया जा सकता है
- बार-बार प्रयोग और customization की उच्च स्वतंत्रता के कारण final output अधिक सुंदर बन सकता है
- लेकिन यदि बिना किसी अतिरिक्त setup के तुरंत उपयोग करना हो, तो अभी Typst, PhD thesis जैसे बड़े दस्तावेज़ों के लिए उपयुक्त नहीं है
- छोटे पैमाने के documents या व्यक्तिगत प्रयोगों के लिए Typst को आज़माना सार्थक हो सकता है
1 टिप्पणियां
Hacker News टिप्पणियाँ
git clean -xdfतक करना पड़ता है। ऐसा क्यों होता है यह अब तक ठीक से समझ नहीं आया, और makefile खुद भी बहुत जटिल होती हैं-outdiroption से intermediate files को अलग manage किया जा सकता है