اگر به تازگی به جمع خوانندگان این وبلاگ پیوستهاید، لازم است ابتدا پیشنیازهای زیر را بخوانید:
- آیا وقت آن نرسیده که با واژهپردازها خداحافظی کنیم؟ (قسمت اول)
- آیا وقت آن نرسیده که با واژهپردازها خداحافظی کنیم؟ (قسمت دوم)
- آیا وقت آن نرسیده که با واژهپردازها خداحافظی کنیم؟ (قسمت سوم)
- آیا وقت آن نرسیده که با واژهپردازها خداحافظی کنیم؟ (قسمت چهارم)
- راهنمای نصب لاتک و زیپرشین
حال که لاتک و زیپرشین را نصب کردهاید، میخواهم در مورد شروع کار حروفچینی با لاتک و زیپرشین بنویسم.
در نرمافزارهای واژهپردازی مانند مایکروسافت ورد، برای حروفچینی یک متن، نرمافزار را باز میکنید و بدون هیچ کار اضافهای، شروع به نوشتن میکنید؛ اما در لاتک، اینطور نیست. در لاتک، قبل از نوشتن متن، باید یک سری کد بنویسید. کد زیر را در نظر بگیرید:
\documentclass{article} \begin{document} Hello World! \end{document}
این کد، سادهترین مثال برای یک فایل لاتک است که به مثال Hello World معروف شده است؛ اما معنی این کدها چیست؟
در خط ۱، به موتور حروفچین میگویید که قصد حروفچینی یک مقاله ((Article را دارید. توجه داشته باشید که منظور از مقاله در اینجا، یک مقاله آکادمیک نیست؛ بلکه منظور، یک نوشته ساده است؛ هر چند با این کد، میتوانید حتی یک مقاله ۱۰۰۰ صفحهای را هم حروفچینی کنید.
در خط ۲، شروع نوشتار را به موتور حروفچین اعلام میکنید. در واقع، به موتور حروفچین میگویید که از اینجا به بعد، هر چیزی (به غیر از دستورهای لاتک) که تایپ میشود را در خروجی، نمایش دهد.
در خط ۳، شروع به نوشتن متن موردنظر میکنید که میتواند یک جمله و یا یک نوشته چند صفحهای باشد.
در خط ۴، پایان نوشتار را به موتور حروفچین اعلام میکنید. در واقع، از خط ۴ به بعد، هر چیزی (حتی دستورهای لاتک) که تایپ شود، نادیده گرفته میشود و در خروجی، نمایش داده نمیشود.
توجه داشته باشید که تمام دستورهای لاتک، با نماد «\» شروع میشوند.
نحوه گرفتن خروجی در لاتک
در بحث مزایای لاتک، گفته شد که در لاتک، ظاهر و محتوای نوشته، از هم جدا هستند. بنابراین برای دیدن خروجی در لاتک، باید یک فرایند دیگر را هم انجام دهید. برای این کار، باید کد نوشته شده در بالا را در یک فایل متنی قرار دهید و سپس فایل را با پسوند tex ذخیره کنید. فرض کنید اسم این فایل، sample1 و محل ذخیرهسازی آن، پوشه samples در درایو D باشد (این فایل را میتوانید از اینجا هم دانلود کنید). برای ایجاد خروجی باید با استفاده از خط فرمان، به مسیر پوشه مورد نظر رفته و دستور pdflatex را روی آن اجرا (Run) کنید:
D:\samples>pdflatex sample1.tex
اگر مراحل گفته شده را درست انجام داده باشید، یک فایل پیدیاف به نام sample1.pdf در پوشه samples ایجاد میشود که اگر آن را باز کنید، با شکل زیر، روبرو میشوید:
اگر دقت کنید، میبینید که در پوشه موردنظر، علاوه بر فایلهای sample1.tex و sample1.pdf، دو فایل دیگر به نامهای sample1.log و sample1.aux به وجود آمدهاند. فایل sample1.log، یک فایل متنی است که حاوی گزارشهای حاصل از پردازش فایل است. فایل sample1.aux نیز یک فایل کمکی (auxiliary) است که اطلاعات مربوط به یک اجرا را به اجرای بعدی، منتقل میکند. این فایلها را حتی اگر حذف کنید، با اجرای دستور pdflatex روی فایل sample1.tex، دوباره به وجود میآیند.
فارسینویسی در لاتک با زیپرشین
خوشبختانه به کمک بسته (package) زیپرشین، میتوانید به سادگی با لاتک، فارسی بنویسید. برای این کار، کافی است کد بالا را به صورت زیر تغییر دهید:
\documentclass{article} \usepackage{xepersian} \begin{document} سلام دنیا! \end{document}
همانطور که میبینید، تنها تفاوتی که با کد بالا دارد، این است که بسته زیپرشین با دستور
\usepackage{xepersian}
در آن، فراخوانی شده است. همانطور که در آینده خواهید دید، در فایلهای بزرگتر برای انجام کارهای مختلف، نیاز به فراخوانی بستههای بیشتری دارید. بنابراین از همین حالا، به خاطر بسپارید که بسته زیپرشین، باید آخرین بستهای باشد که فراخوانی میشود. همچنین در نوشتههای بعدی میبینیم که برای حروفچینی متنهای بلندتر مانند یک پایاننامه یا کتاب، باید از بستهها و دستورهای بیشتری استفاده کنیم. این بستهها و دستورها را باید بین خطهای ۱ و ۳ قرار دهید. کاربران لاتک، به فاصله بین خطهای ۱و ۳، «سرآغاز» (preamble) میگویند.
حال برای گرفتن خروجی از این کد، مانند کد قبل، باید این کد را در یک فایل متنی با نام مثلاً sample2.tex در پوشه samples در درایو D ذخیره کنید (این فایل را میتوانید از اینجا هم دانلود کنید). سپس باید با استفاده از خط فرمان، به مسیر پوشه گفته شده بروید و این بار، دستور xelatex را به صورت زیر روی آن اجرا کنید:
D:\samples>xelatex sample2.tex
خروجی این کار، باید به صورت زیر باشد:
در واقع، کاری که زیپرشین انجام میدهد، این است که حروفچینی دوجهته از راست به چپ و از چپ به راست را در لاتک، ممکن میکند و به ما این امکان را میدهد که به طور همزمان، متنهای فارسی و انگلیسی را با همان کیفیت لاتک، حروفچینی کنیم.
اختلاف حروفچینی بین لاتک و زیپرشین و واژهپردازها
در لاتک و زیپرشین، برخلاف واژهپردازها، برای انجام دادن هر کاری، باید به موتور حروفچین، دستور بدهید. به عبارت دیگر، برای هر کاری، باید دستور ویژه آن را وارد کنید. در زیر، با چند نمونه ساده از این تفاوتها آشنا میشوید:
۱- همانطور که خودتان هم میتوانید آزمایش کنید، در لاتک و زیپرشین، وارد کردن یک فاصله (زدن کلید space)، با وارد کردن چندین فاصله در یک خط، هیچ تفاوتی ندارد. بنابراین برای وارد کردن چند فاصله، باید از دستوری مثل
\hspace{2cm}
که به معنی فاصله افقی است، استفاده کنید.
۲- در لاتک و زیپرشین، وارد کردن یک خط خالی (زدن کلید enter)، با وارد کردن چند خط خالی، هیچ تفاوتی ندارد. پس برای وارد کردن فاصله عمودی، باید از دستوری مثل
\vspace{2cm}
استفاده کنید.
۳- در لاتک و زیپرشین، برای رفتن به صفحه بعد، باید از دستور
\newpage
استفاده کنید.
۴- برای بولد کردن یک کلمه یا عبارت در لاتک و زیپرشین، باید دستور
\textbf{مقداری متن}
را به کار ببرید.
۵- برای ایجاد یک «بخش» در لاتک و زیپرشین، کافی است فقط عنوان بخش را به صورت
\subsection{مقداری متن دیگر}
وارد کنید. مانند حالت قبل، خود موتور حروفچین، همه کارها را به طور خودکار انجام میدهد. خروجی، به صورت زیر است:
۷- ایجاد فهرست مطالب در لاتک و زیپرشین، در مقایسه با واژهپردازهایی مانند ورد، بسیار سادهتر است. برای ایجاد فهرست، کافی است در هر کجایی که میخواهید فهرست چاپ شود، دستور
\tableofcontents
را قرار دهید و سپس سه بار، دستور xelatex را روی فایل اجرا کنید. خروجی این کار، به صورت شکل زیر است. جالب است بدانید که عنوان «فهرست مطالب»، میزان تورفتگی عنوانها، شمارههای پشت عنوانها، خط نقطهچین و شماره صفحات، به طور کاملاً خودکار، چاپ میشود!
دقت داشته باشید که بعد از ایجاد فهرست مطالب، فایل دیگری به نام sample2.toc نیز در کنار فایل sample2.tex در پوشه samples ایجاد میشود. بنابراین با انجام کارهای مختلف مثل ایجاد فهرست و یا ایجاد نمایه، فایلهایی با پسوندهای مختلف در کنار فایل tex ایجاد میشود که امری طبیعی است.
فهرستهای دیگر مانند فهرست شکلها و فهرست جدولها را میتوانید به ترتیب با دستورهای
\listoffigures
و
\listoftables
ایجاد کنید (فایل حاوی مثالهای بالا را میتوانید از اینجا دانلود کنید). بدیهی است که برای نوشتن تنها متنهای انگلیسی، نیازی به فراخوانی بسته زیپرشین نیست.
تا اینجا یاد گرفتید که چگونه یک فایل لاتک و زیپرشین ساده را نوشته، اجرا کرده و از آن، خروجی پیدیاف بگیرید. سوالی که ممکن است برای شما پیش آمده باشد، این است که آیا ویرایشگری گرافیکی برای کار با فایلهای تِک وجود دارد. خوشبختانه، جواب، مثبت است.
در نوشتههای بعدی وبلاگ «پانویس»، درباره این ویرایشگرها و نیز جنبههای دیگر حروفچینی با لاتک و زیپرشین، خواهم نوشت. اگر میخواهید از انتشار این نوشتهها آگاه شوید، مشترک خوراک «پانویس» و یا مشترک ایمیلی «پانویس» شوید.
لینک ثابت: https://panevis.ir/?p=526

سلام استاد.خداقوت.
دستورنوشتن نام ونام خانوادگی به صورت فونت بزرگ درتمام صفحات وبصورت کج درمرکزصفحات چیست؟؟
[…] شروع حروفچینی، پست شروع حروفچینی با لاتک و زیپرشین و برای دیدن همه پستهای مربوط به تک، لاتک و زیپرشین، […]
با سلام
بنده طبق دستورات شما در نصب لاتک تمام مراحل را انجام دادم
ولی موقعی که package زی پرشن رو میزنم توی command prompt ارور پیدا نکردن بسته زی پرشن رو میزنه حتی دوبار فایل telive رو نصب کردم ولی همچنان به ارور میخوره
لطفا راهنمایی کنید
سلام وقتتون بخیر
من میخواک علامت درصد بزارم توی لاتکس ولی نمیدونم چر ارور میده
به اشکال مختلف هم گذاشتم ولی ارور میده هم داخل $$ گذاشتم هم با pct\ امتحان کردم ولی بازهم ارور میده و نمیدونم چیکارکنم
علامت % توی لاتک معنی خاصی میده. این یعنی همینجوری نمیتونین تایپش کنین و توی خروجی ببینینش. برای نمایشش باید یه علامت \ سمت چپش بذارین.
سلام من دارم از texworks استفاده می کنم وقتی میخوام فارسی تایپ کنم ارور میده حتی کد ها رو از سایت شما دقیقا کپی کردم ولی ارور میده ارورش هم اینه که {}begin رو شناسایی نمیکنه!!!
l.3 \begin{document}
?
احتمالاً توزیع تک نصب نکردین یا ناقص نصب شده. مشکل رو توی سایت پارسیلاتک مطرح کنین تا بررسی بشه.