Есть такая легенда: сделанные в TeXе документы на всех машинах выглядят абсолютно одинаково (с точностью до 1sp, т.е. примерно 50 ангстрем). Я сам эту легенду повторяю. И она в общем верна. Тем интереснее было напороться "весомо, грубо, зримо" на опровержение.
Делал я слайды для одной презентации. Да, я тоже читал Tufte и знаю, что Слайды - Это Плохо. Но тут Было Надо, и я в конце концов умею их делать так, чтобы они не мешали, а помогали изложению. Работать приходится на разных компьютерах: то дома, то на одной работе, то на другой. Ну, техника у меня отработана: стоит CVS репозиторий, на каждой машине делаю cvs update, пишу слайды, а затем make, просмотр и cvs commit. На презентационном лаптопе делаю cvs update, потом make - и готовы слайды. Настолько привычно, что уже не проверяю, что получилось на лаптопе. Зря не проверяю, как выяснилось.
Прихожу я на презентацию, включаю лаптоп - батюшки, у меня всё на экране вниз поползло, миллиметров этак на 5. А у слайдов рамочки (нет, это не мой дизайн - Так Было Надо), и эти сползшие миллиметры видны очень наглядно. Так что пока предыдущий оратор трындел, я лихорадочно поправлял \margins в файле и делал make.
Расследование проводилось стандартным образом: ставишь в файл \listfiles и смотришь на разницу на двух машинах. Результат:
diff filelist1 filelist2 46,48c46,48 < texpower.sty 2003/05/15 v0.0.9d Create Dynamic Presentations with LaTeX. < /etc/texpower/tpoptions.cfg < /etc/texpower/tpsettings.cfg --- > texpower.sty 2004/07/27 v0.1b Create Dynamic Presentations with LaTeX. > tpoptions.cfg > tpsettings.cfgРазные версии texpower.sty на лаптопе и остальных машинах.
Самое обидное, что мне реально этот texpower не нужен: я им давно не пользуюсь, и потому за версиями не слежу. Видно, эффект был и раньше, но так как у меня рамочек не было, я этого не замечал. А тут другой дизайн, и всё полезло наружу.
Выкинул на фиг texpower, и слайды стали одинаковы. С точностью до 50 ангстрем :)
no subject
Date: 2006-02-23 07:51 am (UTC)no subject
Date: 2006-02-23 09:15 am (UTC)no subject
Date: 2006-02-23 05:31 pm (UTC)no subject
Date: 2006-02-23 05:29 pm (UTC)Да, а результат у меня не dvi, а pdf. Интересно, какова точность PDF и PS?
no subject
Date: 2006-02-23 05:40 pm (UTC)no subject
Date: 2006-02-23 09:20 pm (UTC)Хотя, конечно, это чудо, что система до сих пор жива.
no subject
Date: 2006-02-23 11:45 pm (UTC)no subject
Date: 2006-02-23 11:39 am (UTC)no subject
Date: 2006-02-23 05:38 pm (UTC)no subject
Date: 2006-02-23 06:07 pm (UTC)no subject
Date: 2006-02-23 06:33 pm (UTC)А что до рекорда - когда я пришёл в Годдардовский центр, там мне досталась поначалу программа ещё на фортране, которая орбиты спутников и видимые ими участки Земли считала. Судя по датам в коде, бОльшая часть процедур была написана задолго до моего рождения. Я полагаю, для расчета орбит американских и советских спутников-шпионов. Забавное ощущение, когда это читаешь.
no subject
Date: 2006-02-23 06:52 pm (UTC)no subject
Date: 2006-02-23 07:20 pm (UTC)Увы, очень многое в TeXе нуждается в замене. Скажем, алгоритм разбиения на страницы, в отличие от алгоритма разбиения на строки, локальный. Это значит, что если разбиение на страницы в районе стр. 236 улучшится при слегка ином разбиении на страницы в районе стр. 120, сделать ничего нельзя: когда мы дошли до страницы 236, страница 120 уже готова и shipped out. Это было разумным решением в те времена, когда компьютеры были поменьше, но сейчас это уже анахронизм. И эта локальность реально мешает: спросите у Дэвида Каструпа, который написал пакет для критических изданий (где надо несколько слоёв примечаний), какие танцы на льду ему пришлось из-за этой локальности танцевать. Он много Вам расскажет про безумный механизм \insert.
Фишка в том, что TeX написан монолитно, с глобальными именами и сложной зависимостью компонент. Да, в те времена все писали так; кстати, сам Кнут принял идеи Дейкстры довольно настороженно. Но сейчас поменять кусочек чудовищно сложно вытащишь кирпичик, и здание начинает разваливаться. Тот факт, что это здание очень красиво, увы, не помогает. Кнут построил собор, а не вокзал; но людям нужнее вокзалы.
Попытки сделать замену были, и не раз. Увы, проект NTS, по-видимому, окончательно умер. Ну не получается у нас писать как у Кнута :(. Впрочем, e-TeX работает, pdfTeX тоже и есть надежда, что Омега станет, наконец, работоспособной. Так что замены нет не потому, что она не нужна, а потому что её сделать безумно сложно: Кнут всё-таки гений.
no subject
Date: 2006-02-23 07:43 pm (UTC)Но храм красив :-)
no subject
Date: 2006-02-23 09:38 pm (UTC)Омега
Date: 2006-03-12 01:46 pm (UTC)Re: Омега
Date: 2006-03-12 10:34 pm (UTC)Вот несколько наугад: http://www.tug.org/TUGboat/Articles/tb24-2/tb77adams.pdf, http://www.tug.org/TUGboat/Articles/tb24-3/bella.pdf, http://www.tug.org/TUGboat/Articles/tb17-2/tb51omeg.pdf, http://www.tug.org/TUGboat/Articles/tb23-1/haralambous.pdf
no subject
Date: 2006-03-10 08:46 am (UTC)no subject
Date: 2006-03-10 09:14 am (UTC)no subject
Date: 2006-03-10 01:49 pm (UTC)%.pdf: %.tex %-pics.pdf
$(RM) $*.toc
pdflatex $*
- bibtex $*
while ( grep -q '^LaTeX Warning: Label(s) may have changed' $*.log || \
grep -q '^Package pdfscreen Warning: TOC file not available' $*.log ||\
grep -q '^Package natbib Warning: Citation(s) may have changed' $*.log \
) \
do pdflatex $*; done
%-pics.pdf: %-pics.ps
ps2pdf $<
%-pics.ps: %.dvi
dvips -Ppdf -o $@ $<
%.dvi: %.tex
latex $<
Но дело в том, что TeX тут не кнутовский, а eTeX. А это не совсем TeX.
LaTeX project уже официально объявил о переходе на eTeX в качестве главного движка. TeXlive тоже. Основные дистрибутивы следуют этой политике, и скоро eTeX будет почти везде.