FG42/docs/Rakefile

76 lines
2.2 KiB
Ruby

require 'webrick'
require 'asciidoctor'
require 'asciidoctor-pdf'
require 'asciidoctor-epub3'
desc 'Run doc webserver'
task :serve do
root = File.expand_path './_build/'
`cp images ./_build/images -rv`
server = WEBrick::HTTPServer.new Port: 3000, DocumentRoot: root
trap 'INT' do server.shutdown end
server.start
end
desc 'compile the docs'
task :compile do
Asciidoctor .convert_file(
'index.adoc', to_dir: '_build/', mkdirs: true, safe: :safe,
backend: :html5, header_footer: true, sourcemap: true,
stylesdir: 'stylesheets',
base_dir: './',
attributes: {
'stylesdir' => 'styles',
'imagesdir' => './images',
'nofooter' => true,
'allow-uri-read' => true,
'stylesheet' => 'style.css'
})
`cp images ./_build/images -rv`
Asciidoctor .convert_file(
'index.adoc', to_dir: '_build/', mkdirs: true, safe: :safe,
backend: :pdf, header_footer: true, sourcemap: true, to_file: 'hellhound.pdf',
stylesdir: 'stylesheets',
base_dir: './',
attributes: {
'stylesdir' => 'styles',
'imagesdir' => './images',
'nofooter' => true,
'allow-uri-read' => true,
'stylesheet' => 'style.css'
})
Asciidoctor .convert_file(
'index.adoc', to_dir: '_build/', mkdirs: true, safe: :safe,
backend: :epub3, header_footer: true, sourcemap: true, to_file: 'hellhound.epub',
stylesdir: 'stylesheets',
base_dir: './',
attributes: {
'stylesdir' => 'styles',
'imagesdir' => './images',
'nofooter' => true,
'allow-uri-read' => true,
'stylesheet' => 'style.css'
})
puts "You need to set KINDLEGEN env."
Asciidoctor .convert_file(
'index.adoc', to_dir: '_build/', mkdirs: true, safe: :safe,
backend: :epub3, header_footer: true, sourcemap: true, to_file: 'hellhound.mobi',
stylesdir: 'stylesheets',
base_dir: './',
attributes: {
'ebook-format' => 'kf8',
'stylesdir' => 'styles',
'imagesdir' => './images',
'nofooter' => true,
'allow-uri-read' => true,
'front-cover-image' => 'image:cover.svg[Front Cover,1050,1050]',
'stylesheet' => 'style.css'
})
`cp images ./_build/ -rv`
`rm -rf hellhound-kf8.epub`
end
task default: :serve