11.11.1 Публикация файлов сценариев Octave
Функция publish предоставляет динамическую возможность документировать ваш файл сценария. В отличие от статической документации, publish выполняет файл сценария, сохраняет все фигуры и вывод во время выполнения сценария и отображает их вместе со статической документацией в нужном формате вывода. Статическая документация может использовать разметку публикации для улучшения и настройки вывода.
- publish (file)
- publish (file, output_format)
- publish (file, option1, value1, …)
- publish (file, options)
- output_file = publish (file, …)
-
Генерирует отчет из файла сценария Octave file в одном из нескольких форматов вывода.
Сгенерированные отчеты интерпретируют любую разметку публикации в комментариях, которая подробно описана в руководстве GNU Octave. Предположим следующий пример, использующий разметку публикации, как содержимое файла сценария pub_example.m:
## Headline title # # Some *bold*, _italic_, or |monospaced| Text with # a <https://www.octave.org link to *GNU Octave*>. ## # "Real" Octave commands to be evaluated sombrero () %% MATLAB comment style ('%') is supported as well % % * Bulleted list item 1 % * Bulleted list item 2 % % # Numbered list item 1 % # Numbered list item 2Для публикации этого файла сценария наберите
publish ("pub_example.m").При указании только file, генерируется отчет HTML в подкаталоге html относительно текущей рабочей директории. Команды Octave оцениваются в отдельном контексте, и любые фигуры, созданные во время выполнения файла сценария, включаются в отчет. Весь синтаксис форматирования из file обрабатывается в соответствии с указанным форматом вывода и включается в отчет.
Использование
publish (file, output_format)эквивалентно вызову функции с использованием структурыoptions.format = output_format; publish (file, options)
которое описано ниже. То же самое относится к использованию пар имя/значение
options.option1 = value1; publish (file, options)
Структура options может иметь следующие имена полей. Если имя поля не указано, используется значение по умолчанию:
- ‘format’ — Формат вывода опубликованного файла сценария, один из
‘html’ (по умолчанию), ‘doc’, ‘latex’, ‘ppt’, ‘pdf’ или ‘xml’.
Форматы вывода ‘doc’, ‘ppt’ и ‘xml’ в настоящее время не поддерживаются. Для генерации отчета ‘doc’ откройте сгенерированный отчет ‘html’ в вашем офисном пакете.
В Octave поддерживаются пользовательские форматы, реализуя все подфункции обратного вызова в файле функции с именем ‘__publish_<custom format>_output__.m’. Для получения шаблона для формата HTML введите:
edit (fullfile (fileparts (which ("publish")), ... "private", "__publish_html_output__.m")) - ‘outputDir’ — Полный путь к каталогу, где будет расположен сгенерированный отчет. Если каталог не указан, отчет генерируется в подкаталоге html относительно текущей рабочей директории.
- ‘stylesheet’ — Не поддерживается, только для совместимости с MATLAB.
- ‘createThumbnail’ — Не поддерживается, только для совместимости с MATLAB.
- ‘figureSnapMethod’ — Не поддерживается, только для совместимости с MATLAB.
- ‘imageFormat’ — Желаемый формат для любых изображений, созданных во время оценки кода. Допустимые форматы изображений зависят от формата вывода:
- ‘html’, ‘xml’ — ‘png’ (по умолчанию), любой формат изображения, поддерживаемый Octave
- ‘latex’ — ‘epsc2’ (по умолчанию), любой формат изображения, поддерживаемый Octave
- ‘pdf’ — ‘jpg’ (по умолчанию) или ‘bmp’, обратите внимание, что MATLAB использует ‘bmp’ по умолчанию
- ‘doc’ или ‘ppt’ — ‘png’ (по умолчанию), ‘jpg’, ‘bmp’ или ‘tiff’
- ‘maxWidth’ и ‘maxHeight’ — Максимальная ширина (высота) созданных изображений в пикселях. Пустое значение означает отсутствие ограничения. Оба значения должны быть заданы для корректной работы опции.
- ‘useNewFigure’ — Использовать новое окно фигуры для фигур, созданных оцениваемым кодом. Это предотвращает побочные эффекты с уже открытыми окнами фигур.
- ‘evalCode’ — Оценить код файла исходного кода Octave.
- ‘catchError’ — Перехватить ошибки при оценке кода и продолжить.
- ‘codeToEvaluate’ — Команды Octave, которые должны быть оценены перед публикацией файла сценария. Эти команды Octave не отображаются в сгенерированном отчете.
- ‘maxOutputLines’ — Максимальное количество строк вывода из оценки кода, которые включаются в вывод.
- ‘showCode’ — Показывать оцениваемые команды Octave в сгенерированном отчете.
Опция output_file — строка с путем и именем файла сгенерированного отчета.
См. также: grabcode.
- ‘format’ — Формат вывода опубликованного файла сценария, один из
Противником publish является grabcode:
- grabcode (url)
- grabcode (filename)
- code_str = grabcode (…)
-
Получить код из отчета, созданного функцией
publish.Вытянутый код внутри опубликованного отчета должен быть заключен в строки ‘##### SOURCE BEGIN #####’ и ‘##### SOURCE END #####’. Функция
publishавтоматически создает этот формат.Если не запрашивается возвращаемое значение, код сохраняется во временном файле и открывается в стандартном редакторе. ПРИМЕЧАНИЕ: Временный файл должен быть сохранен под новым именем, иначе код будет потерян.
Если запрашивается выходной результат, извлеченный код будет возвращен как строка code_str.
Пример:
publish ("my_script.m"); grabcode ("html/my_script.html");В приведенном выше примере my_script.m публикуется по умолчанию в html/my_script.html. Далее, опубликованный сценарий Octave извлекается для редактирования его содержимого в новом временном файле.
См. также: publish.
© 1996–2022 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v6.4.0/Publish-Octave-Script-Files.html