- Папа, а что означает сообщение "format c: complete"?.
Суровый программистский юмор
|
Информация этого раздела малость устарела и скоро будет изменена
Экспорт пакета вопросов в различные форматы выполняется в соответствии со специальными файлами-шаблонами экспорта. Эти файлы находятся в подкаталоге templates каталога данных программы (для версии Windows - это каталог, в котором находится исполняемый файл, для версии *nix каталог задается при компиляции, по умолчанию - /usr/local/share/quested).
Шаблон экспорта - это обычный текстовый файл, состоящий из трех секций:
Первая секция содержит информацию о шаблоне, которая появится в пункте меню "Экспорт". Она представляет собой набор строк следущего содержания:
Вторая секция определяет то, как будут представляться текст вопроса, ответ, комментарии, информация об авторе и источник вопроса. Эта секция также представляет собой набор строк:
Команда перехода на новую строку добавляется к каждой строке текста вопроса и комментариев. Если в этом нет необходимости, строку следует оставить пустой.
Во второй и третьей секциях могут использоваться метасимволы, которые при экспорте заменяются на другие последовательности символов. Метасимвол - это знак процента (%), за которым идет дополнительный символ. Регистр (размер буквы) в метасимволах имеет значение. Для вставки в текст просто символа процента надо просто дважды его написать.
В команде перехода на новую строку может использоваться метасимвол %l, который заменяется на символ перевода строки ('\n'). В строке, определяющей представление вопроса может использоваться метасимвол %d, котрый заменяется на номер вопроса в туре. Во всех строках второй секции кроме первой строки метасимвол %l заменяется на команду перехода на новую строку, а метасимвол %t на текст соответствующего блока информации. Например, для описания вопроса - собственно текст вопроса, для строки описания ответа - ответ и т.д.
Шаблон представляет собой набор символов и метасимволов. Метасимволы %= начинают и заканчивают блок шаблона, описывающего один тур. Метасимволы %# начинают и заканчивают блок шаблона, описывающего один вопрос. Таблица 1 содержит сводную информацию о метасимволах:
Символ | Сокровенный смысл |
---|---|
Метасимволы общего назначения | |
%l | Символ перевода строки в команде перехода на новую строку |
%l | Команда перехода на новую строку |
%= | Начало и конец блока шаблона описания тура |
%# | Начало и конец блок шаблона описания одного вопроса |
Метасимволы заголовка турнира | |
%T | Название турнира |
%D | Описание турнира |
%E | Редактор (человек, а не программа) пакета вопросов |
%A | Дата проведения турнира |
Метасимволы блока ключевых слов | |
%d | Номер вопроса |
%t | Тескт соответствующего блока информации |
Метасимволы блока тура | |
%N | Номер тура |
Метасимволы блока вопроса | |
%q | Текст вопроса |
%a | Ответ |
%u | Автор вопроса |
%c | Комментарии |
%s | Источник |
Ниже представлен шаблон для экспорта в html:
html Турнир в виде html Документ HTML html koi8-r %l <p><b>Вопрос %d</b>%l%t</p> <b>Ответ: </b>%t<br>%l <b>Автор: </b>%t<br>%l <b>Комментарии:</b><br>%l%t<br> <b>Источник:</b>%t<br>%l <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> <title>чтогдекогда</title> </head> <body> <div align="center"><h1>ТУРНИР</h1><h2>%T</h2>%D</div> <div align="center">Дата проведения %A</div> %= <div align="center"><h2>Тур %N</h2></div> %# %q <p>%a%u%s%c</p> %# %= </body> </html> |
Описание вопросов: