load($gemlog_input_path); $titles = $gemlog->getTitles(); $gemlog_out = new GemlogRender; foreach ($titles as $title) { $encoded_title = str_replace('/', '%2F', $title); $article_path = $dir . '/' . $encoded_title . '.md'; $article->load($article_path); $gemtext = $article->convert(); if (!$article->isPublished() || empty($gemtext)) { continue; } if ($trim_prefix && strpos($title, $trim_prefix) === 0) { $title = substr($title, strlen($trim_prefix)); } $sanitized_title = $title; $sanitized_title = strtolower($sanitized_title); $sanitized_title = str_replace([' ', ',', '\''], ['-'], $sanitized_title); $sanitized_title .= '.gmi'; $output_path = $gemlog_output_path . '/' . $sanitized_title; echo "Writing to ", $sanitized_title, "...\n"; $render = new ArticleRender($title, $gemtext, $article->getProperties()); $output = $render->render(__DIR__ . '/templates/article.tpl'); file_put_contents($output_path, $output); $gemlog_out->addArticle($title, $article->getProperties()['date'], 'log/' . $sanitized_title); } if ($gemlog_index_path) { echo "Writing gemlog index to ", $gemlog_index_path, "...\n"; $gemlog_index = $gemlog_out->render(); file_put_contents($gemlog_index_path, $gemlog_index); }