Update document appearance
Use Spring's standard styles for the ToC. Also added epub generation.
This commit is contained in:
committed by
Janne Valkealahti
parent
7473c9ec5c
commit
012481ef63
@@ -16,7 +16,9 @@
|
||||
<properties>
|
||||
<asciidoctor.maven.plugin.version>2.1.0</asciidoctor.maven.plugin.version>
|
||||
<asciidoctorj.pdf.version>1.5.4</asciidoctorj.pdf.version>
|
||||
<asciidoctorj.epub.version>1.5.1</asciidoctorj.epub.version>
|
||||
<asciidoctorj.version>2.5.1</asciidoctorj.version>
|
||||
<jruby.version>9.2.17.0</jruby.version>
|
||||
<spring-doc-resources.version>0.2.5</spring-doc-resources.version>
|
||||
</properties>
|
||||
|
||||
@@ -101,6 +103,46 @@
|
||||
<!-- ASCIIDOC -->
|
||||
|
||||
<plugin>
|
||||
<groupId>com.googlecode.maven-download-plugin</groupId>
|
||||
<artifactId>download-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>unpack-doc-resources</id>
|
||||
<phase>generate-resources</phase>
|
||||
<goals>
|
||||
<goal>wget</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<url>https://repo.spring.io/release/io/spring/docresources/spring-doc-resources/${spring-doc-resources.version}/spring-doc-resources-${spring-doc-resources.version}.zip</url>
|
||||
<unpack>true</unpack>
|
||||
<outputDirectory>${project.build.directory}/refdocs/</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>copy-asciidoc-resources</id>
|
||||
<phase>generate-resources</phase>
|
||||
<goals>
|
||||
<goal>copy-resources</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<outputDirectory>${project.build.directory}/refdocs/</outputDirectory>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>src/main/asciidoc</directory>
|
||||
<filtering>false</filtering>
|
||||
</resource>
|
||||
</resources>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.asciidoctor</groupId>
|
||||
<artifactId>asciidoctor-maven-plugin</artifactId>
|
||||
<version>${asciidoctor.maven.plugin.version}</version>
|
||||
@@ -110,21 +152,29 @@
|
||||
<artifactId>asciidoctorj-pdf</artifactId>
|
||||
<version>${asciidoctorj.pdf.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.asciidoctor</groupId>
|
||||
<artifactId>asciidoctorj-epub3</artifactId>
|
||||
<version>${asciidoctorj.epub.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>html</id>
|
||||
<id>generate-html</id>
|
||||
<phase>generate-resources</phase>
|
||||
<inherited>false</inherited>
|
||||
<goals>
|
||||
<goal>process-asciidoc</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<backend>html5</backend>
|
||||
<outputDirectory>${project.build.directory}/site/reference/html</outputDirectory>
|
||||
<sourceHighlighter>highlight.js</sourceHighlighter>
|
||||
<attributes>
|
||||
// these attributes are required to use the doc resources
|
||||
<project-version>${project.version}</project-version>
|
||||
<project-artifactId>${project.artifactId}</project-artifactId>
|
||||
<toc>left</toc>
|
||||
<toc-levels>4</toc-levels>
|
||||
<sectanchors>true</sectanchors>
|
||||
<sectnums />
|
||||
<docinfo>shared</docinfo>
|
||||
<stylesdir>css/</stylesdir>
|
||||
<stylesheet>spring.css</stylesheet>
|
||||
@@ -132,15 +182,13 @@
|
||||
<icons>font</icons>
|
||||
<highlightjsdir>js/highlight</highlightjsdir>
|
||||
<highlightjs-theme>github</highlightjs-theme>
|
||||
<sectanchors>true</sectanchors>
|
||||
</attributes>
|
||||
</configuration>
|
||||
</execution>
|
||||
|
||||
<execution>
|
||||
<id>pdf</id>
|
||||
<id>generate-pdf</id>
|
||||
<phase>generate-resources</phase>
|
||||
<inherited>false</inherited>
|
||||
<goals>
|
||||
<goal>process-asciidoc</goal>
|
||||
</goals>
|
||||
@@ -148,6 +196,33 @@
|
||||
<outputDirectory>${project.build.directory}/site/reference/pdf</outputDirectory>
|
||||
<backend>pdf</backend>
|
||||
<sourceHighlighter>coderay</sourceHighlighter>
|
||||
<attributes>
|
||||
<project-version>${project.version}</project-version>
|
||||
<project-artifactId>${project.artifactId}</project-artifactId>
|
||||
<icons>font</icons>
|
||||
<pagenums />
|
||||
<sectnums />
|
||||
<toc />
|
||||
</attributes>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>generate-epub</id>
|
||||
<phase>generate-resources</phase>
|
||||
<goals>
|
||||
<goal>process-asciidoc</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<backend>epub3</backend>
|
||||
<sourceHighlighter>coderay</sourceHighlighter>
|
||||
<attributes>
|
||||
<project-version>${project.version}</project-version>
|
||||
<project-artifactId>${project.artifactId}</project-artifactId>
|
||||
<icons>font</icons>
|
||||
<pagenums />
|
||||
<sectnums />
|
||||
<toc />
|
||||
</attributes>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
|
||||
@@ -8,12 +8,14 @@
|
||||
<includeBaseDirectory>false</includeBaseDirectory>
|
||||
<fileSets>
|
||||
<fileSet>
|
||||
<directory>${project.build.directory}/site/reference/html</directory>
|
||||
<directory>${project.build.directory}/generated-docs</directory>
|
||||
<outputDirectory>site/reference/htmlsingle</outputDirectory>
|
||||
<includes>
|
||||
<include>index.html</include>
|
||||
<include>**/*</include>
|
||||
</includes>
|
||||
<excludes>
|
||||
<exclude>index.epub</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
<fileSet>
|
||||
<directory>${project.build.directory}/site/reference/pdf</directory>
|
||||
@@ -22,6 +24,13 @@
|
||||
<include>index.pdf</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<fileSet>
|
||||
<directory>${project.build.directory}/generated-docs</directory>
|
||||
<outputDirectory>site/reference/epub</outputDirectory>
|
||||
<includes>
|
||||
<include>index.epub</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<fileSet>
|
||||
<directory>${project.build.directory}/apidocs</directory>
|
||||
<outputDirectory>api</outputDirectory>
|
||||
|
||||
@@ -1,74 +0,0 @@
|
||||
<!-- Generate a nice TOC -->
|
||||
<script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
|
||||
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.tocify/1.9.0/javascripts/jquery.tocify.min.js"></script>
|
||||
<!-- We do not need the tocify CSS because the asciidoc CSS already provides most of what we neeed -->
|
||||
|
||||
<style>
|
||||
.tocify-header {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.tocify-subheader {
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
.tocify ul {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.tocify-focus {
|
||||
color: #7a2518;
|
||||
background-color: rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.tocify-focus > a {
|
||||
color: #7a2518;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
// Add a new container for the tocify toc into the existing toc so we can re-use its
|
||||
// styling
|
||||
$("#toc").append("<div id='generated-toc'></div>");
|
||||
$("#generated-toc").tocify({
|
||||
extendPage: false,
|
||||
context: "#content",
|
||||
highlightOnScroll: false,
|
||||
hideEffect: "slideUp",
|
||||
// Use the IDs that asciidoc already provides so that TOC links and intra-document
|
||||
// links are the same. Anything else might confuse users when they create bookmarks.
|
||||
hashGenerator: function(text, element) {
|
||||
return $(element).attr("id");
|
||||
},
|
||||
// Smooth scrolling doesn't work properly if we use the asciidoc IDs
|
||||
smoothScroll: false,
|
||||
// Set to 'none' to use the tocify classes
|
||||
theme: "none",
|
||||
// Handle book (may contain h1) and article (only h2 deeper)
|
||||
selectors: $( "#content" ).has( "h1" ).size() > 0 ? "h1,h2,h3,h4,h5" : "h2,h3,h4,h5",
|
||||
ignoreSelector: ".discrete"
|
||||
});
|
||||
|
||||
// Switch between static asciidoc toc and dynamic tocify toc based on browser size
|
||||
// This is set to match the media selectors in the asciidoc CSS
|
||||
// Without this, we keep the dynamic toc even if it is moved from the side to preamble
|
||||
// position which will cause odd scrolling behavior
|
||||
var handleTocOnResize = function() {
|
||||
if ($(document).width() < 768) {
|
||||
$("#generated-toc").hide();
|
||||
$(".sectlevel0").show();
|
||||
$(".sectlevel1").show();
|
||||
}
|
||||
else {
|
||||
$("#generated-toc").show();
|
||||
$(".sectlevel0").hide();
|
||||
$(".sectlevel1").hide();
|
||||
}
|
||||
}
|
||||
|
||||
$(window).resize(handleTocOnResize);
|
||||
handleTocOnResize();
|
||||
});
|
||||
</script>
|
||||
@@ -8,14 +8,7 @@ Eric Bottard;
|
||||
ifdef::backend-html5[]
|
||||
*{projectVersion}*
|
||||
|
||||
NOTE: This documentation is also available as https://docs.spring.io/spring-shell/docs/{projectVersion}/reference/pdf/index.pdf[PDF].
|
||||
endif::[]
|
||||
|
||||
ifdef::backend-pdf[]
|
||||
NOTE: This documentation is also available as https://docs.spring.io/spring-shell/docs/{projectVersion}/reference/htmlsingle/index.html[HTML].
|
||||
endif::[]
|
||||
|
||||
(C) 2017 - 2020 Pivotal Software, Inc.
|
||||
(C) 2017 - 2021 VMware, Inc.
|
||||
|
||||
_Copies of this document may be made for your own use and for distribution to
|
||||
others, provided that you do not charge any fee for such copies and further
|
||||
|
||||
Reference in New Issue
Block a user