Laika is a customizable and extensible toolkit for transforming lightweight text markup and template based site and e-book generation.
It has been designed for two primary usage scenarios:
Embedded use (e.g. web applications that allow user input in one of the supported markup syntaxes)
As a standalone tool (e.g. using Laika's sbt plugin to produce the project's documentation)
Paramount’s 100th Anniversary Logo Created With Terragen Planetside Software worked closely with Devastudios on Paramount’s new 100th Anniversary Logo animation, with extensive use of Terragen throughout the entire sequence.
Laika does not require the installation of any external tools.
It is Open Source under the Apache 2.0 License.
If you wonder about the name of the project and have never heard about Laika, you can read about her here.
The current version is published to Maven Central for Scala 2.13, 2.12 and Scala.js 1.0.
The sbt plugin is published to the sbt plugin repository for sbt 1.x.
The final release for Scala 2.11 had been 0.10.0, the final release for Scala 2.10 and sbt 0.13 was 0.7.0.
Add the plugin to project/plugins.sbt
:
Enable the plugin in your project's build.sbt
:
Add Markdown, reStructuredText or HTML template files to src/docs
in your project and run the laikaSite
task from within sbt to generate the site in target/docs/site
.
If you are updating from a version before 0.12.0, it's recommended to read the Migration Guide first, as there were significant changes in the Library API.
Adding the Laika dependency to your sbt build:
If you want to use Laika with Scala.js, use the standard triple-%: `scalalibraryDependencies += 'org.planet42' %%% 'laika-core' % '0.14.0'
`
Note that only laika-core
has been published for Scala.js, the laika-io
and laika-pdf
modules are only available for the JVM.
Example for transforming Markdown to HTML:
For file/stream IO, parallel processing and/or EPUB support, based on cats-effect, add the laika-io module to your build:
Example for transforming an entire directory of markup files to a single EPUB file:
When using Laika's PDF support you need to add one more dependency to your build:
The example for how to transform a directory of input files into a PDF file looks the same as the EPUB example, apart from swapping EPUB
for PDF
Read more about standard usage in the chapters
Using the sbt Plugin or Using the Library API.
Try out Laika with the Web Tool.
Browse the source on GitHub.
Browse the API.
Follow on Twitter for release announcements.
Create Issues here on GitHub for bug reports or enhancement requests.
Ask questions on Stackoverflow, tagging with Laika and Scala.
There will also be a dedicated forum in case of growing interest in Laika.
This manual is written in Markdown and transformed by Laika. Its source is included in the repository inside the docs
folder.
Support for Markdown (incl. GitHub Flavored Markdown) and reStructuredText as input
Support for HTML, EPUB, PDF, XSL-FO and AST (for debugging) as output
Template-based Site and Book Generation
Support for tables of contents, convenient cross-linking between documents and auto-numbering of documents and sections for all supported markup formats
Integrated parsers for syntax highlighting that work for all output formats, not just HTML.
Support for styling of PDF documents with CSS
sbt plugin, exposing all Laika features and customization hooks as sbt settings and tasks
Support for Scala.js for all of Laika's features except File/Stream IO, EPUB and PDF
Deiland is a survival game in which players will control Arco, a young prince who lives on a tiny planet (yes, like The Little Prince). The objective of the players will be to try to develop a normal life within the small planet, which will involve growing vegetables, planting trees, chopping stones, and much more. To install Deiland Tiny Planet on a PC we are going to need an Android emulator. We recommend using Bluestacks as it is one of the best on the market. To install it we will need a Windows 7 operating system or higher. Windows prior to version 7 will not work. Deiland tiny planet 5. Deiland is a offline and relaxing game, where we control the little prince Arco to develop his daily life on a very small planet and enjoy magical adventures. CREATE A HOME IN A RELAXING GAME We start from the beginning, on an empty little planet but full of surprises. The first step is to create the tools, which you work with: a hoe to till the fields, an axe for get firewood, a hammer to. Sign in to like videos, comment, and subscribe. Deiland Tiny Planet-Little Prince calm adventure & farm on Deiland planet. Create, craft and relax.-Ver:1.4.1-Views: 81,092-Downloader on pc, android-Download for smart TV, IPTV,MI PHONE,PS4/PS5,Xiaomi,Huewei APKTrending. CATEGORIES APPS GAMES. Home » Game ».
Purely Functional Library API, respecting referential transparency, no exceptions, no mutable state
Custom Directives (tags) for templates and text markup, with type-safe and concise DSL for their declaration
Customization hooks for renderers (based on simple partial functions that change the output for specific node types)
Document Tree Rewriting (hooks for modifying the document AST, consisting of case classes, between parsing and rendering, based on simple partial functions)
Simple contracts and APIs for adding new parsers and renderers
A set of generic and fast parser combinators for common tasks in markup parsing that are not based on the commonly used (and often slow) regex parsers
Support for file and stream IO and parallel processing based on cats-effect, with full control over ExecutionContexts for blocking IO and processing
Purely functional library API
More than 1,500 tests
0.14.0 (Feb 28, 2020):
java.time.Instant
in the shared base to not force another heavy dependency on Scala.js usersPrefixedParser
trait to make span parser optimizations implicit for 90% of the use cases and no longer require the developer to explicitly supply a set of possible start characters for the spandelimiter('**').prevNot(whitespace)
), to reduce boilerplate for inline parsersoneOf('a','b')
instead of anyOf('a','b').take(1)
)Parser
base trait: add source
method for obtaining the consumed part of the input instead of the result of the parser, and count
to obtain the number of consumed characterslaika.parse.implicits._
for extension methods for common parsers, e.g. .concat
, mapN
.Parser
in favor of named methodsDelimitedText
does no longer have a type parameterParagraph('some text')
instead of Paragraph(Seq(Text('some text')))
for example0.13.0 (Jan 26, 2020):
include
statements, this final feature addition makes Laika's HOCON support fully spec-compliant laika-io
module for parallel transformers: mapDocuments(Document => Document)
, evalMapDocuments(Document => F[Document])
and the corresponsing mapTree
and evalMapTree
describe
method for parsers, renderers and transformers and laikaDescribe
setting in the sbt plugin that provides formatted information about the transformer setup and installed extensions0.12.1 (Dec 1, 2019):
0.12.0 (Oct 30, 2019):
Either
F[A]
, with F[_]
being an effect type from cats-effectattribute(Default)
is now defaultAttribute
body
is now either parsedBody
or rawBody
as
method: attribute('title').as[String]
, based on the ConfigDecoder
type class that is also used for the new Config APImapN
Replace(newSpan)
instead of Some(newSpan)
)DocumentTreeRoot
coverDocument
property and contains the recursive tree structure of the parsed content.DocumentTree
in the structure now has an explicit titleDocument: Option[Document]
property for more explicit content organization in e-books.DocumentTree.staticDocuments
). 0.11.0 (June 12, 2019):
laikaEPUB
task in the sbt pluginlaikaIncludeEPUB
setting for the laikaSite
task0.10.0 (Dec 1, 2018):
0.9.0 (Sep 15, 2018):
0.8.0 (June 4, 2018):
0.7.5 (Dec 30, 2017):
0.7.0 (April 17, 2017):
Cursor
type for tree rewritingFopFactory
for the PDF renderer (in API and sbt plugin)laika:site
task in the sbt plugin that executed several sub-tasks twice which could lead to IllegalStateExceptions caused by the resulting race condition0.6.0 (May 23, 2016):
html
, pdf
, xslfo
, prettyPrint
for rendering a single output formatgenerate
for rendering one or more output formats (e.g. laika:generate html pdf
)laika:site
via new setting includePDF
pageBreak
, style
and format
Render
and Transform
API to allow for the merging of an entire directory of input files into a single output file (as required by PDF rendering)0.5.1 (Oct 10, 2015):
0.5.0 (Jan 9, 2014):
laika
to laika-core
0.4.0 (Nov 22, 2013):
0.3.0 (Aug 3, 2013):
figure
, image
, code
, raw
and many more)HTML.unformatted
for terse output without indentation or whitespace (often desirable when writing the rendered document to a database for example)0.2.0 (May 7, 2013):
0.1.0 (Jan 12, 2013):
JapaneseMenus and gameplay are in Japanese.Planet Laika is a console role-playing game developed by Quintet and Zeque. The game was only released in Japan. The game follows the main character, Laika, through a mission to Mars which forces the player to manipulate Laika's multiple-personality disorder in order to solve puzzles. All the characters in the game have dog heads, a possible reference to the Russian space dog Laika.The story begins as the crew of a rocket ship heads to Mars on a mission to find out the truth behind rumors about the 'end of the world' and the existence of an unknown supernatural being. All the characters in the game have dog faces, and you learn at one point that mankind was once destroyed for having human faces. Mars is controlled by a force called the 'Evil Mind,' which manipulates the inhabitants of the planet, changing them into one of three colors and personality types. The people who are colored yellow are visually focused and pursue physical beauty.
The reds are animalistic and strong, and they resort to violence quickly. The blues are psychotic but also quite crafty. The planet plays tricks on their minds, causing them to see illusions, including an illusion of the crew of the ship.A major theme of the game is Laika's different personalities, embodied by three different characters, Ernest, Yolanda, and Spacer. By talking to different characters, Laika absorbs their different colored auras and whena specific color has been absorbed enough, Laika can turn into that personality to solve a problem, such as needing Ernest, the strongest, to lift a heavy shutter.Unlike most RPG's, which feature turn-based battles, Planet Laika's are played out almost like Space Invaders and Pong. The player must bounce around a Mind Core and reflect back the enemies attacks to inflict damage. There are not a lot of battles in the game and enemies only attack when Laika is in one of the special forms.Manufacturer's description:Psychodrama RPG of horror unfold on stage Mars spiteful.