Merge pull request #52 from dburt/master

Add ePub builder
This commit is contained in:
Old Man Umby 2025-01-22 21:16:37 -06:00 committed by GitHub
commit 5fc1f68119
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 68 additions and 26 deletions

3
.gitignore vendored Normal file
View file

@ -0,0 +1,3 @@
chapters
tmp
*.epub

View file

@ -12,26 +12,4 @@
**Duration:** 1 minute **Duration:** 1 minute
You touch a creature. The creature's jump distance is tripled until the spell ends. You touch a creature. The creature's jump distance is tripled until the spell ends.
# Spells (K)
#### Knock
*2nd-level transmutation*
**Casting Time:** 1 action
**Range:** 60 feet
**Components:** V
**Duration:** Instantaneous
Choose an object that you can see within range. The object can be a door, a box, a chest, a set of manacles, a padlock, or another object that contains a mundane or magical means that prevents access.
A target that is held shut by a mundane lock or that is stuck or barred becomes unlocked, unstuck, or unbarred. If the object has multiple locks, only one of them is unlocked.
If you choose a target that is held shut with *arcane lock*, that spell is suppressed for 10 minutes, during which time the target can be opened and shut normally.
When you cast the spell, a loud knock, audible from as far away as 300 feet, emanates from the target object.

View file

@ -1,3 +1,22 @@
# Spells (K) # Spells (K)
None. #### Knock
*2nd-level transmutation*
**Casting Time:** 1 action
**Range:** 60 feet
**Components:** V
**Duration:** Instantaneous
Choose an object that you can see within range. The object can be a door, a box, a chest, a set of manacles, a padlock, or another object that contains a mundane or magical means that prevents access.
A target that is held shut by a mundane lock or that is stuck or barred becomes unlocked, unstuck, or unbarred. If the object has multiple locks, only one of them is unlocked.
If you choose a target that is held shut with *arcane lock*, that spell is suppressed for 10 minutes, during which time the target can be opened and shut normally.
When you cast the spell, a loud knock, audible from as far away as 300 feet, emanates from the target object.

View file

@ -11,5 +11,3 @@
**Duration:** 1 minute **Duration:** 1 minute
You touch a creature. The creature's jump distance is tripled until the spell ends. You touch a creature. The creature's jump distance is tripled until the spell ends.
# Spells (K)

38
build_epub Executable file
View file

@ -0,0 +1,38 @@
#!/usr/bin/env ruby
require 'pathname'
chapters = %w(
Races
Classes
Characterizations
Gameplay
Equipment
Gamemastering
Spells\ (Alt)
Treasure\ (Alt)
Monsters\ (Alt)
)
# chapter = h1
# file = h2
`rm chapters/*.md`
chapters.each_with_index do |chapter, i|
s = "# #{chapter.split.first}\n\n" +
Pathname(chapter).children.sort.map do |f|
data = f.read
data[/^#+ /] = '' # remove initial heading (it will be re-added as h2)
hs = data.scan(/^#+ /).sort.uniq.map {|hdg| hdg.size - 1 }
(hs.length - 1).downto(0) do |h|
data.gsub! /^\#{#{hs[h]}}/, '#' * (h + 3)
end
"\n\n## " + data
end.join
File.write "chapters/#{i+1}_#{chapter.split.first}.md", s
end
pandoc_cmd = "pandoc -o Dungeons_and_Dragons_SRD_5.1.epub title.txt chapters/*"
puts pandoc_cmd
system pandoc_cmd

6
title.txt Normal file
View file

@ -0,0 +1,6 @@
---
title: Dungeons and Dragons SRD 5.1
author: Wizards of the Coast
rights: CC-BY-4.0
language: en-US
---