% !TeX root=lshort.tex % !TEX TS-program=xelatex %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Contents: Typesetting Part of LaTeX2e Introduction % $Id: typeset.tex 169 2008-09-24 07:32:13Z oetiker $ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \chapter{ØروÙ‌چینی متن} \begin{intro} بعد از مطالعهٔ Ùصل پیش، چیزهای ابتدایی را می‌دانید Ú©Ù‡ لاتک با آنها سروکار دارد. در این Ùصل مطالب دیگری را خواهید آموخت Ú©Ù‡ برای تولید نوشته‌های واقعی Ù…Ùید هستند. \end{intro} \section{ساختار متن Ùˆ زبان} انتقال اطلاعات Ùˆ ایده‌ها به خواننده مهمترین نکتهٔ نوشتن یک متن است. اگر نوشتار به درستی ساختاربندی شده باشند خواننده به راØتی مطالب را می‌Ùهمد Ùˆ این مطلب موقعی اتÙاق می‌اÙتد Ú©Ù‡ ساختار ØروÙ‌چینی متن انعکاس دهنده ساختار Ù…Øتوای متن باشد. تÙاوت لاتک با دیگر سیستم‌های ØروÙ‌چینی در این است Ú©Ù‡ تنها باید ساختار منطقی Ùˆ زیبایی نوشتار را به لاتک معرÙÛŒ کرد. آنگاه لاتک با استÙاده از قوانینی Ú©Ù‡ در متن Ùˆ در Ùایل‌های الصاقی ارائه شده است ØروÙ‌چینی نوشتار را انجام می‌دهد. مهمرین واØد در لاتک (Ùˆ در ØروÙ‌چینی) پاراگرا٠\index{بیی@پاراگراÙ}\romanindex{paragraph} است. ما به آن \emp{واØد متن} می‌گوییم زیرا پاراگرا٠قسمت به‌هم‌ چسبیده‌ای است Ú©Ù‡ یک ایده را بازگو می‌کند. در این بخش یاد می‌گیریم Ú©Ù‡ چگونه خط را با Ùرمان \texttt{\bs\bs}ØŒ Ùˆ پاراگراÙ‌ را با خالی گذاشتن یک خط بشکنیم. بنابراین اگر مطلب جدیدی قرار است Ú©Ù‡ شروع شود باید پاراگرا٠جدید نیز شروع شود. اگر در مورد شکستن پاراگرا٠مطمئن نیستید، نوشتار را به عنوان Øامل ایده‌ها درنظر بگیرید. اگر در نقطه‌ای شکست پاراگرا٠دارید ولی ایدۀ قبلی هنوز ادامه دارد، شکست را باید از بین ببرید. اگر ایدۀ کاملاً جدیدی در یک خط وارد شده است، آنگاه باید یک شکست پاراگرا٠داشته باشید. بعضی از اÙراد به Ú©Ù„ÛŒ اهمیت دانستن Ù…ØÙ„ دقیق شکستن پاراگراÙ‌ها را نمی‌دانند. خیلی از اÙراد Øتی Ù…Ùهوم شکستن یک پاراگرا٠را نمی‌دانند، یا، به خصوص در لاتک، پاراگراÙ‌های جدید ایجاد می‌کنند بدون این Ú©Ù‡ بدانند چنین کاری کرده‌اند. این اشتباه به خصوص اگر در متن Ùرمول وجود داشته باشد، بیشتر اتÙاق می‌اÙتد. به مثال‌های زیر توجه کنید Ùˆ سعی کنید دریابید Ú©Ù‡ چرا گاهی اوقات خط خالی (شکست پاراگراÙ) قبل یا بعد از یک Ùرمول قرار می‌گیرد Ùˆ گاهی اوقات قرار نمی‌گیرد. (اگر هنوز همهٔ Ùرمان‌های این مثال‌ها را متوجه نمی‌شوید، این Ùصل Ùˆ Ùصل بعد را مطالعه کنید Ùˆ دوباره این بخش را مرور کنید.) \begin{code} \begin{verbatim} % Example 1 \ldots when Einstein introduced his formula \begin{equation} e = m \cdot c^2 \; , \end{equation} which is at the same time the most widely known and the least well understood physical formula. % Example 2 \ldots from which follows Kirchhoff's current law: \begin{equation} \sum_{k=1}^{n} I_k = 0 \; . \end{equation} Kirchhoff's voltage law can be derived \ldots % Example 3 \ldots which has several advantages. \begin{equation} I_D = I_F - I_R \end{equation} is the core of a very different transistor model. \ldots \end{verbatim} \end{code} جملات، واØدهای کوچک‌تر متن هستند. در جملات انگلیسی Ùاصلهٔ بعد از یک نقطه پایان خط بیشتر از Ùاصلهٔ بعد از نقطه‌ای است Ú©Ù‡ یک کلمه مخÙ٠را تمام می‌کند. لاتک سعی می‌کند بÙهمد کدام یک از این دو مورد نظر است. اگر لاتک اشتباه کرد، باید به او بگویید کدام یک مورد نظر است. روش این‌کار را در ادامهٔ این Ùصل خواهید دید. ساختار متن Øتی به داخل جملات نیز رسوخ می‌کند. بسیاری از زبان‌ها دارای آیین نگارش پیچیده‌ای هستند، اما در بسیاری از زبان‌ها (مثلاً آلمانی Ùˆ انگلیسی\footnote{مترجم: Ùˆ صد البته Ùارسی})ØŒ ویرگول را می‌توان با به خاطر سپردن یک اصل ساده در Ù…ØÙ„ درست قرار دهید: در Ù…Øل‌هایی Ú©Ù‡ متن دارای توق٠کوچک است. اگر مطمئن نیستید در کجا ویرگول قرار دهید، جمله را با صدای بلند بخوانید Ùˆ در هر نقطه‌ای Ú©Ù‡ یک ویرگول دارید یک Ù†Ùس کوتاه بگیرید. اگر از این کار اØساس خوبی نداشتید آن ویرگول را Øذ٠کنید؛ اگر در نقطه‌ای اØساس نیاز به یک Ù†Ùس تازه (یا یک توق٠کوتاه) داشتید، در آن نقطه یک ویرگول وارد کنید. دست آخر این Ú©Ù‡ پاراگراÙ‌ها را باید به‌طور منطقی در Ùصل‌ها، بخش‌ها، زیربخش‌ها، Ùˆ غیره قرار دهید. با این وجود، تأثیر ØروÙ‌چینی به صورت \begin{code} \verb|\section{The| \texttt{Structure of Text and Language}\verb|}| \end{code} آنقدر ÙˆØ§Ø¶Ø Ø§Ø³Øª Ú©Ù‡ تقریباً مشخص می‌کند این ساختاربندی چگونه انجام می‌شود. \section{شکستن خط Ùˆ صÙØÙ‡} \subsection{ترازش پاراگراÙ‌ها} کتاب‌ها معمولاً به این صورت ØروÙ‌چینی می‌شوند Ú©Ù‡ تمام خط‌ها دارای طول یکسان هستند. لاتک خط‌ها را به صورت مناسب می‌شکند \index{شکستن خط} Ùˆ Ùاصلهٔ مناسب بین کلمات را رعایت می‌کند تا Ù…Øتوای پاراگراÙ‌ها را بهینه کند. اگر لازم باشد Øتی کلمات را در انتهای خط‌ها می‌شکند. این‌که پاراگراÙ‌ها چگونه ØروÙ‌چینی می‌شوند بستگی به طبقهٔ نوشتار دارد. به طور نرمال اولین خط یک پاراگرا٠دارای تورÙتگی است، Ùˆ Ùاصلهٔ ویژه‌ای بین پاراگراÙ‌ها وجود ندارد. برای اطلاعات بیشتر به بخش \ref{parsp} %\LR{\hyperref[parsp]{2.3.6}} مراجعه کنید. در Øالات ویژه ممکن است لازم باشد Ú©Ù‡ لاتک را مجبور به شکستن یک خط کنیم. Ùرمان \begin{lscommand} \ci{\bs} \rl{یا} \ci{newline} \end{lscommand} \noindent یک خط جدید بدون شکستن پاراگرا٠شروع می‌کند. Ùرمان \begin{lscommand} \ci{\bs*} \end{lscommand} \noindent بعلاوه از ایجاد یک شکست صÙØÙ‡ بعد از شکست خط جلوگیری می‌کند. Ùرمان \begin{lscommand} \ci{newpage} \end{lscommand} \noindent یک صÙØÙ‡Ù” جدید را آغاز می‌کند. Ùرمان‌های \begin{lscommand} \ci{linebreak}\verb|[|\emph{n}\verb|]|, \ci{nolinebreak}\verb|[|\emph{n}\verb|]|, \ci{pagebreak}\verb|[|\emph{n}\verb|]|, \ci{nopagebreak}\verb|[|\emph{n}\verb|]| \end{lscommand} \noindent جاهایی را پیشنهاد می‌کنند Ú©Ù‡ یک شکست باید یا نباید انجام شود. این Ùرمان‌ها به نویسنده امکان تغییر پارامتر \emph{n} را می‌دهند، Ú©Ù‡ می‌تواند عددی بین صÙر تا چهار باشد. با انتخاب \emph{n} کمتر از چهار به لاتک اجازه می‌دهید Ùرمان شما را در صورت خیلی بد بودن نتیجه اثر ندهد. این Ùرمان‌های \lr{``break''} را با Ùرمان‌های \lr{``new''} اشتباه نگیرید. Øتی موقعی Ú©Ù‡ از Ùرمان \lr{``break''} استÙاده می‌کنید، لاتک سعی می‌کند طول خط Ùˆ طول صÙØÙ‡ را گسترش دهد Ú©Ù‡ این مطلب در بخش بعد ØªÙˆØ¶ÛŒØ Ø¯Ø§Ø¯Ù‡ شده است. این کار ممکن است Ùاصله‌های نامطلوب در نوشتار شما ایجاد کند. اگر واقعاً می‌خواهید یک خط جدید یا صÙØÙ‡Ù” جدید را شروع کنید آنگاه از Ùرمان مربوط به این کارها استÙاده کنید. نام این Ùرمان‌ها را Øدس بزنید! لاتک همواره سعی می‌کند بهترین شکست‌ خط‌های ممکن را ایجاد کند. اگر لاتک نتواند خط‌ها را طبق استانداردهای پیشرÙته بشکند، این اجازه را به خط می‌دهد Ú©Ù‡ از سمت راست به بیرون پاراگرا٠کشیده شود. در این Øالت لاتک هشدار \lr{``\wi{\lr{overfull hbox}}''} را در زمان پردازش می‌دهد. این اتÙاق وقتی رخ می‌دهد Ú©Ù‡ لاتک مکان مناسبی برای شکستن کلمات در انتهای خط پیدا نکند.% \footnote{با وجود این Ú©Ù‡ لاتک هشداری در مورد وقوع \lr{overfull hbox} می‌دهد، معمولاً آسان نیست Ú©Ù‡ خط مورد نظر را پیدا کنیم. اگر از گزینه \texttt{draft} در \ci{documentclass} استÙاده کنید، در Øاشیهٔ سمت راست این خط‌ها یک نشان پهن سیاه‌ ایجاد می‌شود.} می‌توانید استاندارد‌های لاتک را با Ùرمان \ci{sloppy} Ú©Ù…ÛŒ پایین بیاورید. این Ùرمان باعث ایجاد Ùاصله‌های بین کلمه‌ای طولانی می‌شود Øتی اگر خروجی بهینه نباشد. در این Øالت لاتک هشدار \lr{``\wi{\lr{underfull hbox}}''} را به کاربر می‌دهد. در اغلب اوقات نتیجه این کار خیلی جالب نیست. Ùرمان \ci{fussy} استاندارد‌های لاتک را به Øالت پیش‌Ùرض برمی‌گرداند. \subsection{شکستن کلمات} \label{hyph} لاتک کلمات را در صورت لزوم می‌شکند. اگر الگوریتم شکستن کلمات نتواند مکان دقیقی برای شکستن کلمه پیدا کند، می‌توانید لاتک را در این راه یاری کنید. Ùرمان \begin{lscommand} \ci{hyphenation}\verb|{|\emph{word list}\verb|}| \end{lscommand} \noindent باعث می‌شود کلماتی Ú©Ù‡ در لیست آمده است تنها در نقاط با علامت \lr{``-''} شکسته شود. آرگومان Ùرمان تنها باید شامل کلماتی باشد Ú©Ù‡ از Øرو٠علامت‌های عادی تشکیل شده باشد. راهنمایی شکستن کلمات برای یک زبان ویژه در ØاÙظه باقی می‌ماند تا آن زبان Ùعال شود. این بدان معنی است Ú©Ù‡ اگر Ùرمان شکستن را در سرآغاز نوشتار وارد کنید تنها زبان انگلیسی را مورد نظر قرار می‌دهد. اگر Ùرمان شکستن را بعد از \verb|\begin{document}| قرار دهید Ùˆ از بسته‌ای مانند \pai{babel} استÙاده کنید، آنگاه راهنمایی‌های شکستن کلمات برای زبانی Ú©Ù‡ توسط \pai{babel} انتخاب شده است Ùعال می‌شود. مثال زیر به \lr{``hyphenation''} اجازه می‌دهد تا همانند \lr{``Hyphenation''} شکسته شود، Ùˆ مانع از شکسته‌ شدن \lr{``FORTRAN''}ØŒ \lr{``Fortran''} Ùˆ \lr{``fortran''} می‌شود. هیچ Øر٠یا نماد ویژه‌ای را نمی‌توان در آرگومان Ùرمان شکستن قرار داد. مثال: \begin{code} \verb|\hyphenation{FORTRAN Hy-phen-a-tion}| \end{code} Ùرمان \ci{-} یک پیشنهاد برای شکستن کلمه را ایجاد می‌کند. این نقطه تنها نقطه‌ای می‌شود Ú©Ù‡ کلمه مجاز است در آنجا شکسته شود. این Ùرمان به ویژه برای کلماتی Ú©Ù‡ دارای Øر٠ویژه‌ای هستند Ù…Ùید است (مانند Øرو٠لهجه‌ها)ØŒ زیرا لاتک این‌ کلمات را نمی‌تواند به‌طور خودکار بشکند. \begin{example} I think this is: su\-per\-cal\-% i\-frag\-i\-lis\-tic\-ex\-pi\-% al\-i\-do\-cious \end{example} چند کلمه را می‌توان در یک خط با Ùرمان زیر نگهداشت: \begin{lscommand} \ci{mbox}\verb|{|\emph{text}\verb|}| \end{lscommand} \noindent این Ùرمان باعث می‌شود آرگومان‌هایش تØت هر شرایطی در کنار هم قرار بگیرند. \begin{example} My phone number will change soon. It will be \mbox{0116 291 2319}. The parameter \mbox{\emph{filename}} should contain the name of the file. \end{example} \ci{fbox} مشابه \ci{mbox} است، با این تÙاوت Ú©Ù‡ کادری دور متن قرار می‌گیرد. \section{رشته‌های تعری٠شده} در بعضی از مثال‌های صÙØÙ‡Ù” قبل، یک Ùرمان خیلی ساده برای ØروÙ‌چینی رشته‌های ویژه را دیدید: \vspace{2ex} \noindent \begin{center} \begin{tabular}{rlll@{}} توضیØ&مثال&Ùرمان\\ \hline زمان جاری & \lr{\latintoday} & \ci{today}\\ ØروÙ‌چین مورد علاقهٔ شما & \lr{\TeX} &\ci{TeX}\\ عنوان بازی & \lr{\LaTeX} &\ci{LaTeX}\\ Ø´Ú©Ù„ کنونی& \lr{\LaTeXe} &\ci{LaTeXe} \\ \end{tabular} \end{center} \section{Øرو٠و نمادهای ویژه} \subsection{علامت نقل قول} برای \wi{نقل‌‌ قول} {\it نباید} مانند ماشین تایپ از \verb|"| استÙاده کنید %\romanindex{""@\texttt{""}} . برای انتشار از علامت دیگری برای این‌کار استÙاده می‌شود. در لاتک، از دو علامت \lr{\textasciigrave}\Footnote{grave accent} برای شروع نقل‌ قول Ùˆ از دو علامت \lr{\textquotesingle}\Footnote{vertical quote} برای پایان نقل‌ قول استÙاده می‌شود. برای نقل‌ قول منÙرد از یکی از این علامت‌ها استÙاده می‌کنیم. \begin{example} ``Please press the `x' key.'' \end{example} می‌دانم Ú©Ù‡ روش مناسبی نیست Ú©Ù‡ از \lr{\textasciigrave} برای شروع نقل قول Ùˆ از \lr{\textquotesingle} برای اتمام آن استÙاده کرد. \subsection{Ùاصلهٔ کلمات Ùˆ شکستن} لاتک چهار نوع Ùاصلهٔ بین کلمات را می‌شناسد. \romanindex{dash} سه تا از این Ùاصله‌ها را می‌توان با نوشتن چند دَش (خط تیره) پشت سر هم تولید کرد. علامت چهارم دش نیست Ùˆ در Øقیقت همان علامت منهای ریاضی است: \romanindex{-} \romanindex{--} \romanindex{---} \lr{\index{-@$-$}} \index{\lr{mathematical}!\lr{minus}} \begin{example} daughter-in-law, X-rated\\ pages 13--67\\ yes---or no? \\ $0$, $1$ and $-1$ \end{example} نام این دش‌ها این است: \lr{`-' \wi{\lr{hyphen}}}ØŒ \lr{`--' \wi{\lr{en-dash}}}ØŒ \lr{`---' \wi{\lr{em-dash}}} Ùˆ \lr{`$-$' \wi{\lr{minus sign}}}. \subsection{\texorpdfstring{تیلدا ($\sim$)}{تیلدا}} \romanindex{www}\romanindex{URL}\romanindex{tilde} کاراکتری Ú©Ù‡ معمولاً در صÙØات وب ظاهر می‌شود علامت تیلدا است. برای تولید این کاراکتر در لاتک می‌توانید از \verb|\~| Ú©Ù…Ú© بگیرد ولی Øاصل آن \~{} است Ú©Ù‡ دقیقاً آن چیزی نیست Ú©Ù‡ می‌خواهید. به جای آن از روش زیر استÙاده کنید: \begin{example} http://www.rich.edu/\~{}bush \\ http://www.clever.edu/$\sim$demo \end{example} \subsection{\texorpdfstring{اسلش (/)}{اسلش}} \index{اسلش} برای نمایش اسلش بین دو واژه، می‌توان به‌سادگی نوشت، برای نمونه \texttt{read/write}ØŒ ولی این کار باعث می‌شود لاتک هر دو واژه را چسبیده نمایش دهد. شکست واژه‌ها برای این دو واژه ناپویا می‌شود Ùˆ ممکن است خطای «سرریز» دریاÙت کنید. برای رÙع این مشکل \ci{slash} را بکار ببرید. برای نمونه بنویسید `\LR{\verb|read\slash write|}' Ú©Ù‡ شکست کلمه‌ها را ممکن می‌کند. ولی `\texttt{/}' نرمال هنوز می‌تواند برای کسر Ùˆ واØدها بکار رود، ب.Ù†.\ \texttt{5 MB/s}. \subsection{\texorpdfstring{علامت درجه ($\circ$)}{علامت درجه}} مثال زیر نشان می‌دهد چگونه می‌توان \wi{علامت درجه} \romanindex{degree symbol} را در لاتک نوشت: \begin{example} It's $-30\,^{\circ}\mathrm{C}$. I will soon start to super-conduct. \end{example} بستهٔ \pai{textcomp} علامت درجه را با Ùرمان \ci{textcelsius} نیز قابل دسترسی می‌کند. \subsection{\texorpdfstring{نماد واØد پول اروپا (\lr{\texteuro})}{نماد واØد پول اروپا}} این روزها نماد واØد پول اروپا بسیار به‌کار می‌رود. بیشتر قلم‌‌های کنونی دارای کاراکتر ویژه برای این نماد هستند. بعد از Ùراخوانی بستهٔ \pai{textcomp} در سرآغاز نوشتار \begin{lscommand} \ci{usepackage}\verb|{textcomp}| \end{lscommand} از Ùرمان \begin{lscommand} \ci{texteuro} \end{lscommand} برای نمایش این کاراکتر می‌توانید استÙاده کنید. اگر قلم شما این نماد را ندارد یا از Ø´Ú©Ù„ آن خوشتان نمی‌آید، کارهای دیگری می‌توانید انجام دهید. ابتدا این Ú©Ù‡ بستهٔ \pai{eurosym} نماد رسمی واØد پول اروپا را Ùراهم می‌کند: \begin{lscommand} \ci{usepackage}\verb|[|\lr{official}\verb|]{eurosym}| \end{lscommand} اگر نمادی را می‌پسندید Ú©Ù‡ با قلم شما هم‌خوانی داشته باشد، از گزینهٔ \lr{\texttt{gen}} به جـــــــای \lr{\texttt{official}} استÙاده کنید. %If the Adobe Eurofonts are installed on your system (they are available for %free from \url{ftp://ftp.adobe.com/pub/adobe/type/win/all}) you can use %either the package \pai{europs} and the command \ci{EUR} (for a Euro symbol %that matches the current font). % does not work % or the package % \pai{eurosans} and the command \ci{euro} (for the ``official Euro''). %The \pai{marvosym} package also provides many different symbols, including a %Euro, under the name \ci{EURtm}. Its disadvantage is that it does not provide %slanted and bold variants of the Euro symbol. \begin{table}[!htbp] \caption{کیسه‌ای پر از نماد اروپا} \label{eurosymb} \setLR \begin{lined}{10cm} \begin{tabular}{llccc} LM+textcomp &\verb+\texteuro+ & \huge\texteuro &\huge\sffamily\texteuro &\huge\ttfamily\texteuro\\ eurosym &\verb+\euro+ & \huge\officialeuro &\huge\sffamily\officialeuro &\huge\ttfamily\officialeuro\\ $[$gen$]$eurosym &\verb+\euro+ & \huge\geneuro &\huge\sffamily\geneuro &\huge\ttfamily\geneuro\\ %europs &\verb+\EUR + & \huge\EURtm &\huge\EURhv % &\huge\EURcr\\ %eurosans &\verb+\euro+ & \huge\EUROSANS &\huge\sffamily\EUROSANS % & \huge\ttfamily\EUROSANS \\ %marvosym &\verb+\EURtm+ & \huge\mvchr101 &\huge\mvchr101 % &\huge\mvchr101 \end{tabular} \medskip \end{lined} \setRL \end{table} \subsection{\texorpdfstring{سه نقطه ($\ldots$)}{سه‌نقطه}} بر روی ماشین تایپ، یک ویرگول یا یک Ùاصله دارای همان طول یک Øر٠هستند. در یک کتاب این کاراکترها تنها Ùضای Ú©ÙˆÚ†Ú©ÛŒ را اشغال می‌کنند. بنابراین سه نقطه را نمی‌توان تنها با نوشتن سه نقطه نشان داد. برای این منظور Ùرمان ویژه‌ای وجود دارد: \begin{lscommand} \ci{ldots} \end{lscommand} \lr{\index{...@\ldots}} \begin{example} Not like this ... but like this:\\ New York, Tokyo, Budapest, \ldots \end{example} \subsection{چسبیدگی ØروÙ}\index{\lr{ligature}}\index{جیی@چسبیدگی} بعضی از کلمات تنها با قراردادن متوالی چند Øر٠بدست نمی‌آیند بلکه باید نمادهای ویژه‌ای برای نمایش آنها به کار برد. \begin{code} {\large \lr{ff fi fl ffi}\ldots}\quad \rl{به جای}\quad {\large \lr{f\mbox{}f f\mbox{}i f\mbox{}l f\mbox{}f\mbox{}i} \ldots} \end{code} چسبیدگی Øرو٠را می‌توان با قراردادن یک \LRE{\ci{mbox}\verb|{}|} بین دو Øر٠مورد نظر از بین برد. این کار به عنوان مثال برای کلمه‌هایی لازم است Ú©Ù‡ از ترکیب دو کلمه بدست می‌آیند. \begin{example} \Large Not shelfful\\ but shelf\mbox{}ful \end{example} \subsection{لهجه‌ها Ùˆ Øرو٠ویژه} لاتک استÙاده از لهجه‌ها Ùˆ Øرو٠ویژه را به شکل‌های مختل٠پشتیبانی می‌کند. جدول \ref{accents} %\LR{\hyperref[accents]{2.3}} تمام لهجه‌های مختل٠را نشان می‌دهد Ú©Ù‡ بر Øر٠\lr{o} قرار می‌گیرند. این کار برای Øرو٠دیگر هم قابل انجام است. برای قراردادن یک لهجه بر روی ØرÙÛŒ مانند \lr{i} یا \lr{j} ابتدا باید نقطهٔ روی آن را Øذ٠کرد. برای انجام این کار از \verb|\i| Ùˆ \verb|\j| استÙاده کنید. \begin{example} H\^otel, na\"\i ve, \'el\`eve,\\ sm\o rrebr\o d, !`Se\~norita!,\\ Sch\"onbrunner Schlo\ss{} Stra\ss e \end{example} \begin{table}[!hbp] \caption{لهجه‌ها Ùˆ Øرو٠ویژه} \label{accents} \begin{latin} \begin{lined}{10cm} \begin{tabular}{*4{cl}} \A{\`o} & \A{\'o} & \A{\^o} & \A{\~o} \\ \A{\=o} & \A{\.o} & \A{\"o} & \BB{\c}{c}\\[6pt] \BB{\u}{o} & \BB{\v}{o} & \BB{\H}{o} & \BB{\c}{o} \\ \BB{\d}{o} & \BB{\b}{o} & \BB{\t}{oo} \\[6pt] \A{\oe} & \A{\OE} & \A{\ae} & \A{\AE} \\ \A{\aa} & \A{\AA} \\[6pt] \A{\o} & \A{\O} & \A{\l} & \A{\L} \\ \A{\i} & \A{\j} & !` & \verb|!`| & ?` & \verb|?`| \end{tabular} \index{\lr{dotless \i{} and \j}}\index{\lr{Scandinavian letters}} \index{ae@\lr{\ae}}\index{\lr{umlaut}}\index{\lr{grave}}\index{\lr{acute}} \index{oe@\lr{\oe}}\index{aa@\lr{\aa}} \bigskip \end{lined} \end{latin} \end{table} \section{پشتیبانی زبان‌های دیگر} \index{زبان‌های دیگر} \subsection{گزینهٔ یونیکد} %\secby{Axel Kielhorn}{A.Kielhorn@web.de} اگر می‌خواهید نوشتاری از چندین زبان بنویسید، یونیکد راه آن است، به ویژه اگر این زبان‌ها از خط لاتین استÙاده نکنند. دو موتور تک هستند Ú©Ù‡ توانایی پردازش ورودی‌های یونیکد را دارند: \begin{description} \item[زیلاتک] برای سیستم Ù…Ú© گسترش یاÙت اما اکنون برای همهٔ سیستم‌ها در دسترس است. نخستین بار در تکلایو Û²Û°Û°Û· ارائه شد. \item[لواتک] نسخهٔ آیندهٔ پی‌دی‌اÙ‌تک است. نخستین بار در تکلایو Û²Û°Û°Û¸ ارائه شد. \end{description} نوشتهٔ زیر زیلاتک ارائه شده در تکلایو Û²Û°Û±Û° را ØªÙˆØ¶ÛŒØ Ù…ÛŒâ€ŒØ¯Ù‡Ø¯. \subsubsection{زبان‌ها راست به Ú†Ù¾} بستهٔ \pai{xepersian}\index{xepersia} از زبان پارسی پشتیبانی می‌کند. این بسته دستورهای Ùارسی لاتک را Ùراهم می‌کند Ú©Ù‡ به این ترتیب می‌توانید دستورهایی مانند \verb|\section| را به پارسی بکار ببرید، Ú©Ù‡ این ویژگی برای پارسی زبانان جذاب است. \pai{xepersian} تنها بسته‌ای است Ú©Ù‡ از کشیدگی ØرÙ‌ها پشتیبانی می‌کند. بستهٔ همانندی برای زبان سریانی در Øال گسترش است. قلم نستعلیق، Ú©Ù‡ توسط شورای عالی اطلاع رسانی درست شده است، از تارنمای آنها دردسترس است \lr{\url{http://www.scict.ir/Portal/Home/Default.aspx}. } \section{Ùاصله بین کلمات} برای این Ú©Ù‡ در خروجی، Øاشیه سمت راست به صورت منظم ظاهر شود، لاتک Ùاصله مناسب بین کلمات ایجاد می‌کند تا خط را پر کنند. همچنین لاتک Ùاصلهٔ بیشتری را در انتهای یک خط قرار می‌دهد، زیرا این کار باعث خوانایی بهتر متن می‌شود. لاتک Ùرض می‌کند انتهای یک جمله نقطه، علامت سؤال یا تعجب است. اگر یک نقطه بعد از یک Øر٠بزرگ ظاهر شود، لاتک این نقطه را پایان یک خط نمی‌داند، زیرا معمولاً بعد از اسامی ویژه Ú©Ù‡ با Øرو٠بزرگ نوشته می‌شوند یک نقطه قرار می‌گیرد. هر Ùرض دیگری به غیر از اینها را نویسنده باید به لاتک اطلاع دهد. یک بک‌اسلش در جلوی یک Ùاصله، Ùاصله‌ای را تولید می‌کند Ú©Ù‡ نمی‌تواند گسترش یابد. Øر٠تیلدا Ùاصله‌ای را تولید می‌کند Ú©Ù‡ نمی‌تواند گسترش یابد Ùˆ به‌علاوه از شکستن خط جلوگیری می‌کند. Ùرمان \verb|@| در جلوی یک نقطه بیان می‌کند Ú©Ù‡ این نقطه انتهای یک خط است، Øتی اگر این نقطه بعد از یک Øر٠بزرگ ظاهر شده باشد. \cih{"@} %\romanindex{~@ \verb.~.} \romanindex{tilde@tilde ( \verb.~.)} \romanindex{., space after} \begin{example} Mr.~Smith was happy to see her\\ cf.~Fig.~5\\ I like BASIC\@. What about you? \end{example} Ùاصلهٔ اضاÙÛŒ بعد از نقطه را می‌توان با Ùرمان زیر غیر Ùعال کرد \begin{lscommand} \ci{frenchspacing} \end{lscommand} \noindent Ú©Ù‡ به لاتک می‌گوید بعد از نقطه Ùاصله‌ای بیشتر از Ùاصلهٔ بین کلمات قرار ندهد. این کار در اکثر زبان‌ها معمول است، به جز در هنگام نوشتن کتاب‌نامه. اگر از Ùرمان \ci{frenchspacin} استÙاده کنید، Ùراخوانی Ùرمان \verb|\@| لازم نیست. \section{عنوان، Ùصل، Ùˆ بخش} برای این Ú©Ù‡ خواننده را به هنگام خواندن کار شما راهنمایی کنید، باید نوشتار خود را به Ùصل‌ها، بخش‌ها، Ùˆ زیربخش‌ها تقسیم کنید. لاتک این کار را با اختصاص Ùرمان‌های ویژه‌ای امکان‌پذیر می‌کند Ú©Ù‡ عنوان هر بخش را به عنوان آرگومان می‌پذیرند. این وظیÙÙ‡Ù” شماست Ú©Ù‡ ترتیب آنها را درست بیان کنید. Ùرمان‌های زیر در طبقهٔ \lr{\texttt{article}} موجودند: \nopagebreak \begin{lscommand} \ci{section}\verb|{...}|\\ \ci{subsection}\verb|{...}|\\ \ci{subsubsection}\verb|{...}|\\ \ci{paragraph}\verb|{...}|\\ \ci{subparagraph}\verb|{...}| \end{lscommand} اگر می‌خواهید نوشتارتان را به قسمت‌هایی تقسیم کنید Ú©Ù‡ شماره‌گذاری بخش‌ها Ùˆ Ùصل‌ها را تغییر ندهد از Ùرمان \begin{lscommand} \ci{part}\verb|{...}| \end{lscommand} \noindent استÙاده کنید. وقتی Ú©Ù‡ از طبقه‌های \lr{\texttt{report}} Ùˆ \lr{\texttt{book}} استÙاده می‌کنید، Ùرمان \begin{lscommand} \ci{chapter}\verb|{...}| \end{lscommand} \noindent هم قابل استÙاده است Ú©Ù‡ هر Ùصل در برگیرندهٔ چندین بخش می‌تواند باشد. از آنجا Ú©Ù‡ طبقهٔ \lr{\texttt{article}} Ùرمان \lr{\texttt{chapter}} را نمی‌شناسد، قرار دادن یک مقاله به عنوان یک Ùصل از یک کتاب بسیار آسان است. Ùاصلهٔ بین بخش‌ها، Ùˆ شماره‌گذاری‌ آنها Ùˆ همچنین اندازهٔ قلم عنوان‌ها به طور خودکار توسط لاتک تعیین می‌شود. دو Ùرمان از این دسته Ùرمان‌ها دارای ویژگی‌هایی هستند Ú©Ù‡ در زیر به آنها اشاره شده است: \begin{itemize} \item Ùرمان \ci{part} شماره‌گذاری مسلسل Ùصل‌ها را تغییر نمی‌دهد. \item Ùرمان \ci{appendix} هیچ آرگومانی را نمی‌پذیرد. این Ùرمان تنها شماره‌گذاری Ùصل‌ها را به صورت ØرÙÛŒ تغییر می‌دهد.% \footnote{در طبقهٔ مقاله، این Ùرمان شماره‌گذاری بخش‌ها را ØرÙÛŒ می‌کند.} \end{itemize} لاتک Ùهرست مطالب را با قراردادن عنوان بخش‌ها Ùˆ صÙØÙ‡Ù” مربوط به آنها Ú©Ù‡ از آخرین پردازش بدست آمده است تولید می‌کند. Ùرمان \begin{lscommand} \ci{tableofcontents} \end{lscommand} \noindent هر جا Ú©Ù‡ ظاهر شود باعث نمایش Ùهرست مطالب در همان نقطه می‌شود. یک نوشتار جدید باید دوبار پردازش شود تا \ci{tableofcontents} به صورت درست درج گردد. گاهی اوقات لازم است Ùایل را سه‌بار پردازش کنید، لاتک در این مورد به شما پیغام مناسب را می‌دهد. تمام Ùرمان‌های بخش‌بندی Ú©Ù‡ در بالا ذکر شد دارای Øالت ستاره‌دار نیز می‌باشند. Øالت ستاره‌دار این Ùرمان‌ها به راØتی با اÙزودن یک علامت \verb|*| به انتهای نام Ùرمان درست می‌شود. این Ùرمان‌ها باعث تولید بخش مربوطه می‌شوند با این تÙاوت Ú©Ù‡ شماره‌دار نیستند Ùˆ در Ùهرست مطالب ظاهر نمی‌شوند. برای این کار، به عنوان مثال به جای Ùرمان \verb|\section{Help}| باید از Ùرمان \verb|\section*{Help}| استÙاده کنید. عنوان بخش‌ها به طور نرمال در Ùهرست مطالب ظاهر می‌شوند. گاهی اوقات این کار امکان‌\-پذیر نیست زیرا عنوان بخش طولانی است Ùˆ در یک خط جا نمی‌شود. در این صورت می‌توان عنوانی را Ú©Ù‡ در Ùهرست مطالب ظاهر می‌شود با یک گزینهٔ انتخابی در جلوی عنوان واقعی تعیین کرد. \begin{code} \verb|\chapter[Title for the table of contents]{A long|\\ \verb| and especially boring title, shown in the text}| \end{code} عنوان Ú©Ù„ÛŒ نوشتار با Ùرمان \begin{lscommand} \ci{maketitle} \end{lscommand} \noindent چاپ می‌شود. Ù…Øتویات عنوان نوشتار را می‌توان با Ùرمان‌های زیر قبل از Ùرمان \verb|\maketitle| تعیین کرد: \begin{lscommand} \ci{title}\verb|{...}|\lr{,} \ci{author}\verb|{...}| \lr{,} \ci{date}\verb|{...}| \end{lscommand} \noindent در آرگومان Ùرمان \ci{author} می‌توانید چندین نام را وارد کنید Ú©Ù‡ با Ùرمان \lr{\ci{and}} از یکدیگر جدا می‌شوند. مثالی از Ùرمان‌هایی را Ú©Ù‡ در بالا معرÙÛŒ کردیم می‌توانید در جدول \ref{document} %\LR{\hyperref[document]{2.2}} در صÙØÙ‡Ù” \pageref{document} ببینید. علاوه بر Ùرمان‌های بخش‌بندی Ú©Ù‡ در بالا اشاره شد، لاتک سه Ùرمان دیگر به همراه طبقهٔ \verb|book| ارائه می‌کند. این Ùرمان‌ها برای تقسیم نوشتار به کار می‌آیند. این Ùرمان‌ها سربرگ Ùˆ شمارهٔ صÙØÙ‡ را در یک کتاب تغییر می‌دهند: \begin{description} \item[\ci{frontmatter}] باید اولین Ùرمان بعد از شروع متن نوشتار باشد (\verb|\begin{document}|). این Ùرمان شمارهٔ صÙØه‌ها را به اعداد لاتین تغییر می‌دهد Ùˆ بخش‌ها را بدون شماره ظاهر می‌کند. رÙتار این Ùرمان روی بخش‌بندی‌ها همانند این است Ú©Ù‡ از Ùرمان‌های بخش‌بندی ستاره‌دار استÙاده کنید (به عنوان مثال \verb|\chapter*{Preface}|) با این تÙاوت Ú©Ù‡ عنوان این بخش‌ها همچنان در Ùهرست مطالب ظاهر می‌شوند. \item[\ci{mainmatter}] این Ùرمان دقیقاً قبل از اعلان اولین Ùصل به کار می‌رود Ú©Ù‡ باعث می‌شود شمارهٔ صÙØÙ‡ به سبک عددی تغییر یابد Ùˆ آن را از یـک شروع می‌کند. \item[\ci{appendix}] پیوست‌های نوشتار را شروع می‌کند. بعد از این Ùرمان، Ùصل‌ها با Øرو٠شماره‌\-گذاری می‌شوند. \item[\ci{backmatter}] باید قبل از آخرین آیتم کتاب، مانند کتاب‌نامه Ùˆ نمایه ظاهر شود. در یک طبقهٔ استاندارد، این Ùرمان هیچ تاثیری ندارد. \end{description} \section{ارجاع} در کتاب‌ها، گزارش‌ها، Ùˆ مقالات معمولاً ارجاع‌هایی مانند شکل‌ها، جدول‌ها Ùˆ قسمت‌های ویژه از متن وجود دارد Ú©Ù‡ به آنها \wi{ارجاع‌های متنی}\Footnote{cross-references} می‌گویند. لاتک Ùرمان‌های زیر را برای تولید ارجاع‌های متنی ارائه می‌کند \begin{lscommand} \ci{label}\verb|{|\emph{marker}\verb|}|, \ci{ref}\verb|{|\emph{marker}\verb|}| \rl{Ùˆ} \ci{pageref}\verb|{|\emph{marker}\verb|}| \end{lscommand} \noindent Ú©Ù‡ \emph{marker} یک نشانگر است Ú©Ù‡ توسط کاربر انتخاب می‌شود. لاتک تمام Ùرمان‌های \verb|\ref| را با شمارهٔ بخش، زیربخش، Ø´Ú©Ù„ØŒ جدول، یا قضیه‌ای نمایش می‌دهد Ú©Ù‡ Ùرمان \verb|\label| در آن ظاهر شده است. Ùرمان \verb|\pageref| شمارهٔ صÙØه‌ای را نمایش می‌دهد Ú©Ù‡ \verb|\label| مورد نظر قرار دارد.% \footnote{توجه داشته باشید Ú©Ù‡ این Ùرمان‌ها از Ù…Øتوای چیزی Ú©Ù‡ به آن ارجاع می‌کنند اطلاعی ندارند. Ùرمان \ci{label}تنها آخرین شمارهٔ تولید شده را ذخیره می‌کند. وقتی Ú©Ù‡ این شماره، شمارهٔ یک بخش باشد شمارهٔ مورد نظر از پردازش قبل را ذخیره می‌کند.} \begin{example} A reference to this subsection \label{sec:this} looks like: ``see section~\ref{sec:this} on page~\pageref{sec:this}.'' \end{example} \section{پانوشت} با Ùرمان \begin{lscommand} \ci{footnote}\verb|{|\emph{footnote text}\verb|}| \end{lscommand} \noindent پانوشتی در انتهای صÙØÙ‡Ù” جاری نوشته می‌شود. پانوشت‌ها همواره باید بعد از کلمه یا جمله‌ای قرار داده شود\footnote{Ùعل شدن یکی از اÙعال معمول Ùارسی است.} Ú©Ù‡ به آن اشاره می‌کند. بنابراین پانوشتی Ú©Ù‡ به Ú©Ù„ یک عبارت اشاره می‌کند باید بعد از ویرگول یا نقطهٔ انتهای آن جمله قرار داده شود. با توجه به این Ú©Ù‡ هر کسی Ú©Ù‡ نوشتار را می‌خواند نهایتاً پانوشت‌ها را هم مطالعه می‌کند (زیرا Ú©Ù‡ ما موجودات کنجکاوی هستیم) پس چرا تمام مطالب را در خود متن بیان نکنیم؟% \footnote{تو Ú©Ù‡ لالایی بلدی پس چرا خوابت نمی‌بره(\lr{-}:} \begin{latin} \begin{example} Footnotes\footnote{This is a footnote.} are often used by people using \LaTeX. \end{example} \end{latin} \section{تاکید کلمات} اگر با یک ماشین تایپ متنی را بنویسید، کلمات مهم به صورت \underline{زیرخط} تایپ می‌شوند. \begin{lscommand} \ci{underline}\verb|{|\emph{text}\verb|}| \end{lscommand} در کتاب‌های تایپ شده، کلمه‌های مهم را به صورت ایتالیک نمایش می‌دهند. لاتک Ùرمان \begin{lscommand} \ci{emph}\verb|{|\emph{text}\verb|}| \end{lscommand} \noindent را برای تأکید کلمه‌ها به کار می‌برد. تأثیر Ùرمان به متن بستگی دارد: \begin{example} \emph{If you use emphasizing inside a piece of emphasized text, then \LaTeX{} uses the \emph{normal} font for emphasizing.} \end{example} لطÙاً به تÙاوت این Ú©Ù‡ لاتک چیزی را تأکید کند Ùˆ یا این Ú©Ù‡ از قلم دیگری استÙاده کنیم توجه کنید. \begin{example} \textit{You can also \emph{emphasize} text if it is set in italics,} \textsf{in a \emph{sans-serif} font,} \texttt{or in \emph{typewriter} style.} \end{example} \section{Ù…Øیط‌ها} \label{env} لاتک \wi{Ù…Øیط‌}های مختلÙÛŒ را برای کارهای مختل٠ارائه می‌کند: \begin{lscommand} \ci{begin}\verb|{|\emph{environment}\verb|}|\quad \emph{text}\quad \ci{end}\verb|{|\emph{environment}\verb|}| \end{lscommand} \noindent Ú©Ù‡ \emph{environment} نام Ù…Øیطی است Ú©Ù‡ مورد استÙاده قرار می‌گیرد. Ù…Øیط‌ها می‌توانند تودرتو باشند، مادامی Ú©Ù‡ ترتیب درست آنها اعمال شده باشد. \begin{code} \verb|\begin{aaa}...\begin{bbb}...\end{bbb}...\end{aaa}| \end{code} \noindent در بخش بعد انواع Ù…Øیط‌ها را مورد بررسی قرار می‌دهیم. \subsection{Ù…Øیط‌های تبصره، توضیØØŒ Ùˆ شماره‌دار} Ù…Øیط \ei{itemize} برای تولید لیست‌های ساده Ù…Ùید است، \ei{enumerate} برای تولید لیست‌های شماره‌دار، Ùˆ \ei{description} برای Ù…Øیط توضیØات Ù…Ùید است. \cih{item} \begin{example} \flushleft \begin{enumerate} \item You can mix the list environments to your taste: \begin{itemize} \item But it might start to look silly. \item[-] With a dash. \end{itemize} \item Therefore remember: \begin{description} \item[Stupid] things will not become smart because they are in a list. \item[Smart] things, though, can be presented beautifully in a list. \end{description} \end{enumerate} \end{example} \subsection{چپ، راست، Ùˆ وسط چین} Ù…Øیط‌های \ei{flushleft} Ùˆ \ei{flushright} پاراگراÙ‌هایی را تولید می‌کنند Ú©Ù‡ چپ‌چین یا راست‌\-چین هستند. \romanindex{left aligned}\index{جیی@چپ‌چین} Ù…Øیط \ei{center} متن را وسط‌چین می‌نویسد. اگر شکست خط را با Ùرمان \ci{\bs} اعلان نکنید، لاتک به صورت خودکار شکست خط‌ها را تعیین می‌کند. \begin{example} \begin{flushleft} This text is\\ left-aligned. \LaTeX{} is not trying to make each line the same length. \end{flushleft} \end{example} \begin{example} \begin{flushright} This text is right-\\aligned. \LaTeX{} is not trying to make each line the same length. \end{flushright} \end{example} \begin{example} \begin{center} At the centre\\of the earth \end{center} \end{example} \subsection{نقل قول Ùˆ شعر} Ù…Øیط \ei{quote} برای عبارت‌های نقل‌ قول Ùˆ مثال‌ها Ù…Ùید است. \begin{example} A typographical rule of thumb for the line length is: \begin{quote} On average, no line should be longer than 66 characters. \end{quote} This is why \LaTeX{} pages have such large borders by default and also why multicolumn print is used in newspapers. \end{example} دو Ù…Øیط مشابه دیگر وجود دارد: Ù…Øیط \ei{quotation} Ùˆ \ei{verse}. Ù…Øیط \lr{\texttt{quotation}} برای نقل‌ قول‌های طولانی Ú©Ù‡ بیش از یک پاراگرا٠باشند Ù…Ùید است. Ù…Øیط \lr{\texttt{verse}} برای نگارش شعر Ù…Ùید است Ú©Ù‡ شکست‌ها خیلی مهم هستند. در این Ù…Øیط شکست‌ها با Ùرمان \ci{\bs} در انتهای خط مورد نظر Ùˆ یک خط خالی بعد از هر قطعه انجام می‌گیرد. \begin{example} I know only one English poem by heart. It is about Humpty Dumpty. \begin{flushleft} \begin{verse} Humpty Dumpty sat on a wall:\\ Humpty Dumpty had a great fall.\\ All the King's horses and all the King's men\\ Couldn't put Humpty together again. \end{verse} \end{flushleft} \end{example} \subsection{مقدمه} در مطالب علمی معمولاً نوشتار را با یک چکیده شروع می‌کنند. لاتک Ù…Øیط \ei{abstract} را برای انجام چنین کاری پیش‌بینی کرده است. به طور نرمال یک چکیده در مقالات به کار می‌رود. \newenvironment{abstract}% {\begin{center}\begin{small}\begin{minipage}{0.8\textwidth}}% {\end{minipage}\end{small}\end{center}} \begin{example} \begin{abstract} The abstract abstract. \end{abstract} \end{example} \subsection{چاپ تØت‌اللÙظ} متن‌هایی Ú©Ù‡ بین \LRE{\verb|\begin{|\ei{verbatim}\verb|}|} Ùˆ \verb|\end{verbatim}| نوشته می‌شوند، همانند این Ú©Ù‡ با ماشین تایپ نوشته شده باشند ظاهر می‌شوند، با تمام شکست خط‌ها Ùˆ بدون تأثیر هیچ Ùرمان لاتک. برای یک پاراگرا٠این کار را می‌توان به صورت زیر انجام داد. \begin{lscommand} \ci{verb}\verb|+|\emph{text}\verb|+| \end{lscommand} \noindent \verb|+| تنها یک مثال از یک کاراکتر Øائل است. بسیاری از مثال‌های این مقدمه به Ú©Ù…Ú© همین Ù…Øیط نوشته شده‌اند. \begin{example} The \verb|\ldots| command \ldots \begin{verbatim} 10 PRINT "HELLO WORLD "; 20 GOTO 10 \end{verbatim} \end{example} \begin{example} \begin{verbatim*} the starred version of the verbatim environment emphasizes the spaces in the text \end{verbatim*} \end{example} Ùرمان \ci{verb} را می‌توان به صورت ستاره‌دار به‌کار برد: \begin{example} \verb*|like this :-) | \end{example} Ù…Øیط \lr{\texttt{verbatim}} Ùˆ Ùرمان \verb|\verb| را نمی‌توان به صورت پارامتر Ùرمان‌های دیگر به کار برد. \subsection{جدول} \newcommand{\mfr}[1]{\lr{\framebox{\rule{0pt}{0.7em}\texttt{#1}}}} Ù…Øیط \ei{tabular} را می‌توان برای طراØÛŒ جدول‌های زیبا با خط‌های اÙÙ‚ÛŒ Ùˆ عمودی به کار برد. لاتک عرض ستون‌ها را به صورت خودکار تشخیص می‌دهد. آرگومان \emph{table spec} از Ùرمان \begin{lscommand} \verb|\begin{tabular}[|\emph{pos}\verb|]{|\emph{table spec}\verb|}| \end{lscommand} \noindent سبک‌ جدول را تعری٠می‌کند. از \mfr{l} برای یک ستون چپ‌چین، \mfr{r} برای راست‌چین، \mfr{c} برای وسط‌چین استÙاده کنید؛ از \mfr{p\{\emph{width}\}} برای یک ستون شامل یک متن چیده شده با شکست خط، Ùˆ \mfr{l} برای یک خط عمودی استÙاده کنید. اگر متن درون یک ستون گسترده‌‌تر از صÙØÙ‡ باشد، لاتک آن را به طور خودکار نمی‌شکند. با استÙاده از Ùرمان \mfr{p\{\emph{width}\}} می‌توانید نوع ویژه‌ای از ستون را تعری٠کنید Ú©Ù‡ پیرامون یک متن مشخص شده گرد شده است. آرگومان \emph{pos} مکان عمودی جدول را نسبت به خط کرسی متنی دور آن تعیین می‌کند. از یکی از گزینه‌های \mfr{t}ØŒ\mfr{b}ØŒ\mfr{c} برای تعیین این مقدار به بالا، پایین Ùˆ وسط استÙاده کنید. در یک Ù…Øیط \lr{\texttt{tabular}}ØŒ با درج \texttt{\&} به ستون بعد می‌رویم Ùˆ \ \ci{\bs} یک خط جدید را شروع می‌کند Ùˆ \ci{hline} یک خط اÙÙ‚ÛŒ رسم می‌کند. می‌توانید خط را از ستون \lr{-j}ام تا ستون \lr{-i}ام با Ùرمان \lr{\ci{cline}\texttt{\{}\emph{j}\texttt{-}\emph{i}\texttt{\}}} رسم کنید. %\romanindex{"|@ \verb."|.} \begin{example} \begin{tabular}{|r|l|} \hline 7C0 & hexadecimal \\ 3700 & octal \\ \cline{2-2} 11111000000 & binary \\ \hline \hline 1984 & decimal \\ \hline \end{tabular} \end{example} \begin{example} \begin{tabular}{|p{4.7cm}|} \hline Welcome to Boxy's paragraph. We sincerely hope you'll all enjoy the show.\\ \hline \end{tabular} \end{example} جداکنندهٔ ستون‌ها را می‌توان با \mfr{@\{...\}} ساخت. این Ùرمان Ùاصلهٔ بین ستون‌ها را از بین می‌برد Ùˆ به جای آن از چیزی استÙاده می‌کند Ú©Ù‡ در آکولاد ارائه کرده‌اید. مورد معمول استÙاده از این Ùرمان در چیدن بر اساس ممیز است. کاربرد دیگر آن از بین بردن Ùاصلهٔ بالایی یک جدول با استÙاده از Ùرمان \mfr{@\{\}} است. \begin{example} \begin{tabular}{@{} l @{}} \hline no leading space\\ \hline \end{tabular} \end{example} \begin{example} \begin{tabular}{l} \hline leading space left and right\\ \hline \end{tabular} \end{example} % % This part by Mike Ressler % \romanindex{decimal alignment} از آنجا Ú©Ù‡ هیچ راه درونی برای مرتب کردن اعداد در یک جدول به صورت ممیزچین وجود ندارد \footnote{اگر کلا٠ابزار روی سیستم شما نصب است، نگاهی به بستهٔ \pai{dcolumn} بیندازید.} این کار را می‌توان با یک Øقه Ùˆ داشتن دو ستون انجام داد: یکی به صورت راست‌چین، Ùˆ دیگری به صورت عدد اعشاری چپ‌چین. Ùرمان \verb|@{.}| در خط‌های Ù…Øیط \verb|\begin{tabular}| Ùاصلهٔ عادی بین ستون‌ها را تنها با یک نقطه نشان می‌دهد Ú©Ù‡ نماد معمولی ممیز است. Ùراموش نکنید Ú©Ù‡ باید قسمت اعشاری عددتان را با Ùرمان \verb|&| از قسمت درست آن جدا کنید. برچسب یک ستون را می‌توان با Ùرمان \ci{multicolumn} تعیین کنید. \begin{example} \begin{tabular}{c r @{.} l} Pi expression & \multicolumn{2}{c}{Value} \\ \hline $\pi$ & 3&1416 \\ $\pi^{\pi}$ & 36&46 \\ $(\pi^{\pi})^{\pi}$ & 80662&7 \\ \end{tabular} \end{example} \begin{example} \begin{tabular}{|c|c|} \hline \multicolumn{2}{|c|}{Ene} \\ \hline Mene & Muh! \\ \hline \end{tabular} \end{example} تمام متن یک جدول همواره در یک صÙØÙ‡ قرار می‌گیرد. اگر می‌خواهید جدول‌های بزرگتری را طراØÛŒ کنید، باید از Ù…Øیط \pai{longtable} استÙاده کنید. \section{اجسام شناور} امروزه بسیاری از چیز‌هایی Ú©Ù‡ به چاپ می‌رسند دارای تعداد زیادی جدول Ùˆ Ø´Ú©Ù„ هستند. این اشیاء به ØÙاظت بیشتری اØتیاج دارند، زیرا نمی‌توانند بین صÙØه‌ها شکسته شوند. یک روش برای این کار این است Ú©Ù‡ هرگاه یک جدول یا Ø´Ú©Ù„ آنقدر بزرگ باشد Ú©Ù‡ در ادامهٔ صÙØÙ‡ جا نگیرد، آنگاه یک صÙØÙ‡Ù” جدید برای نمایش آن تولید شود. این کار باعث می‌شود Ú©Ù‡ تعدادی از صÙØات خالی باشند Ú©Ù‡ بسیار بد منظره است. راه ØÙ„ این مشکل این است Ú©Ù‡ شکل‌ها Ùˆ جدول‌هایی را Ú©Ù‡ در صÙØÙ‡ نمی‌گنجند به ابتدای صÙØÙ‡Ù” بعد منتقل کنیم، Ùˆ ادامه صÙØÙ‡Ù” اول را با متن پرکنیم. لاتک دو Ù…Øیط برای ØÙاظت این گونه اجسام شناور تعبیه کرده است؛ یکی برای جدول Ùˆ یکی برای Ø´Ú©Ù„. برای استÙاده بهینه از این دو Ù…Øیط باید به طور تقریبی بدانید لاتک در درون خودش با اجسام شناور چگونه رÙتار می‌کند. در غیر این صورت این موضوع یک معضل برای شما می‌شود زیرا لاتک هیچگاه این اجسام را در نقطه‌ای Ú©Ù‡ شما می‌خواهید قرار نمی‌دهد. \romanindex{floating bodies}\index{اجسام شناور} \bigskip ابتدا اجازه دهید به Ùرمان‌هایی Ú©Ù‡ برای اجسام شناور تعبیه شده‌اند نظری بیندازیم: هر چیزی Ú©Ù‡ در میان Ù…Øیط \ei{figure} Ùˆ \ei{table} قرار می‌گیرد به عنوان یک شییٔ شناور منظور می‌شود. هر دو Ù…Øیط شناور \begin{lscommand} \verb|\begin{figure}[|\emph{placement specifier}\verb|]| \rl{یا} \verb|\begin{table}[|\ldots\verb|]| \end{lscommand} \noindent پارامترهای اختیاری قبول می‌کنند Ú©Ù‡ به آن مشخص کننده مکان% \Footnote{placement specifier} می‌گوییم. این پارامتر برای نشان دادن مکان مورد نظر برای جسم شناور به‌کار می‌رود. این پارامتر به صورت یک رشته از مکان‌های ممکن تعیین می‌شود. جدول \ref{tab:permiss} %\LRE{\hyperref[tab:permiss]{3.3}} را ببینید. % \begin{table}[!bp] \caption{پارامترهای قراردادن اجسام شناور}\label{tab:permiss} \noindent \begin{minipage}{\textwidth} \medskip \begin{center} \begin{tabular}{@{}cp{8cm}@{}} \lr{Spec}&اجازهٔ قرار دادن جسم \ldots\\ \hline \rule{0pt}{1.05em}\texttt{h} & اینجا (\emph{here}) در همان جایی از متن Ú©Ù‡ Ùرمان ظاهر شده است. برای اجسام Ú©ÙˆÚ†Ú© Ù…Ùید است. \\[0.3ex] \texttt{t} & در بالای (\emph{top}) صÙØÙ‡. \\[0.3ex] \texttt{b} & در پایین (\emph{bottom}) صÙØÙ‡. \\[0.3ex] \texttt{p} & در یک صÙØÙ‡Ù” ویژه Ú©Ù‡ تنها شامل اجسام شناور است. \\[0.3ex] \texttt{!} & بدون در نظر گرÙتن بسیاری از پارامترهای داخلی\footnote{مانند ماکسیمم تعداد اشیاء شناور در یک صÙØÙ‡} \end{tabular} \end{center} \end{minipage} \end{table} % یک جدول را می‌توان به صورت زیر تولید کرد: \begin{code} \verb|\begin{table}[!hbp]| \end{code} \noindent مشخص کنندهٔ مکان \verb|[!hbp]| به لاتک اجازه می‌دهد Ú©Ù‡ جدول را در همان نقطه یا در پایین صÙØÙ‡ Ùˆ یا در یک صÙØÙ‡ شامل تنها اشیاء شناور قرار دهد، Ùˆ یا Øتی در هر کدام Ú©Ù‡ ممکن است با وجود این Ú©Ù‡ ممکن است Øاصل کار زیبا نباشد. اگر هیچ مکانی معرÙÛŒ نگردد مقدار پیش‌Ùرض آن \verb|[tbp]| است. لاتک هر جسم شناور را همان جایی Ú©Ù‡ کاربر Ùرمان داده است قرار می‌دهد. اگر این کار در صÙØÙ‡Ù” جاری امکان‌پذیر نباشد، لاتک آن را به ص٠نوع جسم شناور انتقال می‌دهد.% \footnote{این صÙ‌ها به Ø´Ú©Ù„ اولین ورودی --- اولین خروجی ظاهر می‌شوند!} هرگاه یک صÙØÙ‡Ù” جدید شروع می‌شود، لاتک ابتدا بررسی می‌کند Ú©Ù‡ آیا جسم شناوری در ص٠انتظار برای الصاق موجود است. اگر این کار امکان‌پذیر نباشد، با هر جسم در ص٠مربوط به خودش به ترتیبی رÙتار می‌شود Ú©Ù‡ انگار در همین نقطه از متن طبق راهنمایی نویسنده قرار است قرار داده شود (به جز \lr{\texttt{h}} Ú©Ù‡ دیگر مورد نظر قرار نمی‌گیرد ). هر جسم دیگر در متن به مکان مناسب در ص٠مربوطه انتقال می‌یابد. لاتک به طور منظم ترتیب اولیهٔ هر جسم در ص٠را مد نظر قرار می‌دهد. به همین دلیل است Ú©Ù‡ اگر Ø´Ú©Ù„ÛŒ قابل ظاهر شدن در متن نباشد به انتهای نوشتار انتقال داده می‌شود Ùˆ بنابراین تمام شکل‌های بعد از آن نیز به انتهای نوشتار انتقال می‌یابند. بنابراین: \begin{quote} اگر لاتک اجسام شناور را آن طور Ú©Ù‡ شما می‌خواهید قرار نمی‌دهد اغلب به این دلیل است Ú©Ù‡ تنها یکی از این اجسام را نمی‌تواند در هیچ نقطه‌ای از متن قرار دهد. \end{quote} وقتی Ú©Ù‡ تنها یک مکان مناسب برای جسم وجود داشته باشد، این موضوع ممکن است مشکل‌\-ساز شود. اگر جسمی در مکان پیشنهاد شده قابل نمایش نباشد، معمولاً یک مشکل از این نوع پدید می‌آید. به خصوص این Ú©Ù‡ هیچ‌گاه نباید از گزینهٔ \lr{[h]} استÙاده کنید، این کار آنقدر مشکل‌\-ساز است Ú©Ù‡ در نسخه‌های جدید لاتک این گزینه به طور خودکار به \lr{[ht]} تبدیل می‌شود. %\bigskip \noindent Øال Ú©Ù‡ مشکلات Ù…Øیط‌های جدول Ùˆ Ø´Ú©Ù„ را Ú©Ù…ÛŒ ØªÙˆØ¶ÛŒØ Ø¯Ø§Ø¯ÛŒÙ…ØŒ چند موضوع دیگر نیز نیاز به ØªÙˆØ¶ÛŒØ Ø¨ÛŒØ´ØªØ± دارند. با Ùرمان \begin{lscommand} \ci{caption}\verb|{|\emph{caption text}\verb|}| \end{lscommand} \noindent می‌توانید عنوان یک جسم شناور را تعری٠کنید. یک شماره Ùˆ یک عنوان Ø´Ú©Ù„ یا جدول به طور خودکار توسط لاتک قبل از این عنوان قرار می‌گیرد. دو Ùرمان \begin{lscommand} \ci{listoffigures} \rl{Ùˆ} \ci{listoftables} \end{lscommand} \noindent همانند Ùرمان \verb|\tableofcontents| لیست جدول‌ها Ùˆ شکل‌ها را چاپ می‌کند. این لیست‌ها عنوان کامل شییٔ مورد نظر را نمایش می‌دهند، بنابراین اگر عنوان این شکل‌ها طولانی است، باید عنوان کوچکتری را به عنوان گزینهٔ اختیاری معرÙÛŒ کنید. این کار به صورت زیر امکان‌پذیر است. \begin{code} \verb|\caption[Short]{LLLLLoooooonnnnnggggg}| \end{code} با Ùرمان \ci{label} Ùˆ \ci{ref} می‌توانید ارجاعی به این اجسام شناور داشته باشید. توجه داشته باشید Ú©Ù‡ Ùرمان \ci{label} باید بعد از Ùرمان \ci{caption} قرار بگیرد زیرا باید شماره مربوطه با این Ùرمان دوم تولید شده باشد. مثال زیر مربعی را رسم می‌کند Ùˆ آن را در متن قرار می‌دهد. می‌توانید از این کار برای اختصاص یک تصویر با ابعاد مشخص در پایان کار استÙاده کنید. \begin{code} \begin{verbatim} Figure~\ref{white} is an example of Pop-Art. \begin{figure}[!hbtp] \makebox[\textwidth]{\framebox[5cm]{\rule{0pt}{5cm}}} \caption{Five by Five in Centimetres.\label{white}}[A \end{figure} \end{verbatim} \end{code} \noindent در مثال بالا، لاتک به سختی (!) سعی می‌کند تا Ø´Ú©Ù„ را دقیقاً در همین نقطه از متن قرار دهد.% \footnote{Ùرض کنید ص٠مربوط به شکل‌ها خالی باشد.} اگر این کار امکان‌پذیر نباشد سعی می‌کند Ø´Ú©Ù„ را در انتهای صÙØÙ‡ قرار دهد. اگر هیچ‌کدام از این کارها امکان‌پذیر نباشد، لاتک بررسی می‌کند Ú©Ù‡ آیا می‌تواند Ø´Ú©Ù„ را در یک صÙØÙ‡Ù” خالی به همراه مثلاً یک جدول قرار دهد. اگر Ù…Øتویات لازم برای پرکردن یک صÙØÙ‡Ù” شناور موجود نباشد، لاتک یک صÙØÙ‡Ù” جدید تولید می‌کند Ùˆ یک‌بار دیگر همین مراØÙ„ را از سر می‌گیرد. تØت شرایط ویژه‌ای اگر لازم باشد از Ùرمان \begin{lscommand} \ci{clearpage} \rl{یا} \ci{cleardoublepage} \end{lscommand} \noindent استÙاده کنید. این Ùرمان لاتک را مجبور می‌کند تا تمام اشیاء باقیمانده در ص٠را قرار دهد Ùˆ یک صÙØÙ‡Ù” جدید تولید کند. Ùرمان \ci{cleardoublepage} به صÙØÙ‡Ù” سمت راست بعدی می‌رود. بعداً در این مقدمه یاد خواهید گرÙت چگونه شکل‌های پست‌اسکریپت را در متن خود قرار دهید. \section{ØÙاظت از اجسام شکستنی} متنی Ú©Ù‡ توسط Ùرمان‌های \ci{caption} Ùˆ \ci{section} در متن ظاهر می‌شود ممکن است در نوشتار چندین بار تکرار شود (به عنوان مثال در Ùهرست مطالب یا متن نوشتار). بعضی از Ùرمان‌ها هنگام استÙاده در درون Ùرمان‌هایی مانند \ci{section} ممکن است شکسته شوند Ùˆ پردازش Ùایل میسر نباشد. این Ùرمان‌ها را \wi{Ùرمان‌های شکستنی} می‌نامند، به عنوان مثال \ci{footnote} Ùˆ \ci{phantom}. این Ùرمان‌های شکستنی اØتیاج به ØÙاظت دارند (ما چطور!). می‌توانید آنها را با Ùرمان \ci{protect} در جلوی آنها مورد ØÙاظت قرار دهیم. \ci{protect} تنها بر Ùرمانی Ú©Ù‡ بعد از آن ظاهر می‌شود اثر دارد، Ùˆ Øتی بر پارامترهای آن تاثیری ندارد. در بیشتر مواقع یک Ùرمان اضاÙÛŒ \ci{protect} هیچ ضرری ندارد. \begin{code} \verb|\section{I am considerate|\\ \verb| \protect\footnote{and protect my footnotes}}| \end{code} % Local Variables: % TeX-master: "lshort2e" % mode: latex % mode: flyspell % End: