نگاهی به تاریخچه و کاربرد سیستم حروفچینی LaTex

برای تایپ کردن یک متن و تهیه یک سند از آن، شاید راحت ترین کار آن باشد که پشت کامپیوترتان بنشینید، برنامه واژه پرداز آشنای خود را باز کنید و شروع به تایپ کردن نمایید. اگر متن شما کوتاه، یا کم اهمیت یا به هر حال دارای عمر مفید کوتاهی باشد، احتمالا هدف شما فقط آن است که متن را تایپ کنید، و ظاهر آن را با کارهایی که در محیط یک واژه پرداز معمول است، مانند انتخاب متن، تغییر دادن اندازه، آرایش، رنگ و نوع فونت ها، درست کنید. با انجام دادن چنین کارهایی، احتمالا به طور تقریبی به شمایلی که می خواهید به متنتان بدهید، دست می یابید، اما هنگامی که سندتان را ذخیره کردید و از برنامه واژه پرداز خارج شدید، هیچ ردی از کارهایی که انجام داده اید، ترتیب آن ها و علت انجام دادنشان بر جا نخواهید گذاشت؛ جز ساختار ظاهری سندی که ساخته اید. اگر سند شما نسبتا کوچک یا کم اهمیت باشد، احتمالا اشکال مهمی پیش نمی آید. اما اگر بخواهید سندی بسازید که نسبتا طولانی یا پیچیده است، یا به طور مستمر بخواهید سندهایی بسازید که باید ساختار یکسان و هماهنگی داشته باشند، استفاده از همان واژه پرداز دوست داشتنی برای انجام چنین کارهایی می تواند یک شکنجه حقیقی باشد. ابزارهای اتوماسیون تک بر این مبنا به وجود آمده اند که انجام دادن چنین کارهایی را آسان نمایند و ساختار متن را به آسان ترین و بهترین شکل ممکن مدیریت و آرایش نمایند. ( TeXبخوانید: تک) یک سیستم حروفچینی است که توسط دونالد کانوت طراحی شده است و همراه با زبان متافونت که مخصوص طراحی و توصیف فونت ها است و همچنین مجموعه سبک حروف (یا Typeface که امروزه تقریبا و نه به طور دقیق، همان مفهوم فونت را دارد.

( Modern Computer) مجموعه ای کامل از ابزارهای حروفچینی را تشکیل می دهند. کانوت هنگام ساختن این سیستم دو هدف در ذهن داشت: نخست این که هر کسی بتواند با بهره گرفتن از این سیستم متون مورد نیاز خود را با کیفیت بالا حروفچینی و صفحه آرایی نماید و دیگر آن که خروجی این سیستم روی همه کامپیوترها و در همه زمان ها دقیقا یکسان باشد. تک اساسا یک مجموعه نرم افزار رایگان است و در محیط های مختلف کاری، خصوصا در دانشگاه ها و انتشارات دانشگاهی بسیار مورد توجه و استفاده قرار گرفته است و می توان گفت نرم افزارهای مشابه خود را که در گذشته وجود داشته اند (مانند Unix troff) کنار رانده است.

● تاریخچه

در سال ۱۹۶۹ نخستین جلد از کتاب کانوت تحت عنوان «هنر برنامه نویسی کامپیوتری» به چاپ رسید. این کتاب با سیستم مونوتایپ که ریشه آن به قرن نوزدهم میلادی برمی گردد، حروفچینی شده بود و صفحات و متن آن به صورتی شکیل و قابل قبول به چاپ رسیدند. اما هنگامی که در سال ،۱۹۷۶ ویرایش دوم جلد دوم این کتاب آماده چاپ شد، تمام کتاب باید از نوحروفچینی می گردید؛ چراکه فناوری مونوتایپ تقریبا منقرض شده و جای خود را به روش های فوتوگرافیک داده بود. از این رو فونت هایی که در حروفچینی جلد اول کتاب به کار رفته بود، دیگر در دسترس نبود. کانوت در سی ام مارس ۱۹۷۷ نسخه پیش از چاپ کتابش را دریافت کرد، و حروفچینی آن را بسیار بد و نازیبا دید. در همین دوره بود که وی برای نخستین بار خروجی یک سیستم حروفچینی دیجیتالی را مشاهده کرد که کیفیت بالایی داشت و به صفحه بندی دیجیتالی علاقمند شد. نسخه پیش از چاپ کتاب خودش که حروفچینی و صفحه بندی بسیار ناامیدکننده ای داشت، انگیزه نهایی را به وی داد تا مشکل حروفچینی را به شکل ریشه ای حل کند و سیستم حروفچینی خودش را ایجاد کند. در سیزدهم ماه می سال ۱۹۷۷ وی یادداشتی نوشت که در آن خصوصیات اصلی TeX را تعیین کرده بود. کانوت تصمیم گرفت سیستم حروفچینی خود را در تعطیلات دانشگاهی سال ۱۹۷۸ تکمیل کند، اما پایان این کار تا سال ،۱۹۸۸ یعنی بیش از ده سال بعد به طول انجامید.

در تابستان ۱۹۷۸ که کانوت در استنفورد مشغول کار روی اولین نسخه TeX بود، گای استیل (Guy steele)، یک متخصص علوم کامپیوتر از MIT هم در استنفورد حضور داشت و در جریان کارهای کانوت قرار گرفت. هنگامی که استیل به MIT بازگشت، سیستم ورودی-خروجی TeX را برای اجرا تحت سیستم عامل ITS بازنویسی کرد. نسخه اول TeX با زبان برنامه نویسی SAIL نوشته شده بود که روی یک کامپیوتر ۱۰- PDPو تحت سیستم عامل WAITS اجرا می شد. کانوت برای نسخه های بعدی TeX مفهوم literate programming را ابداع نمود که عبارت بود از روشی برای تولید کد منبع قابل کامپایل شدن و همچنین متون حاوی پیوندهای متقاطع و با کیفیت بالا، از یک فایل واحد. زبانی که به این منظور به کار می رفت، WEB نام داشت و نهایتا برنامه هایی به زبان پاسکال تولید می نمود.

در سال ،۱۹۸۲ نگارش جدیدی از تک به نام TeX ۸۲ ارائه گردید که به طور کامل دوباره نویسی شده بود. این نگارش تفاوت های مهمی با نسخه های پیشین داشت. از جمله این تغییرات، الگوریتم هایفن گذاری (hyphenation algorithm) جدیدی بود که توسط Frank Liang نوشته شده و به طور کامل جایگزین الگوریتم هایفن گذاری نگارش های قبلی تک شده بود. TeX ۸۲ همچنین برای ایجاد نتایج یکسان روی سخت افزارهای مختلف، در محاسبات داخلی خود تماما از اعداد صحیح استفاده می نمود و اعداد اعشاری را به کار نمی گرفت. اعداد اعشاری روی سخت افزارها و سکوهای مختلف نرم افزاری با دقت های متفاوتی ذخیره و بازیابی می شوند. این مسئله یکی از مشکلات کلاسیک در دنیای برنامه نویسی است و اغلب باعث عملکرد متفاوت یک کد واحد روی سکوهای مختلف می شود.

سازندگان ۸۲ TeXبا بهره گیری از اعداد صحیح برای انجام همه محاسبات از مواجهه با این نوع مشکلات جلوگیری کردند. همچنین ۸۲ TeXبه یک زبان برنامه نویسی واقعی مجهز شده بود که نتیجه اصرار و پافشاری گای استیل بود. در سال ۱۹۸۹ کانوت نگارش جدیدی از تک و متافونت را ارائه داد. در این زمان او متوجه این مسئله شده بود که ۱۲۸ کاراکتر اسکی برای نمایش حروف مورد نیاز در زبان های مختلف کافی نیست. از این رو از نسخه ۰‎/۳ به بعد، قابلیت کار کردن با ورودی های هشت بیتی به تک افزوده شد که بدین ترتیب استفاده از ۲۵۶ کاراکتر مختلف را برای وارد کردن متن ممکن می ساخت. از نگارش ۰‎/۳ به بعد، شماره گذاری نگارش های تک براساس نوعی فرمول بندی خاص ریاضی انجام می پذیرد که اصطلاحا idiosyncratic خوانده می شود. در این سیستم ارتقای شماره نگارش به شکلی انجام می شود که شماره نگارش های آن نهایتا به عدد پی (۱۴/۳) نزدیک شود (میل کند). این گونه سیستم شماره گذاری به این واقعیت اشاره دارد که تک در حال حاضر بسیار پایدار است و ممکن است فقط اصلاحاتی جزئی لازم داشته باشد.

شماره نگارش فعلی تک ۳.۱۴۱۵۹۲ است و در دسامبر ۲۰۰۲ ارائه شده است. طراحی کلی سیستم تک از نگارش ۰‎/۳ به بعد تغییری نکرده است و فقط اشکال های جزئی آن در نگارش های بعدی برطرف شده اند. کانوت شخصا زمینه هایی را که تک احتمالا می توانست در آن ها بهتر شود، مطرح کرده است. اما در عین حال تأکید دارد که حفظ سیستمی که همواره خروجی یکسان و سازگاری تولید نماید، مهم تر از اضافه کردن امکانات جدید به این مجموعه است. به همین منظور کانوت گفته است که آخرین تغییر اعمال شده در تک (که باید بعد از مرگ وی صورت پذیرد) تغییر شماره نگارش آن به عدد پی است و پس از آن همه باگ های باقی مانده در تک باید به عنوان خصوصیات آن شناخته شوند! به همین ترتیب شماره نگارش های متافونت هم از نگارش ۰‎/۲ به بعد به عددe میل می کند و تغییر مشابهی بعد از مرگ کانوت اعمال خواهد شد. اما هیچ یک از این ها به معنی بسته بودن یا ایستایی روند توسعه مجموعه TeX نیست. تک با مجوز نرم افزار آزاد ارائه می شود و کد منبع آن در دسترس همگان قرار دارد. برنامه نویسان و توسعه دهندگان آزادند (بلکه از جانب توسعه دهندگان تک ترغیب هم می شوند) که کد این مجموعه را به دلخواه خود تغییر دهند، اما باید نسخه تغییر یافته خود را تحت نامی دیگر ارائه دهند. بدین ترتیب چندین نگارش اختصاصی یا بهبود یافته از تک ارائه شده اند که در ادامه با چند نمونه از مهم ترین آن ها آشنا خواهیم شد.

● ظهور LaTeX

تک با همه مزایایی که دارد، برای استفاده گسترده و کاربرپسند دارای یک مشکل اساسی است: تک یک زبان برنامه نویسی واقعی، گسترده و مشکل است که یادگیری و به کارگرفتن آن برای کاربران عادی پرزحمت و غیراقتصادی است. LaTeX (بخوانید: لی تک) که در سال ۱۹۸۴ توسط Leslie Lamport به وجود آمد، در واقع تکمیل تک بود؛ با همه چیزهایی که لازم بود به آن اضافه شود تا به محصولی قابل استفاده برای عموم تبدیل گردد. تعداد زیادی امکانات امنیتی و پیغام های خطا، همچنین قالب های متن مختلف (کتاب، نامه، گزارش و...)، امکانات فراوان برای ایجاد فصل ها، بخش ها، فهرست مطالب، فهرست راهنما (Index)، فهرست منابع (Bibliographic Index) و ایجاد پیوندهای مورد نیاز برای ساختن این فهرست ها در متن سند، از جمله امکاناتی هستند که در کنار سیستم حروفچینی و صفحه بندی تک، لی تک را به وجود می آورند.

از زمان ارائه لی تک، استفاده از آن، به شیوه اصلی بهره گیری از سیستم تک برای تولید اسناد تبدیل شده است. اهمیت تک به عنوان قلب اصلی سیستم، همچنان محفوظ است، اما کاربران عموما با لی تک کار می کنند. تک و لی تک هر دو با مجوزهای نرم افزار آزاد منتشر شده اند و کد منبع آن ها در دسترس همگان قرار دارد، اما مجوزی که لی تک تحت آن انتشار می یابد LaTeX Project Public License) LPPL) است؛ نه GPL معروف.

تفاوت اصلی LPPL باGPL در آن است که بر اساس LPPL فایل هایی که در هر نسخه یا توزیع جدید نسبت به نگارش قبلی تغییر محتوا پیدا می کنند باید

تغییر نام هم داده شوند تا در ارجاعات میان فایل ها ناسازگاری ایجاد نشود. سعی بر آن است که نگارش های بعدی LPPL با GPL سازگار شوند.

● دونالد اروین کانوت

دونالد اروین کانوت، متولد دهم ژانویه ،۱۹۳۸ متخصص برجسته علوم کامپیوتر و استاد بازنشسته دانشگاه استنفورد است. عمده شهرت کانوت به خاطر تألیف کتاب چند جلدی «هنر برنامه نویسی کامپیوتر» است که از معتبرترین منابع آکادمیک در عرصه علوم کامپیوتر به شمار می رود.او شاخه تحلیل دقیق الگوریتم ها را در علوم کامپیوتر ایجاد نمود و در عرصه های مختلف علوم نظری کامپیوتر فعالیت ها و دستاوردهای علمی مهمی داشته است. وی سیستم حروفچینی تک و سیستم طراحی فونت متافونت را ایجاد نمود و مفهوم literate programming را در علوم کامپیوتر مطرح کرد. چندین جایزه مهم علمی را دریافت کرده است و در دانشگاه ها و محافل آکادمیک عضویت دارد متعدد عضویت دارد، که از آن جمله می توان به دریافت مدال ملی علوم (۱۹۷۹)، جایزه جان فون نویمن (۱۹۹۵) و جایزه کیوتو (۱۹۹۶)، عضویت در آکادمی علوم فرانسه (از ۱۹۹۲) و عضویت در انجمن سلطنتی لندن (از ۲۰۰۳) اشاره نمود.

● چه کسی به LaTeX نیاز دارد؟

اگر متنی که شما درصدد تبدیل کردن آن به یک سند هستید، یک یا چند مورد از خصوصیات ذیل را دارد، احتمالا برای ایجاد ساختار آن به ابزاری توانمند مانندLaTeX نیازمندید: متن به فصل ها و بخش های مختلف تقسیم بندی می شود، طولانی است، ساختارهای تکراری فراوانی در آن وجود دارند، از نظر مفهومی یا ظاهری پیچیده است، حاوی تعداد زیادی تمرین جعبه متن یاساختارهای مشابه است، لازم است با دقت زیادی ساختاربندی شود، یک کپی اصلی از آن جهت ارجاعات یا چاپ های آینده مورد نیاز است، یک متن رسمی است که نیازمند توجه خاص است، کتاب، مقاله، تز یا یک راهنما است که شما شخصا می نویسید و به همین دلیل برای شما مهم است، سند شما یا دست کم بخشی از آن ممکن است در آینده دوباره ویرایش یا چاپ شود.استفاده از یک ویرایشگر متن (حتی از نوع ساده آن) برای نوشتن ساختار سند و نهایتا سپردن کار تولید خروجی نهایی به تک، بهبود عظیمی در روند کاری و چگونگی تفکر شما، نسبت حالتی که از یک واژه پرداز استفاده نمایید، پدیدمی آورد.

هنگامی که سند خود را «برنامه نویسی» می کنید، از وقفه های ذهنی و حرکتی متوالی در جریان کارتان بی نیاز می شوید؛ چرا که دیگر لازم نیست مانند وقتی که با واژه پرداز کار می کردید، دائما به تغییر دادن اندازه ، نوع و آرایش فونت ها، تغییر کادر، و انجام کارهای مختلف دیگر با استفاده از ماوس بپردازید.شما در میان متنتان پیغامی برای موتور تک می گذارید که مثلا، این یک عنوان است یا فلان عکس را در اینجا وارد کن. تک هنگام تولید سند نهایی، این کار را به سازگار ترین و شکیل ترین گونه ممکن انجام خواهد داد.مسئله مهم دیگری که شاید در حین کار با واژه پردازها متوجه آن شده باشید این است که اساسا تعیین کردن نسبت اندازه فونت ها، فواصل، چگونگی قرارگیری کادرها و مسائلی از این دست در یک سند، به گونه ای که ظاهر آن چه روی صفحه نمایشگر و چه بعد از چاپ روی کاغذ، زیبا و حرفه ای باشد، به هیچ عنوان کار ساده و سریعی نیست.اگر سند شما حاوی ساختارهای پیچیده ای مانند فرمول های ریاضی، نمودار، جدول و مواد مشابه باشد، کار باز هم سخت تر می شود.شاید برای شما هم پیش آمده باشد که وقت زیادی برای تهیه یک سند و آراستن آن به شیوه ای که دوست دارید (یا فکر می کنید درست است) صرف کنید و نهایتا وقتی آن را چاپ می کنید، از حاصل کار دلسرد شوید. مثلا ممکن است عناوین فصل ها را برای خوانایی بهتر زیاده از حد بزرگ کنید، به گونه ای که بعد از چاپ، توی چشم بزند، یا این که فونت های مختلف را به گونه ای نازیبا با هم به کاربرده باشید.واقعیت آن است که اگرچه دسترسی به ابزارهای نشر رومیزی امروزه بسیار آسان شده است، برای تهیه سندی که حروفچینی و صفحه آرایی زیبا و متناسبی داشته باشد، فقط دانستن شیوه کار با یک واژه پرداز کافی نیست یا شاید اصلا به کار نیاید. چنین جزئیاتی در حیطه تخصص و تجربه حرفه ای های گرافیک، حروفچینی و صفحه بندی قرار دارند. مجله ها و ناشران مختلف برای تدوین اختصاصی اندازه ها و نسبت فواصل در صفحات نشریات خود افراد زبده ای را به خدمت می گیرند.یکی از مهم ترین مزیت های تک این است که امکان تنظیم بسیار دقیق اندازه ها و فواصل را فراهم می کند.سیستم داخلی اندازه گیری تک فواصل را دقیق تر از طول موج نور مرئی، اندازه گیری و تعیین می نماید! اما چنین امکاناتی فقط به درد حرفه ای ها می خورد.

خبر خوب آن که، تنظیمات پیش فرض در تک و مخصوصا در قالب مجموعه لی تک بر اساس تجربه های چندصدساله حروفچین ها و صفحه بندهای کامپیوتری و غیرکامپیوتری ایجاد شده و خروجی های بسیار زیبایی را برای شما به ارمغان می آورند. در عین حال، مجبور نیستید با این پیش فرض ها کار کنید. می توانید اندازه ها و فواصل را در سند خودتان با دستورات متنوعی که در اختیار دارید، تغییر دهید، یا فایل های Style یا پکیج های مختلف را از اینترنت دریافت نمایید و آن ها را بر سند خود اعمال کنید یا حتی فایل های Style خود را بسازید، ذخیره نمایید یا منتشر کنید. همه چیز در اختیار شماست! به طور خاص، تک به عنوان بهترین گزینه برای حروفچینی متونی که حاوی فرمول های ریاضی متعدد هستند، شناخته می شود و در واقع یکی از مهم ترین اهداف اولیه کانوت، ایجاد سیستمی بود که فرمول های ریاضی را به شکلی دقیق، صحیح و البته شکیل و زیبا حروفچینی نماید. اگر تاکنون تجربه وارد کردن یک فرمول ریاضی را در متن خود در برنامه ای مانند Microsoft Office Word داشته اید، حتما به دشواری انجام دادن این کار واقف هستید و در ضمن برای این کار لازم است پکیج Microsoft Equation را روی سیستم خود نصب کرده باشید تا از امکانات فرمول نویسی Word استفاده نمایید. حال فرض کنید که یک سند Word را که حاوی فرمول های ریاضی است، روی کامپیوتر خودتان تهیه، ویرایش و ذخیره کرده اید.

اگر این سند را روی کامپیوتر دیگری که Word مایکروسافت روی آن نصب شده است باز کنید، ممکن است متوجه شوید که شکل ظاهری فرمول ها نسبت به آن چه که روی کامپیوتر خودتان دیده می شد تغییر کرده یا اصلا بعضی از حروف و علایم ریاضی که شما وارد کرده اید، روی این دستگاه جدید جای خود را به علایم دیگری داده اند! چنین مشکلاتی را من و دوستانم بارها تجربه کرده ایم و چاره ای جز کنار آمدن با شرایط و دستکاری مجدد فایل ها نداشته ایم. در مقابل، شما می توانید هر نوع فرمول و علایم ریاضی را با آرایش دلخواهتان توسط تک بنویسید و فایل خروجی نهایی روی همه کامپیوترها به شکلیکسانی تولید می شود و به نمایش درمی آید. آنچه که می بینی، آن چیزی نیست که دریافت خواهی کرد یک رهیافت اصلی در ایجاد اسناد توسط کامپیوتر،اصطلاحا WYSIWYG (بخوانید: ویزی ویگ) خوانده می شود که مخفف عبارت What you see is what you get است. این همان رهیافتی است که به پیدایش برنامه هایی مانندWord مایکروسافت منجر شده. در محیط چنین برنامه هایی شما سند خود را در هر لحظه به شکلی می بینید که در همان لحظه اگر چاپ شود، روی کاغذ ظاهر می شود.در محیط هایی مانند تک، شما سند خود را برنامه نویسی می کنید و نهایتا برای دیدن سند به شکلی که بعد از چاپ دیده خواهد شد، باید کد کامل شده را کامپایل کنید. فرآیند کامپایل کردن و مشاهده خروجی نهایی همزمان با وارد کردن متن به ویرایشگر انجام نمی شود. بنابراین محیط های لی تک غالبا به طور مستقیم و همزمان WYSIWYG نیستند. اگرچه این رهیافت ممکن است برای کاربرانی که به استفاده از ابزارهای بصری WYSIWYG هم زمان عادت کرده اند خوشایند نباشد، باز هم مزیت های بسیاری دارد. مهم ترین آن ها همانگونه که در ابتدا گفتیم آن است که روال کاری و فکری کاربر در حین تایپ کردن سند خود به طور مداوم به هم نمی خورد.

در ضمن تغییراتی که در ظاهر سندتان می دهد چون باید به شکل کد بیان شوند، دقیق و منسجم اعمال می شوند و مدیریت آن ها هم ساده تر می شود. اگر قصد دارید ادامه این مقاله را بخوانید و احتمالا استفاده از تک را امتحان کنید، تغییر رویه از WYSIWYG همزمان به رهیافت غیرهمزمان آن، احتمالا سخت ترین کاری است که باید انجام دهید، اما نهایتا کار خیلی سختی هم نیست.محیط LyX یکی از محیط های مبتنی بر تک است که بر مبنای ذهنیت متفاوتی ساخته شده که WYSIWYM(سرنام What you see is what you mean) خوانده می شود. در این محیط می توانید در یک پنجره متن سند خود را وارد نمایید و برنامه نویسی کنید و در پنجره ای در کنار آن در هر لحظه شکل خروجی سند حاصل از کارتان را ببینید. چگونه شروع کنیم؟ همان گونه که گفته شد، تک در واقع یک زبان برنامه نویسی است که برایحروفچینی و صفحه بندی ایجاد شده و از این جهت به زبان هایی مانند X) HTML) یا XML شبیه است. همچنین گفته شد که به دلیل سختی و پیچیدگی زبان تک، نسخه کاربرپسند آن با نامLaTeX به وجود آمد. برای بهره گرفتن از امکانات این زبان، ابتدا لازم است آن را یاد بگیرید. فرآیند یادگیری، بسته به هدفی که شما دارید و میزان استفاده ای که می خواهید از تک بنمایید، می تواند کوتاه یا بلندمدت باشد. اگر هدف شما یاد گرفتن لی تک در حدی است که سندهای عادی روزمره یا سندهای نسبتا بزرگ اما ساده را با آن ایجاد، ذخیره و مدیریت نمایید، فرآیند یادگیری برای شما احتمالا بیش از یکی دو روز به طول نخواهد انجامید. لازم است بار دیگر یادآور شویم که برای چنین کاربردهایی هم یاد گرفتن لی تک به زحمتش می ارزد؛ چرا که شما با لی تک اسناد روزمره خود را با حجم کم و به طور سازگار و شکیل ایجاد و مدیریت خواهید کرد.

اگر قصد دارید کارهای بزرگ تر و پیچیده تری را به لی تک بسپارید، باید سرمایه گذاری زمانی طولانی تری انجام دهید، که احتمالا در میان مدت بازدهی خوبی برای شما خواهد داشت. در ادامه ما نصب و راه اندازی یک سیستم مبتنی برLaTeX را قدم به قدم توضیح می دهیم و با ارائه یک مثال ساده، شیوه کار با آن را بررسی می نماییم.

● نصب یک سیستم مبتنی بر LaTeX

مانند بیشتر زبان های برنامه نویسی متداول، برای استفاده مؤثر از LaTeX به سه چیز نیاز دارید:

یک هسته یا موتور مرکزی LaTeX به همراه کتابخانه های اصلی و متداول آن یک ویرایشگر متن اختصاص یافته برای LaTeX، یا یک ویرایشگر متن مانند Emacs که دارای حالت کار با LaTeX باشد. یک نوع محیط توسعه، کهابزارهای بصری مناسب را در اختیار شما قرار دهد و به طور قابل ملاحظه ای حجم کدنویسی دستی شما را کاهش دهد. اگر یکی از توزیع های پرشمارسیستم عامل لینوکس (مخصوصا یک نسخه جدید و مشهور) روی کامپیوتر شما نصب است، احتمالا نیازی به نصب برنامه یا بسته جدیدی برای کار کردن با LaTeX ندارید؛ چرا که بیشتر بسته ها و برنامه های مورد نیاز برای کار با LaTeX در حین نصب سیستم عامل لینوکس به طور پیش فرض روی کامپیوتر شما نصب شده اند. اگر در حین نصب سیستم عامل لینوکس، این نوع بسته ها را نصب نکرده اید، می توانید با استفاده از دیسک های نصب سیستم عامل آن ها را نصب کنید. بسیاری از کاربرانی که تحت سیستم عامل لینوکس با LaTeX کار می کنند، از ویرایشگر متن Emacs و حالت اختصاصی آن برای LaTeX برای وارد کردن و برنامه نویسی سندهای تک استفاده می کنند.در سیستم عامل ویندوز باید همه بسته ها و برنامه های مورد نیاز برای کار کردن با تک را خودتان نصب کنید. پیشنهاد ما استفاده از بسته معروف MIKTeX به عنوان موتور اصلی LaTeX است. این بسته را می توانید از Sourceforge.net دریافت کنید. به یاد داشته باشید که مرجع اصلی برای دریافت اطلاعات و بسته های مختلف تک، سایت CTAN.org می باشد. برای وارد کردن و برنامه نویسی سندهای تک در ویندوز هم گزینه های متعددی وجود دارد. به طور کلی استفاده از یک ویرایشگر متن اختصاص یافته برای کدنویسی تک به هیچ عنوان اجباری نیست، اما غالبا باعث سهولت در کار و صرفه جویی در وقت است. لسلی لمپارت لسلی لمپارت، متولد ۱۹۴۱ است. لیسانس خود را در رشته ریاضی در سال ۱۹۶۰ از دانشگاه MIT دریافت کرد و فوق لیسانس و دکترای خود را هم به ترتیب در سال های ۱۹۶۳ و ۱۹۷۲ از دانشگاه برندایس در رشته ریاضی دریافت نمود. وی سپس به عنوان متخصص علوم کامپیوتر در شرکت هایی نظیر موسسه فناوری ماساچوست MIT) ءSRI)، دیجیتال و کامپک مشغول کار شد و در سال ۲۰۰۱ به مرکز تحقیقات مایکروسافت در کالیفرنیا پیوست. تحقیقات وی نقش مهمی در نظریه سیستم های توزیع یافتهداشته اند. در علوم کامپیوتر نیز بیشتر شهرت وی به دلیل تحقیقاتش در زمینه منطق زمان مند (Temporal logic) است.

دکتر لمپارت تاکنون سه دکترای افتخاری از سه دانشگاه اروپایی دریافت کرده است: از دانشگاه های رنس و کریستین آلبرشت در سال ۲۰۰۳ و از دانشگاه EPFL در سال .۲۰۰۴ همچنین در سال ۲۰۰۴ جایزه Piore از طرف IEEE به وی اهدا گردید. در ویندوز می توانید مانند لینوکس ویرایشگر متن معروف Emacs را نصب نمایید و از حالت اختصاصی تک در آن استفاده کنید.

به یاد داشته باشید که ابزاری مانند Emacs، یک ویرایشگر متن خوانده می شود، اما امکانات و توانایی هایپرشمار آن هرگز با چیزی مثل Notepad قابل قیاس نیست.گزینه رایگان دیگر WinShell است که رابط کاربری ساده و مفیدی دارد و به ویژه برای شروع کار با تک مفید است. اغلب کاربران ترجیح می دهند از ویرایشگر تجاری WinEdt برای کدنویسی TeX استفاده کنند که دارای امکانات بصری فراوان و پشتیبانی فنی مناسب (در صورت خرید مجوز استفاده) است و البته استفاده آزمایشی از آن تا یک ماه رایگان است. ما استفاده از یک ویرایشگر جدید به نام TeXnicCenter را پیشنهاد می کنیم که هنوز در مرحله بتا است، اما به خوبی کار می کند، رایگان است و در ضمن امکانات بسیاری را مانند محیط WinEdt در اختیار شما قرار می دهد. محیط های ویرایشی پیشرفته ای مانند WinEdt و TeXnicCenter به شما امکان می دهند قسمت عمده ای از کدنویسی سند خود را به ابزارهای بصری آن ها محول کنید و به این نحو حجم کدنویسی شما را تا حد زیادی کاهش می دهند. اگر از ابتدا قصد استفاده از TeX برای ایجاد سندهایی به زبان فارسی را دارید، چند گزینه پیش روی شماست. استفاده از ویرایشگر ساده و جمع و جور FarsiTeX امروزه بسیار متداول است. اما این ویرایشگر امکانات پرشمار محیط هایی مانند WinEdt را در اختیار شما قرار نمی دهد. گزینه دیگر TeX پارسی است که امکانات وسیع تری را در اختیار شما می گذارد، اما رابط کاربری چندان رضایت بخشی ندارد.

TeX پارسی توسط شرکت داده کاوی ایران تهیه شده و چندین ناشر معتبر ایرانی مانند انتشارات انجمن ریاضی ایران و انتشارات دانشگاه صنعتی شریف از آن استفاده می کنند، اما ظاهرا با سیستم عامل ویندوزاکس پی چندان سازگار نیست و به همین دلیل ما برای شروع فارسی نویسی در تک همان ویرایشگر ساده FarsiTeX را پیشنهاد می کنیم. چگونگی نصب و پیکربندی یک سیستم تک برای خط و زبان فارسی را در ادامه توضیح خواهیم داد و در اینجا شیوه نصب یک سیستم تک متداول که به طور معمول برای نگارش به زبان انگلیسی به کار می رود را شرح می دهیم.در هر صورت شما ابتدا باید بسته MIKTeX و بعد از آن ویرایشگر انتخابی خود را نصب نمایید. معمولا بعضی برنامه های کمکی مانند GSView (برای مشاهده فایل های PS،EPS ،EPI ،PRN و PDF) همراه با توزیع های مختلفTeX نصب می شوند که البته می توانید به طور انتخابی آن ها را نصب نکنید، اما بهتر است به برنامه نصب اجازه دهید که طبق پیش فرض هایش آن ها را نصب کند. برای دریافت MikTeX می توانید به سایت miktex مراجعه کنید و علاوه بر آشنایی با این بسته نرم افزاری و چگونگی نصب آن، فایل های مورد نیازتان را دریافت نمایید، یا می توانید مستقیما به صفحه اختصاصی MiKTeXروی سایتsourceforge.net/projects/miktex/) Sourceforge) بروید. دقت کنید که بسته مناسب را بر اساس سیستم عامل خود انتخاب کنید و به خاطر داشته باشید که بسته های MiKTeX فعلا با سیستم عامل ویندوز ویستا سازگار نیستند. برای دریافت برنامه TeXnicCenter می توانید به آدرس اینترنتی sourceforge.net مراجعه کنید و Emacs هم از سایت رسمی و اختصاصی آن، gnu.org/software قابل دریافت است. همچنین فارسی تک و منابع مرتبط با آن را می توانید در سایت رسمی آن، farsitex.org بیابید. پس از نصب MIKTeX و یک ویرایشگر مناسب، آماده هستید که نخستین سندتان را با LaTeX بسازید.

آغاز کار: یک سند ساده

ویرایشگر متنی را که برای کار کردن با TeX انتخاب و نصب کرده اید باز کنید. نام و مشخصات نویسنده را در این کد به نام و مشخصات خودتان تغییر دهید و قسمت های دیگر را عینا وارد نمایید. اجزای مختلف این کد را با هم بررسی می کنیم:

documentclass{report} [a۴paper۱۲]

چنین عبارتی در ابتدای هر سند تک ظاهر می شود. documentclass از دستورهای اصلی تک است که به دنبال آن باید نوع سند در آکولاد مشخص شود. چهار قالب اصلی سند در تک عبارتند از letter (نامه)، article (مقاله)، report (گزارش) و book. هر یک از این قالب ها امکانات و اجزایی از پیش طراحی شده دارند که شما را در تهیه سندی شکیل و ساختاریافته کمک می کنند. مشخصات هر یک از این قالب ها را می توانید در هر جزوه آموزشی تک و همچنین در فایل های راهنمای بسته MiKTeX بیابید. عبارات داخل (کروشه) اجباری نیستند و می توانید آن ها را وارد نکنید. ما در اینجا عبارت a۴paper را وارد کرده ایم تا سندمان در اندازه صفحه A۴ که در ایران متداول است، تولید شود. همچنین برای این که اندازه فونت متن اصلی ۱۲ باشد، عبارت ۱۲pt را بعد از آن گنجانده ایم. قالب report با تغییرات متنوعی که می توان در آن اعمال کرد، برای ایجاد بیشتر انواع سند، مانند مقاله، گزارش، نامه، کتاب و پایان نامه مناسب است. قالب های فراوان دیگری هم در بسته LaTeX موجود هستند و بسیاری دیگر نیز روی سایت CTAN قرار دارند که قابل دریافت و استفاده هستند.

▪ { begin {document

این عبارت به همراه {document{begin اصطلاحا یک محیط (environment) را تشکیل می دهند و هرچه میان این دو عبارت بیاید، در این محیط قرار دارد. محیط ها اجزای اصلی سند را تشکیل می دهند و بزرگ ترین و اصلی ترین محیط در همه سندها که تمامی محیط های دیگر در داخل آن قرار می گیرند، محیط document است. بدیهی است که همه محیط ها باید دارای یک نقطه آغاز و یک نقطه شروع باشند و نقاط ابتدا و انتهای محیط های متداخل باید به شکل غیرمتقاطع باشد. محیط report دارای امکان اضافه کردن یک صفحه عنوان (title) است که در آن می توان به ترتیب نام سند، نام نویسنده یا نویسندگان، محل کار یا تحصیل آن ها و تاریخ نگارش سند را درج نمود. عبارات فوق به ترتیب این اطلاعات را در قالب معین شده ارائه می دهند و سپس دستور maketitle صفحه عنوان را ایجاد می کند. دقت کنید که همه دستورها در تک با شروع می شوند. همچنین آوردن در میان متن باعث شروع یک سطر جدید می شود. این محیط هم از محیط های اختیاری در قالب report است. در این محیط شما می توانید خلاصه ای از محتوا و مضمون سندی که در دست تهیه دارید بنویسید. هر گاه علامت % در جایی از یک سطر از کد تک بیاید، مابقی آن سطر از سوی کامپایلر به عنوان توضیحات فرض شده و در سند نهایی ظاهر نخواهدشد. برای آوردن خود علامت % در متن باید آن را بعد از یک علامت قرار داد؛ همان طور که در ابتدای متن اصلی مشاهده می کنید. امکان اضافه کردن کامنت در درون سند، یکی از امتیازهای بزرگ تک در مقایسه با محیط هایی مانند Office است. می توانید انواع یادداشت ها، تذکرات، تصحیحات احتمالی و موارد مشابه را به عنوان کامنت در فایل کد سند خود وارد کنید و این کامنت ها در سند نهایی ظاهر نخواهند شد. با این عبارت محیط اصلی سند که همان محیط document است به پایان می رسد. فایلی را که عبارات فوق را در آن وارد کرده اید با پسوند tex ذخیره نمایید. برای تولید سند نهایی باید این فایل را به موتور تک بدهید تا فایل خروجی را برای شما بسازد. اگر در محیطی مثل TeXnicCenter یا WinEdit کار می کنید، کافی است دکمه Build را از نوار ابزار فشار دهید یا دستور مربوط به آن را از فهرست ها پیدا و اجرا کنید. به طور سنتی ایجاد خروجی قابل چاپ در دو یا سه مرحله انجام می شود. ابتدا یک فایل DVI که بیشتر به منظور مشاهده شکل خروجی سند شما است، تولید می شود و در مرحله بعد یک فایل پست اسکریپت (ps) یا pdf از فایل DVI ساخته می شود. چون امروزه فرمت های DVI و پست اسکریپت کاربرد زیادی (مخصوصا برای کاربران خانگی و اداری) ندارند، در بسته های جدیدتر تک معمولا این امکان وجود دارد که شما مستقیما سندتان را در قالب یک فایل pdf بسازید. در محیط هایی مثل WinEdit این کار به راحتی و بدون نیاز به تنظیم خاصی ممکن است.اما اگر ویرایشگر اختصاص یافته ای را برای کار کردن با تک نصب نکرده باشید، باز هم فقط با نصب بسته MiKTeX می توانید فایل خروجی مورد نظر را بسازید. برای این منظور باید موتورLaTeX را از خط فرمان فرابخوانید. مثلا اگر فایل شما First.tex نام دارد و در خط فرمان هم به پوشه حاوی این فایل آمده باشید، کافی است در خط فرمان تایپ کنید: latex first.tex اگر فایل شما حاوی خطا نباشد، با اجرای این دستور در خط فرمان، فایل DVI سند شما در همان پوشه فایل اصلی ایجاد می شود. فایل DVI را با برنامه ای مانند YAP می توانید باز کنید و ببینید. در ضمن YAP می تواند از این فایل یک فایل PS برای شما بسازد که برای چاپ مناسب است. اما چون فایل هایPS امروزه کمتر از گذشته رواج دارند، می توانید از ابتدا دستور زیر را به جای دستور بالایی وارد کنید: pdflatex first.tex در واقع با این دستور شما موتور pdflatex را به جای موتور اصلی latex فراخوانده اید و حاصل کار مستقیما یک فایلpdf است.

▪ یادگرفتن LaTeX

لی تک اساسا زبان بسیار راحتی است و طراحان آن به ویژه به سهولتیادگیری آن توجه کرده اند. برای یاد گرفتن لی تک احتمالا سریع ترین راه این است که یکی از جزوه های آموزشی رایگان لی تک را از اینترنت دریافت کنید و در طول یک یا چند روز آن را مطالعه کنید و تمرین ها را انجام دهید. یادگیری لی تک معمولا تجربه لذت بخشی است و در پایان دوره آموزشی کوتاهتان، زبانی را یاد گرفته اید که توانایی بالایی در ایجاد و مدیریت اسنادتان به شما می دهد و از بسیاری از دردسرهای کار کردن در محیط های واژه پرداز نجاتتان می دهد. پس می توانید همین الا ن شروع کنید!

 

/ 1 نظر / 10 بازدید