فایل TEX چیست؟
TeX زبانی است که شامل برنامه نویسی و همچنین ویژگی های نشانه گذاری است که برای تایپ کردن اسناد استفاده می شود. دونالد کنات از دانشگاه استنفورد، خالق این سیستم حروفچینی ماهرانه است. در سراسر جهان، TeX انتخاب نهایی نویسندگان و ناشران برای تولید اسناد فنی با کیفیت بالا است. TeX کار برجسته ای در قالب بندی عبارات پیچیده ریاضی انجام می دهد. در ارتباط با یک فتوتایپتر با کیفیت بالا، TeX با نتایج تولید شده توسط بهترین سیستم های حروفچینی سنتی رقابت می کند. بنابراین به عنوان کلاسیک ترین سیستم های چاپی دیجیتال در نظر گرفته می شود.
فایلهای ورودی TeX بر اساس کد ASCII هستند، بنابراین به اشتراکگذاری دستنوشتهها در میان نویسندگان، مدیران انتشارات و منتقدان امکانپذیر است. طیف وسیعی از محیطهای محاسباتی، تقریباً هر پلتفرم مدرن و بسیاری از پلتفرمهای قدیمیتر از TeX پشتیبانی میکنند. علاوه بر این، TeX یک نرم افزار رایگان است که در دسترس طیف وسیعی از مصرف کنندگان است. بسیاری از تاسیسات یونیکس از UNIX troff و TeX به عنوان سیستم قالب بندی برای اهداف مختلف استفاده می کنند. سایر کارهای حروفچینی به شکل فوق العاده ای در قالب LaTeX، ConTeXt و سایر بسته های ماکرو انجام می شود.
تاریخچه مختصر
TeX was designed and written by Donald Knuth in 1978. گای استیل از موسسه فناوری ماساچوست، ورودی/خروجی TeX را اصلاح کرد تا آن را تحت سیستم عامل ناسازگار مانند سیستم اشتراک زمانی (ITS) اجرا کند. اولین نسخه TeX تحت سیستم عامل WAITS Stanford در زبان برنامه نویسی (SAIL) توسعه یافت و برای اجرا بر روی PDP-10 آزمایش شد. کنوت ایده برنامه نویسی با سواد را برای نسخه های پیشرفته معرفی کرد. برنامه نویسی باسواد راهی برای تولید کد منبع و تایپ کامپایل (در TeX) برای اسناد پیوند متقابل با استفاده از فایل اصلی است. زبان مورد استفاده برای توسعه این نسخههای پیشرفته TeX، WEB نامیده میشود که ترکیبی از برنامههای DEC PDP-10 Pascal برای اطمینان از قابل حمل بودن است.
A revised new version of TeX published in 1982 and was called TeX82. تغییر عمده جایگزینی الگوریتم خط خطی اصلی با الگوریتم جدید نوشته شده توسط فرانک لیانگ است. برای اطمینان از قابلیت حمل در پلتفرم های مختلف، به جای استفاده از ممیز شناور، TeX82 از محاسبات نقطه ثابت همراه با یک زبان برنامه نویسی واقعی و کامل استفاده می کند. در سال 1989 نسخه جدیدی از TeX و Metafont منتشر شد. بنابراین نسخه 3.0 TeX ورودی های 8 بیتی را تسهیل می کند و اجازه 256 کاراکتر مختلف را در متن می دهد. بعد از نسخه 3، به روز رسانی ها با اضافه کردن یک رقم اضافی در انتهای اعشار نشان داده می شوند، به عنوان مثال نسخه فعلی TeX به عنوان 3.14159265 نشان داده شده است. این نسخه آخرین بار در تاریخ 12/1/2014 به روز رسانی شده است.
ورودی TeX
یک فایل ورودی به TEX را می توان با یک ویرایشگر متن با استفاده از متن معمولی آماده کرد. برخلاف یک پردازشگر Word معمولی، این فایل ورودی هیچ گونه کاراکتر کنترل نامرئی را ممنوع می کند. یک فایل را می توان در فایل دیگری جاسازی کرد که شامل تعاریف ماکرو و تعاریف کمکی است که قابلیت های TeX را افزایش می دهد. اگر نصب TeX با هر فایل ماکرو همراه باشد، اطلاعات محلی در مورد TeX در مورد استفاده از فایل های ماکرو نشان می دهد. فرم استاندارد TeX، ترکیبی از ماکروها و سایر تعاریف معروف به TEX ساده را ادغام می کند.
بر اساس دانش دقیق از اندازه همه کاراکترها و نمادها، سازماندهی بهینه حروف در هر خط و خطوط در هر صفحه را محاسبه می کند. در زمان پردازش سند، یک فایل .dvi تولید می شود که در آن dvi مخفف دستگاه مستقل است. برنامه های درایور دستگاه برای چاپ یا پیش نمایش سند با پسوند dvi مورد نیاز است. امروزه، تولید dvi توسط یک pdf-TeX معمولاً مورد استفاده قرار می گیرد. هیچ دانش قبلی در مورد فونت ها در نصب TeX در دسترس نیست، بنابراین از فایل های فونت خارجی که بخشی از محیط محلی TeX هستند برای به دست آوردن اطلاعات برای سند استفاده می شود.
سیستم حروفچینی
حدود 300 دستور (فرمان) اولیه را می توان توسط سیستم پایه TeX درک کرد. اولیه دستورات سطح پایینی هستند، بنابراین یک کاربر معمولی به ندرت از آنها به طور مستقیم استفاده می کند و بیشتر عملکردها توسط فایل های فرمت انجام می شود. این فایل های فرمت، تصاویر حافظه از پیش بارگذاری شده TeX هستند که با بارگیری مجموعه های بزرگ ماکرو به دنبال آن هستند. فرمت پیش فرض اصلی زبان یعنی TeX ساده حدود 600 دستور اضافه می کند.
یک بک اسلش گروه بندی شده با پرانتزهای مجعد نشان دهنده شروع دستورات TeX است. از آنجایی که TeX یک زبان ماکرو و مبتنی بر نشانه است، تقریباً تمام خصوصیات نحوی TeX را می توان در زمان اجرا تغییر داد، از جمله مواردی که توسط کاربر تعریف شده است به جز توکن های غیرقابل گسترش که سپس اجرا می شوند. خود بسط عملاً بدون مشکل است. برخی از دستورات باید پس از آرگومان هایی بیایند که به توضیح عملکرد یک دستور کمک می کند. برای مثال، دستور \vskip به TEX هدایت میکند تا صفحه را به پایین/بالا بپرد و پس از آن یک آرگومان تعیین میکند که چقدر فضا باید پرش شود.
نسخه های
LaTeX رایج ترین فرمت مورد استفاده است که در اصل توسط Leslie Lamport توسعه داده شده است. LaTeX سبک های مختلف سند را برای فایل ها، حروف، کتاب ها و اسلایدها ادغام می کند و ارجاع دهی و شماره گذاری خودکار را برای بخش ها و عبارات ریاضی مختلف ارائه می دهد. AMS-TeX فرمت محبوب دیگری است که توسط انجمن ریاضی آمریکا ساخته شده است.
AMS-TeX دستورات کاربرپسند بسیار بیشتری را ارائه می دهد که می توانند توسط مجلات بازتعریف شوند تا با سبک محلی خود مطابقت داشته باشند. LaTeX می تواند از مزایای AMS-TeX با استفاده از بسته های AMS استفاده کند که سپس AMS-LaTeX نامیده می شود. ConTeXt فرمت دیگری است که توسط Hans Hagen نوشته شده است که عمدتاً برای انتشار رومیزی استفاده می شود.
نرم افزار TeX چندین ویژگی را ارائه می دهد که در زمان ایجاد آن در سایر سیستم های حروفچینی در دسترس نبودند یا کیفیت پایین تری داشتند. برخی از ویژگیهای نوآورانه این زبان مبتنی بر الگوریتمهای جالبی است که از پایاننامههای دانشآموزان Knuth به دست آمده است. در حالی که دیگر برنامه های حروفچینی اکنون ویژگی های مفید TeX را در برنامه های خود گنجانده اند.