Skip to content

Commit 54fcdb6

Browse files
Add dottydoc setting -project-logo
1 parent 02315db commit 54fcdb6

File tree

5 files changed

+16
-3
lines changed

5 files changed

+16
-3
lines changed

compiler/src/dotty/tools/dotc/config/ScalaSettings.scala

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,13 @@ class ScalaSettings extends Settings.SettingGroup {
200200
"The source repository of your project",
201201
""
202202
)
203+
204+
val projectLogo: Setting[String] = StringSetting(
205+
"-project-logo",
206+
"project logo filename",
207+
"The file that contains the project's logo (in /images)",
208+
""
209+
)
203210

204211
val wikiSyntax: Setting[Boolean] = BooleanSetting("-Xwiki-syntax", "Retains the Scala2 behavior of using Wiki Syntax in Scaladoc")
205212
}

doc-tool/src/dotty/tools/dottydoc/DocDriver.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,14 @@ class DocDriver extends Driver {
4242
val projectName = ctx.settings.projectName.value
4343
val projectVersion = ctx.settings.projectVersion.value
4444
val projectUrl = ctx.settings.projectUrl.value
45+
val projectLogo = ctx.settings.projectLogo.value
4546

4647
if (projectName.isEmpty)
4748
ctx.error(s"Site project name not set. Use `-project <title>` to set the project name")
4849
else if (!siteRoot.exists || !siteRoot.isDirectory)
4950
ctx.error(s"Site root does not exist: $siteRoot")
5051
else {
51-
Site(siteRoot, projectName, projectVersion, projectUrl, ctx.docbase.packages)
52+
Site(siteRoot, projectName, projectVersion, projectUrl, projectLogo, ctx.docbase.packages)
5253
.generateApiDocs()
5354
.copyStaticFiles()
5455
.generateHtmlFiles()

doc-tool/src/dotty/tools/dottydoc/staticsite/DefaultParams.scala

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ case class DefaultParams(
4040
"project" -> site.projectTitle,
4141
"version" -> site.projectVersion,
4242
"projectUrl" -> site.projectUrl,
43+
"logo" -> site.projectLogo,
4344
"root" -> site.root
4445
).asJava,
4546

@@ -56,7 +57,8 @@ case class DefaultParams(
5657

5758
def withPosts(posts: Array[BlogPost]): DefaultParams =
5859
copy(site = SiteInfo(
59-
site.baseurl, site.projectTitle, site.projectVersion, site.projectUrl, posts, site.root))
60+
site.baseurl, site.projectTitle, site.projectVersion, site.projectUrl, site.projectLogo,
61+
posts, site.root))
6062

6163
def withUrl(url: String): DefaultParams =
6264
copy(page = PageInfo(url))
@@ -75,6 +77,7 @@ case class SiteInfo(
7577
projectTitle: String,
7678
projectVersion: String,
7779
projectUrl: String,
80+
projectLogo: String,
7881
posts: Array[BlogPost],
7982
root: String
8083
)

doc-tool/src/dotty/tools/dottydoc/staticsite/Site.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ case class Site(
3434
projectTitle: String,
3535
projectVersion: String,
3636
projectUrl: String,
37+
projectLogo: String,
3738
documentation: Map[String, Package]
3839
) extends ResourceFinder {
3940
/** Documentation serialized to java maps */
@@ -178,7 +179,7 @@ case class Site(
178179
DefaultParams(
179180
docs, docsFlattened, documentation, PageInfo(pathFromRoot),
180181
SiteInfo(
181-
baseUrl, projectTitle, projectVersion, projectUrl, Array(),
182+
baseUrl, projectTitle, projectVersion, projectUrl, projectLogo, Array(),
182183
root.toString
183184
),
184185
sidebar

project/Build.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -382,6 +382,7 @@ object Build {
382382
"-project", "Dotty",
383383
"-project-version", dottyVersion,
384384
"-project-url", dottyGithubUrl,
385+
"-project-logo", "dotty-logo.svg",
385386
"-classpath", dottydocClasspath.value
386387
)
387388
(runMain in Compile).toTask(

0 commit comments

Comments
 (0)