--- processmail/README 2005/01/25 16:56:23 2.3 +++ processmail/README 2013/10/11 15:39:35 3.2 @@ -7,9 +7,9 @@ 1. УСТАНОВКА И НАСТРОЙКА ПРОГРАММ -А. Зайдите на http://www.kulichki.com/znatoki/boris/processmail и -возьмите либо processmail.zip, либо processmail.tgz. Распакуйте эти -файлы на Вашм компьютере. Вы найдете: +А. Зайдите на http://internet.chgk.info/boris/processmail и +скачайте файл processmail.zip. Распакуйте этот +файл на Вашм компьютере. Вы найдете: - README -- этот файл - processmail.pl, createtable.pl, reminder.pl, collection.pl -- @@ -17,24 +17,48 @@ - subroutines.pl -- вспомогательный файл, используемый прочими скриптами - parameters.pl -- файл, содержащий настраиваемые параметры программ - - process.tex, process.ps -- техническая документация к программам + - process.tex, process.pdf -- техническая документация к программам (если Вы не собираетесь ``влезать вовнутрь'', Вам она не понадобится ) Б. В каждом из файлов processmail.pl, createtable.pl, reminder.pl, -collection.pl замените первую строку (#!/usr/local/bin/perl) на ссылку +collection.pl замените первую строку (#!/usr/bin/perl) на ссылку на положение перла в Вашей системе. Сделайте эти файлы выполняемыми (в Юниксе это делает chmod a+x *.pl) В. Посмотрите внимательно файл parameters.pl. В нем Вы можете захотеть изменить ряд параметров: + +Вот эти параметры задать ОБЯЗАТЕЛЬНО: - $fromaddress задает Ваш обратный адрес - $DK задает название Вашей команды - $date -- системная процедура, которая выдает московское время - (если Вы не можете его вычислить, напишите просто $date="";) - процедуры printheader и printfooter печатают заголовок Вашего - письма-напоминания на лист z-info + $NAME[1] и $NAME[2] -- названия зачетов + $MINQUEST[1], $MAXQUEST[1], $MINQUEST[2], $MAXQUEST[2] -- номера + первого и последнего вопросов в каждом зачете + $FILES[1], $FILES[2] -- названия файлов, куда вы складываете письма + с ответами в каждом зачете. + +ВНИМАНИЕ: синтаксис переменных $FILES[1] и $FILES[2] изменился по сравнению + с предыдущей версией скриптов! Старый файл parameters.pl работать + НЕ БУДЕТ - необходимо его чуть-чуть поправить. + +Вот эти параметры не являются обязательными: + $NOCOUNT[1], $NOCOUNT[2] -- номера вопросов, которые в каждом зачёте + должны идти вне зачёта (например, экспериментальная внезачетная + бескрылка). Номера, указанные в $NOCOUNT[1], автоматически + добавляются к $NOCOUNT[2] (даже если $NOCOUNT[2] пуст), что является + удобным и логичным в большинстве случаев. Если же какой-то из + номеров из $NOCOUNT[1] нужно *включить обратно* в зачёт во втором + зачёте, то впишите его в $NOCOUNT[2] со знаком минус. + +Вот эти параметры нужны для программы reminder: + + $fromaddress задает Ваш обратный адрес + $DK задает название Вашей команды + $date -- системная процедура, которая выдает московское время + (если Вы не можете его вычислить, напишите просто $date="";) + процедуры printheader и printfooter печатают заголовок Вашего + письма-напоминания на лист z-info + 2. РАБОТА С ПРОГРАММАМИ @@ -56,17 +80,26 @@ collection.pl замените первую строку (#! 0. Напомните капитану такой команды, чтобы он срочно связался с Секретарем клуба. -Б. Складывайте все ответы в один файл, например, answers. Если от -команды пришло несколько писем, бросайте туда ВСЕ. Проверьте, что -более поздние письма следуют за более ранними. +Б. Складывайте все ответы на данный зачет в один файл, например, +sprint.mail и stayer.mail. Если от команды пришло несколько писем, +бросайте туда ВСЕ. Проверьте, что более поздние письма следуют за +более ранними. + В. Время от времени запускайте -reminder.pl -m answers + reminder.pl -r номер_зачета + +Например, + reminder.pl -r 1 +или + reminder.pl -r 2 + Это пошлет на лист z-info сводку о командах, чьи ответы получены. Но не злоупотребляйте сводками, дабы не рассердить Почтмейстера. + Г. Когда ответов скопится достаточно, запустите -processmail.pl -m answers -o scores + processmail.pl -o scores Тогда у Вас получится файл scores примерно такого типа: #1. Frequency: 1. Score: ? @@ -77,47 +110,73 @@ processmail.pl -m answers -o scores Замените "?" на "+" и "-" и запишите файл. Если придут новые письма, бросьте их все в тот же файл (НЕ УБИРАЯ СТАРЫХ!!!). Команда -processmail.pl -t scores -m answers -o scores + processmail.pl -t scores -o scores добавит в файл scores ответы, которых Вы еще не оценили. Примечания: ----------- (1) Если файла scores еще не существует, команда -processmail.pl -t scores -m answers -o scores + processmail.pl -t scores -o scores выдает ошибку. Используйте -processmail.pl -m answers -o scores + processmail.pl -o scores (2) НЕ используйте команду типа -processmail.pl -t scores -m answers > scores + processmail.pl -t scores > scores Это приведет к уничтожению ваших старых оценок. + Д. Когда срок приема ответов истечет, ПРОВЕРЬТЕ ваши оценки. Неприятно наталкиваться на собственную небрежность, правда? Команда -createtable.pl -m answers -t scores -o table + createtable.pl -t scores -o table создаст файл table с таблицей результатов, а команда -collection.pl -m answers -t scores -o collection + collection.pl -t scores -o collection создаст файл collecton с собранием сочинений. Если вопросов много, формат вывода команды createtable.pl может оказаться неудобным. В этом случае используйте формат -createtable.pl -s -m answers -t scores -o table -Ключ -s (от Short) выводит ответы в "сжатом" формате. + createtable.pl -s -t scores -o table +или + createtable.pl -m -t scores -o table +Ключ -s (от Short) выводит ответы в "сжатом" формате ("++-+-++-+-++-+-"). +Ключ -m (от Medium) выводит ответы в "среднем" формате ("++-+- ++-+- ++-+-"). + + +У команды collection.pl тоже есть ключи '-m' и '-s'. По умолчанию, +для каждого вопроса выводятся списки всех полученных ответов, разбитые +на подкатегории "ЗАСЧИТАНО", "НЕ ЗАСЧИТАНО", "НЕ ЯСНО": + ВОПРОС 1: + + ЗАСЧИТАНО: + + НЕ ЗАСЧИТАНО: + - неправильно + + НЕ ЯСНО: + +(даже если в соответствующей подкатегории нет ответов). + +С ключом -s (от Short) печатаются только те подкатегории, в которых +есть хоть один ответ - а пустые подкатегории ("ЗАСЧИТАНО" и "НЕ ЯСНО" +в примере выше) не печатаются совсем. Это компактнее, но менее +предсказуемо. +С ключом -m (от Medium) собрание сочинений будет иметь промежуточный +вид - подкатегории "ЗАСЧИТАНО" и "НЕ ЗАСЧИТАНО" печатаются всегда +(даже если пустые), а "НЕ ЯСНО" - только если в ней что-то есть. + +По опыту, наиболее удобный формат для человеческого восприятия +собраний сочинений - '-m', хотя это, конечно же, дело вкуса. +В любом случае, если ответы в какой-то подкатегории *есть*, то +они будут напечатаны (т.е. ничего не пропадает, речь только о том, +как программа себя ведет при отсутствии соответствующих ответов). -В ИЧБ принят особый формат: он состоит из предварительного и основного -тура, причём при равенстве ответов в основном туре преимущество у -команды, у которой лучше результат в предварительном туре. Для этого -формата работает специальная программа createtable2.pl. Она -вызывается так: -createtable2.pl -s -T scores1 -M answers1 -m answers -t scores -o table -где scores1 и answers1 относятся к предварительному туру, а -scores и answers -- к основному. -Перед посылкой на общий лист просмотрите файлы еще раз -- а вдруг -ошиблись Вы или я? +Е. Перед посылкой сгенерированных файлов а общий лист просмотрите +файлы еще раз -- а вдруг ошиблись Вы или я? Вот и все! + 3. РАЗНЫЕ РАЗНОСТИ В файле process.tex хранится техническая документация к @@ -128,12 +187,12 @@ scores и answers -- к основному. ключом программы печатают массу всякой дополнительной информации -- полезной и не очень... + 4. АВТОР -Борис Вейцман, boris@plmsc.psu.edu -http://www.plmsc.psu.edu/~boris +Борис Вейцман, borisv@lk.net Я благодарен Якову Зайдельману, Льву Горенштейну, Алексу Покрасу и Дмитрию Рубинштейну за помощь в разработке этой программы. -$Id: README,v 2.3 2005/01/25 16:56:23 boris Exp $ \ No newline at end of file +$Id: README,v 3.2 2013/10/11 15:39:35 boris Exp $