Skip to content

Commit

Permalink
Initial user manual.
Browse files Browse the repository at this point in the history
  • Loading branch information
io7m committed Sep 28, 2024
1 parent 7489c10 commit 480948d
Show file tree
Hide file tree
Showing 70 changed files with 1,221 additions and 37 deletions.
272 changes: 272 additions & 0 deletions com.io7m.laurel.documentation/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,272 @@
<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.io7m.laurel</groupId>
<artifactId>com.io7m.laurel</artifactId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<artifactId>com.io7m.laurel.documentation</artifactId>

<packaging>jar</packaging>
<name>com.io7m.laurel.documentation</name>
<description>Image caption management (Documentation)</description>
<url>https://www.io7m.com/software/laurel/</url>

<properties>
<mdep.analyze.skip>true</mdep.analyze.skip>
</properties>

<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>com.io7m.laurel.filemodel</artifactId>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>com.io7m.primogenitor</groupId>
<artifactId>com.io7m.primogenitor.support</artifactId>
</dependency>

<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.annotation.bundle</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.annotation.versioning</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>

<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>

<plugins>
<!-- Copy documentation resources into build directory -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-documentation-resources</id>
<goals>
<goal>copy-resources</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${project.build.directory}/documentation/</outputDirectory>
<resources>
<resource>
<directory>src/main/resources/com/io7m/laurel/documentation/</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>

<execution>
<id>copy-documentation-resources-epub</id>
<goals>
<goal>copy-resources</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<outputDirectory>${project.build.directory}/epub/</outputDirectory>
<resources>
<resource>
<directory>src/main/resources/com/io7m/laurel/documentation/</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>

<execution>
<id>copy-generated-epub</id>
<phase>site</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.parent.build.directory}/minisite/documentation/</outputDirectory>
<resources>
<resource>
<directory>${project.build.directory}/epub/</directory>
<includes>
<include>documentation.epub</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<!-- Unpack sources of dependencies -->
<execution>
<id>unpack-sources</id>
<phase>package</phase>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<configuration>
<excludes>module-info.java</excludes>
<includeGroupIds>${project.groupId}</includeGroupIds>
<classifier>sources</classifier>
<failOnMissingClassifierArtifact>false</failOnMissingClassifierArtifact>
<outputDirectory>${project.build.directory}/javadoc-sources</outputDirectory>
</configuration>
</execution>

<execution>
<id>make-classpath</id>
<phase>package</phase>
<goals>
<goal>build-classpath</goal>
</goals>
<configuration>
<outputFile>${project.build.directory}/javadoc-classpath</outputFile>
</configuration>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<!-- Javadoc handling -->
<execution>
<id>javadoc</id>
<goals>
<goal>java</goal>
</goals>
<phase>package</phase>
<configuration>
<mainClass>com.io7m.primogenitor.support.TrivialJavadoc</mainClass>
<arguments>
<argument>${project.build.directory}/javadoc-sources</argument>
<argument>${project.build.directory}/javadoc-classpath</argument>
<argument>${project.build.directory}/documentation/apidocs</argument>
<argument>${project.build.directory}/javadoc-log.txt</argument>
<argument>${project.build.directory}/javadoc-options</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>

<!-- Generate documentation in various formats. -->
<plugin>
<groupId>com.io7m.xstructural</groupId>
<artifactId>com.io7m.xstructural.maven_plugin</artifactId>
<version>${com.io7m.xstructural.version}</version>
<executions>
<execution>
<id>xhtml-single</id>
<phase>package</phase>
<goals>
<goal>xhtml-single</goal>
</goals>
<configuration>
<brandingFile>${project.build.directory}/documentation/brand.xml</brandingFile>
<sourceFile>${project.build.directory}/documentation/main.xml</sourceFile>
<outputDirectory>${project.build.directory}/documentation</outputDirectory>
</configuration>
</execution>
<execution>
<id>xhtml-multi</id>
<phase>package</phase>
<goals>
<goal>xhtml-multi</goal>
</goals>
<configuration>
<brandingFile>${project.build.directory}/documentation/brand.xml</brandingFile>
<sourceFile>${project.build.directory}/documentation/main.xml</sourceFile>
<outputDirectory>${project.build.directory}/documentation</outputDirectory>
</configuration>
</execution>
<execution>
<id>epub</id>
<phase>package</phase>
<goals>
<goal>epub</goal>
</goals>
<configuration>
<brandingFile>${project.build.directory}/documentation/brand.xml</brandingFile>
<sourceFile>${project.build.directory}/documentation/main.xml</sourceFile>
<outputDirectory>${project.build.directory}/epub</outputDirectory>
<outputFileName>documentation.epub</outputFileName>
</configuration>
</execution>
</executions>
</plugin>

<!-- Produce documentation archive -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>src/main/assembly/documentation.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<appendAssemblyId>false</appendAssemblyId>
</configuration>
</execution>
</executions>
</plugin>

<!-- Unpack the documentation archive to the parent's generated site minisite directory. -->
<!-- This is arguably abusive, but there appears to be no other way to achieve it. -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>truezip-maven-plugin</artifactId>
<inherited>false</inherited>
<executions>
<execution>
<id>copy-site-documentation</id>
<goals>
<goal>copy</goal>
</goals>
<phase>site</phase>
<configuration>
<verbose>true</verbose>
<fileset>
<directory>
${project.build.directory}/${project.name}-${project.version}.zip/${project.name}-${project.version}/
</directory>
<outputDirectory>${project.parent.build.directory}/minisite/documentation/</outputDirectory>
</fileset>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>

</project>
16 changes: 16 additions & 0 deletions com.io7m.laurel.documentation/src/main/assembly/documentation.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
<id>documentation</id>
<baseDirectory>${project.name}-${project.version}</baseDirectory>
<formats>
<format>zip</format>
</formats>
<fileSets>
<fileSet>
<directory>${project.build.directory}/documentation</directory>
<outputDirectory>/</outputDirectory>
</fileSet>
</fileSets>
</assembly>
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
/*
* Copyright © 2024 Mark Raynsford <[email protected]> https://www.io7m.com
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
* SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/

package com.io7m.laurel.documentation;

/**
* Documentation marker class.
*/

public final class Documentation
{
private Documentation()
{

}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
/*
* Copyright © 2024 Mark Raynsford <[email protected]> https://www.io7m.com
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
* SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/

/**
* Image caption management (Documentation)
*/

@Export
@Version("1.0.0")
package com.io7m.laurel.documentation;

import org.osgi.annotation.bundle.Export;
import org.osgi.annotation.versioning.Version;
27 changes: 27 additions & 0 deletions com.io7m.laurel.documentation/src/main/java/module-info.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/*
* Copyright © 2024 Mark Raynsford <[email protected]> https://www.io7m.com
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
* SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/

/**
* Image caption management (Documentation)
*/

module com.io7m.laurel.documentation
{
requires static org.osgi.annotation.bundle;
requires static org.osgi.annotation.versioning;

exports com.io7m.laurel.documentation;
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?>

<div xmlns="http://www.w3.org/1999/xhtml"
class="brandingContainer">
<div class="branding">
<a href="https://www.io7m.com/">io7m</a> |
<a href="index.xhtml">single-page</a> |
<a href="index-m.xhtml">multi-page</a> |
<a href="documentation.epub">epub</a> |
Laurel User Manual ${project.version}
</div>
</div>
Loading

0 comments on commit 480948d

Please sign in to comment.