diff options
author | Karl Berry <karl@freefriends.org> | 2020-05-27 21:41:10 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-05-27 21:41:10 +0000 |
commit | 9e5ce7919f1c53214d619ba6c4dc040a5bdd19ba (patch) | |
tree | 2aa212b19319f71a5c13fc7bc46ddae30855be04 | |
parent | 0d4ebcae733ad439678cb7e424e1be31529ba363 (diff) |
marathi (27may20)
git-svn-id: svn://tug.org/texlive/trunk@55298 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/marathi/README.txt | 4 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/marathi/article.tex | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/marathi/book.tex | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/marathi/letter.tex | 11 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/marathi/marathi.pdf | bin | 68175 -> 74619 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/marathi/para.tex | 1 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/marathi/marathi.dtx | 147 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/marathi/marathi.ins | 4 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/marathi/marathi.sty | 61 |
9 files changed, 126 insertions, 106 deletions
diff --git a/Master/texmf-dist/doc/latex/marathi/README.txt b/Master/texmf-dist/doc/latex/marathi/README.txt index 50a94b1e8f6..684781cd31a 100644 --- a/Master/texmf-dist/doc/latex/marathi/README.txt +++ b/Master/texmf-dist/doc/latex/marathi/README.txt @@ -1,6 +1,6 @@ आज्ञासंच: marathi लेखक: निरंजन -आवृत्ती: ०.१ (२५ मे, २०२०) +आवृत्ती: १.१ (२७ मे, २०२०) माहिती: लुआ-लाटेक् व झी-लाटेक् ह्यांच्यासह मराठीचा सुलभ वापर करण्यासाठी. दुवा: https://gitlab.com/niranjanvikastambe/marathi अडचणी: https://gitlab.com/niranjanvikastambe/marathi/-/issues @@ -9,7 +9,7 @@ -------------------------------------------------------------------------- Package: marathi Author: Niranjan -Version: 1.0 (25 May, 2020) +Version: 1.1 (27 May, 2020) Description: For conveniently typesetting Marathi language with LuaLaTeX and XeLaTeX. Repository: https://gitlab.com/niranjanvikastambe/marathi Bug tracker: https://gitlab.com/niranjanvikastambe/marathi/-/issues diff --git a/Master/texmf-dist/doc/latex/marathi/article.tex b/Master/texmf-dist/doc/latex/marathi/article.tex index 80df0535ca4..6b7a9c1b101 100644 --- a/Master/texmf-dist/doc/latex/marathi/article.tex +++ b/Master/texmf-dist/doc/latex/marathi/article.tex @@ -1,3 +1,5 @@ +\title{नमुना} +\author{लेखक} \maketitle \begin{abstract} नमस्कार! हा मजकूर अर्थशून्य आहे. ह्या ठिकाणी काय व कसे छापले जाईल ह्याचा हा केवळ एक नमुना आहे. जर तुम्ही हे वाचले, तर तुम्हाला कोणतीच माहिती मिळणार नाही. खरेच? ह्यात कोणतीच माहिती नाही काय? ह्या मजकुरात व `पिढ्ढ करढपाखू' अशा निरर्थक शब्दांमध्ये काही फरक आहे का? हो! ह्याला आंधळा मजकूर असे म्हणतात. हा मजकूर तुम्हाला निवडलेला टंक कोणता आहे, अक्षरे कशी दिसतात ह्या सगळ्याबाबत माहिती देतो. ह्यासाठी विशिष्ट शब्दांची गरज नाही, परंतु शब्द वापरल्या गेलेल्या भाषेशी जुळायला हवेत. diff --git a/Master/texmf-dist/doc/latex/marathi/book.tex b/Master/texmf-dist/doc/latex/marathi/book.tex index aaad876e61d..bbda1361189 100644 --- a/Master/texmf-dist/doc/latex/marathi/book.tex +++ b/Master/texmf-dist/doc/latex/marathi/book.tex @@ -1,3 +1,5 @@ +\title{नमुना} +\author{लेखक} \maketitle \tableofcontents \chapter{पहिल्या स्तरावरील शीर्षक (प्रकरण)} diff --git a/Master/texmf-dist/doc/latex/marathi/letter.tex b/Master/texmf-dist/doc/latex/marathi/letter.tex index cf3b9ec9ab2..e7f324b91b4 100644 --- a/Master/texmf-dist/doc/latex/marathi/letter.tex +++ b/Master/texmf-dist/doc/latex/marathi/letter.tex @@ -1,3 +1,14 @@ +\title{नमुना} +\author{लेखक} +\name{लेखक} +\signature{सही} +\address{ + लेखकाचे नाव\\ + अबक मार्ग\\ + मुंबई\\ + पिन क्र. ४०००००} +\location{लेखकाचे स्थान} +\telephone{दूरध्वनी - ०२० २२९५ २१०८} \begin{letter}{प्राप्तकर्त्याचे नाव\\ प्राप्तकर्त्याची संस्था\\ संस्थेचा संक्षिप्त पत्ता} diff --git a/Master/texmf-dist/doc/latex/marathi/marathi.pdf b/Master/texmf-dist/doc/latex/marathi/marathi.pdf Binary files differindex 870adc72263..6c0bf5973a1 100644 --- a/Master/texmf-dist/doc/latex/marathi/marathi.pdf +++ b/Master/texmf-dist/doc/latex/marathi/marathi.pdf diff --git a/Master/texmf-dist/doc/latex/marathi/para.tex b/Master/texmf-dist/doc/latex/marathi/para.tex new file mode 100644 index 00000000000..de32f11bbc5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/marathi/para.tex @@ -0,0 +1 @@ +नमस्कार! हा मजकूर अर्थशून्य आहे. ह्या ठिकाणी काय व कसे छापले जाईल ह्याचा हा केवळ एक नमुना आहे. जर तुम्ही हे वाचले, तर तुम्हाला कोणतीच माहिती मिळणार नाही. खरेच? ह्यात कोणतीच माहिती नाही काय? ह्या मजकुरात व `पिढ्ढ करढपाखू' अशा निरर्थक शब्दांमध्ये काही फरक आहे का? हो! ह्याला आंधळा मजकूर असे म्हणतात. हा मजकूर तुम्हाला निवडलेला टंक कोणता आहे, अक्षरे कशी दिसतात ह्या सगळ्याबाबत माहिती देतो. ह्यासाठी विशिष्ट शब्दांची गरज नाही, परंतु शब्द वापरल्या गेलेल्या भाषेशी जुळायला हवेत. \par
\ No newline at end of file diff --git a/Master/texmf-dist/source/latex/marathi/marathi.dtx b/Master/texmf-dist/source/latex/marathi/marathi.dtx index e4f500018f8..e5eebabe7a7 100644 --- a/Master/texmf-dist/source/latex/marathi/marathi.dtx +++ b/Master/texmf-dist/source/latex/marathi/marathi.dtx @@ -32,7 +32,7 @@ %<*readme> आज्ञासंच: marathi लेखक: निरंजन -आवृत्ती: ०.१ (२५ मे, २०२०) +आवृत्ती: १.१ (२७ मे, २०२०) माहिती: लुआ-लाटेक् व झी-लाटेक् ह्यांच्यासह मराठीचा सुलभ वापर करण्यासाठी. दुवा: https://gitlab.com/niranjanvikastambe/marathi अडचणी: https://gitlab.com/niranjanvikastambe/marathi/-/issues @@ -41,7 +41,7 @@ -------------------------------------------------------------------------- Package: marathi Author: Niranjan -Version: 1.0 (25 May, 2020) +Version: 1.1 (27 May, 2020) Description: For conveniently typesetting Marathi language with LuaLaTeX and XeLaTeX. Repository: https://gitlab.com/niranjanvikastambe/marathi Bug tracker: https://gitlab.com/niranjanvikastambe/marathi/-/issues @@ -52,8 +52,8 @@ License: The LaTeX Project Public License v1.3c or later. %</internal> %<*driver|package> \def\marathiPackageName{marathi} -\def\marathiPackageVersion{१.०} -\def\marathiPackageDate{२५ मे, २०२०} +\def\marathiPackageVersion{१.१} +\def\marathiPackageDate{२७ मे, २०२०} \def\marathiPackageDescription{लुआ-लाटेक् व झी-लाटेक् ह्यांच्यासह मराठीचा सुलभ वापर करण्यासाठी.} %</driver|package> %<*driver> @@ -69,10 +69,20 @@ License: The LaTeX Project Public License v1.3c or later. urlcolor={blue!80!black} } \usepackage[sort=use]{glossaries} +\usepackage{devanagaridigits} +\usepackage{capt-of} +\renewcommand{\tablename}{कोष्टक} +\renewcommand{\arraystretch}{1.2} +\usepackage{standalone} +\makeatletter +\RequirePackage{devanagaridigits} +\def\@arabic#1{\expandafter\devanagaridigits\expandafter{\number#1}} +\makeatother +\renewcommand{\theCodelineNo}{{\scriptsize\arabic{CodelineNo}}\quad} \input{glossaries.gls} -\setmainfont[Script=Devanagari,Mapping=devanagarinumerals]{Shobhika} -\setmonofont[Script=Devanagari]{Mukta} -\newfontfamily{\mukta}[Script=Devanagari]{Mukta} +\setmainfont[Renderer=Harfbuzz,Script=Devanagari,Mapping=devanagarinumerals]{Shobhika} +\setmonofont[Renderer=Harfbuzz,Script=Devanagari]{Mukta} +\newfontfamily{\mukta}[Renderer=Harfbuzz,Script=Devanagari]{Mukta} \usepackage{minted} \usemintedstyle{bw} \usepackage{fontawesome5} @@ -101,7 +111,7 @@ License: The LaTeX Project Public License v1.3c or later. % \maketitle % % \begin{abstract} -% \XeLaTeX\ चा वापर करून मराठीत \gls{टंकजुळणी}\footnote{ह्या दस्तऐवजात लाटेक्-मध्ये प्रचलित असणाऱ्या अनेक इंग्रजी संज्ञांसाठी पर्यायी मराठी संज्ञा वापरण्यात आल्या आहेत, हे सर्व प्रयोग तुलनेने नवे असल्याने ह्याच दस्तऐवजातील शेवटच्या संज्ञासूचीत सर्व संज्ञांचे इंग्रजी अर्थ दिले आहेत.} शक्य आहे, परंतु सुलभ नाही. \LaTeX\ सह मराठीत टंकजुळणी करताना आपली \gls{बीजधारिका} अनेक आज्ञांनी भरून जाते. हा \gls{आज्ञासंच} अशा सर्व उपयुक्त आज्ञा आधीच लिहून ठेवतो. त्यामुळे नव्या वापरकर्त्यांना त्या सर्व आज्ञा वेगळ्या शिकाव्या लागत नाहीत. शिवाय blindtext ह्या आज्ञासंचाप्रमाणे मराठीकरिता नमुना मजकूर उत्पन्न करण्यासाठीची सोय करण्यात आली आहे. \LuaLaTeX\ हा अत्याधुनिक \gls{चालक} वापरल्यास अंक रोमी लिपीत येतात, ती अडचणदेखील ह्या आज्ञासंचात सोडवण्यात आली आहे. +% \XeLaTeX\ चा वापर करून मराठीत \gls{अक्षरजुळणी}\footnote{ह्या दस्तऐवजात लाटेक्-मध्ये प्रचलित असणाऱ्या अनेक इंग्रजी संज्ञांसाठी पर्यायी मराठी संज्ञा वापरण्यात आल्या आहेत, हे सर्व प्रयोग तुलनेने नवे असल्याने ह्याच दस्तऐवजातील शेवटच्या संज्ञासूचीत सर्व संज्ञांचे इंग्रजी अर्थ दिले आहेत.} शक्य आहे, परंतु सुलभ नाही. \LaTeX\ सह मराठीत अक्षरजुळणी करताना आपली \gls{बीजधारिका} अनेक आज्ञांनी भरून जाते. हा \gls{आज्ञासंच} अशा सर्व उपयुक्त आज्ञा आधीच लिहून ठेवतो. त्यामुळे नव्या वापरकर्त्यांना त्या सर्व आज्ञा वेगळ्या शिकाव्या लागत नाहीत. शिवाय blindtext ह्या आज्ञासंचाप्रमाणे मराठीकरिता नमुना मजकूर उत्पन्न करण्यासाठीची सोय करण्यात आली आहे. \LuaLaTeX\ हा अत्याधुनिक \gls{चालक} वापरल्यास अंक रोमी लिपीत येतात, ती अडचणदेखील ह्या आज्ञासंचात सोडवण्यात आली आहे. % \end{abstract} % % \begin{documentation} @@ -122,22 +132,48 @@ License: The LaTeX Project Public License v1.3c or later. % % ह्या उदाहरणाने देवनागरी दिसत असले तरी फलित हवे तसे दिसत नाही. जोडाक्षरे तुटक दिसतात. त्यासाठी \mintinline{latex}{\setmainfont} ह्या आज्ञेस {\mukta Script=Devanagari} असे \gls{प्राचल} द्यावे लागते. पुढील अडचण म्हणजे लाटेक् आपोआप पुरवणारे आकडे (उदा. पृष्ठक्रमांक, तळटिपांचे क्रमांक) देवनागरीत न येणे. त्याकरिता ह्या आज्ञेस {\mukta Mapping=devanagarinumerals} असे आणखी एक प्राचल द्यावे लागते. इतके करूनही भाषेचा प्रश्न उरतोच! उदा. लाटेक्-ला इंग्रजीव्यतिरिक्त इतर कोणतीही भाषा कळत नसल्यामुळे मूलभूत इंग्रजी शब्दांची भाषांतरे पुरवणारे बेबल अथवा पॉलिग्लॉसिया ह्यांसारखे आज्ञासंच वापरून भाषा निवडावी लागते. रोहित होळकरांच्या \href{https://ctan.org/pkg/latex-mr?lang=en}{\mukta latex-mr} ह्या पुस्तिकेत ह्या सर्व अडचणींची तपशीलवार चर्चा झाली आहे. -% सद्यपरिस्थितीत लाटेक्-चे किमान ज्ञान असलेल्या नव्या वापरकर्त्याला मराठी लिहिण्यासाठी हा सगळा प्रपंच करायला लावणे म्हणजे ज्या फांदीवर आपण बसलो आहोत तीच तोडण्यासारखे आहे. त्यामुळे कोणत्याही वापरकर्त्याला केवळ लाटेक्-च्या किमान ज्ञानासह \mintinline{latex}{\usepackage{marathi}} एवढी एक आज्ञा लिहून उत्तम देवनागरी टंकजुळणी करता यावी हा ह्या आज्ञासंचाचा उद्देश आहे. ह्या आज्ञासंचात केवळ दोन आज्ञांचा समावेश आहे. त्या पुढीलप्रमाणे. +% सद्यपरिस्थितीत लाटेक्-चे किमान ज्ञान असलेल्या नव्या वापरकर्त्याला मराठी लिहिण्यासाठी हा सगळा प्रपंच करायला लावणे म्हणजे ज्या फांदीवर आपण बसलो आहोत तीच तोडण्यासारखे आहे. त्यामुळे कोणत्याही वापरकर्त्याला केवळ लाटेक्-च्या किमान ज्ञानासह \mintinline{latex}{\usepackage{marathi}} एवढी एक आज्ञा लिहून उत्तम देवनागरी अक्षरजुळणी करता यावी हा ह्या आज्ञासंचाचा उद्देश आहे. ह्या आज्ञासंचात पुढील आज्ञांचा समावेश आहे. +% \begin{function}{\परिच्छेद} +% ही आज्ञा केवळ एक नमुना परिच्छेद निर्माण करते. ही आज्ञा एकामागोमाग एक अनेकदा टाकल्याने अनेक तितके परिच्छेद निर्माण केले जाऊ शकतात. +% \end{function} % \begin{function}{\नमुना} -% नमुना ही आज्ञा सर्वप्रथम दिलेला \gls{लाटेक्-वर्ग} पाहते व त्यानुसार त्या वर्गाच्या किमान क्षमता दर्शवणारी एक फलित-धारिका निर्माण करते. उदाहरणादाखल {\mukta article, book, report, beamer व letter} ह्या लाटेक्-वर्गांसह \mintinline{latex}{\नमुना} ही आज्ञा चालवून पाहा. एकाच बीजधारिकेत केवळ लाटेक्-वर्ग बदलत असाल, तर लाटेक्-ने तयार केलेल्या \gls{साहाय्यक धारिका} काही वेळा अनपेक्षित अडचणी दाखवल्या जातात. जुनी माहिती शिल्लक असल्याने त्या दिल्या जातात. घाबरून न जाता, तीच धारिका दोनदा चालवावी. सर्व अडचणी सुटतात. +% नमुना ही आज्ञा सर्वप्रथम दिलेला \gls{लाटेक्-वर्ग} पाहते व त्यानुसार त्या वर्गाच्या किमान क्षमता दर्शवणारी एक \gls{फलित-धारिका} निर्माण करते. उदाहरणादाखल {\mukta article, book, report, beamer व letter} ह्या लाटेक्-वर्गांसह \mintinline{latex}{\नमुना} ही आज्ञा चालवून पाहा. एकाच बीजधारिकेत केवळ लाटेक्-वर्ग बदलत असाल, तर लाटेक्-ने तयार केलेल्या \gls{साहाय्यक धारिका} काही वेळा अनपेक्षित अडचणी दाखवल्या जातात. जुनी माहिती शिल्लक असल्याने त्या दिल्या जातात. घाबरून न जाता, तीच धारिका दोनदा चालवावी. सर्व अडचणी सुटतात. % \end{function} % \begin{function}{\टंक} % \begin{syntax} % \cs{टंक} \marg{टंकाचे नाव} % \end{syntax} -% ह्या आज्ञासंचात शोभिका हा टंक \gls{मूलटंक} म्हणून निवडून ठेवला आहे. परंतु तो बदलायचा असेल तर \mintinline{latex}{\टंक} ह्या आज्ञेची सोय करण्यात आली आहे. ह्या आज्ञेसह आपोआप देवनागरी टंकासाठी आवश्यक असणारी {\mukta Renderer=Harfbuzz,Script=Devanagari,Mapping=devanagarinumerals} ही प्राचले लिहून ठेवली आहेत. शिवाय \mintinline{latex}{\setmainfont{टंकाचे नाव}} ही आज्ञा नेहमीप्रमाणे चालतेच. +% ह्या आज्ञासंचात शोभिका हा टंक \gls{मूलटंक} म्हणून निवडून ठेवला आहे. परंतु तो बदलायचा असेल तर \mintinline{latex}{\टंक} ह्या आज्ञेची सोय करण्यात आली आहे. ह्या आज्ञेसह आपोआप देवनागरी टंकासाठी आवश्यक असणारी {\mukta Renderer=Harfbuzz,Script=Devanagari,Mapping=devanagarinumerals} ही प्राचले लिहून ठेवली आहेत. शिवाय \mintinline{latex}{\setmainfont{टंकाचे नाव}} ही आज्ञा नेहमीप्रमाणे चालतेच. टंकाचे नाव हा ह्या आज्ञेचा \gls{कार्यघटक} आहे. +% \end{function} +%\begin{function}{अंतर}\label{प्राचल} +% हे प्राचल वापरल्यास आज्ञासंचातर्फे दोन ओळींमधील अंतरात कोणताही हस्तक्षेप केला जात नाही. अधिक माहितीसाठी \ref{अंतर} वाचा. ह्या प्राचलाला किंमतदेखील देता येते. उदा. \verb|\usepackage[अंतर=2]{marathi}| अशा प्रकारे आज्ञासंच वापरल्यास ओळींमधले अंतर दुप्पट होते. कोणत्याही प्राचलाशिवाय वापरल्यास आज्ञासंचातर्फे मूलभूत अंतराच्या दीडपट अंतर पुरवले जाते. पुढील कोष्टकाने अंतर ह्या प्राचलाचा वापर अधिक स्पष्ट होईल. +%\begin{center} +% \includestandalone{table} +% \captionof{table}{ओळींमधले अंतर} +%\end{center} % \end{function} +%\begin{function}{\बदल} +%\begin{syntax} +% \cs{बदल}\marg{अंतर = \underline{किंमत}} +%\end{syntax} +% दस्तऐवजात कुठेही अंतर बदलावयाचे असल्यास वरील मार्गाने ते बदलता येते. ह्या आज्ञेला एक कार्यघटक आहे. त्यात अंतर असे लिहून ओळींमधले मूळ अंतर जितक्या पटींनी बदलायचे आहे ती किंमत टाकावी. पुढील उदाहरण पाहा. +% \begin{minted}[linenos]{latex} +% \documentclass{article} +% \usepackage{marathi} +% +% \begin{document} +% \परिच्छेद +% \बदल{अंतर=5} +% \परिच्छेद +% \end{document} +% \end{minted} +%\end{function} % \end{documentation} % % \StopEventually{\PrintIndex} % % \begin{implementation} -% \section*{आज्ञासंचाची घडण} +% \section{आज्ञासंचाची घडण} % आता आपण आज्ञासंचाची घडण व त्यातील आज्ञांचा उपयोग लक्षात घेऊयात. % \begin{macrocode} %<@@=marathi> @@ -148,75 +184,58 @@ License: The LaTeX Project Public License v1.3c or later. \NeedsTeXFormat{LaTeX2e} % \end{macrocode} % ह्या आज्ञांसह आज्ञासंचाची पायाभूत माहिती पुरवली. -% \section{अंतर} -% इंग्रजीमधली g, j, y अशी अक्षरे सोडली तर त्यांच्याहून जास्त खोली असणारा मजकूर त्या लिपीत आढळत नाही. देवनागरीचे तसे नाही. क ह्या अक्षराहून क्क थोडे अधिक खोल. ट्ट त्याहून थोडे अधिक व ट्टू त्याहून. अशा असमान उंचीच्या अक्षरांमुळे लाटेक् आपोआप दोन ओळींमधले अंतर बदलते व त्यामुळे ओळींची उंची असमान दिसू लागते. साध्या मजकुरातील ओळींप्रमाणेच कोष्टकेदेखील कुरूप दिसू लागतात. ह्यावर तोडगा काय? ह्याची दोन उत्तरे आहेत. पहिले उत्तर मराठीच्या आजवरच्या छपाईच्या इतिहासाचा अभ्यास करून, मराठी लिहिताना दोन ओळींमध्ये सोडले गेलेले सरासरी अंतर किती ह्याचे संशोधन करणे व त्यानुसार सर्व ठिकाणी ते अंतर लागू करणे. हा मार्ग सहज नाही. हा संशोधनाचा विषय आहे. त्याकरिता टंकाच्या आकाराचे व त्यानुसार बदलणाऱ्या ओळींच्या अंतराचे प्रमाणदेखील काळजीपूर्वक अभ्यासावे लागेल. हे सर्व करणे जरी इष्ट व आवश्यक असले तरी हे संशोधन पूर्ण होईस्तोवर सामान्य वापरकर्त्याला ज्या आज्ञा शिकण्याचे कष्ट पडतात ते कसे टाळावेत? त्यासाठी तात्पुरता तोडगा काढावा लागतो. तो असा की ओळींमधले अंतर दस्तऐवजाच्या सुरुवातीलाच वाढवून ठेवायचे. त्यासाठी पुढील आज्ञा वापरल्या जातात. - -% \noindent{\mukta\textbackslash renewcommand\{\textbackslash baselinestretch\}\{1.5\}}\par -% \noindent{\mukta\textbackslash renewcommand\{\textbackslash arraystretch\}\{1.5\}} - -% आमच्या काही सहकाऱ्यांच्या मते हा निर्णय अतिशय उग्र आहे. त्यामुळे दस्तऐवजातील इतर काही ठिकाणच्या अंतरांवर सूक्ष्म परिणाम घडतात, जे टाळणे अधिक इष्ट. त्यांच्या ह्या मताचा विचार करून ह्या आज्ञासंचाकरिता \textbf{अंतर} नावाचे प्राचल विकसित केले आहे. हे प्राचल वापरल्यास आज्ञासंचातर्फे ओळींमधल्या अंतरात कोणताही हस्तक्षेप केला जात नाही. त्याकरिता पुढील आज्ञा समाविष्ट केल्या आहेत. - +% \subsection{अंतर}\label{अंतर} +% इंग्रजीमधली g, j, y अशी अक्षरे सोडली तर त्यांच्याहून जास्त खोली असणारा मजकूर त्या लिपीत आढळत नाही. देवनागरीचे तसे नाही. क ह्या अक्षराहून क्क थोडे अधिक खोल. ट्ट त्याहून थोडे अधिक व ट्टू त्याहून. अशा असमान उंचीच्या अक्षरांमुळे लाटेक् आपोआप दोन ओळींमधले अंतर बदलते व त्यामुळे ओळींची उंची असमान दिसू लागते. साध्या मजकुरातील ओळींप्रमाणेच कोष्टकेदेखील कुरूप दिसू लागतात. ह्यावर तोडगा काय? ह्याची दोन उत्तरे आहेत. पहिले उत्तर मराठीच्या आजवरच्या छपाईच्या इतिहासाचा अभ्यास करून, मराठी लिहिताना दोन ओळींमध्ये सोडले गेलेले सरासरी अंतर किती ह्याचे संशोधन करणे व त्यानुसार सर्व ठिकाणी ते अंतर लागू करणे. हा मार्ग सहज नाही. हा संशोधनाचा विषय आहे. त्याकरिता टंकाच्या आकाराचे व त्यानुसार बदलणाऱ्या ओळींच्या अंतराचे प्रमाणदेखील काळजीपूर्वक अभ्यासावे लागेल. हे सर्व करणे जरी इष्ट व आवश्यक असले तरी हे संशोधन पूर्ण होईस्तोवर सामान्य वापरकर्त्याला ज्या आज्ञा शिकण्याचे कष्ट पडतात ते कसे टाळावेत? त्यासाठी तात्पुरता तोडगा काढावा लागतो. तो असा की ओळींमधले अंतर दस्तऐवजाच्या सुरुवातीलाच वाढवून ठेवायचे. त्यासाठी पुढील आज्ञा वापरल्या जातात. ओळींमधल्या अंतरासाठी {\mukta setspace} हा आज्ञासंच वापरावा असा सल्ला जोनाथन स्प्राट ह्यांनी \href{https://topanswers.xyz/tex}{टॉप-आन्सर्स} ह्या संकेतस्थळावर दिला. त्यानुसार हा बदल करत आहे. +% +% आमच्या काही सहकाऱ्यांच्या मते हा निर्णय अतिशय उग्र आहे. त्यामुळे दस्तऐवजातील इतर काही ठिकाणच्या अंतरांवर सूक्ष्म परिणाम घडतात, जे टाळणे अधिक इष्ट. त्यांच्या ह्या मताचा विचार करून ह्या आज्ञासंचाकरिता \textbf{अंतर} नावाचे प्राचल विकसित केले आहे. हे प्राचल वापरल्यास आज्ञासंचातर्फे ओळींमधल्या अंतरात कोणताही हस्तक्षेप केला जात नाही. त्याकरिता पुढील आज्ञा समाविष्ट केल्या आहेत. ह्या आज्ञांसाठी झूंग वोऊ ह्यांच्या टॉप-आन्सर्सवरील \href{https://topanswers.xyz/tex?q=1063#a1276}{ह्या उत्तराची} मदत झाली. ह्या प्राचलाबाबत अधिक माहिती \ref{प्राचल} मध्ये वाचता येईल. % \begin{macrocode} -\newif\ifmarathi@अंतर -\marathi@अंतरfalse -\DeclareOption{अंतर}{\marathi@अंतरtrue} +\RequirePackage{setspace} +\RequirePackage{pgfkeys} + +\def\बदल#1{\pgfkeys{marathi/.cd,#1}} +\pgfkeys{ + marathi/.is family,marathi/.cd, + अंतर/.code={\setstretch{#1}\selectfont}, + अंतर=1.5, + अंतर/.default=1 +} +\DeclareOption*{\expandafter\बदल\expandafter{\CurrentOption}} \ProcessOptions -\ifmarathi@अंतर -\else -\renewcommand{\baselinestretch}{1.5} -\renewcommand{\arraystretch}{1.5} -\fi +\def\arraystretch{1.2} % \end{macrocode} -% \section{standalone लाटेक्-वर्ग} -% standalone हा विशेष लाटेक्-वर्ग केवळ दस्तऐवजात दिलेल्या गोष्टींच्या आकाराचे फलित तयार करण्यासाठी वापरला जातो. उदा. article लाटेक्-वर्गात एखादे कोष्टक टाकले तर पानाच्या नेहमीच्या आकाराइतकी जागा कोष्टकाच्या आजूबाजूला सुटतेच. standalone लाटेक्-वर्गात मात्र तसे न होता केवळ कोष्टकाच्या आकाराइतके फलित निर्माण होते, परंतु ह्या वर्गास polyglossia आज्ञासंच व त्यातून पुरवली जाणारी भाषांतरे अनावश्यक आहेत, त्यामुळे ह्या लाटेक्-वर्गाकरिता केवळ fontspec हा आज्ञासंच वापरून, इतर सर्व वर्गांसाठी polyglossia हा आज्ञासंच वापरला आहे. त्यामुळे सर्व लाटेक्-वर्गांमध्ये भाषांतरेही मिळतात व standalone वर्गातदेखील आज्ञासंचामुळे कोणतीही अडचण येत नाही. पुढील आज्ञांनी हे साधले आहे. +% \subsection{{\mukta standalone} लाटेक्-वर्ग} +% {\mukta standalone} हा विशेष लाटेक्-वर्ग केवळ दस्तऐवजात दिलेल्या गोष्टींच्या आकाराचे फलित तयार करण्यासाठी वापरला जातो. उदा. {\mukta article} लाटेक्-वर्गात एखादे कोष्टक टाकले तर पानाच्या नेहमीच्या आकाराइतकी जागा कोष्टकाच्या आजूबाजूला सुटतेच. {\mukta standalone} लाटेक्-वर्गात मात्र तसे न होता केवळ कोष्टकाच्या आकाराइतके फलित निर्माण होते, परंतु ह्या वर्गास {\mukta polyglossia} आज्ञासंच व त्यातून पुरवली जाणारी भाषांतरे अनावश्यक आहेत, त्यामुळे ह्या लाटेक्-वर्गाकरिता केवळ fontspec हा आज्ञासंच वापरून, इतर सर्व वर्गांसाठी {\mukta polyglossia} हा आज्ञासंच वापरला आहे. त्यामुळे सर्व लाटेक्-वर्गांमध्ये भाषांतरेही मिळतात व {\mukta standalone} वर्गातदेखील आज्ञासंचामुळे कोणतीही अडचण येत नाही. पुढील आज्ञांनी हे साधले आहे. % \begin{macrocode} \@ifclassloaded{standalone}{\RequirePackage{fontspec}}{ \RequirePackage{polyglossia} \setdefaultlanguage{marathi} } % \end{macrocode} -% \section{लुआ-लाटेक्} +% \subsection{लुआ-लाटेक्} % लुआ-लाटेक् हा अत्याधुनिक चालक आता देवनागरीसाठी उपलब्ध झाला आहे. हर्फ़बझ ह्या लुआविशिष्ट आज्ञावलीच्या मदतीने देवनागरी व्यवस्थित दाखवली जात आहे. अशा वेळी तिचा पुरेपुर उपयोग का करू नये? परंतु वापर करताना सर्व अडचणी सुटायला हव्यात. लुआ-लाटेक् अजूनही अरबी आकड्यांऐवजी देवनागरी आकडे देत नाही. त्याकरिता पुढीलप्रकारे नवीन आज्ञा पुरवल्या आहेत. % \begin{macrocode} \RequirePackage{devanagaridigits} \def\@arabic#1{\expandafter\devanagaridigits\expandafter{\number#1}} % \end{macrocode} % अशा प्रकारे आकडे बदलल्याचा एक फायदा असा की जिथे अरबी आकडे लिहायचे आहेत तिथे तेदेखील लिहिता येतात. झी-लाटेक् व {\mukta Mapping=devanagarinumerals} वापरल्यामुळे अरबी आकडे वापरण्यासाठी नवा टंक वापरावा लागतो. -% \section{टंकनिवड} -% शोभिका हा लाटेक्-वितरणासह येणारा व देवनागरीची अतिशय चांगली टंकजुळणी करणारा टंक आहे. तो मूलटंक म्हणून ह्या आज्ञासंचाद्वारे निवडला जातो. अर्थात तो बदलण्याच्या सुविधेसकट. शिवाय कुठल्याही देवनागरी टंकाचे योग्य फलित दिसण्यासाठी {\mukta Script=Devanagari} हे प्राचल वापरावे लागते. ह्या व अशा इतर काही प्राचलांसकट शोभिकाची निवड करून ठेवणे व त्याशिवाय \mintinline{latex}{\टंक} ह्या आज्ञेद्वारे निवडल्या जाणाऱ्या टंकासदेखील तीच प्राचले वापरणे हे पुढील आज्ञांनी साधले जाते. +% \subsection{टंकनिवड} +% शोभिका हा लाटेक्-वितरणासह येणारा व देवनागरीची अतिशय चांगली अक्षरजुळणी करणारा टंक आहे. तो मूलटंक म्हणून ह्या आज्ञासंचाद्वारे निवडला जातो. अर्थात तो बदलण्याच्या सुविधेसकट. शिवाय कुठल्याही देवनागरी टंकाचे योग्य फलित दिसण्यासाठी {\mukta Script=Devanagari} हे प्राचल वापरावे लागते. ह्या व अशा इतर काही प्राचलांसकट शोभिकाची निवड करून ठेवणे व त्याशिवाय \mintinline{latex}{\टंक} ह्या आज्ञेद्वारे निवडल्या जाणाऱ्या टंकासदेखील तीच प्राचले वापरणे हे पुढील आज्ञांनी साधले जाते. % \begin{macrocode} \setmainfont[Renderer=Harfbuzz,Script=Devanagari,Mapping=devanagarinumerals]{Shobhika} -\newcommand{\टंक}[1] +\providecommand{\टंक}[1] {\setmainfont[Renderer=Harfbuzz,Script=Devanagari,Mapping=devanagarinumerals]{#1}} % \end{macrocode} % ह्या आज्ञांमुळे धारिका लुआ अथवा झी-लाटेक् ह्यांपैकी कोणत्याही चालकासह चालवता येते. {\mukta Renderer=Harfbuzz} हे प्राचल लुआविशिष्ट आहे. त्यामुळे झी-लाटेक् वापरल्यास ह्या प्राचलाकडे दुर्लक्ष केले जात आहे अशी एक सूचना आपल्याला मिळते. ही अडचण नसून केवळ एक सूचना आहे. झी-लाटेक्-प्रमाणेच आपणही तिच्याकडे दुर्लक्ष करावे! -% \section{नमुना मजकूर} -% मागे म्हटल्याप्रमाणे नमुना मजकूर तयार करण्यासाठी ह्या आज्ञासंचाचा वापर करता येतो, परंतु त्याकरिता लाटेक्-ला थोडी माहिती पुरवावी लागते. ही माहिती पुरवण्याचे विशिष्ट स्थान आहे. लाटेक्-मध्ये मूळ दस्तऐवज सुरू होण्यापूर्वी ही माहिती पुरविण्याकरिता \gls{आज्ञापीठ} असते. ह्या आज्ञासंचातर्फे पुरवल्या जाणाऱ्या नमुना मजकुराची माहिती पुढील आज्ञांनी पुरवली जाते. (तुमच्या दस्तऐवजात मराठी आज्ञासंचानंतर ती माहिती बदललीत तर आज्ञासंचातील माहिती आपोआप विसरली जाते.) letter ह्या लाटेक्-वर्गाकरिता लागणारी माहिती इतर वर्गांकरिता अप्रासंगिक असल्याने ती वेगळी पुरवली आहे. +% \subsection{नमुना मजकूर} +% \subsubsection{परिच्छेद} +% परिच्छेद ही आज्ञा दस्तऐवजात कुठेही वापरली तरी एक लहानसा परिच्छेद आपोआप छापला जातो. त्याकरिता एक साहाय्यक धारिका आज्ञासंचासोबत येते. ती आज्ञासंचात पुढील आज्ञांनी समाविष्ट करून घेतली आहे. % \begin{macrocode} -\title{नमुना} -\author{लेखक} -\@ifclassloaded{letter}{ - \name{लेखक} - \signature{सही} - \address{ - लेखकाचे नाव\\ - अबक मार्ग\\ - मुंबई\\ - पिन क्र. ४०००००} - \location{लेखकाचे स्थान} - \telephone{दूरध्वनी - ०२० २२९५ २१०८} -} +\providecommand{\परिच्छेद}{\input{para}} % \end{macrocode} -% निरनिराळ्या लाटेक्-वर्गांसाठी स्वतंत्र \gls{धारिका} पुढीलप्रमाणे पुरवल्या आहेत. -% \begin{macrocode} -\providecommand{\mrarticle}{\input{article}} -\providecommand{\mrbook}{\input{book}} -\providecommand{\mrreport}{\input{report}} -\providecommand{\mrbeamer}{\input{beamer}} -\providecommand{\mrletter}{\input{letter}} -% \end{macrocode} -% निवडलेल्या लाटेक्-वर्गांप्रमाणे धारिका निवडण्यासाठीच्या आज्ञा पुढीलप्रमाणे. +% \subsubsection{दस्तऐवज} +% मागे म्हटल्याप्रमाणे नमुना मजकूर तयार करण्यासाठी ह्या आज्ञासंचाचा वापर करता येतो, परंतु त्याकरिता लाटेक्-ला थोडी माहिती पुरवावी लागते. उदा. दस्तऐवजाचा/ची लेखक/लेखिका, दस्तऐवजाचं शीर्षक इत्यादी. ही माहिती पुरवण्याचे विशिष्ट स्थान आहे. लाटेक्-मध्ये मूळ दस्तऐवज सुरू होण्यापूर्वी ही माहिती पुरविण्याकरिता \gls{आज्ञापीठ} असते, तिथे ही माहिती पुरवली जाते, परंतु ह्यामुळे फलित-धारिकेच्या \gls{पायाभूत माहिती}त ती नावे दिसू लागतात. ह्यासाठी आज्ञासंचात ही माहिती पुरवली गेली नाही आहे, ह्याउलट सोबत जोडलेल्या वेगवेगळ्या दस्तऐवजांमध्ये ती माहिती पुरवली गेली आहे. त्या धारिका केवळ नमुना मजकूर पुरवण्यासाठी आहेत. निरनिराळ्या लाटेक्-वर्गांसाठी संबंधित धारिका निवडणे व दस्तऐवजात लिहिलेला लाटेक्-वर्ग कोणता आहे हे पाहून त्यानुसार नमुना मजकूर छापणे ह्यासाठीच्या आज्ञा पुढीलप्रमाणे. + % \begin{macrocode} \newcounter{क्र} \@ifclassloaded{article}{\setcounter{क्र}{1}}{} @@ -225,14 +244,14 @@ License: The LaTeX Project Public License v1.3c or later. \@ifclassloaded{beamer}{\setcounter{क्र}{4}}{} \@ifclassloaded{letter}{\setcounter{क्र}{5}}{} \providecommand{\नमुना}{ - \ifnum\value{क्र}=1\mrarticle\else - \ifnum\value{क्र}=2\mrbook\else - \ifnum\value{क्र}=3\mrreport\else - \ifnum\value{क्र}=4\mrbeamer\else - \mrletter\relax\fi\fi\fi\fi + \ifnum\value{क्र}=1\input{article}\else + \ifnum\value{क्र}=2\input{book}\else + \ifnum\value{क्र}=3\input{report}\else + \ifnum\value{क्र}=4\input{beamer}\else + \input{letter}\relax\fi\fi\fi\fi } % \end{macrocode} -% beamer लाटेक्-वर्ग वापरताना serif ही टंकछटा निवडावी लागते, त्याशिवाय देवनागरी लिपी दिसत नाही. त्या आज्ञा पुढीलप्रमाणे भरल्या आहेत. +% {\mukta beamer} लाटेक्-वर्ग वापरताना {\mukta serif} ही टंकछटा निवडावी लागते, त्याशिवाय देवनागरी लिपी दिसत नाही. त्या आज्ञा पुढीलप्रमाणे भरल्या आहेत. % \begin{macrocode} \@ifclassloaded{beamer}{% \usefonttheme{serif}} diff --git a/Master/texmf-dist/source/latex/marathi/marathi.ins b/Master/texmf-dist/source/latex/marathi/marathi.ins index 885841ad8b2..47d1fa862d1 100644 --- a/Master/texmf-dist/source/latex/marathi/marathi.ins +++ b/Master/texmf-dist/source/latex/marathi/marathi.ins @@ -9,7 +9,7 @@ ------------------------------------------------------------------------- आज्ञासंच: marathi लेखक: निरंजन -आवृत्ती: ०.१ (२३ मे, २०२०) +आवृत्ती: १.१ (२७ मे, २०२०) माहिती: लुआ-लाटेक् व झी-लाटेक् ह्यांच्यासह मराठीचा सुलभ वापर करण्यासाठी. दुवा: https://gitlab.com/niranjanvikastambe/marathi अडचणी: https://gitlab.com/niranjanvikastambe/marathi/-/issues @@ -32,7 +32,7 @@ marathi.sty ही धारिका समाविष्ट आहे. -------------------------------------------------------------------------- Package: marathi Author: Niranjan -Version: 1.0 (25 May, 2020) +Version: 1.1 (27 May, 2020) Description: For conveniently typesetting Marathi language with LuaLaTeX and XeLaTeX. Repository: https://gitlab.com/niranjanvikastambe/marathi Bug tracker: https://gitlab.com/niranjanvikastambe/marathi/-/issues diff --git a/Master/texmf-dist/tex/latex/marathi/marathi.sty b/Master/texmf-dist/tex/latex/marathi/marathi.sty index 87592343de6..78ec695e7c5 100644 --- a/Master/texmf-dist/tex/latex/marathi/marathi.sty +++ b/Master/texmf-dist/tex/latex/marathi/marathi.sty @@ -9,7 +9,7 @@ %% ------------------------------------------------------------------------- %% आज्ञासंच: marathi %% लेखक: निरंजन -%% आवृत्ती: ०.१ (२३ मे, २०२०) +%% आवृत्ती: १.१ (२७ मे, २०२०) %% माहिती: लुआ-लाटेक् व झी-लाटेक् ह्यांच्यासह मराठीचा सुलभ वापर करण्यासाठी. %% दुवा: https://gitlab.com/niranjanvikastambe/marathi %% अडचणी: https://gitlab.com/niranjanvikastambe/marathi/-/issues @@ -32,7 +32,7 @@ %% -------------------------------------------------------------------------- %% Package: marathi %% Author: Niranjan -%% Version: 1.0 (25 May, 2020) +%% Version: 1.1 (27 May, 2020) %% Description: For conveniently typesetting Marathi language with LuaLaTeX and XeLaTeX. %% Repository: https://gitlab.com/niranjanvikastambe/marathi %% Bug tracker: https://gitlab.com/niranjanvikastambe/marathi/-/issues @@ -40,24 +40,25 @@ %% --------------------------------------------------------------------------- %% \def\marathiPackageName{marathi} -\def\marathiPackageVersion{१.०} -\def\marathiPackageDate{२५ मे, २०२०} +\def\marathiPackageVersion{१.१} +\def\marathiPackageDate{२७ मे, २०२०} \def\marathiPackageDescription{लुआ-लाटेक् व झी-लाटेक् ह्यांच्यासह मराठीचा सुलभ वापर करण्यासाठी.} \ProvidesPackage{marathi} \NeedsTeXFormat{LaTeX2e} +\RequirePackage{setspace} +\RequirePackage{pgfkeys} - - -\newif\ifmarathi@अंतर -\marathi@अंतरfalse -\DeclareOption{अंतर}{\marathi@अंतरtrue} +\def\बदल#1{\pgfkeys{marathi/.cd,#1}} +\pgfkeys{ + marathi/.is family,marathi/.cd, + अंतर/.code={\setstretch{#1}\selectfont}, + अंतर=1.5, + अंतर/.default=1 +} +\DeclareOption*{\expandafter\बदल\expandafter{\CurrentOption}} \ProcessOptions -\ifmarathi@अंतर -\else -\renewcommand{\baselinestretch}{1.5} -\renewcommand{\arraystretch}{1.5} -\fi +\def\arraystretch{1.2} \@ifclassloaded{standalone}{\RequirePackage{fontspec}}{ \RequirePackage{polyglossia} \setdefaultlanguage{marathi} @@ -65,27 +66,11 @@ \RequirePackage{devanagaridigits} \def\@arabic#1{\expandafter\devanagaridigits\expandafter{\number#1}} \setmainfont[Renderer=Harfbuzz,Script=Devanagari,Mapping=devanagarinumerals]{Shobhika} -\newcommand{\टंक}[1] +\providecommand{\टंक}[1] {\setmainfont[Renderer=Harfbuzz,Script=Devanagari,Mapping=devanagarinumerals]{#1}} -\title{नमुना} -\author{लेखक} -\@ifclassloaded{letter}{ - \name{लेखक} - \signature{सही} - \address{ - लेखकाचे नाव\\ - अबक मार्ग\\ - मुंबई\\ - पिन क्र. ४०००००} - \location{लेखकाचे स्थान} - \telephone{दूरध्वनी - ०२० २२९५ २१०८} -} -\providecommand{\mrarticle}{\input{article}} -\providecommand{\mrbook}{\input{book}} -\providecommand{\mrreport}{\input{report}} -\providecommand{\mrbeamer}{\input{beamer}} -\providecommand{\mrletter}{\input{letter}} +\providecommand{\परिच्छेद}{\input{para}} + \newcounter{क्र} \@ifclassloaded{article}{\setcounter{क्र}{1}}{} \@ifclassloaded{book}{\setcounter{क्र}{2}}{} @@ -93,11 +78,11 @@ \@ifclassloaded{beamer}{\setcounter{क्र}{4}}{} \@ifclassloaded{letter}{\setcounter{क्र}{5}}{} \providecommand{\नमुना}{ - \ifnum\value{क्र}=1\mrarticle\else - \ifnum\value{क्र}=2\mrbook\else - \ifnum\value{क्र}=3\mrreport\else - \ifnum\value{क्र}=4\mrbeamer\else - \mrletter\relax\fi\fi\fi\fi + \ifnum\value{क्र}=1\input{article}\else + \ifnum\value{क्र}=2\input{book}\else + \ifnum\value{क्र}=3\input{report}\else + \ifnum\value{क्र}=4\input{beamer}\else + \input{letter}\relax\fi\fi\fi\fi } \@ifclassloaded{beamer}{% \usefonttheme{serif}} |