Показаны сообщения с ярлыком LaTeX. Показать все сообщения
Показаны сообщения с ярлыком LaTeX. Показать все сообщения

понедельник, 29 сентября 2014 г.

LaTeX для Mac

На исследование:
"Качать и ставить MacTeX. Beamer входит в него по умолчанию. После установки можно обновить или доказать нужные пакеты через менеджер пакетов.
В качестве оболочки мне понравился TeXMaker - и бесплатный, и удобный.  Со шрифтами в полной мере я не совладал, но мои презентации компилируются и на маке и на окошках.

Еще одно достоинство TeXMaker - он предоставляет и просмотр скомпилированных файлов, в частности, я компилирую презентации сразу в PDF - и техмейкер отображает результат в своем окошке."


среда, 4 июня 2014 г.

Инсталляция MikTeX 2.9

  • Win64
  • All users


  • Winedt 8.1 64 bit 
  • Admin Install (C:\Program Files\WinEdt Team\WinEdt 8). 
  • Enable User Profile creation


Решение проблемы с визуализацией в yap:
  • When you see the file in YAP viewer, go to view->render and change it to "dvips" 
  • In YAP viewer goto view->options->display->default render method and change it to Dvips 
Here are a few possible explanations: 

 (1) The tex executable has a bug. 
 (2) The DVI viewer has a bug. 
 (3) The DVI viewer's configuration file (if any) contains 
     an error (this is really a subitem of (1) unless one 
     edits that file oneself). 
 (4) The DVI file has become corrupted. 
 (5) The DVI file contains a \special not recognized 
     by the DVI viewer (or not in the format expected). 

I have encountered all of these. I see (5) on a regular 
basis and ignore it. But I have also induced (3) more 
than a few times through experimentation (with an old 
viewer called windvi). I have seen (4) in downloaded 
files, and have reported bugs in class (1) and (2) a couple 
of times over the years. 

However, with all the different TeX engines around now, 
I suppose it is also possible a "non-standard" DVI file 
could be created by one of them, and that a viewer might 
have a problem with that. 

Finally, if a viewer needs to read a .map file for fonts, 
it might encounter an invalid line in it. It is also 
conceivable mktexpk might be reporting an error in bitmap 
font generatio


      вторник, 5 июля 2011 г.

      Постраничная нумерация подстрочных примечаний

      Взято отсюда.

      Придумал как сделать постраничную нумерацию подстрочных примечаний (требуется amsmath):

      \numberwithin{footnote}{page} <- Внимание! Это неправильный способ!
      \renewcommand{\thefootnote}{\arabic{footnote}} <- Никогда так не делайте!! (См. следующий пост)

      Кстати, при одновременном наличии на странице плавающих объектов (рисунков) и подстрочных примечаний возможен глюк, связанный с размещением последних - текст примечания иногда оказывается на странице, следующей за его маркёром (не в том смысле, что продолжается на следующую страницу, а именно начинается на ней). Устранить глюк получилось, поиграв расположением процедуры figure в исходном тесте (при этом в самом документе рисунок остался на прежнем месте - то есть там где надо) =============== ВНИМАНИЕ!! То что я написал выше по поводу постраничной нумерации подстрочных примечаний даёт, вообще говоря, неверный результат. Проблема связана с поведением счётчика page. Расставьте по странице достаточно густо команды \thepage и вы увидите, что значение page меняется с некоторой задержкой по сравнению с настоящим номером страницы! Понятно, что эта задержка в некоторых случаях приводит к неправильной нумерации подстрочных примечаний. В то же время команда \pageref во всех случаях генерирует истинный номер. Последний обстоятельство подсказывает, что решение вне всякого сомнения должно быть. И недолгие поиски по инету подтверждают данное предположение:
      Footnotes numbered “per page”
      The footnpag Package

      Пакет footnpag является самым узкоспециализированным, но одновременно и самым простым решением вопроса постраничной нумерации примечаний. Просто вставляем \usepackage{footnpag}, делаем двойной прогон latex'ом (или один TeXify'ем) и всё

      понедельник, 14 февраля 2011 г.

      Запуск beamer под MikTeX 2.8

      Попытки запустить "As Is", привели к следующей ошибке:
      ! Undefined control sequence.
      \@outlinefile

      l.44 \section{Введение}


      Выяснилось, что это проблема совместимости beamer и hyperref. Прорабатывались разные workaround, например, здесь:

      2009-12-22  6.79x  Heiko Oberdiek
          * 6.79x
          * Checking \@outlinefile before writing (workaround for
            beamer bug in beamerbasecompatibility 1.63).

      Детально решение проблемы и причины ее возникновения обсуждаются здесь.

      Я использовал такой workaround:
      \documentclass[ignorenonframetext,pdftex,hyperref={bookmarks=true,unicode=true}]{beamer}

      Оптимальным будет следующий вариант (поскольку презентацию правильнее сразу на полный экран показывать):
      \documentclass[ignorenonframetext,pdftex,hyperref={pdfpagemode=FullScreen,unicode=true}]{beamer}

      пятница, 11 февраля 2011 г.

      MiKTeX 2.9 и PSCyr 0.4d


      Взято полностью отсюда.

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

      Скачиваем MiKTeX отсюда, выбрав вариант "Basic MiKTeX 2.8" Installer. Ставим, как описано в блоге сурового челябинского программиста, указав решим установки отсутствующих пакетов "Ask me first", что предлагается установщиком по умолчанию. Будем работать с общесистемными настройками (Пуск --> Программы --> MiKTeX 2.8 --> Maintenance (Admin)). После установки обновляем дистрибутив (Update (Admin) в меню), указав в качестве источника обновлений nearest package repository.

      Следующий шаг - установка PSCyr, дистрибутив которого нужно скачать отсюда и отсюда. Оба архива распаковываем в одну папку, в которой получим папку PSCyr. Ее содержимое необходимо скопировать в папку с установленным MiKTeX'ом (C:\Program Files\MiKTeX 2.8), файлы типа install.sh можно пропустить и скопировать только директории. После этого необходимо внести следующие изменения:


      1. Выполнить команду initexmf --edit-config-file dvips и ввести в открывшийся блокнот p +pscyr.map
      2. Выполнить команду initexmf --edit-config-file pdftex и ввести в открывшийся блокнот +pscyr.map
      3. Выполнить команду initexmf --edit-config-file updmap и ввести в открывшийся блокнот Map pscyr.map
      4. Выполнить команду updmap
      5. Выполнить команду initexmf --edit-config-file dvipdfm и ввести в открывшийся блокнот f pscyr2.map
      6. Выполнить команду initexmf -u
      7. Запустить из меню Пуск программу "Settings (Admin)" и на вкладке General нажать кнопку Refresh FNDB
      8. Выполнить команду mkfntmap
      После этих действий файл с преамбулой

      1
      2
      3
      4
      5
      \documentclass[a4paper,russian]{article}
      \usepackage[T2A]{fontenc}
      \usepackage[cp1251]{inputenc}
      \usepackage[russian]{babel}
      \usepackage{pscyr}

      должен собираться командой pdflatex file.tex. При первой сборке будет выведен запрос на скачивание отсутствующих пакетов.

      Возможные ошибки:
      • LaTeX Error: File `pscyr.sty' not found. Не выполнен пункт 7.
      • pdfTeX error: pdflatex (file faqr6a): Font faqr6a at 420 not found. Не выполнен пункт 8.


      Update: используется правка пользовательских конфигов вместо общесистемных, поскольку изменения в последних будут утеряны при обновлении.

      Update 2: переносы в русском тексте в MiKTeX 2.9 работают «из коробки».

      Анимация в beamer

      Набор утилит.
      1. Преобразование *.eps в *.png с помощью ImageMagick ("Converting .eps to .png Easily"). Параметры команды convert здесь.
      2. Пакет movie15, про avi см. PDF with Animation, про gif см. Howto get animation in Beamer/LaTeX presentation
      3. Конвертация GIF в AVI. Например, здесь.
      4. Не забываем про установку PsCyr. еще тут и тут

      Ошибка
      Fontconfig error: line 26: not well-formed (invalid token)
      Fontconfig error: cannot load default config file



      из-за кривизны слешей в файле C:\ProgramData\MiKTeX\2.8\fontconfig\config\fonts.conf 


      26. C:/ProgramData/MiKTeX/2.8/fontconfig/config/localfonts.conf
      27. C:/ProgramData/MiKTeX/2.8/fontconfig/cache

      В принципе, это не должно волновать обычных пользователей (обсуждение здесь):

      fontconfig is needed by xetex. If you don't use xetex you don't need to care.


      пятница, 12 ноября 2010 г.

      LaTeX commuity & products



      Интересные продукты

      Особенности формирования закладок (bookmark) в pdf средствами LaTeX

      При использовании pdflatex периодически выплывают ошибки в логе подобного рода:
      Package hyperref Warning: Token not allowed in a PDF string (Unicode):
      (hyperref) removing `math shift' on input line 13.

      Связано это с тем, что в закладки помещаются нетекстовые символы (команды для верстки или же математика. Для борьбы с этим явлением может быть использована команда \texorpdfstring.
      Детали можно посмотреть, например здесь.

      вторник, 19 января 2010 г.

      MikTeX 2.8 и обработка 'e'

      Конкретной зависимости так и не обнаружилась, но есть гипотеза, что способ реагирования latex на команду 'e' при возникновении ошибки регламентируется настройками Inverse search в YAP. как ни прискорбно. Экспериментальным путем обнаружено, что корректная обработка 'e' в случае использования WiEdt возможна, если компиляция latex запускается в detach режиме.

      понедельник, 16 ноября 2009 г.

      Использование русских активных babel символов в английском тексте

      Простая ситуация -- есть смешанный текст (русский, английский) с активным использованием babel команд "< ">. При попытке становить английский язык командой \selectlanguage{english}, кавычки-лапки, так красиво смотревшиеся в русском тексте,

      превращаются в следующее безобразие

      Ответ был найден в великой книге The LaTeX companion, 2-nd edition.
      % переходим на английские кавычки и выбираем английский язык
      % см. The LaTeX companion, 2-nd ed., p. 547
      \selectlanguage{english}
      \useshorthands{"}
      \defineshorthand{"<}{``}
      \defineshorthand{">}{''}

      После применения этих команд получаем, как положено:

      суббота, 14 ноября 2009 г.

      Настройка Araxis Merge под LaTeX проекты

      Для синхронизации проектов используем Araxis Merge. Чтобы не видеть мусор в окне сравнения, необходимо провести настройку фильтров в Merge. Лучше создать новый фильтр 'LaTeX'.
      Доступ к меню: View|Options

      Текущий список исключений: *.aux;*.toc;*.out;*.req;*.bak;*.log;*.4ct;*.4tc;*.sav;*.idv;*.lg;*.xref

      понедельник, 9 ноября 2009 г.

      Configuring editors with SumatraPDF

      This document explains how to configure your favourite editor for synchronization with SumatraPDF.

      Introduction

      Synchronization technologies

      SumatraPDF supports two synchronization technologies: pdfsync and the more recent SyncTeX.

      To use the first one you just need to load the 'pdfsync' package in your latex document as follows:
      \usepackage{pdfsync}
      When compiling your source file, LaTeX will generate a .pdfsync file along with the .pdf output file. This file can then be used by SumatraPDF to perform synchronization.

      With SyncTeX it is not necessary to load any package. However you need to specify the 'synctex' switch when compiling your document with pdflatex:
      pdflatex -synctex=-1 document.tex
      Also make sure you have updated your TeX installation as only recent releases of pdftex support this feature (TeXLive 2008 and MikTex 2.7).

      For more details on the synchronization feature of SumatraPDF, check the following posts: Post 1 Post 2 Post 3.

      Inverse search

      With the inverse search synchronization feature, double-clicking on the PDF file in SumatraPDF brings you directly to corresponding line in the .tex source file.

      By default the WinEdt editor is invoked. If you are using the build of SumatraPDF from my website, then you can change this command by choosing the Menu 'File\Set inverse search command line'. The format of the string is:
      "C:\Program Files\MyEditor\MyEditor.exe" PARAMETERS
      where PARAMETERS can contain the following macros:
      %f path to the TeX source file
      %l line number
      %c column number

      Forward search

      Forward search gives you the ability to go from the source .tex file to the corresponding location in the PDF. When you invoke a forward search from your editor, SumatraPDF automatically highlights the corresponding location in the PDF. The communication between the editor and SumatraPDF relies on the DDE protocol (Supported by most editors such as WinEdt and TeXnicCenter).

      Synchronization in action

      Screenshot

      Configuration for commonly used editors

      WinEdt

      Inverse search
      Inverse search command:
      "C:\Program Files\WinEdt Team\WinEdt\winedt.exe" "[Open(|%f|);SelPar(%l,8)]"

      Forward search
      1- Download the macro file Sumatra-Find.edt.
      2- Save it in the folder: C:\Program Files\WinEdt Team\WinEdt\Exec\
      3- Open the menu 'Option\Execution Modes', tab 'Acrobat' and set the field 'PDF viewer Executable' to the path to your local copy of SumatraPDF-sync.EXE.
      4- Go to the menu 'Option\Menu setup'. Create a new macro menu somewhere (under 'Accessories' for instance) and fill the options as follows:
      Name: Sumatra Find
      Macro: Exe('%b\Exec\Sumatra-Find.edt');
      Requires File Filter: %P\%N.pdf
      Start in: %P
      Shortcut: F8

      Now when editing a .tex file in WinEdt, you can invoke forward search by pressing F8.

      TeXnicCenter

      Latex compilation
      If your are using synchronization based on the pdfsync package then you can just compile your TeX file as usually. If instead you prefer to use SyncTeX-based synchronization then you need to tweak the compilation switches in TeXnicCenter as follows:
      1- Menu 'Build\Define output profiles...'
      2- Select the profile "Latex=>PDF"
      3- Select the tab '(La)TeX'
      4- In the field 'Command line arguments to pass to the compiler' add -synctex=-1.

      Inverse search
      Inverse search command:
      "C:\Program Files\TeXnicCenter\TEXCNTR.EXE" /ddecmd "[goto('%f', '%l')]"

      If you are using the official build of SumatraPDF this setting can be set once for all at the command-line with:
      C:\Program Files\TeXnicCenter\SumatraPDF.exe -inverse-search "\"C:\Program Files\TeXnicCenter\TEXCNTR.EXE\" /ddecmd \"[goto('%f', '%l')]\""

      Forward search
      To setup forward-search with TeXnicCenter proceed as follows:
      1- Menu 'Build\Define output profiles...'
      2- Select the profile "Latex=>PDF"
      3- Select the tab 'Viewer'
      4- Fill the options as follows:
      Path of executable: c:\tools\SumatraPDF-sync.exe -reuse-instance
      Forward search: select DDE command
      Command: [ForwardSearch("%bm.pdf","%Wc",%l,0,0,0)]
      Server: SUMATRA
      Topic: control
      View project's output: select DDE command
      Command: [Open("%bm.pdf",0,1,1)]
      Server: SUMATRA
      Topic: control
      Close document before running (La)TeX: Do not close

      (nt)Emacs

      Inverse search
      Set the following inverse search command in SumatraPDF (menu 'File\Set inverse search command line'):
      c:\emacs\bin\emacsclientw.exe +%l "%f"

      Make sure the emacs server is started by by running the command
      server-start
      from within Emacs or by adding (server-start) to your emacs init file. (See Emacs doc)

      Auctex settings
      - Configure the pdflatex-command from the configure menu in emacs:
      (LaTeX-command "latex -synctex=-1")
      - Set 'Latex\Customize Auctex\Tex command\Tex Output View Style\Line containing the phrase <^pdf$>' to
      C:\Programme\SumatraPDF\SumatraPDF.exe %o

      Forward search
      1- Download the script file sumatra-forward.el
      2- Update your init.el or .emacs file to load the sumatra-forward script by adding the following command:
      (require 'sumatra-forward)
      3- Make sure that you have the ddeclient tools. (It is bundled with ntemacs)
      4- Restart Emacs
      5- Press F8 in the TeX document to trigger a forward-search

      Further explanations on how to make Emacs+Auctex work with SumatraPDF are available here.

      Vim

      Julien Cornebise and Manuel Pégourié-Gonnard have developed a patch for Vim-latex. You can download it from vim-fwdsumatra.zip.
      Installation instructions are provided in the zip file.

      Источник

      пятница, 15 мая 2009 г.

      Длинные строки в оглавлении + DVI + hyperref

      Пакет hyperref в чистовом latex режиме почему-то не переносит строки в TOC.

      Вот что говорят в Google Groups:

      I've found a strange behavior of line breaking in TOC when using 
      hyperref. If pdflatex produces pdf line breaking is OK. When pdflatex 
      produces dvi line breaking is disallowed which causes overfulls. What 
      does this mean? 


      Minimal example 
      \documentclass[a5paper]{book} 
      \usepackage{hyperref} 
      \begin{document} 
      \tableofcontents 
      \chapter{Very long chapter header. Long, long, long. Exceptionally 
      long} 
      \section{Very long section header. Long, long, long. Exceptionally 
      long} 
      \section{Typical section header} 
      \end{document}

      Heiko Oberdiek Просмотреть профиль Translate to Русский 
        Дополнительные параметры 1 дек 2007, 12:30 


      tsy wrote: 
      > I've found a strange behavior of line breaking in TOC when using 
      > hyperref. If pdflatex produces pdf line breaking is OK. When pdflatex 
      > produces dvi line breaking is disallowed which causes overfulls. What 
      > does this mean? 

      README: 

      | 7 LIMITATIONS 
      | ============= 

      | * Wrapped/broken link support 

      | Only few drivers support automatically wrapped/broken links, 
      | e.g. pdftex, dvipdfm, hypertex. Other drivers lack this 
      | feature, e.g. dvips, dvipsone. 

      | Workarounds: 
      | * For long section or caption titles in the table of contents 
      | or list of figures/tables option "linktocpage" can be used. 
      | Then the page number will be a link, and the overlong section 
      | title is not forced into an one line link with overvull \hbox 
      | warning. 
      | * "\url"s are caught by package "breakurl". 
      | * The option "breaklinks" is intended for internal use. But it 
      | can be used to force link wrapping, e.g. when printing a 
      | document. However, when such a document is converted to PDF 
      | and viewed with a PDF viewer, the active link area will be 
      | misplaced. 
      | Another limitation: some penalties are "optimized" by TeX, 
      | thus there are missing break points, especially within 
      | \url. (See thread "hyperref.sty, breaklinks and url.sty 3.2" 
      | in comp.text.tex 2005-09). 

      Yours sincerely 
        Heiko

      Резюме:

      1. используем опцию 'linktocpage=true'
      2. используем пакет 'breakurl'

      среда, 4 марта 2009 г.

      Система фоновой компиляции .tex проектов

      Весьма полезная утилита (LaTeX Daemon) для однократной компиляции преамбулы TeX-овских документов, мониторинга изменений в файлах проекта и фоновой компиляции проекта.

      К сожалению, применение этого пакета к разработанному мной классу, вызывало ошибку
      (! Illegal parameter number in definition of \MYline.

      1

      l.387 \gdef\FV@BeginScanning#1^^M)

      Проблема заключалась в пакете fancyvrb.sty, а именно в строке определения

      \catcode`\^^M=\active

      Путем нехитрой операцией Search\Replace я заменил в файлах всей директории fancyvrb ^^M на ^^Y. И все прокатило, никакие пакеты конфликтовать не стали.

      P.S. Именно ^^M, а не \^^M

      четверг, 19 февраля 2009 г.

      Продолжение тестирования MiKTeX 2.7

      1. Проблема с неподхватыванием jpg\png решилась путем прописывания строчек \DeclareGraphicsRule в стартовый файл. Причем, именно в такой последовательности:
        \ifpdf
        % идет компиляция в PDF
        \else
        % идет компиляция в DVI
        \DeclareGraphicsExtensions{.eps,.png,.jpg}
        \DeclareGraphicsRule{.png}{eps}{.bb}{}%
        \DeclareGraphicsRule{.jpg}{eps}{.bb}{}%
        \fi
        Так и только так. В противном случае, если же прописать \DeclareGraphicsRule и в PDF секции, pdflatex, при использовании графики в png формате отображет только бокс с именем файла, а в случае с jpg файлом -- все ок.
      2. Обнаружилась иная проблема. Пакет Caption2 устарел. Caption3 наследует не все свойства предыдущего пакета, надо разбираться.
      3. Теперь переменная \pdfoutput определена всегда. поэтому для точного определения, идет ли компиляция в pdf или в dvi, необходимо использовать пакет ifpdf, см. MiKTeX 2.7 Known Issues.
      4. Конфликт между пакетом hypcap и caption. Ошибка "! Package hypcap Error: You have forgotten to use \caption". Требует обязательной подписи рисунков, видимо, из-за необходимости простановки гиперрсылок. В конце концов, поскольку caption3 самостоятельно взаимодействует с hypcap, я просто исключил последний из списка подгружаемых пакетов.
      5. Заработал запуск редактора по 'e' при ошибке. Каким образом -- экспериментов проведено недостаточно. Скорее всего, что редактор определяется в настройках YAP (Options|Inverse Search). Если был выбран WinEdt, параметры которого подхватываются автоматом, то по 'e' вызывался WinEdt. Если прописать notepad, то вызывается именно он. Проблема в том, что в обязательном порядке надо прописывать командную строку. Осталось выяснить, в какие конфигурационные файлы при этом вносятся изменения. Если они вообще вносятся.
      6. Теперь LaTeX ругается на -src-specials и -terminal в командной строке. В WinEdt пришлось это все убрать, иначе не компилирует. Надо детально разбираться
      7. PsCyr заработал и при установке в кривые директории (вместо понятных, приятных и портабельных texmf\localtexmf). Батник для установки написан. Более детально --- TODO.
      8. Для HTLATEX необходимо таки ставить ImageMagick. Чтобы им пусто было. Надо же назвать команду convert... Но не беда, все решается небольшой ручной правкой. В файле %\Program Files\MiKTeX 2.7\tex4ht\base\win32\tex4ht.env команду convert надо переименовать в convertIM, чтобы не было конфликта. В противном случае, если не поставить ImageMagick, при компиляции возникает такая ошибка:

        System call: convert -trim +repage -density 110x110 -transparent "#FFFFFF" zzportal_small_short.ps portal_small_short0x.png

        Invalid Parameter - +repage
        --- Warning --- System return: 4
        Entering portal_small_short.css
        Entering portal_small_short.tmp
      9. Как определить, загружен ли tex4ht?
        Ответ (один из возможных):
        Статус Tex4HT:\{
        \ifx\HCode\UnDef
        Unloaded
        \else
        Loaded
        \fi
        \}
      10. При использовании моего класса, в коде
        \begin{enumerate}
        \item Необходимо осуществить переход к сервисной модели предоставления ИТ услуг.
        \item Необходимо внедрить инструментарий для измерения в режиме реального времени метрик
        оказываемых услуг и оперативного принятия мер по устранению деградации качества
        предоставления ИТ сервисов.
        \end{enumerate}

        возникает ошибка

        ! LaTeX Error: Something's wrong--perhaps a missing \item.

        See the LaTeX manual or LaTeX Companion for explanation.
        Type H for immediate help.
        ...
        l.84 \item Н
        еобходимо внедрить инструментарий для измерения в режиме реально...

        ?
        ! Emergency stop.
        ...
        l.84 \item Н
        еобходимо внедрить инструментарий для измерения в режиме реально...

        по причине загрузки пакета
        \RequirePackage[hyperindex=true,
        final=true, %%% 2.7?
        unicode=true,
        colorlinks=true,
        % pdfstartview={XYZ 0 842 1.5}]{hyperref}%
        pdfstartview={XYZ 0 842 1}]{hyperref}%
        %%% в 2.7 сказано, что проблему с hyperref пакет caption3 решает самостоятельно, без помощи hypcap
        %%\RequirePackage[figure]{hypcap} % Но subfigure перестанет работать :((

        Cвязано с загрузкой в рамках класса, а не файла (RequirePackage вместо usepackage)

        Исходя из анализа логов и анализа содержимого пакетов аазница в том, что использование \usepackage позволяет загрузить пакет tex4ht раньше, чем будут загружаться другие пакеты.
        ("d:\Program Files\MiKTeX 2.7\tex\generic\tex4ht\tex4ht.sty"
        version 2008-08-07-16:03
        Package: tex4ht
        --------------------------------------
        --- Note --- for _ at preamble, use the command line option `early_'
        --------------------------------------
        --------------------------------------
        --- Note --- for ^ at preamble, use the command line option `early^'
        --------------------------------------
        \tmp:toks=\toks14
        )
        ("d:\Program Files\MiKTeX 2.7\tex\generic\tex4ht\usepackage.4ht"
        version 2008-10-10-13:16
        )
        А именно, файл htlatex осуществляет принудительный вызов пакета tex4ht.sty сразу после вызова класса, читаем файл %\Program Files\MiKTeX 2.7\doc\tex4ht\mn-commands.html. Вот и весь фокус


      P.S.
      При этом шапка проектного документа должны обогатиться вызовом пакета hyperref и принять следующий вид:
      \documentclass{mydoc}

      \message{---> Options:[Loading HYPERREF] <---}
      \ifpdf
      \message{------------==== PDF ====------------}
      \usepackage[unicode,
      hyperindex=true,
      final=true, %%% 2.7?
      unicode=true,
      colorlinks=true,
      pdfstartview={XYZ 0 842 1.5}]{hyperref}%
      %% в 2.7 сказано, что проблему с hyperref пакет caption3 решает самостоятельно, без помощи hypcap
      \hypersetup{bookmarksnumbered=true}
      \renewcommand{\blackHlinks}{\hypersetup{pdfborder={0 0 0},linkcolor=black,pagecolor=blue}}
      \renewcommand{\notblackHlinks}{\hypersetup{pdfborder={0 0 0},linkcolor=ForestGreen,pagecolor=blue}}
      %--------- перегружаем определения из Hyperref.sty, необходимо для корректного создания меток в aux файлах ---
      %\renewcommand\theHfigure {\theHsection.\arabic{figure}}
      %\renewcommand\theHtable {\theHsection.\arabic{table}}
      \else
      \message{------------==== DVI ====------------}
      \usepackage[unicode]{hyperref}
      \fi
      % в 2.7 изменения
      \usepackage[font=small,labelsep=period]{caption}

      % специфические настройки под Tex4Ht
      \ifx\HCode\UnDef
      \message{------------==== TeX4HT Unloaded ====------------}
      \def\soo#1{{\sood{#1}}}
      \else
      \message{------------==== TeX4HT Loaded ====------------}
      \def\soo#1{\ul{#1}}
      \fi

      четверг, 25 сентября 2008 г.

      Тестирование MiKTeX 2.7

      Попробовал перейти на версию 2.7 с 2.4. В целом, нормально, даже pscyr заработал в полном объеме, но не удалось найти ответы на несколько критичных вопросов. Поэтому откатился обратно на 2.4 :(

      Проблемы:

      1. Не удалось состыковать hyperref с caption2 (он уже устарел), даже с использованием hypcap. Патологически ругался на некорректное использование \caption.
      2. Файл miktex.ini уничножен. Как настроить систему на открытие в указанном редакторе файла .tex в случае ошибки (по клавише 'E') --- ответа нет нигде.
      3. Надо перепроверять классы, поскольку по умолчанию все компилируется в pdf.
      4. Почему-то, при компиляции в DVI, latex не может найти файлы .bb для форматов jpg, png. А это огромный минус. В 2.4 работает все корректно.

      Возможно, что часть проблем связана с тем, что тестировал на глубоко кастомизированном классе.

      P.S. Очень не понравилась теория уничтожения localtexmf и разбрасывания локальных файлов по различным путям в 'Documents and Settings'. Портабельность настроек резко снизилась.

      P.P.S.

      Есть версия (но не проверял пока), что не подхватывается графика именно из-за отстутствующих в '%texmf%\tex\latex\00miktex\graphics.cfg' строчек:


      \DeclareGraphicsRule{.png}{eps}{.bb}{}%
      \DeclareGraphicsRule{.jpg}{eps}{.bb}{}%
      \DeclareGraphicsRule{.jpeg}{eps}{.bb}{}%
      \DeclareGraphicsRule{.pnm}{eps}{.bb}{}%
      \DeclareGraphicsRule{.ppm}{eps}{.bb}{}%
      \DeclareGraphicsRule{.pgm}{eps}{.bb}{}%
      \DeclareGraphicsRule{.pbm}{eps}{.bb}{}%
      \DeclareGraphicsRule{.tif}{eps}{.bb}{}%
      \DeclareGraphicsRule{.tiff}{eps}{.bb}{}%
      \DeclareGraphicsRule{.bmp}{bmp}{.bb}{}%

      среда, 23 апреля 2008 г.

      Полезные пакеты LaTeX

      • dirtree -- классное оформление директори в виде дерева
      • multicap -- для заголовков в многоколоночном режиме
      • niceframe -- красивые рамочки
      • parallel -- двуязычные двухколоночные документы
      • polytable -- расширенный tabular
      • progress -- рисование progress bar
      • pinlabel -- расстановка символов поверх любого рисунка
      • typogrid -- grid включить на страницу
      • wordlike -- стилевик а-ля ворд
      • glossary -- создание глоссария. весьма продвинуто
      • crop -- значки для обрезки страницы
      • pdfpages -- вставка в документ страниц из других pdf файлов
      • setspace -- изменение межстрочного интервала для фрагментов текста
      • biblatex -- Bibliographies in LaTeX using BibTeX for sorting only
      • etoolbox -- package is a toolbox of programming facilities geared primarily towards LaTeX class and package authors. Используется biblatex-ом
      • pdfcrop.pl -- обрезка pdf файлов
      • path
      • url
      • multicol
      • regcount
      • refcheck
      • bophook
      • boites
      • breqn
      • draftcopy
      • drafthead
      • см sttols.html
      • sublabel
      • showkeys
      • showlabels
      • smartref
      • textpos
      • textfit
      • textcase
      • truncate
      • vruler
      • btxbst (общий для бибилографических стилей)

      четверг, 20 сентября 2007 г.

      Редакторы для LaTeX

      Здесь дается ссылка на цикл статей Е. М. Балдина «LaTeX, GNU/Linux и русский стиль»

      Очень полезный форум по всему, что касается LaTeX

      А это архивированный настроенный дистрибутив WinEdt для накатывания поверх. Помимо конфигурирования, подключен русский словарь и в ..\Bin скорректированы bat файлы и добавлены perl\python скрипты для постобработки

      понедельник, 17 сентября 2007 г.

      LaTeX и разработка ПО

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

      Что есть на текущий момент (готовые документы, исходники пока за кадром):
      • Обоснование целесообразности рассмотрения использования LaTeX для разработки технической документации.
      • Краткая инструкция по установке и настройке MiKTeX.
      • Краткое описание возможностей и принципов работы LaTeX с расчетом на разработчиков. Список специфических команд, окружений и примеры их использования. Выступает в качестве мануала для разработчиков, занимающихся написанием ТЗ.
      • Концепция системы автосборки LaTeX документации и последующей публикации собранных документов (web+система поиска+разделение прав)
      Следует отметить, что все это разрабатывалось более 2-х лет, прошло апробацию и было успешно внедрено. Исходники текстов и системы автосборки думаю опубликовать позже, после приведения их в соответствующий вид.