Содержание


Каталог классов и стилей LaTeX. Часть 2. Пакеты для редактирования и совместной работы над документами

Comments

В этой статье мы продолжаем знакомство с пакетами, входящими в каталог стилей TeX Live 2013. После того как первоначальная версия документа была подготовлена автором, она попадает к редактору и проходит через несколько этапов согласования, пока полученный результат не будет принят как окончательный. В данной статье мы рассмотрим именно те пакеты, которые помогают организовать совместную работу над документом и подготовить его к выдаче. В этот же раздел были вынесены пакеты для работы с pdf.

PDF и гиперссылки

Формат PDF сейчас фактически является стандартом для представления полиграфической продукции в электронном виде, а гиперссылки из языка HTML позволяют добавить интерактивность в PDF-документы.

  • attachfile2 из пакета oberdiek — позволяет прикрепить файл к документу PDF. Схожую функциональность предоставляет пакет attachfile.
  • animate — позволяет добавлять анимацию в PDF.
  • breakurl — перенос гиперссылки на другую строку.
  • cmap — добавляет возможность поиска и копирования кириллического текста в PDF-документ. Работает при компиляции с помощью pdflatex, если в документе используются шрифты cm-super.
  • cooltooltips — позволяет создавать простые всплывающие текстовые подсказки. Поддерживается с 7-ой версии Adobe Reader.
  • doi — предоставляет команду \doi, которая на основе переданной числовой комбинации DOI создаёт гиперссылку dx.doi.org.
  • embedall — позволяет добавить в итоговый PDF-документ исходный код и изображения, используемые в проекте, создавая своеобразный архив.
  • embedfile из пакета oberdiek — предоставляет функционал для внедрения файла в документ PDF.
  • fancytooltips — позволяет создавать всплывающие подсказки, которые могут включать не только простой текст, но и форматированный, а также картинки и даже анимацию над активными площадками. Поддерживает Adobe Reader.
  • flashmovie — внедрение флэш-ролика в документ.
  • flippdf — создание зеркально отражённого PDF-файла (подобный файл может иногда запрашиваться издательством).
  • hyperref — создаёт оглавление для панели навигации по PDF-документу. Для правильного отображения кириллицы стиль необходимо загружать с опцией unicode. При использовании пакета hyperref с программой dvips, имеет смысл обратиться к пакету hypdvips, где были исправлены некоторые проблемы с совместимостью.
  • В пакете oberdiek есть несколько стилей, улучшающих и расширяющих возможности пакета hyperref, например, стиль bookmark улучшает механизм создания закладок, когда они создаются за один проход pdflatex, а не за два.
  • hypcap исправляет проблему с адресацией на подпись к картинке, а не на саму картинку.
  • hyperxmp — добавление метаданных XMP (eXtensible Metadata Platform) в файл.
  • media9 — интерфейс для внедрения в PDF-файл флэш-роликов (SWF, не проигрывается в версии Adobe Reader для Linux), 3D-объектов (Adobe U3D & PRC), видео или звуковых файлов в форматах MP4, FLV и MP3.
  • ocg-p — поддержка слоёв OCG (Optional Content Groups). По выбору слои можно делать видимыми/невидимыми. Схожий функционал предоставляет пакет ocgx.
  • pdf14 — этот стиль понижает версию создаваемого PDF-документа до 1.4, чтобы обеспечить совместимость со старыми программами для просмотра.
  • pdfcomment — добавление всплывающих аннотаций с поддержкой Adobe Reader. Схожим функционалом обладает пакет pdfmarginpar.
  • pdfx — создание PDF/X-1a и PFD/A-1b документов.
  • pdfcrypt из пакета oberdiek — позволяет зашифровать PDF-файл и установить ограничения на печать документа.
  • pdfscreen — создание PDF-документа для чтения текста с экрана монитора.
  • repltext — позволяет определить, как именно будет копироваться текст из итогового PDF-файла. Так, чтобы обеспечить базовую защиту от копирования, в буфер обмена будет помещаться вовсе не выделенный текст.
  • threadcol — добавляет к тексту "article thread" для указания, какой фрагмент текста будет следующим, что может быть удобно в случае многоколоночной печати и Android-устройств с маленьким экраном. Работает при использовании Adobe Reader.
  • typehtml — печатает HTML прямо из LaTeX и поддерживает почти все теги HTML2 и большинство математических тегов из HTML3.
  • uri — создаёт правильные ссылки для arXiv, ASIN (Amazon Standard Identification Number), DOI (digital object identifier), HDL, NBN (National Bibliography Number), PubMed, OID, TINY, TINY и XMPP.
  • url — ввод гиперссылки без необходимости экранирования специальных символов.

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

Пакеты, позволяющие организовать процесс подготовки текста, чтобы можно было сосредоточиться только на его написании.

  • blindtext — предоставляет для целей тестирования искусственно сгенерированный текст на английском или немецком языках. Схожую функциональность имеет пакет lipsum. Пакет mwe кроме генерации текста предоставляет также изображения-заглушки.
  • chkfloat — предупреждает, если плавающий объект был сдвинут слишком далеко от места своего определения.
  • clipboard — сохранение и вставка фрагментов текста в пределах документа.
  • draftwatermark — печатает по диагонали через всю страницу слово "DRAFT" или какое-либо ещё выражение. Этот пакет полностью перекрывает возможности аналогичного устаревшего пакета draftcopy.
  • dprogress — упорядочивает вывод LaTex для лучшего понимания ситуации, если компиляция завершилась с ошибкой.
  • errata — механизм для оформления списка замеченных опечаток. Позволяет отслеживать изменение документа и автоматически создавать отчёт о различиях между текущей версией и опубликованной.
  • mylatex из пакета carlisle — содержит файл mylatex.ltx, позволяющий сгенерировать свой форматный файл, в который будут встроены часто используемые пакеты. Полезно для ускорения компиляции, хотя и не очень актуально для современных компьютеров. Схожую функциональность предоставляет пакет mylatexformat.
  • optional — предоставляется возможность интерактивно указать при компиляции, какая часть документа будет использована, а какая пропущена.
  • pagesel из пакета oberdiek — предоставляет возможность выбирать, какие страницы следует вывести, позволяя указывать конкретные страницы, диапазоны и чётные/нечётные страницы.
  • progress — предоставляет одноимённую команду для индикации степени завершённости документа и создаёт HTML-файл, показывающий этапы подготовки документа. Пакет может быть полезен при командной работе над большим документом.
  • skb — пакет определяет подход и набор инструментов для создания хранилища долгоживущих документов. Повторное использование уже готовых фрагментов текста является краеугольным камнем пакета.
  • snapshot — позволяет получить версии всех пакетов, от которых зависит документ, и гарантировать, что документ будет собираться только с пакетами именно этих версий. Это позволяет "заморозить" результат компиляции.
  • standalone — класс для создания картинки средствами LaTeX для последующей вставки её в основной документ.
  • totpages — предоставляет информацию о числе страниц, получившихся в результате компиляции.
  • versions — набор макросов, позволяющих пометить часть текста и исключить её при компиляции.
  • xcomment — позволяет превратить какие-либо окружения или вообще весь текст в комментарии.

Редакторские и пользовательские заметки

В LaTeХ присутствуют пакеты и стили, способные облегчить не только создание собственных текстов, но и редактирование чужих документов.

  • changes — работа с редакторскими правками (добавление, удаление, замена) в процессе подготовки документа.
  • ed — механизм создания и поддержки редакторских заметок в процессе подготовки документа.
  • fixme — позволяет оставлять прямо в теле документа комментарии для автора и заметки о ходе работы над текстом. Схожую функциональность предоставляет пакет easy-todo, fixmetodonotes, todo и todonotes.

Системы контроля версий

Пакеты svn и svninfo облегчают управление версиями исходных текстов LaTeX при использовании системы контроля версий subversion. В качестве альтернативы можно использовать пакеты svn-multi или svn-prov.

В случае если применяется устаревшая система контроля версий CVS, то следует воспользоваться аналогичными пакетами rcs и rcsinfo.

Для извлечения информации из распределённой системы контроля версии git следует воспользоваться пакетом gitinfo.

  • counttexruns — сбор статистики о том, сколько раз был скомпилирован данный документ.
  • prelim2e из пакета ms — при инициализации внизу каждой страницы появляется временная метка и текстовая строка, которая может задаваться пользователем.
  • mversion — добавляет версию документа, которая увеличивается с каждой его компиляцией.
  • vhistory — пакет для ведения журнала изменений документа.

Синхронизация текста с результатом компиляции

Актуальные для TeX Live 2013 версии pdflatex и xelatex позволяют использовать синхронизацию исходного текстового файла c итоговым PDF-файлом "из коробки", в случае, если текстовые редакторы и программы просмотра её поддерживают.

  • pdfsync — синхронизация исходного текстового и результирующего PDF файлов. Позволяет попасть в соответствующее место кода на основании PDF-фрагмента и обратно. Поддерживает текстовые редакторы iTeXMac, iTeXMac2, TeXShop и emacs (AucTeX).
  • srcltx — синхронизация кода и dvi-файла. Поддерживается программами просмотра DVI xdvi и yap.
  • vpe — ещё один аналог srcltx для PDF. Требует наличия в системе исполняемого файла vpe.pl.

Составные документы

Для комбинации нескольких документов в один следует обратить внимание на пакеты combine и pdfpages.

  • askinclude из пакета oberdiek— интерактивное подключение частей документа с помощью команды \include.
  • coseoul — изменение структуры документа на лету. Может быть полезно, если собирать его из различных источников.
  • docmute — добавляет возможность включения в набираемый документ самодостаточных компилируемых текстов, несмотря на то, что они уже имеют преамбулу.
  • excludeonly — определяет одноимённый макрос, который позволяет указывать, какие файлы не следует включать с помощью инструкции \include.
  • chapterfolder — предоставляет набор макросов для описания каталогов с исходными текстами глав и разделов, и их подключения без указания полного пути.
  • import — предоставляет аналог стандартной команды \input, позволяющий загруженному файлу использовать свой каталог как базовой при подключении других фрагментов текста и картинок.
  • pagecont — сквозная нумерация страниц для нескольких независимых документов.
  • subfiles — позволяет включать в основной документ файлы, которые можно компилировать по отдельности.
  • tagging — подключение/отключение и выбор подключаемых частей документа по тегам.
  • volumes — усовершенствование механизма, предоставляемого стандартной командой \includeonly.

Управление шрифтами

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

  • anyfontsize — позволяет выбрать шрифты любых размеров, даже если этот размер отсутствует в системе, что может привести к проблемам впоследствии.
  • fontspec — единый механизм для загрузки шрифтов в LaTeX, XeTeX и LuaTeX.
  • fonttable — вывод символов шрифта в табличной форме.
  • moresize — дополнительные размеры шрифта для текста.
  • newunicodechar — пользовательский интерфейс для определения символов Unicode, если их нет в используемом шрифте или их вид не устраивает.
  • realscripts — использование специального набора глифов для отображения мелких букв, которые содержатся в некоторых OpenType шрифтах.
  • relsize — набор команд для относительного изменения размеров шрифта.
  • textfit — масштабирует размер шрифта, чтобы текст заполнил всю указанную ширину.
  • yagusylo — загрузка и доступ к символам из разных шрифтовых пакетов.

Заключение

В этой статье мы рассмотрели пакеты LaTeX, используемые в процессе набора и редактирования документов.

В следующей статье мы рассмотрим стандартные классы LaTeX, которые можно использовать для создания различных видов документов (писем, отчётов, книг и т.д.)


Ресурсы для скачивания


Похожие темы


Комментарии

Войдите или зарегистрируйтесь для того чтобы оставлять комментарии или подписаться на них.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Open source
ArticleID=971098
ArticleTitle=Каталог классов и стилей LaTeX. Часть 2. Пакеты для редактирования и совместной работы над документами
publish-date=05132014