ConTeXt

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 20:00, 19 мая 2017.
ConTeXt
Roc Hux0i9o.jpg
Создатели: Ханс Хаген
Разработчики: Ханс Хаген, Тако Хоекватер, Моджка Миклавец
Выпущена: 1991, Нидерланды (1991, Нидерланды)
Операционная система: Мулиплатформенная (Tex)
Лицензия: GNU GPL v2
Веб-сайт wiki.contextgarden.net

ConTeXt представляет собой универсальный документальный процессор. Главным образом он подходит для структуризации документов, для автоматизированного производства документов, для хорошей типографии и для мультиязычной верстки. Он частично основывается на системе верстки Tex и использовании языка разметки документа для подготовки рукописи. Типографские и автоматизированные возможности ConTeXt'a весьма обширны, включают в себя интерфейсы для обработки микротипографики, нескольких сносок и классов сносок, а также позволяют влиять на шрифты и функции OpenType. Кроме того ConTeXt поддерживает и предлагает большое количество цветов, фонов, гиперссылок, презентаций, слияний фигурного текста и условий компиляции. Это дает пользователю обширный контроль для форматирования, упрощая создание нового проекта и стилей, не требует изучения низкоуровневого макро языка Tex [Источник 1]

ConTeXt предусматривает многоязычный пользовательский интерфейс с поддержкой разметки на английском, голландском, немецком, французском, итальянском языках, а также поддержку вывода на многих языках, в том числе языках Западной, Восточной Европы, арабской вязи, японском, китайском и корейском. Также это позволяет пользователю использовать различные системы, такие как: pdfTex, XeTex, LuaTex без изменения пользовательского интерфейса. К тому же ConTeXt предусматривает макро пакет для построения диаграмм химических элементов с Tex, называемый PPCHTex, а также многие другие модули. Этот пакет может быть использован с обыкновенным Tex'ом и LaTeX'ом. ConTeXt, первоначально названный pragmatex'ом, получил свое название примерно в 1996 году от Ханса Хагена из PRAGMA Advanced Document Engineering(ADE) , компании, находящейся в Нидерландах.

История

ConTeXt был создан Хансом Хагеном и Тоном Оттоном из Pragma ADE в Нидерландах, примерно в 1991 году в связи с необходимостью набора учебного плана.[Источник 2] Около 1996 года Ханс Хаген придумал название ConTeXt, означающее "текст с системой компьютерной верстки"(con-tex-t; "con" является латинским предлогом, который означает "вместе с"). До 1996 ConTeXt используется только в пределах Pragma ADE, но в 1996 он был адаптирован для широкой публики. Первыми пользователями вне Pragma были Тако Хоекватер, Беренд де Бур и Гилберт Ван ден Добблстин, а первым пользователем за пределами Голландии был Тобиас Бурнус. В июле 2004 года была создана вики-страница contextgarden.net. Код низшего уровня ConTeXt'а ,был первоначально написан в Голландии. Примерно в 2005 году разработчики ConTeXt'а начали работу по переводу программы на английский. Как результат появилась версия MMII, которая сейчас стабильна и заморожена. В августе 2007 года Ханс Хаген представил версию MKIV, первая бета-версия, которая была выпущена позже в этом году.[Источник 3] Во время встречи пользователей ConTexT'а в 2008 году Моджка Миклавец презентовал версию ConTeXt Minimals, содержащую новейшие бинарные файлы, занимающую маленький участок памяти. В августе эта раздача была зарегистрирована в качестве проекта на стартовой платформе веб-сайта. В июне 2008 года Патрик Гундлак написал первый пост в блок ConTeXt'а. В июне 2009 года ConTeXt запустил Git-хранилище. В ноябре 2010 года была создана ConTeXt Group.[Источник 4]

Графика

В качестве своего родного инструмента чертежа ConTeXt составляет одно целое с расширенной версией MetaPost'a , называемой MetaFun'ом, которая позволяет пользователю использовать возможности для рисования из MetaPost'a для фонов и украшений страницы. MetaFun также может быть использован с автономной версией MetaPost'a. ConTeXt тоже поддерживает использование внешних инструментов чертежа, таких как PGF/TikZ и PSTricks.[Источник 5]

Лицензия

ConTeXt является бесплатным программным обеспечением: программный код распространяется под GNU General Public License; документация обеспечивается в соответствии с лицензией Creative Commons Attribution NonCommercial Share Alike. Официальное руководство ConTeXt(2001) и мини-учебное пособие ConTeXt (1999) являются документами, авторские права на которые принадлежат Pragm'е, существует хранилище для руководств, которые будут созданы в будущем и выпущены под лицензией GNU Free Documentation License.[Источник 6] Что касается апреля 2009 года, то существует новейшая версия шрифтов и типографских схем.

ConTeXt и LaTeX

ConTeXt может быть сравнен с LaTeX'ом, но их основная направленность весьма различна. ConTeXt представляет собой систему оформления и верстки с нуля, призванную обеспечивать пользователя простым и последовательным доступом к самому современному типографскому управлению -это является весьма важным аспектом при решении такой универсальной задачи, как набор текста. Первоначальная версия LaTeX'а изолирует пользователя от принятия решений, связанных с набором текста. Это довольно удобный подход для представления, скажем, статьи для научного журнала.LaTeX развился из этой оригинальной версии. В то же время единый проект ConTeXt'a отменяет столкновение пакетов, которое может произойти в LaTeX'e.

Версии

Mark IV (сокращенно MKIV) является текущей версией ConTeXt'а. Это разрабатываемая версия, новые функции которой постоянно добавляются, хотя они полностью пригодны для использования. Существует также замороженная версия под названием Mark II (сокращенно MKII), которая все еще поддерживается. Основное различие между MKII и MKIV - то, что MKIV основывается на механизме LuaTeX, и MKII основывается на pdfTeX и XeTeX(несмотря на то, что можно было выбрать механизм Tex, используемый в ConTeXt). Помимо новых функций MKIV, изменения между кодом MKII и MKIV не отображаются в пользовательском интерфейсе. Обе версии были выпущены одновременно. Самой старой версией ConTeXt'а является Mark I, в которой весь низкоуровневый код записан на нидерландском языке. Она не поддерживается.

Пример кода

Создание документов ConTeXt очень просто: создается текстовый файл (обычно с расширением .tex) и компилируется с помощью texexec.Результатом этого процесса является файл PDF (ConTeXt также может генерировать с DVI-файлом). Пример показан ниже.

ConTeXt document
                                                                                    
% This line is a comment because % precedes it.
% It specifies the format of head named 'title'
% Specifically the style of the font: sans serif
% + bold + big font.

\setuphead[title][style={\ss\bfd},
    before={\begingroup},
    after={John Doe, the author\smallskip%
           \currentdate\bigskip\endgroup}]

\starttext

\title{\CONTEXT}

\section{Text}
\CONTEXT\ is a document preparation system for the 
\TEX\ typesetting program. It offers programmable 
desktop publishing features and extensive 
facilities for automating most aspects of 
typesetting and desktop publishing, including 
numbering and cross-referencing (for example to 
equation \in[eqn:famous-emc]), tables and figures, 
page layout, bibliographies, and much more.

It was originally written around 1990 by Hans 
Hagen. It could be an alternative or complement 
to \LATEX.

\section{Maths}
With \CONTEXT\ we could write maths. Equations 
can be automatically numbered.

\placeformula[eqn:famous-emc]
\startformula
    E = mc^2
\stopformula
with
\placeformula[eqn:def-m]
\startformula
    m = \frac{m_0}{\sqrt{1-\frac{v^2}{c^2}}}
\stopformula

\stoptext

Функции ConTeXt'a

  • автоматическое размещение чисел, формул, таблиц;
  • автоматическая генерация списков аббревиатур, синонимов и все, что нужно сортировать;
  • автоматическая нумерация сносок;
  • адаптация нижних колонтитулов и заголовков к содержимому текущей страницы;
  • обширные возможности перекрестных ссылок;
  • автоматическая расстановка переносов слов, а также адаптация к конкретным языковым требованиям;
  • включение иллюстраций в стандартизированных форматах из других приложений;
  • использование текста в более чем одном документе, с другой раскладкой, если необходимо;
  • набор текста более чем в одной колонке;
  • автоматический подбор таблиц и формул;
  • обеспечение многочисленных оглавлений и списков, на всех уровнях, чтобы обеспечить оптимальную доступность;

Источники

  1. ConTeXt // Википедия. [2017-2017]. Дата обновления:21.02.2017 URL:https://en.m.wikipedia.org/wiki/ConTeXt# (дата обращения: 11.05.2017).
  2. Hans Hagen // URL: http://www.tug.org/interviews/hoekwater.html (дата обращения: 11.05.2017).
  3. MKIV // URL: http://wiki.contextgarden.net/Mark_IV (дата обращения: 2.03.2017.).
  4. ConTeXt Group // URL: http://group.contextgarden.net (дата обращения: 2.03.2017.).
  5. What is ConTeXt // URL: http://wiki.contextgarden.net/What_is_ConTeXt (дата обращения: 2.03.2017.).
  6. GNU Free Documentation License // Википедия. [2017-2017].Дата обновления: 5.05.2017 URL: https://en.m.wikipedia.org/wiki/GNU_Free_Documentation_License (дата обращения:5.03.2017)