Версия Web2C для Windows отличается некоторыми специфическими чертами, которые стДоит указать.
Команда kpsecheck сообщает также статус общей памяти: используется или не используется. Это может быть полезно знать, потому что если статус памяти «in use», значит, запущен один или несколько процессов, и эффект команды mktexlsr может быть отложен до тех пор, пока все процессы, использующие библиотеку Kpathsea, не завершатся.
Наконец, эта же команда сообщает о том, где по её мнению находится Ghostscript. Под Win32 для многих программ проще искать Ghostscript dll по значению регистра, чем использовать PATH, длина которого ограничена.
Вы можете найти в меню TeXLive (или в меню StartPrograms
TeXLive
Add TeX package) опцию
запуска TeXSetup.exe в режиме поддержки системы. Действия в этом случае почти такие же, как и
при установке системы.
Мы обсудим изменения ниже, но сначала напомним, что, какие бы изменения вы ни сделали, не
забудьте перегенерировать базу данных ls-R. В противном случае система не найдёт новых
файлов. Вы сможете это сделать либо через GUI (StartPrograms
TeXLive
Maintenance
Rebuild
ls-R), либо вручную, запустив программу mktexlsr.
Главное отличие в меню выбора пакетов. В режиме поддержки системы список установленных пакетов сравнивается со списком пакетов, доступных на источниках. Неустановленные пакеты выделены зелёным, устарелые пакеты — красным, а установленные пакеты — чёрным.
Таким образом, вы можете добавить или обновить компоненты с TeX Live или Интернета, где вы часто можете найти более новые версии ваших пакетов.
Вы сами выбираете, какие пакеты установить. В остальном процесс аналогичен установке с нуля.
Если вы хотите добавить файлы, которых нет на TeX Live (или в дистрибутиве fpTeX), мы рекомендуем вам устанавливать их в директорию $TEXMFLOCAL. Тогда они сохранятся при обновлении дистрибутива TeX Live.
Директория $TEXMFLOCAL вначале пуста. Например, если вы хотите добавить
поддержку для программы символьных вычислений Maple, вы должны класть стили
в
c:\Program Files\TeXLive\texmf-local\tex\latex\maple\
а документацию в
c:\Program Files\TeXLive\texmf-local\doc\latex\maple\
Удаление возможно или при помощи программы TeXLive.exe из меню TeXLive, или из панели
управления (StartControl Panel, Add/Remove Programs). Эта процедура удалит с вашего
диска бДольшую часть файлов TeX Live. Однако, TeX — это система, которая создаёт
файлы, и трудно учесть их все. Кроме того, у пакетов для поддержки Win32 собственная
процедура удаления, которую вы должны запустить самостоятельно (если вы хотите их
удалить). Наконец, файлы в $TEXMFLOCAL не будут удалены. Таким образом, даже если
значительное большинство файлов будет удалено, вам нужно будет вручную удалить некоторые
файлы.
У программы TeXSetup.exe есть ряд других полезных опций. Их список можно получить при помощи команды:
Вот описание:
Kpathsea знает про сетевые диски, поэтому вы можете использовать их для того, чтобы раздавать дерево TEXMF по сети. Но можно поступить ещё проще. Все TeXовские и конфигурационные файлы, всё, кроме файлов в директории bin/win32 можно использовать в одновременно в версиях teTeX или TeX Live под Юниксом. Это означает, что вы можете использовать Самбу, чтобы смонтировать диски либо с сервера NT на рабочую станцию под Юниксом, либо наоборот. Возможно несколько стратегий:
Конфигурационный файл для dvips находится в
C:\Program Files\TeXLive\texmf-var\dvips\config\config.ps
Вы можете открыть его в любом редакторе и изменить некоторые параметры:
Текущая версия TeX Live всегда создаёт обновлённые версии файлов fontmaps для Dvips and Pdftex. Это делается программой updmap во время установки, а также при добавлении пакетов. Если вы добавляете пакеты вручную, отредактируйте файл updmap.cfg в $VARTEXMF/web2c.
Если вы используете программу pdflatex, чтобы писать непосредственно в формате PDF, и вы используете бумагу US letter, отредактируйте файл C:\Program Files\TeXLive\texmf-var\pdftex\config\pdftex.cfg и поменяйте change «page_width» and «page_height». Там должно быть:
GSView теперь распространяется под лицензией Aladdin, и поэтому не включена в TeX Live.
Вы можете захотеть изменить размер страницы на US letter. Если это так, запустите GSView из
меню Start, и выберите MediaLetter.
Кроме того, вы можете изменить настройки так, чтобы получить самое качественное
изображение на экране. В меню MediaDisplay Settings, выставьте Text Alpha и Graphics Alpha на
4 бита.
Заметьте, что после установки все файлы .ps и .eps будут автоматически открываться программой GSView.
По поводу печати, см. раздел 7.8 ниже.
Программа TeXSetup.exe ассоциирует файлы с расширением .dvi с Windvi.
Вы можете запустить её как StartPrograms
TeXLive
DVI Viewer.
Вы можете задать размер бумаги US letter из меню ViewOptions
Papertype и выбрав US (8.5"
x 11") (а затем OK).
Вы можете изменить и другие параметры, как например, возможность запускать системные команды из документа (запрещённую по умолчанию из соображений безопасности). Кроме того, при первом запуске вы можете решить, что увеличение чересчур велико. Измените его, пока не выйдете на нужное значение.
Все настройки программы Windvi хранятся в файле windvi.cnf. Вы можете найти его командой the prompt:
Если у вас возникнут проблемы с Windvi, удалите конфигурационный файл и проверьте, работает ли всё в стандартной конфигурации.
Общие инструкции по тестированию находятся в разделе 4.2 на стр. 32. В этом разделе описаны тесты, специфические для Windows.
Откройте файл sample2e.tex в вашем редакторе (Xemacs, WinShell). Этот файл можно найти в
директории, например, C:\Local\TeX\texmf\tex\latex\base. На экране должен появиться исходный
код в формате LaTeX. Скомпилируйте его, щёлкнув по меню CommandLaTeX (XEmacs) или
иконке «LaTeX» (WinShell), затем посмотрите на результат, щёлкнув по меню Command
View DVI
(XEmacs) или иконке «Preview» (Windvi) (WinShell).
При первом просмотре файлов Windvi, программа создаст экранные шрифты, которые не установлены в системе. Через некоторое время бДольшая часть шрифтов будет создана, и вы будете видеть окошко создания шрифтов очень редко.
Совет на будущее: Если LaTeX останавливается, потому что не может найти нужного файла, вы можете нажать Ctrl-z, чтобы выйти из программы.
Вы можете печатать из Windvi. В этом случае печать будет производиться через универсальный драйвер Windows. Он по определению совместим со всеми принтерами. Но у него есть недостаток: он может генерировать огромные промежуточные файлы, и некоторые (старые) версии Windows их не любят. Его преимущество в том, что вы можете вставлять графику в формате BMP или WMF. Вам также надо правильно выставить параметры печати (раздел 7.6.4), иначе вы можете получить уменьшенную или увеличенную страницу (печать с разрешением 600 dpi на принтере с разрешением 300 dpi даст вам только четверть страницы).
Печать будет быстрее и надёжнее, если вы запустите dvips, чтобы создать файл .ps,
а затем напечатаете его из GSView. В GSview выберите FilePrint. . . . Появится окно
Print.
Если у вас PostScript-принтер, обязательно выберите PostScript Printer. Это делается в меню Print Method внизу слева в окне Print. Вы затем можете выбрать любой из установленных принтеров. Если вы не выберите PostScript Printer, печать не будет работать.
Если вы используете не PostScript-принтер, выберите Ghostscript device в меню Print Method, затем щёлкните на кнопку справа djet500 и выберите ваше принтер из появившегося списка. (В предыдущих версиях GSView проверьте, что PostScript Printer не выбран, и выберите принтер из списка Device.)
То, что мы называем Win32, не является операционной системой само по себе. Это большой набор функций (около 12 000 в заголовках SDK от Микрософта), которые вы можете использовать для программ для разных операционных систем семейства Windows.
Есть разные типы Windows:
Win9x могут одновременно запускать 32 и 16-битовые программы. Но операционная система сама написана не полностью в 32-битовом режиме, и не поддерживает защищённый режим: 16-битовые программы могут переписать память операционной системы! Некоторые части системы, например, GDI (Graphical Device Interface, интерфейс к графическим устройствам) управляют ограниченными ресурсами, вроде битмапов, шрифтов и т.д. для всех программ, которые могут работать одновременно. Все заголовки битмапов, доступные одновременно, не могут занимать больше, чем 64 Kb. Это объясняет, тот печальный факт, что вы можете поставить систему на колени, например, используя много графических объектов.
NT, 2K и XP не имеют этих ограничений, а также других ограничений Win9x. Это настоящие многозадачные окружения с защищённой памятью. Они гораздо лучше отзываются на действия пользователя, чем Win9x, из-за лучшего управления памятью, лучшей файловой системы и т.д.
Вы можете спросить: «Зачем мне нужна командная строка, если я работаю под Windows?»
Хороший вопрос. Проблема на самом деле очень общая. Не все операции удобно делать из GUI. Командная строка даёт вам возможности программирования — если за ней стоит хороший интерпретатор.
Но проблема ещё более фундаментальна: TeX является пакетной программой. Не интерактивной. TeXу надо вычислить оптимальную вёрстку для всей страницы, перекрёстные ссылки и т.д. Это можно сделать только глобальной компиляцией всего документа. Эту задачу (пока) невозможно решить интерактивно.
Это означает, что TeX надо использовать из командной строки. На самом деле ситуация вовсе не так ужасна. В программах, занимающихся сложной обработкой потока из командной строки, есть преимущество: их проще отлаживать, потому что они не зависят от проблем GUI, и можно написать программы с GUI, которые взаимодействуют с такими программами. Это и происходит с TeXом, где вы можете общаться с программой через редактор с GUI.
Однако вам в ряде ситуаций может понадобиться командная строка. Например, у вас могут возникнуть трудности, и вам потребуется отладка.
Эти советы могут измениться в других версиях Windows.
API Win32 понимает и /, и \ в качестве разделителей в названиях директорий. Но интерпретаторы команд не понимают первого из них! Поэтому, когда путь к файлу используется в программе, вы можете использовать оба разделителя, даже в одном и том же пути. Но в командной строке вы можете использовать в качестве разделителя только \. Причина заключается в совместимости: интерпретатор команд использовал «/» для аргументов команд.
После этого длинного предисловия мы можем сказать: не удивляйтесь, если вы встретите директории, записанные в формате Юникса: fpTeX является портом Web2C, и пытается достичь совместимости на разных платформах. По этой причине все конфигурационные файлы, где указывается путь по директориям, делают это в формате Юникса.
Пожалуй, худшей чертой Win9x с точки зренияTeXа является так называемая файловая система FAT. TeX использует очень много маленьких файлов, с размерами 1–3 Kb. Файловая система FAT очень древняя, она на много десятилетий старше многогигабайтовых дисков, которые распространены сегодня. Неудивительно, что она не может эффективно управлять десятками тысяч TeXовских файлов, входящих в состав TeX Live. Файловая система FAT выделяет как минимум 32 Kb любому файлу на большом разделе. Это означает, что система TeX занимает намного больше места, чем ей на самом деле нужно.
Другие, более современные файловые системы, FAT32 и NTFS, лишены этого недостатка. Они используют кластеры размером в 4 Kb. (На NTFS размер кластера можно уменьшить до 512 байт.)
Есть пары переменных и их значений, которые ведут себя как глобальные переменные для всех программ. Набор таких переменных называется окружением. Каждая программа получает копию текущего окружения. Она может опросить или изменить значение любой переменной. Изменение происходит с копией окружения, и не переходит в другие программы.
Переменная PATH — особая переменная, используемая для поиска запускаемых вами программ. Она задаётся по-разному в Win9x, WinME and NT/2K/XP:
Если для вас уже есть переменная PATH, щёлкните на PATH. В поле Variable появится PATH, а в поле Value текущее значение переменной: список директорий, разделённые ;. Добавьте директорию, где расположены нужные программы, например, c:\Program Files\TeXLive\bin\win32. Если у вас не задана переменная PATH, щёлкните на поле Variable и впечатайте PATH, щёлкните на поле Value и впечатайте директорию. Внимание: Щёлкните на Apply перед тем, как нажать Ok, иначе значение PATH не изменится. Будьте очень аккуратны, изменяя переменные окружения.
Лучший способ убедиться, что переменная установлена правильно: откройте консоль и напечатайте
система должна напечатать её значение.
Если вы взглянете в документацию Web2C, вы увидите, что все различные программы на основе TeXа используют один и тот же компилятор, Например, tex.exe и latex.exe являются копиями одной и той же программы, но используют различные форматы в зависимости от того, под каким именем они вызваны.
Под Юниксом это сделано путём использования символических ссылок. Это экономит массу места на диске, потому что один и тот же компилятор используется многими программами.
API Win32 не знает про ссылки. Поэтому чтобы сэкономить место, все основные программы TeXа упакованы в DLL (Dynamic Linked Library, динамически подгружаемая библиотека). Это означает, что у вас могут быть такие файлы:
Мы включили и инструмент lnexe.exe для создания аналога юниксовских жёстких ссылок для программ под Win32.
Вы также можете установить уровень отладки:
Если вы хотите перенаправить stderr на stdout, что, вообще говоря, невозможно под Windows, сделайте так:
Теперь вы можете направить stderr и stdout в один и тот же файл.
kpsewhich -expand-path $SELFAUTOPARENT | c:/Program Files/TeXLive |
kpsewhich -expand-path $TEXMF | c:/Program Files/TeXLive/texmf |
kpsewhich -expand-path $TEXMFCNF | .;c:/Program Files/TeXLive/texmf/web2c; |
c:/Program Files/TeXLive/bin/win32; | |
c:/Program Files/TeXLive/bin; | |
c:/Program Files/TeXLive | |
kpsewhich -expand-var $TEXINPUTS | .;c:/Program Files/TeXLive/texmf/tex// |
kpsewhich cmr10.tfm | c:/Program Files/TeXLive/texmf/fonts/tfm/public/cm/cmr10.tfm |
kpsewhich latex.fmt | c:/Program Files/TeXLive/texmf/web2c/latex.fmt |
Вот несколько вещей, которые вы можете проверить:
Дистрибутив TeX Live состоит из сотен программ и десятков тысяч файлов из разных источников. Поэтому очень трудно предсказать все возможные источники ошибок. Тем не менее мы попытаемся вам помочь (см, раздел 1.2 на стр. 8)/
У вас есть полный набор исходников в архиве source/source.tar.bz2 вместе с патчем для Win32. Для компилирования полного дистрибутива вам понадобятся:
Нам ещё предстоит много сделать для того, чтобы сделать этот процесс проще и чище.
Система TeX для Windows, включённая в TeX Live, известна также как fpTeX. Пакетная система отличается, но fpTeX совпадает с текущим TeX Live для Windows.
Страница fpTeXа находится на http://www.fptex.org.
Текущая версия fpTeXа находится на любом архиве CTAN в htp://www.ctan.org/tex-archive/systems/win32/fptex.
Главный депозитарий для fpTeXа находится на ftp://ftp.dante.de/pub/fptex/, где можно найти последние беты и дополнительный инструментарий. Главный сайт (частично) ежедневно зеркалится на все сайты системы CTAN как systems/win32/fptex.
Группа пользователей TeXа поддерживает список рассылки, посвящённых fpTeXу. Он используется для объявлений, просьб о новых возможностях, сообщениях о багах и общих дискуссий о системе fpTeX. Чтобы подписаться, посетите http://tug.org/mailman/listinfo/fptex. Адрес рассылки fptex@tug.org.