Что такое LaTeX

Что такое LaTeX

Знакомство с компьютерной системой LaTeX, для какого класса задач её лучше использовать, какие её преимущества и недостатки. 

Итак, начать разговор разумнее с небольшого экскурса в историю. Я думаю, что многим людям, которые тесно связанны с компьютерами, известно имя профессора Дональда Кнута, автора бестселлера «Искусство программирования». Именно он, столкнувшись с проблемами при подготовке макета второго издания своей книги, разработал типографскую систему TeX. Систему планировалось завершить еще в 1978 году, однако окончательное завершение TeX растянулось еще на 10 лет. Однако, несмотря на свою мощность, TeX - является языком разметки достаточно низкого уровня, поэтому пользователи чаще применяют расширения. Одним из таких популярных расширений и является LaTeX, разработанный в 1984 году программистом Лесли Лемпортом.

С тех пор сменилось несколько версий, но ближе к концу 90-х годов программа стабилизировалась. Существуют версии системы для различных платформ, таких как Linux, Windows, DOS, Mac и др. Стандарт TeX используется для экспорта документов во многих профессиональных математических пакетах (Maple, Mathematica, Maxima), а также например для ввода формул в Википедии.

Что такое LaTeX

Теперь попробуем определить в чем же преимущество LaTeX по сравнению с программами типа MS Word.

Современные текстовые процессоры используют технологию WISIWYG, что предполагает акцентирование внимания на том, как документ будет выглядеть на печати. LaTeX является программой языка разметки, нацеленной на оформление документов (как HTML используется для формирования веб-страниц). Особенностью LaTeX является разделение правил создания содержания документа и правил его оформления. Фактически, внимание пользователя фокусируется на содержании документа и его логической структуре, а всю работу по верстке документа берет на себя компьютер, основываясь на выбранном классе документа (книга, статья, отчет, письмо или др.) Кроме того, автоматизируется не только размещение иллюстраций, работа с таблицами, нумерация формул, но и работа с перекрестными ссылками, библиографией и др.

С точки зрения особенности такого подхода, можно выделить несколько его преимуществ LaTeX.

  1. Легкая смена оформления документа.

    Например, если первой строчкой документа будет команда \ documentclass {article}\, то мы получим статью. То есть документ будет сверстан на одну сторону в одну колонку шрифтом в 10px. Если захотим сверстать в две колонки и шрифтом 12px, то достаточно написать \ documentclass [12pt, twocolumn] {article}\. Если же мы захотим превратить статью в книгу, и соответственно сверстать текст на две стороны, то нужно изменить имя класса \article\ на \book\. Вот и все. Данный подход на самом деле очень важен. Например, если вы пишете статью для журнала, то вам совершенно не нужно думать о шрифтах, полях и других параметрах оформления. Издательства таких журналов имеют уже готовые файлы с описанием класса документа.

  1. Переносимость результата между различными компьютерами.

    LaTeX компилирует tex-файлы в переносимые форматы, такие как DVI, PS или PDF, на выбор пользователя. Таким образом, подготовленный документ можно перенести на другой компьютер и распечатать на любом принтере будучи уверенным в том, что документ везде будет выглядеть одинаково.

  1. Быстрый способ набора математических формул.

    WISIWYG инструменты, такие как например Equation в Word, кажутся несложными для новичка и не требуют много времени на изучение, однако серьезно тормозят работу, когда нужно набирать тексты с большим количеством формул. В этом случае командный язык позволяет существенно увеличить скорость набора, позволяя не отвлекаться на перенос рук между клавиатурой и мышкой и загрузку редактора формул. Кроме того, в LaTeX просто гораздо больше возможностей по набору формул чисто технически, потому что некоторые формулы, используемые в математике, набрать ни в Equation ни даже в MathType нет возможности из-за отсутствия там нужных символов.

  1. Простая нумерация формул.

    LaTeX способен автоматически проставлять нумерацию формул. Более того, с помощью пары команд \ label и \ ref \ можно легко работать с перекрестными ссылками. Аналогично можно работать с номерами рисунков, таблиц, глав и др.

  1. Работа с библиографией.

    Это серьезная проблема при подготовке научных публикаций. Опять же по той причине, что отслеживать вручную нумерацию библиографических источников сложно. LaTeX позволяет не только работать со списками источников но и работать с библиографическими базами данных. В таком случае полностью автоматизируется не только процесс слежения за нумерацией, но и оформления библиографии согласно стандартам.

  1. Плавающие объекты.

    Размещение рисунков - не всегда простая задача, ведь при этом нужно переформатировать текст. Стандартная ситуация в текстовых процессорах - когда рисунки цепляют соседнюю страницу, текст разрывается некрасиво. LaTeX берет на себя все эти проблемы, пользователь лишь указывает, что он хотел бы здесь вставить рисунок, а уже компилятор сам находит для него конкретное место. Например, если изображение большое, то для него будет выделена отдельная страница, ну и т.д.

  1. Поддержка макросов.

    Можно создавать собственные команды и перекрывать уже существующие. Если вы постоянно набираете однотипные документы, то это очень удобно.

  1. Простота генерации документов из других программ.

    Вы можете легко реализовать генерацию tex-файлов из своих собственных программ.

  1. Простота формата.

    Файлы LaTeX — это специализированные программы, а поэтому они представляют собой обычные текстовые файлы. В период массового пользования дискетами, стандартной проблемой было невозможность прочитать файлы из-за проблем с файловой системой. Еще одно преимущество текстового формата - широкий выбор редакторов на любой платформе. Набирать на компьютере тексты с формулами в формате Word- нет возможности.

  1. Огромное количество дополнительных пакетов.

    Фактически, возможности LaTeX - являются неограниченными. Используя сторонние пакеты, можно писать не только текст, но и ноты, расписывать шахматные партии, рисовать различные схемы и многое другое.

 

Также следует упомянуть о минусах этой системы, хотя они могут считаться и продолжением её достоинств.

 

  • На изучение основного набора команд нужно затратить некоторое время. Метод тыка здесь не совсем проходит. Также нужно иметь некоторые базовые понятия с типографики. Собственно это мало чем отличается от изучения ещё одного нового языка программирования.
  • LaTeX не подходит для того, чтобы быстро набросать простенький документ со сложным оформлением, но без видимой структуры или тогда когда ваши документы не похожи друг на друга. Его стихия - автоматизация рутинных операций при подготовке однотипных документов, а также структурированных документов большого объема. 
  • Сложность конвертации tex-файлов в некоторые форматы (например doc). Свободные конверторы недостаточно функциональны, а коммерческие стоят немалых денег. Но в любом случае, в силу специфики системы, не каждый файл вообще возможно переконвертировать. 

 ***

Редактирование текста

OpenOffice.org 3.4.1

ETXT.Проверка текста на уникальность