<@6> <@local(export_dir)> <@> <@> reStructuredText/Sphinx形式 <@> <$logs = argv#0> <$opt = argv#1> <$export_dir = v.blogpub_dir . 'sphinx/'> <@ifexec(! logs, begin.html)>

reStructuredText出力 / Sphinx連携

reStructuredTextで書かれた記事を <@export_dir> に .rst ファイルとして出力します。


<$break()> <$end.html> <@>############################################################################# <@> 静的HTML出力 exporter <@>############################################################################# <$exporter = loadapp('adiary::Export_reStructuredText')> <$ifbreak(!exporter)> <$opt.export_dir = export_dir> <$opt.title_line = '@' %x 60> <$opt.project = 'index'> <$opt.sphinx_init = "sphinx-quickstart -q -p <@opt.project> -a %a -v 1.0 -l <@Locale> --epub --ext-doctest --ext-todo --ext-mathjax --ext-ifconfig --ext-viewcode --ext-githubpages"> <$opt.init_check = 'conf.py'> <@>//////////////////////////////////////////////////////////////////////////// <@> 初期化処理(必要なファイルをコピー) <@>//////////////////////////////////////////////////////////////////////////// <$opt.init = begin> <$ifreturn(! v.special_export)> <@local(dir, t, files, session, option)> <$s = v.blog> <$session = argv#0> <$option = argv#1> <$files_dir = 'files/'> <@> アルバムデータのコピー <$dir = export_dir . files_dir> <$session.msg("Album files copy to '<@dir>'")> <$dir_copy(v.blogimg_dir(), dir)> <$dir_delete("<@dir>.trashbox/")> <$end> <@>//////////////////////////////////////////////////////////////////////////// <@> index.rstの雛形 <@>//////////////////////////////////////////////////////////////////////////// <$opt.index_rst_skel = begin> <@local(t, files)> <$files = argv#0> .. toctree:: <@if(opt.numbered, "\t:numbered:\n")> <@\> <@if(opt.maxdepth ne '', "\t:maxdepth: " . int(opt.maxdepth) . "\n")> <@\> <@"\n"> <@forexec(t, files, begin)><@"\t<@t.file>\n"><$end> <$end> <@>//////////////////////////////////////////////////////////////////////////// <@> index.htmlの雛形 <@>//////////////////////////////////////////////////////////////////////////// <$opt.index_skel = begin> <@local(t, logs, builder, match)> <$logs = argv#0> <$builder = opt.builder> reStructuredText export

reStructuredText export<@if(builder, " (<@builder>)")>

<$match = false> <@ifexec( builder, begin.builders )> <@ifexec( match(builder, "epub"), begin)><$match=1> <$end> <@ifexec( match(builder, "html"), begin)><$match=1>

index.html

<$end> <@ifexec( match(builder, "latexpdf"), begin)><$match=1> <$end> <@ifexec(!match, begin)>

_build/<@builder>/

<$end> <$end.builders>

.rst files

<@forexec(t, logs, begin)> <$end>
<@t.year>-<@t.mon>-<@t.day> <@t.file> <@t.title>

export date: <@Timestamp>

<$end> <@>//////////////////////////////////////////////////////////////////////////// <$ajax_return = exporter.export( logs, opt )>