LINUX.ORG.RU

time в LaTeX


0

1

Буду очень признателен, если вы поможете мне в моих поисках.

Как изменять время? Как работать с timezone?

Код:

\usepackage{datetime}

\newcounter{h}
\setcounter{h}{\THEHOUR}
\addtocounter{h}{+6}

\currenttime 
~\arabic{h}:\twodigit{\THEMINUTE}

печатает текущее время, но не дает возможности увеличить текущий час на 6 \THEHOUR == 0 \THEMINUTE == 0

Как увеличить текущий час на 6? Есть ли какая-либо возможность изменять значение текущего времени в LaTeX?


А вот ежели бы ты не поленился заглянуть в исходники, увидел бы

\newcount\c@HOUR
\newcount\c@HOURXII
\newcount\c@MINUTE
\newcount\c@TOHOUR
\newcount\c@TOMINUTE
\newcount\c@SECOND
\def\THEHOUR{\the\c@HOUR}
\def\THEHOURXII{\the\c@HOURXII}
\def\THEMINUTE{\the\c@MINUTE}
\def\THETOHOUR{\the\c@TOHOUR}
\def\THETOMINUTE{\the\c@TOMINUTE}
\def\THESECOND{\the\c@SECOND}

Теперь понятно, почему \THEHOUR не является счетчиком?

Anon
()
Ответ на: комментарий от true_admin

timezone в LaTeX

Спасибо, я этот пост видел и ранее, но не могу понять, как же мне использовать timezone, какие команды написать в Latex, чтобы подключить TZ = «Ekaterinburg»?

texMSP
() автор топика
Ответ на: timezone в LaTeX от texMSP

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

export TZ="Asia/Yekaterinburg"
latex ....
true_admin ★★★★★
()
Ответ на: комментарий от true_admin

export TZ

true admin, спасибо!

Мне надо бы прописать это прямо в latex-файле, что чую, невозможно. Дело втом, что файл *.tex компилируется на Linux-сервере провайдера, там у меня сайт. А раз так, то очень надо прописать timezone прямо в latex-файле. Неужели никак нельзя?

Мне надо число часов увеличить на 6.

texMSP
() автор топика
Ответ на: комментарий от Anon

\makeatletter

Anon, спасибо!

Я, к сожалению, плохо знаю LaTeX. НЕ могу понять, как обернуть в \makeatletter..\makeatother

После копиляции на удаленной Linux-сервере \currenttime выдает мне время на 6 часов меньше, чем реальное, чем у меня в Екатеринбурге. Вот мне и надо увеличить число часов на 6. И... не могу, хочу уже подключить к этому делу скрипт на PHP. Перерыл многие книжки, Google - и с удивлением обнаружил, что LaTeX не умеет работать с time ;-(

texMSP
() автор топика
Ответ на: export TZ от texMSP

Тогда выше Anon написал что делать :)

true_admin ★★★★★
()
Ответ на: \makeatletter от texMSP

Посмотрел я исходники пакета внимательнее. По-другому надо было делать: если ты пользуешь \THEHOUR, то делаешь так:

\makeatletter\advance\c@HOUR by 6\makeatother

если же пользуешься командой \currenttime, то так:

\advance\currenthour by 6

На всякий пожарный можешь оба варианта воткнуть, они независимы.

Дата: \currenttime.

\advance\currenthour by 6
\makeatletter\advance\c@HOUR by 6\makeatother
\THEHOUR

Новая дата: \currenttime.

Anon
()
Ответ на: комментарий от Anon

P.S. \addtocounter использовать нельзя, т.к. эти счетчики теховские.

Anon
()
Ответ на: комментарий от Anon

с этим советом есть беда, часы на следующий день не переходят, если такую штуку проделать в 23 часа, то получится 23+6, если я правильно понимаю происходящее

anonymous
()
Ответ на: комментарий от anonymous

А, и правда. Значит, придется конкретно переделывать все. Проще, наверное, будет статически впилить дату и время.

Anon
()
Ответ на: комментарий от anonymous

Anon, поразительно, насколько четко Вы поняли мою проблему. Я только вчера вечером понял, что +6 - это просто мало, надо еще и дату будет менять!

texMSP
() автор топика
Ответ на: комментарий от Anon

Anon, благодарю! Я уже написал скрипт на РНР, который заменит оперделенный текст в файле LaTeX на необходимую мн дату и время.

И спасибо anonymous за меткий комментарий.

texMSP
() автор топика
Ответ на: комментарий от anonymous

Anonymous! Спасибо! Я об этом тоже подумал!

texMSP
() автор топика
Ответ на: комментарий от anonymous

anonymous, спасибо за помощь, своевременный поиск. Я до сих пор и не подозревал, что есть сайт, с помощью которого можно получать листинги с синтаксической подсветкой. http://pastebin.com - это для меня в новинку, я писал нечто подобное сам, и увидел по коду, что делал все примерно также. Порадовался. Спасибо еще раз за развитие этой темы.

texMSP
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.