From 4ca09296f5e38869cd1f216aead012d18634d1e2 Mon Sep 17 00:00:00 2001 From: Ian O'Connell Date: Wed, 15 Apr 2020 20:23:14 -0600 Subject: [PATCH] Make folders --- .../bazeltools/proto3docgen/Rendering.scala | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/scala/io/bazeltools/proto3docgen/Rendering.scala b/src/scala/io/bazeltools/proto3docgen/Rendering.scala index 75f12b6..ad85358 100644 --- a/src/scala/io/bazeltools/proto3docgen/Rendering.scala +++ b/src/scala/io/bazeltools/proto3docgen/Rendering.scala @@ -2,7 +2,7 @@ package io.bazeltools.proto3docgen import io.bazeltools.proto3docgen.repr.{ProtoPackage, ProtoContext} import java.nio.file.Files -import java.nio.file.Path +import java.nio.file.{Path, Paths} object Rendering { trait Engine { @@ -55,8 +55,23 @@ title: ${pkg.name} ${pkg.toSection(this).toMarkdown(1).render(0)} """ + + val outputP = pkgToUrl(pkg.name) + val outputFolder = Paths.get(outputP).getParent + if(!outputFolder.toFile.exists) { + Files.createDirectories(outputFolder) + layoutMode match { + case LayoutMode.Nested => + Files.write(outputFolder.resolve("_index.md"), s""" + |--- + |title: "${outputP.split('/').last}" + |--- + |""".stripMargin.getBytes) + case _ => () + } + } Files.write( - outputRoot.resolve(s"${pkgToUrl(pkg.name)}.md"), + outputRoot.resolve(s"${outputP}.md"), contents.getBytes ) }