प्रकरण ६

अनेक आज्ञासंच वापरणे

\usepackage ह्या आज्ञेच्या कार्यघटकात स्वल्पविरामांनी वेगळे केलेले निरनिराळे आज्ञासंच समाविष्ट करता येतात, परंतु हे आज्ञासंच अशा प्रकारे वापरताना एक काळजी घ्यावी लागते की जर आज्ञासंचास प्राचल वापरायचे असेल, तर ते \usepackage आज्ञेच्या कार्यघटकातील प्रत्येक आज्ञासंचास लागू होते. त्यामुळे शक्यतो आज्ञासंच वेगळ्या आज्ञांसह वापरणे अधिक उचित ठरते.

बेबल आज्ञासंच

ह्या प्रकरणाच्या मुख्य सामग्रीत babel आज्ञासंचाचा उल्लेख आम्ही केला. संयोगचिन्हांचे नियम ठरवण्याव्यतिरिक्त इतर अनेक गोष्टी ह्या आज्ञासंचामार्फत होतात. उदा. जर्मन भाषा निवडली असता ह्या आज्ञासंचातर्फे काही आज्ञा पुरवल्या जातात, ज्यांसह ‘मृदू’ संयोगचिन्हांचा वापर करता येतो, तसेच जर्मन भाषेतील विशिष्ट स्वर लिहिण्यासाठी (जर्मन कळपाटाशिवाय) सोप्या सोयी उपलब्ध करून दिल्या जातात. अनुक्रमणिकेत सामान्यतः दिसणारे Table of Contents हे शीर्षक जर्मन भाषेतील Inhaltsverzeichnis ह्या नावाने बदलले गेले आहे.

\documentclass{article}
\usepackage[T1]{fontenc}

\usepackage[ngerman]{babel} % प्राचलाचे नाव ngerman आहे ह्याकडे विशेष लक्ष द्या.

\begin{document}

\tableofcontents

\section{"Uber "Apfel und Birnen}

\subsection{Äpfel}
Äpfel sind rot.

\subsection{Birnen}
Birnen sind gelb.


\end{document}

इतर भाषाविशिष्ट सुविधा ह्या दृश्यरूपात काही विशेष बदल करणाऱ्या आहेत. उदा. फ्रेंच अक्षरजुळणीच्या पारंपरिक पद्धतीनुसार : ह्या चिन्हापूर्वी एक मोकळी जागा सोडण्याची रीत आहे. बेबल आज्ञासह फ्रेंच हे प्राचल निवडल्यास ही सोय आपोआप पुरवली जाते.

व्यापक प्राचले

काही वेळा एखाद्या दस्तऐवजातील प्रत्येक आज्ञासंचास एखादे प्राचल पुरवण्याकरिता ते \documentclass ह्या आज्ञेच्या प्राचलात लिहिता येते. अशा रीतीने ते प्रत्येक आज्ञासंचास पुरवले जाते.

\documentclass[ngerman]{article} % प्राचलाचे नाव ngerman आहे ह्याकडे विशेष लक्ष द्या.
\usepackage[T1]{fontenc}

\usepackage{babel}

\begin{document}

\tableofcontents

\section{"Uber "Apfel und Birnen}

\subsection{Äpfel}
Äpfel sind rot.

\subsection{Birnen}
Birnen sind gelb.

\end{document}

व्याख्या

\newcommand ह्या आज्ञेसह नऊ कार्यघटक असलेल्या आज्ञा घडवता येऊ शकतात, ज्यांपैकी पहिला वैकल्पिक असू शकतो.

मुख्य प्रकरणातील उदाहरण घ्यायचे झाल्यास आपण तयार केलेल्या \kw ह्या आज्ञेतील फलिताला वैकल्पिक रंग आपण ठेवू शकतो व कोणताच रंग न दिल्यास निळा वापरला जाईल अशी व्यवस्था करू शकतो. त्याकरिता पुढील आज्ञावली पाहा.

\documentclass{article}
\usepackage[T1]{fontenc}

\usepackage{xcolor}

\newcommand\kw[2][blue]{\textcolor{#1}{\itshape #2}}

\begin{document}

Something about \kw{apples} and \kw[red]{oranges}.

\end{document}

वैकल्पिक कार्यघटक चौकटी कंसांसह [] लिहिले जातात. जर ते पुरवले गेेले नाहीत, तर त्या आज्ञेच्या व्याख्येमध्ये पुरवला गेलेला मूलभूत कार्यघटक वापरला जातो.

\NewDocumentCommand

ऑक्टोबर २०२०च्या लाटेक्-आवृत्तीनंतर एक अधिक प्रगत व्याख्या लिहिण्याची पद्धती लाटेक्-च्या मूळ आज्ञावलीसह उपलब्ध करण्यात आली आहे. ही आज्ञावली पूर्वी xparse आज्ञासंचासह पुरवली जात असे. हा आज्ञासंच आम्ही उदाहरणात जुनी आवृत्ती वापरणाऱ्यांच्या सोयीकरिता वापरला आहे.

आपण वरचेच उदाहरण \NewDocumentCommand ह्या आज्ञेसह वापरू.

\documentclass{article}
\usepackage[T1]{fontenc}

\usepackage{xparse} % २०२०पूर्वीच्या लाटेक्-आवृत्त्यांकरिता
\usepackage{xcolor}

\NewDocumentCommand\kw{O{blue} m}{\textcolor{#1}{\itshape #2}}

\begin{document}

Something about \kw{apples} and \kw[red]{oranges}.

\end{document}

\newcommandप्रमाणेच \NewDocumentCommand ही आज्ञादेखील व्याख्या करत असलेल्या आज्ञेच्या नावाचा कार्यघटक घेते (इथे \kw) व व्याख्येत #1 ते #9 ह्या संख्या कार्यघटक वापरण्याकरिता वापरले जातात, परंतु फरक कार्यघटक नोंदवण्याच्या पद्धतीत आहे.

\newcommand ह्या आज्ञेत कार्यघटकांची संख्या लिहिली जात असे व वैकल्पिक कार्यघटकांसाठी एक मूलभूत किंमत दिली जात असे. \NewDocumentCommand आज्ञेसह प्रत्येक कार्यघटक एका अक्षरासह नोंदवला जातो. (वरील उदाहरणात m) जर दोन कार्यघटकांची आज्ञा असेल तर तिच्यात [2] लिहिण्याऐवजी {mm} असे लिहिता येईल. हे थोडे पाल्हाळीक आहे असे वरपांगी वाटू शकते, परंतु ह्यामुळे निरनिराळ्या आज्ञा घडवण्याची क्षमता प्राप्त होते. इथे आपण सोपे उदाहरण पाहत आहोत जिथे पहिला कार्यघटक वैकल्पिक आहे, जो न दिल्यास blue ही किंमत आपोआप वापरली जाते. ह्यासाठी O{blue} असे कार्यघटकात लिहिले आहे व दुसरा कार्यघटक अनिवार्य आहे जे दाखवण्याकरिता आपण m हे अक्षर वापरले आहे.